import { DaffCartFacade } from '@daffodil/cart/state'
@Injectable()
class DaffCartFacade<<T extends DaffCart = DaffCart, V extends DaffCartOrderResult = DaffCartOrderResult>> implements DaffCartFacadeInterface<T, V> {
cart$: Observable<T>
resolved$: Observable<DaffCartResolveState>
loadingObject$: Observable<DaffCartLoading>
featureLoading$: Observable<boolean>
featureResolving$: Observable<boolean>
featureMutating$: Observable<boolean>
loading$: Observable<boolean>
resolving$: Observable<boolean>
mutating$: Observable<boolean>
billingAddressLoading$: Observable<boolean>
billingAddressResolving$: Observable<boolean>
billingAddressMutating$: Observable<boolean>
shippingAddressLoading$: Observable<boolean>
shippingAddressResolving$: Observable<boolean>
shippingAddressMutating$: Observable<boolean>
shippingInformationLoading$: Observable<boolean>
shippingInformationResolving$: Observable<boolean>
shippingInformationMutating$: Observable<boolean>
shippingMethodsLoading$: Observable<boolean>
shippingMethodsResolving$: Observable<boolean>
paymentLoading$: Observable<boolean>
paymentResolving$: Observable<boolean>
paymentMutating$: Observable<boolean>
paymentMethodsLoading$: Observable<boolean>
paymentMethodsResolving$: Observable<boolean>
couponLoading$: Observable<boolean>
couponResolving$: Observable<boolean>
couponMutating$: Observable<boolean>
itemLoading$: Observable<boolean>
itemAdding$: Observable<boolean>
itemResolving$: Observable<boolean>
itemMutating$: Observable<boolean>
errors$: Observable<DaffCartErrors>
cartErrors$: Observable<DaffCartErrors[DaffCartOperationType.Cart]>
itemErrors$: Observable<DaffCartErrors[DaffCartOperationType.Item]>
billingAddressErrors$: Observable<DaffCartErrors[DaffCartOperationType.BillingAddress]>
shippingAddressErrors$: Observable<DaffCartErrors[DaffCartOperationType.ShippingAddress]>
shippingInformationErrors$: Observable<DaffCartErrors[DaffCartOperationType.ShippingInformation]>
shippingMethodsErrors$: Observable<DaffCartErrors[DaffCartOperationType.ShippingMethods]>
paymentErrors$: Observable<DaffCartErrors[DaffCartOperationType.Payment]>
paymentMethodsErrors$: Observable<DaffCartErrors[DaffCartOperationType.PaymentMethods]>
couponErrors$: Observable<DaffCartErrors[DaffCartOperationType.Coupon]>
itemEntities$: Observable<DaffOperationEntity<T['items'][number]>[]>
totalItems$: Observable<number>
hasOutOfStockItems$: Observable<boolean>
outOfStockItems$: Observable<DaffOperationEntity<T['items'][number]>[]>
inStockItems$: Observable<DaffOperationEntity<T['items'][number]>[]>
itemDictionary$: Observable<Dictionary<DaffOperationEntity<T['items'][number]>>>
paymentId$: Observable<any>
isCartEmpty$: Observable<boolean>
isBillingSameAsShipping$: Observable<boolean>
hasBillingAddress$: Observable<boolean>
hasShippingAddress$: Observable<boolean>
hasShippingMethod$: Observable<boolean>
hasPaymentMethod$: Observable<boolean>
canPlaceOrder$: Observable<boolean>
orderResultLoading$: Observable<boolean>
orderResultErrors$: Observable<DaffStateError[]>
orderResult$: Observable<V>
orderResultId$: Observable<V['orderId']>
orderResultCartId$: Observable<V['cartId']>
hasOrderResult$: Observable<boolean>
getConfiguredCartItemAttributes(itemId: T["items"][number]["id"]): Observable<DaffConfigurableCartItemAttribute[]>
getCompositeCartItemOptions(itemId: T["items"][number]["id"]): Observable<DaffCompositeCartItemOption[]>
isCartItemOutOfStock(itemId: T["items"][number]["id"]): Observable<boolean>
dispatch(action: Action<string>): void
}
Observable<T>
Default | – |
---|---|
Description |
Observable<DaffCartResolveState>
Default | – |
---|---|
Description |
Observable<DaffCartLoading>
Default | – |
---|---|
Description | The object that holds all the loading states for cart operations. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is any cart operation in progress. This includes operations specifically for cart subfields. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is any cart resolve operation in progress. This includes operations for cart subfields. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is any cart mutate operation in progress. This includes operations for cart subfields. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart operation in progress. This does not include operations specifically for cart subfields. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart resolve operation in progress. This does not include operations specifically for cart subfields. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart mutate operation in progress. This does not include operations specifically for cart subfields. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart billing address operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart billing address resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart billing address mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping address operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping address resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping address mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping information operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping information resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping information mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping methods operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart shipping methods resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart payment operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart payment resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart payment mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart payment methods operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart payment methods resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart coupon operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart coupon resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart coupon mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart item operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart item add operation in progress. |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart item resolve operation in progress. This pertains only to requests that do not mutate data such as "load" or "list". |
Observable<boolean>
Default | – |
---|---|
Description | Whether there is a cart item mutate operation in progress. This pertains only to requests that mutate data such as "update". |
Observable<DaffCartErrors>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.Cart]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.Item]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.BillingAddress]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.ShippingAddress]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.ShippingInformation]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.ShippingMethods]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.Payment]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.PaymentMethods]>
Default | – |
---|---|
Description |
Observable<DaffCartErrors[DaffCartOperationType.Coupon]>
Default | – |
---|---|
Description |
Observable<DaffOperationEntity<T['items'][number]>[]>
Default | – |
---|---|
Description | A list of the cart items. |
Observable<number>
Default | – |
---|---|
Description | The total number of cart items, taking into account the quantity of each cart item. |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<DaffOperationEntity<T['items'][number]>[]>
Default | – |
---|---|
Description | All cart items that are out of stock. |
Observable<DaffOperationEntity<T['items'][number]>[]>
Default | – |
---|---|
Description | All cart items that are in stock. |
Observable<Dictionary<DaffOperationEntity<T['items'][number]>>>
Default | – |
---|---|
Description |
Observable<any>
Default | – |
---|---|
Description | The user-defined platform-agnostic payment identifier that corresponds to the cart's current (platform-specific) payment method.
Define the mapping with the @see DaffCartPaymentMethodIdMap |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description | Whether the cart's shipping address equals the billing address. Returns false if either address is null or undefined. |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<DaffStateError[]>
Default | – |
---|---|
Description |
Observable<V>
Default | – |
---|---|
Description |
Observable<V['orderId']>
Default | – |
---|---|
Description |
Observable<V['cartId']>
Default | – |
---|---|
Description |
Observable<boolean>
Default | – |
---|---|
Description |
Observable<DaffConfigurableCartItemAttribute[]>
Parameter | itemId: T["items"][number]["id"] |
---|---|
Description |
Observable<DaffCompositeCartItemOption[]>
Parameter | itemId: T["items"][number]["id"] |
---|---|
Description |
Observable<boolean>
Parameter | itemId: T["items"][number]["id"] |
---|---|
Description |
void
Parameter | action: Action |
---|---|
Description |