cart.ts — astro Source File
Architecture documentation for cart.ts, a typescript file in the astro codebase. 2 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 02d51798_5e00_bea9_2ad5_facdab102396["cart.ts"] 68b48ea3_6a80_7c00_cfa0_9edb7b54bcab["session.ts"] 02d51798_5e00_bea9_2ad5_facdab102396 --> 68b48ea3_6a80_7c00_cfa0_9edb7b54bcab f16d8c76_2866_6150_bd14_0347b59abfe9["astro"] 02d51798_5e00_bea9_2ad5_facdab102396 --> f16d8c76_2866_6150_bd14_0347b59abfe9 style 02d51798_5e00_bea9_2ad5_facdab102396 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import type { APIContext } from 'astro';
import { userCartItems } from '../../models/session';
export function GET({ cookies }: APIContext) {
let userId = cookies.get('user-id')?.value;
if (!userId || !userCartItems.has(userId)) {
return Response.json({ items: [] });
}
let items = userCartItems.get(userId);
let array = Array.from(items.values());
return Response.json({ items: array });
}
interface AddToCartItem {
id: number;
name: string;
}
export async function POST({ cookies, request }: APIContext) {
const item: AddToCartItem = await request.json();
let userId = cookies.get('user-id')?.value;
if (!userCartItems.has(userId)) {
userCartItems.set(userId, new Map());
}
let cart = userCartItems.get(userId);
if (cart.has(item.id)) {
cart.get(item.id).count++;
} else {
cart.set(item.id, { id: item.id, name: item.name, count: 1 });
}
return Response.json({ ok: true });
}
Domain
Subdomains
Types
Dependencies
- astro
- session.ts
Source
Frequently Asked Questions
What does cart.ts do?
cart.ts is a source file in the astro codebase, written in typescript. It belongs to the StateStores domain, NanostoresImplementation subdomain.
What functions are defined in cart.ts?
cart.ts defines 2 function(s): GET, POST.
What does cart.ts depend on?
cart.ts imports 2 module(s): astro, session.ts.
Where is cart.ts in the architecture?
cart.ts is located at examples/ssr/src/pages/api/cart.ts (domain: StateStores, subdomain: NanostoresImplementation, directory: examples/ssr/src/pages/api).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free