Skip to main content

Interface: UseCartReturn

Defined in: composables/react/useCart.ts:85

Cart state and actions returned by useCart.

Properties

addActionCode

addActionCode: (code) => Promise<Cart | undefined>

Defined in: composables/react/useCart.ts:117

Applies a promotional action code to the cart.

Parameters

code

string

Returns

Promise<Cart | undefined>


addItem

addItem: (options) => Promise<Result<{ cart: Cart; item: CartMainItem | null; }, string>>

Defined in: composables/react/useCart.ts:99

Adds a product (optionally a cluster/bundle) to the cart.

Parameters

options

AddItemOptions

Returns

Promise<Result<{ cart: Cart; item: CartMainItem | null; }, string>>


addItems

addItems: (items) => Promise<Result<{ cart: Cart; items: (CartMainItem | null)[]; }, string>>

Defined in: composables/react/useCart.ts:107

Adds several products in one call, sequentially, threading the resolved cart id from each add into the next. Use this instead of looping over addItem yourself. Stops at the first failure and returns that error.

Parameters

items

AddItemOptions[]

Returns

Promise<Result<{ cart: Cart; items: (CartMainItem | null)[]; }, string>>


cart

cart: Cart | null

Defined in: composables/react/useCart.ts:87

The resolved cart, or null before resolveCart runs.


cartId

cartId: string

Defined in: composables/react/useCart.ts:89

Id of the resolved cart, or ''.


checkoutAllowed

checkoutAllowed: boolean

Defined in: composables/react/useCart.ts:95

false when a B2B purchaser's authorization limit is exceeded by the cart total.


deleteItem

deleteItem: (cartItemId) => Promise<Cart | undefined>

Defined in: composables/react/useCart.ts:115

Removes a line item from the cart.

Parameters

cartItemId

string

Returns

Promise<Cart | undefined>


error

error: string | null

Defined in: composables/react/useCart.ts:93

Last error message, or null.


getCrossupsells

getCrossupsells: (options) => Promise<Crossupsell[]>

Defined in: composables/react/useCart.ts:125

Fetches crossupsell / accessory products for a product or cluster.

Parameters

options

GetCrossupsellsOptions

Returns

Promise<Crossupsell[]>


getMinQuantity

getMinQuantity: (product) => number

Defined in: composables/react/useCart.ts:127

Returns the minimum orderable quantity for a product (>= 1).

Parameters

product

Product | null | undefined

Returns

number


getStep

getStep: (product) => number

Defined in: composables/react/useCart.ts:129

Returns the quantity step / unit increment for a product (>= 1).

Parameters

product

Product | null | undefined

Returns

number


loading

loading: boolean

Defined in: composables/react/useCart.ts:91

true while a mutating cart call is in flight.


processCart

processCart: (orderStatus?) => Promise<Result<CartProcessResponse, string>>

Defined in: composables/react/useCart.ts:123

Converts the cart into an order (orderStatus defaults to 'COMPLETE').

Parameters

orderStatus?

string

Returns

Promise<Result<CartProcessResponse, string>>


removeActionCode

removeActionCode: (code) => Promise<Cart | undefined>

Defined in: composables/react/useCart.ts:119

Removes a previously-applied action code.

Parameters

code

string

Returns

Promise<Cart | undefined>


requestAuthorization

requestAuthorization: () => Promise<Result<void, string>>

Defined in: composables/react/useCart.ts:121

Submits the cart for purchase authorization (B2B).

Returns

Promise<Result<void, string>>


resolveCart

resolveCart: () => Promise<Cart>

Defined in: composables/react/useCart.ts:97

Resolves an existing cart or creates one via the shared initCart flow.

Returns

Promise<Cart>


updateItemNotes

updateItemNotes: (cartItemId, notes, debounceMs?) => void

Defined in: composables/react/useCart.ts:113

Debounced update of a line item's notes (debounceMs defaults to 500).

Parameters

cartItemId

string

notes

string

debounceMs?

number

Returns

void


updateItemQuantity

updateItemQuantity: (cartItemId, quantity) => Promise<Cart | undefined>

Defined in: composables/react/useCart.ts:111

Updates a line item's quantity.

Parameters

cartItemId

string

quantity

number

Returns

Promise<Cart | undefined>