DaffCartFacadeInterface
import { DaffCartFacadeInterface } from '@daffodil/cart/state'
interface DaffCartFacadeInterface<T extends DaffCart = DaffCart, V extends DaffCartOrderResult = DaffCartOrderResult> {
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: Observable<DaffConfigurableCartItemAttribute[]>
getCompositeCartItemOptions: Observable<DaffCompositeCartItemOption[]>
isCartItemOutOfStock: Observable<boolean>
}
Properties
Name | Type | Description |
---|---|---|
cart$ | Observable<T> | |
resolved$ | Observable<DaffCartResolveState> | |
loadingObject$ | Observable<DaffCartLoading> | The object that holds all the loading states for cart operations. |
featureLoading$ | Observable<boolean> | Whether there is any cart operation in progress. This includes operations specifically for cart subfields. |
featureResolving$ | Observable<boolean> | 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". |
featureMutating$ | Observable<boolean> | 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". |
loading$ | Observable<boolean> | Whether there is a cart operation in progress. This does not include operations specifically for cart subfields. |
resolving$ | Observable<boolean> | 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". |
mutating$ | Observable<boolean> | 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". |
billingAddressLoading$ | Observable<boolean> | Whether there is a cart billing address operation in progress. |
billingAddressResolving$ | Observable<boolean> | 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". |
billingAddressMutating$ | Observable<boolean> | Whether there is a cart billing address mutate operation in progress. This pertains only to requests that mutate data such as "update". |
shippingAddressLoading$ | Observable<boolean> | Whether there is a cart shipping address operation in progress. |
shippingAddressResolving$ | Observable<boolean> | 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". |
shippingAddressMutating$ | Observable<boolean> | Whether there is a cart shipping address mutate operation in progress. This pertains only to requests that mutate data such as "update". |
shippingInformationLoading$ | Observable<boolean> | Whether there is a cart shipping information operation in progress. |
shippingInformationResolving$ | Observable<boolean> | 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". |
shippingInformationMutating$ | Observable<boolean> | Whether there is a cart shipping information mutate operation in progress. This pertains only to requests that mutate data such as "update". |
shippingMethodsLoading$ | Observable<boolean> | Whether there is a cart shipping methods operation in progress. |
shippingMethodsResolving$ | Observable<boolean> | 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". |
paymentLoading$ | Observable<boolean> | Whether there is a cart payment operation in progress. |
paymentResolving$ | Observable<boolean> | 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". |
paymentMutating$ | Observable<boolean> | Whether there is a cart payment mutate operation in progress. This pertains only to requests that mutate data such as "update". |
paymentMethodsLoading$ | Observable<boolean> | Whether there is a cart payment methods operation in progress. |
paymentMethodsResolving$ | Observable<boolean> | 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". |
couponLoading$ | Observable<boolean> | Whether there is a cart coupon operation in progress. |
couponResolving$ | Observable<boolean> | 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". |
couponMutating$ | Observable<boolean> | Whether there is a cart coupon mutate operation in progress. This pertains only to requests that mutate data such as "update". |
itemLoading$ | Observable<boolean> | Whether there is a cart item operation in progress. |
itemAdding$ | Observable<boolean> | Whether there is a cart item add operation in progress. |
itemResolving$ | Observable<boolean> | 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". |
itemMutating$ | Observable<boolean> | Whether there is a cart item mutate operation in progress. This pertains only to requests that mutate data such as "update". |
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]>[]> | A list of the cart items. |
totalItems$ | Observable<number> | The total number of cart items, taking into account the quantity of each cart item. |
hasOutOfStockItems$ | Observable<boolean> | |
outOfStockItems$ | Observable<DaffOperationEntity<T['items'][number]>[]> | All cart items that are out of stock. |
inStockItems$ | Observable<DaffOperationEntity<T['items'][number]>[]> | All cart items that are in stock. |
itemDictionary$ | Observable<Dictionary<DaffOperationEntity<T['items'][number]>>> | |
paymentId$ | Observable<any> | The user-defined platform-agnostic payment identifier that corresponds to the cart's current (platform-specific) payment method.
Define the mapping with the |
isCartEmpty$ | Observable<boolean> | |
isBillingSameAsShipping$ | Observable<boolean> | Whether the cart's shipping address equals the billing address. Returns false if either address is null or undefined. |
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 | Observable<DaffConfigurableCartItemAttribute[]> | |
getCompositeCartItemOptions | Observable<DaffCompositeCartItemOption[]> | |
isCartItemOutOfStock | Observable<boolean> |