GitHub

DaffCartServiceInterface

import { DaffCartServiceInterface } from '@daffodil/cart/driver'

The interface responsible for managing a customer's cart.

interface DaffCartServiceInterface<T extends DaffCart = DaffCart> {
  get(id: T["id"]): Observable<DaffDriverResponse<T>>
  create(): Observable<{
      id: T['id'];
  }>
  clear(id: T["id"]): Observable<Partial<T>>
  merge(
    guestCart: T["id"]
    customerCart?: T["id"]
  ): Observable<DaffDriverResponse<T>>
}

() Methods

get
Observable<DaffDriverResponse<T>>

Retrieve a cart.

Parameters
Parameterid: T["id"]
Description

The cart ID.

create
Observable<{ id: T['id']; }>

Creates a cart.

clear
Observable<Partial<T>>

Remove all items from a cart.

Parameters
Parameterid: T["id"]
Description
merge
Observable<DaffDriverResponse<T>>

Merge a guest cart into a customer cart.

Parameters
ParameterguestCart: T["id"]
Description
ParametercustomerCart: T["id"]
Description