Przejdź do głównej zawartości

Interface: CartCookieStore

Cookie I/O port. Caller's responsibility — core never touches document.cookie.

Three methods form a cohesive lifecycle (read existing, write new, clear after expiry). Implementations:

  • Browser: createBrowserCartCookieStore() (from @doswiftly/storefront-sdk/react)
  • Next.js Server Component / Route Handler: wrap cookies() from next/headers
  • React Native / mobile: AsyncStorage adapter
  • CLI / Node: file-based or in-memory Map<string, string>
  • Tests: in-memory stub

Methods

clear()

clear(): void

Removes the cookie. Called when the current cart became unrecoverable.

Returns

void


get()

get(): string | null

Returns the persisted cart id or null. Must be synchronous.

Returns

string | null


set()

set(cartId, options?): void

Persists the cart id. When options.secret is provided the implementation stores the composite <cartId>.<secret> value — the cart access secret is revealed only on create / recovery redeem, so this is the only place it is written. options.maxAge defaults to platform CART_COOKIE_MAX_AGE.

Parameters

cartId

string

options?
maxAge?

number

secret?

string | null

Returns

void