@daffodil/order 0.64.2 → 0.66.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (29) hide show
  1. package/esm2020/public_api.mjs +1 -2
  2. package/esm2020/state/effects/order-collection.effects.mjs +2 -2
  3. package/esm2020/state/effects/order.effects.mjs +2 -2
  4. package/esm2020/state/injection-tokens/error-matcher.token.mjs +8 -0
  5. package/esm2020/state/injection-tokens/public_api.mjs +2 -0
  6. package/esm2020/state/public_api.mjs +2 -1
  7. package/esm2020/state/testing/order-testing.module.mjs +6 -6
  8. package/esm2020/state/testing/public_api.mjs +2 -2
  9. package/fesm2015/daffodil-order-state-testing.mjs +6 -6
  10. package/fesm2015/daffodil-order-state-testing.mjs.map +1 -1
  11. package/fesm2015/daffodil-order-state.mjs +9 -3
  12. package/fesm2015/daffodil-order-state.mjs.map +1 -1
  13. package/fesm2015/daffodil-order.mjs +1 -10
  14. package/fesm2015/daffodil-order.mjs.map +1 -1
  15. package/fesm2020/daffodil-order-state-testing.mjs +6 -6
  16. package/fesm2020/daffodil-order-state-testing.mjs.map +1 -1
  17. package/fesm2020/daffodil-order-state.mjs +9 -3
  18. package/fesm2020/daffodil-order-state.mjs.map +1 -1
  19. package/fesm2020/daffodil-order.mjs +1 -10
  20. package/fesm2020/daffodil-order.mjs.map +1 -1
  21. package/package.json +1 -1
  22. package/public_api.d.ts +0 -1
  23. package/state/public_api.d.ts +1 -0
  24. package/state/testing/order-testing.module.d.ts +4 -4
  25. package/state/testing/public_api.d.ts +1 -1
  26. package/esm2020/injection-tokens/error-matcher.token.mjs +0 -8
  27. package/esm2020/injection-tokens/public_api.mjs +0 -2
  28. /package/{injection-tokens → state/injection-tokens}/error-matcher.token.d.ts +0 -0
  29. /package/{injection-tokens → state/injection-tokens}/public_api.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-order-state.mjs","sources":["../../../libs/order/state/src/actions/order-collection.actions.ts","../../../libs/order/state/src/actions/order.actions.ts","../../../libs/order/state/src/reducers/order/order-initial-state.ts","../../../libs/order/state/src/reducers/order/order.reducer.ts","../../../libs/order/state/src/reducers/order-collection/reducer.ts","../../../libs/order/state/src/reducers/order-entities/order-entities-adapter.ts","../../../libs/order/state/src/reducers/order-entities/order-entities-initial-state.ts","../../../libs/order/state/src/reducers/order-entities/order-entities.reducer.ts","../../../libs/order/state/src/reducers/order-reducers.ts","../../../libs/order/state/src/reducers/order-store-feature-key.ts","../../../libs/order/state/src/reducers/token/extra.token.ts","../../../libs/order/state/src/selectors/order-feature.selector.ts","../../../libs/order/state/src/selectors/order-entities.selector.ts","../../../libs/order/state/src/selectors/order-collection/selectors.ts","../../../libs/order/state/src/selectors/order.selector.ts","../../../libs/order/state/src/selectors/order-all.selector.ts","../../../libs/order/state/src/facades/order/order.facade.ts","../../../libs/order/state/src/facades/collection/facade.ts","../../../libs/order/state/src/effects/order-collection.effects.ts","../../../libs/order/state/src/effects/order.effects.ts","../../../libs/order/state/src/reducers/token/reducers.token.ts","../../../libs/order/state/src/order-state.module.ts","../../../libs/order/state/src/daffodil-order-state.ts"],"sourcesContent":["\nimport { DaffCart } from '@daffodil/cart';\nimport {\n DaffCollectionMetadata,\n DaffFilterRequest,\n} from '@daffodil/core';\nimport {\n DaffCollectionChangePageSize,\n DaffCollectionChangeCurrentPage,\n DaffCollectionChangeSortingOption,\n DaffCollectionReplaceFilters,\n} from '@daffodil/core/state';\n\n/**\n * Action types for Order Actions.\n */\nexport enum DaffOrderCollectionActionTypes {\n ChangePageSizeAction = '[@daffodil/order] Change Order Collection Page Size Action',\n ChangeCurrentPageAction = '[@daffodil/order] Change Order Collection Current Page Action',\n ChangeSortingAction = '[@daffodil/order] Change Order Collection Sorting Action',\n ChangeFilterAction = '[@daffodil/order] Change Order Collection Filter Action',\n}\n\n/**\n * An action for changing the number of items shown on each page for this collection.\n */\nexport class DaffOrderCollectionChangePageSize implements DaffCollectionChangePageSize {\n readonly type = DaffOrderCollectionActionTypes.ChangePageSizeAction;\n\n constructor(\n public pageSize: DaffCollectionMetadata['pageSize'],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for changing the current page of items for this collection.\n */\nexport class DaffOrderCollectionChangeCurrentPage implements DaffCollectionChangeCurrentPage {\n readonly type = DaffOrderCollectionActionTypes.ChangeCurrentPageAction;\n\n constructor(\n public currentPage: DaffCollectionMetadata['currentPage'],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for changing the sorting option for this collection.\n */\nexport class DaffOrderCollectionChangeSortingOption implements DaffCollectionChangeSortingOption {\n readonly type = DaffOrderCollectionActionTypes.ChangeSortingAction;\n\n constructor(\n public sort: {\n option: DaffCollectionMetadata['appliedSortOption'];\n direction: DaffCollectionMetadata['appliedSortDirection'];\n },\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for filtering the collection by an overall rating value.\n */\nexport class DaffOrderCollectionChangeFilter implements DaffCollectionReplaceFilters {\n readonly type = DaffOrderCollectionActionTypes.ChangeFilterAction;\n\n constructor(\n public filters: DaffFilterRequest[],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\nexport type DaffOrderCollectionActions =\n | DaffOrderCollectionChangePageSize\n | DaffOrderCollectionChangeCurrentPage\n | DaffOrderCollectionChangeSortingOption\n | DaffOrderCollectionChangeFilter;\n","import { Action } from '@ngrx/store';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffCollectionRequest } from '@daffodil/core';\nimport { DaffStateError } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderCollection,\n} from '@daffodil/order';\n\nexport enum DaffOrderActionTypes {\n OrderLoadAction = '[Order] Order Load Action',\n OrderLoadSuccessAction = '[Order] Order Load Success Action',\n OrderLoadFailureAction = '[Order] Order Load Failure Action',\n OrderListAction = '[Order] Order List Action',\n OrderListSuccessAction = '[Order] Order List Success Action',\n OrderListFailureAction = '[Order] Order List Failure Action'\n}\n\n/**\n * Triggers the loading of the specified order.\n *\n * @param orderId The order ID.\n * @param cartId The optional guest cart ID.\n */\nexport class DaffOrderLoad<\n T extends DaffOrder = DaffOrder,\n> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadAction;\n\n constructor(public orderId: T['id'], public cartId?: DaffCart['id']) {}\n}\n\nexport class DaffOrderLoadSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadSuccessAction;\n\n constructor(public payload: T) {}\n}\n\nexport class DaffOrderLoadFailure implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadFailureAction;\n\n constructor(public payload: DaffStateError) {}\n}\n\n/**\n * Triggers the loading of the orders for either the currently logged-in user or the specified guest cart.\n *\n * @param payload The guest cart ID.\n */\nexport class DaffOrderList implements Action {\n readonly type = DaffOrderActionTypes.OrderListAction;\n\n constructor(public cartId?: DaffCart['id'], public request: DaffCollectionRequest = {}) {}\n}\n\nexport class DaffOrderListSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderListSuccessAction;\n\n constructor(public payload: DaffOrderCollection<T>) {}\n}\n\nexport class DaffOrderListFailure implements Action {\n readonly type = DaffOrderActionTypes.OrderListFailureAction;\n\n constructor(public payload: DaffStateError) {}\n}\n\nexport type DaffOrderActions<\n T extends DaffOrder = DaffOrder,\n> =\n | DaffOrderLoad<T>\n | DaffOrderLoadSuccess<T>\n | DaffOrderLoadFailure\n | DaffOrderList\n | DaffOrderListSuccess<T>\n | DaffOrderListFailure;\n","import { daffOperationInitialState } from '@daffodil/core/state';\n\nimport { DaffOrderReducerState } from './order-reducer.interface';\n\nexport const daffOrderInitialState: DaffOrderReducerState = daffOperationInitialState;\n","import {\n daffCompleteOperation,\n daffOperationFailed,\n daffStartMutation,\n daffStartResolution,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { daffOrderInitialState } from './order-initial-state';\nimport { DaffOrderReducerState } from './order-reducer.interface';\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n} from '../../actions/public_api';\n\nexport function daffOrderReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderInitialState,\n action: DaffOrderActions<T> | DaffOrderCollectionActions,\n): DaffOrderReducerState {\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n case DaffOrderActionTypes.OrderLoadAction:\n return daffStartResolution(state);\n\n case DaffOrderCollectionActionTypes.ChangePageSizeAction:\n case DaffOrderCollectionActionTypes.ChangeCurrentPageAction:\n case DaffOrderCollectionActionTypes.ChangeFilterAction:\n case DaffOrderCollectionActionTypes.ChangeSortingAction:\n return daffStartMutation(state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return daffCompleteOperation(state);\n\n case DaffOrderActionTypes.OrderListFailureAction:\n case DaffOrderActionTypes.OrderLoadFailureAction:\n return daffOperationFailed([action.payload], state);\n\n default:\n return state;\n }\n}\n","import {\n daffApplyRequestsToFilters,\n daffClearFilters,\n} from '@daffodil/core';\nimport {\n daffCollectionReducerInitialState,\n getCollectionStateAdapter,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { DaffOrderCollectionReducerState } from './state.interface';\nimport {\n DaffOrderActionTypes,\n DaffOrderActions,\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n} from '../../actions/public_api';\n\n/**\n * Handles the reduction of order actions into the collection metadata state.\n */\nexport function daffOrdersCollectionReducer<T extends DaffOrder = DaffOrder>(\n state = daffCollectionReducerInitialState,\n action: DaffOrderActions<T> | DaffOrderCollectionActions,\n): DaffOrderCollectionReducerState {\n const adapter = getCollectionStateAdapter();\n\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n return adapter.storeRequest(action.request, state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n return adapter.setMetadata(action.payload.metadata, state);\n\n case DaffOrderActionTypes.OrderListFailureAction:\n return daffCollectionReducerInitialState;\n\n case DaffOrderCollectionActionTypes.ChangePageSizeAction:\n return adapter.setPageSize(action.pageSize, state);\n\n case DaffOrderCollectionActionTypes.ChangeCurrentPageAction:\n return adapter.setCurrentPage(action.currentPage, state);\n\n case DaffOrderCollectionActionTypes.ChangeSortingAction:\n return adapter.setSort(action.sort.option, action.sort.direction, state);\n\n case DaffOrderCollectionActionTypes.ChangeFilterAction:\n return adapter.setFilters(daffApplyRequestsToFilters(action.filters, daffClearFilters(state.filters)), state);\n\n default:\n return state;\n }\n}\n","import {\n EntityAdapter,\n createEntityAdapter,\n} from '@ngrx/entity';\n\nimport { DaffOrder } from '@daffodil/order';\n\n/**\n * Order Adapter for changing/overwriting entity state.\n */\nexport const daffGetOrderAdapter = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): EntityAdapter<T> =>\n cache = cache || createEntityAdapter<T>();\n})();\n","import { daffGetOrderAdapter } from './order-entities-adapter';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\n\n/**\n * Initial state for order entity state.\n */\nexport const daffOrderEntitiesInitialState: DaffOrderEntityState<any> = daffGetOrderAdapter().getInitialState();\n","import { DaffOrder } from '@daffodil/order';\n\nimport { daffGetOrderAdapter } from './order-entities-adapter';\nimport { daffOrderEntitiesInitialState } from './order-entities-initial-state';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\n\n/**\n * Reducer function that catches actions and changes/overwrites order entities state.\n */\nexport function daffOrderEntitiesReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderEntitiesInitialState,\n action: DaffOrderActions<T>,\n): DaffOrderEntityState<T> {\n const adapter = daffGetOrderAdapter<T>();\n\n switch (action.type) {\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return adapter.upsertOne(action.payload, state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n return adapter.setAll(Object.values(action.payload.data), state);\n\n default:\n return state;\n }\n}\n","import { ActionReducerMap } from '@ngrx/store';\n\nimport { daffOrderReducer } from './order/order.reducer';\nimport { daffOrdersCollectionReducer } from './order-collection/public_api';\nimport { daffOrderEntitiesReducer } from './order-entities/public_api';\nimport { DaffOrderReducersState } from './order-reducers.interface';\n\nexport const daffOrderReducers: ActionReducerMap<DaffOrderReducersState> = {\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n collection: daffOrdersCollectionReducer,\n};\n","export const DAFF_ORDER_STORE_FEATURE_KEY = 'daffOrder';\n","import {\n InjectionToken,\n Provider,\n} from '@angular/core';\nimport { ActionReducer } from '@ngrx/store';\n\nimport { DaffOrderReducersState } from '../order-reducers.interface';\n\n/**\n * A token to hold the injectable extra reducers.\n *\n * Prefer using {@link daffOrderProvideExtraReducers}.\n */\nexport const DAFF_ORDER_EXTRA_REDUCERS = new InjectionToken<ActionReducer<DaffOrderReducersState>[]>(\n 'DAFF_ORDER_EXTRA_REDUCERS',\n {\n factory: () => [],\n providedIn: 'any',\n },\n);\n\n/**\n * Provides additional reducers that run after the standard Daffodil order reducers.\n *\n * ```ts\n * providers: [\n * ...daffOrderProvideExtraReducers(\n * myReducer1,\n * myReducer2\n * )\n * ]\n * ```\n */\nexport function daffOrderProvideExtraReducers(\n ...reducers: ActionReducer<DaffOrderReducersState>[]\n): Provider[] {\n return reducers.map(reducer => ({\n provide: DAFF_ORDER_EXTRA_REDUCERS,\n useValue: reducer,\n multi: true,\n }));\n}\n","import {\n createFeatureSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducersState,\n DAFF_ORDER_STORE_FEATURE_KEY,\n} from '../reducers/public_api';\n\nexport interface DaffOrderFeatureSelector<T extends DaffOrder = DaffOrder> {\n selectOrderFeatureState: MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderReducersState<T>>;\n}\n\nexport const getDaffOrderReducersStateSelector = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderFeatureSelector<T> =>\n cache = cache || {\n selectOrderFeatureState: createFeatureSelector<DaffOrderReducersState<T>>(DAFF_ORDER_STORE_FEATURE_KEY),\n };\n})();\n","import { Dictionary } from '@ngrx/entity';\nimport {\n createSelector,\n defaultMemoize,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport {\n getDaffCartSelectors,\n DaffCartStateRootSlice,\n} from '@daffodil/cart/state';\nimport {\n DaffOrder,\n DaffOrderItem,\n DaffOrderTotal,\n DaffOrderTotalTypeEnum,\n} from '@daffodil/order';\n\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\nimport {\n DaffOrderStateRootSlice,\n daffGetOrderAdapter,\n DaffOrderEntityState,\n} from '../reducers/public_api';\n\nexport interface DaffOrderEntitySelectors<T extends DaffOrder = DaffOrder> {\n selectOrderEntitiesState: MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderEntityState<T>>;\n /**\n * Selector for order IDs.\n */\n selectOrderIds: MemoizedSelector<DaffOrderStateRootSlice<T>, T['id'][]>;\n /**\n * Selector for order entities.\n */\n selectOrderEntities: MemoizedSelector<DaffOrderStateRootSlice<T>, Dictionary<T>>;\n /**\n * Selector for all orders.\n */\n selectAllOrders: MemoizedSelector<DaffOrderStateRootSlice<T>, T[]>;\n /**\n * Selector for total number of orders.\n */\n selectOrderTotal: MemoizedSelector<DaffOrderStateRootSlice<T>, number>;\n selectOrder: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T>;\n\n /**\n * Selector for the most recently placed order (if any).\n */\n selectPlacedOrder: MemoizedSelector<DaffOrderStateRootSlice<T>, T>;\n /**\n * Selector for the existence of the most recently placed order.\n */\n selectHasPlacedOrder: MemoizedSelector<DaffOrderStateRootSlice<T>, boolean>;\n\n /**\n * Selects the specified order's totals.\n */\n selectOrderTotals: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['totals']>;\n /**\n * Selects the specified order's applied coupon codes.\n */\n selectOrderAppliedCodes: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['applied_codes']>;\n /**\n * Selects the specified order's items.\n */\n selectOrderItems: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['items']>;\n /**\n * Selects the specified order's billing addresses.\n */\n selectOrderBillingAddresses: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['billing_addresses']>;\n /**\n * Selects the specified order's shipping addresses.\n */\n selectOrderShippingTotalAddresses: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['shipping_addresses']>;\n /**\n * Selects the specified order's shipments.\n */\n selectOrderShipments: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['shipments']>;\n /**\n * Selects the specified order's payment.\n */\n selectOrderPayment: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['payment']>;\n /**\n * Selects the specified order's invoices.\n */\n selectOrderInvoices: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['invoices']>;\n /**\n * Selects the specified order's credits.\n */\n selectOrderCredits: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['credits']>;\n\n /**\n * Selects the specified order's specified item.\n */\n selectOrderItem: (orderId: T['id'], itemId: T['items'][0]['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderItem>;\n\n /**\n * Selects the specified order's grand total.\n */\n selectOrderGrandTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's subtotal.\n */\n selectOrderSubtotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's shipping total.\n */\n selectOrderShippingTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's discount total.\n */\n selectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects whether the specified order has a discount.\n */\n selectOrderHasDiscount: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, boolean>;\n /**\n * Selects the specified order's tax total.\n */\n selectOrderTaxTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n}\n\nconst createOrderEntitySelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const selectOrderEntitiesState = createSelector(\n selectOrderFeatureState,\n state => state.orders,\n );\n const { selectIds, selectEntities, selectAll, selectTotal } = daffGetOrderAdapter<T>().getSelectors(selectOrderEntitiesState);\n const { selectCartOrderId } = getDaffCartSelectors();\n\n const selectOrder: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectEntities,\n (orders: Dictionary<T>) => orders[orderId] || null,\n )).memoized;\n\n const selectPlacedOrder = createSelector(\n selectEntities,\n selectCartOrderId,\n (orders, orderId) => orderId ? selectOrder(orderId).projector(orders) : null,\n );\n\n const selectHasPlacedOrder = createSelector(\n selectPlacedOrder,\n placedOrder => !!placedOrder,\n );\n\n const selectOrderTotals: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['totals']> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.totals) || [],\n )).memoized;\n\n const selectOrderAppliedCodes = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.applied_codes) || [],\n )).memoized;\n\n const selectOrderItems: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['items']> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.items) || [],\n )).memoized;\n\n const selectOrderBillingAddresses = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.billing_addresses) || [],\n )).memoized;\n\n const selectOrderShippingTotalAddresses = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.shipping_addresses) || [],\n )).memoized;\n\n const selectOrderShipments = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.shipments) || [],\n )).memoized;\n\n const selectOrderPayment = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.payment) || null,\n )).memoized;\n\n const selectOrderInvoices = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.invoices) || [],\n )).memoized;\n\n const selectOrderCredits = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.credits) || [],\n )).memoized;\n\n const selectOrderGrandTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.GrandTotal);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderSubtotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Subtotal);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderShippingTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Shipping);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Discount);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderHasDiscount = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderDiscountTotal(orderId),\n discountTotal => discountTotal?.value > 0,\n )).memoized;\n\n const selectOrderTaxTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Tax);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderItem = defaultMemoize((orderId: T['id'], itemId: T['items'][0]['id']) => createSelector(\n selectOrderItems(orderId),\n items => items.find(item => item.id === itemId) || null,\n )).memoized;\n\n return {\n selectOrderEntitiesState,\n selectOrderIds: selectIds,\n selectOrderEntities: selectEntities,\n selectAllOrders: selectAll,\n selectOrderTotal: selectTotal,\n\n selectPlacedOrder,\n selectHasPlacedOrder,\n\n selectOrder,\n selectOrderTotals,\n selectOrderAppliedCodes,\n selectOrderItems,\n selectOrderBillingAddresses,\n selectOrderShippingTotalAddresses,\n selectOrderShipments,\n selectOrderPayment,\n selectOrderInvoices,\n selectOrderCredits,\n selectOrderItem,\n\n selectOrderGrandTotal,\n selectOrderSubtotal,\n selectOrderShippingTotal,\n selectOrderDiscountTotal,\n selectOrderHasDiscount,\n selectOrderTaxTotal,\n };\n};\n\nexport const getDaffOrderEntitySelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderEntitySelectors<T> =>\n cache = cache || createOrderEntitySelectors<T>();\n})();\n\n","import { createSelector } from '@ngrx/store';\n\nimport {\n DaffCollectionMemoizedSelectors,\n daffCollectionSelectorFactory,\n} from '@daffodil/core/state';\nimport { DaffOrderCollection } from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from '../order-feature.selector';\n\nexport type DaffOrderCollectionMemoizedSelectors = DaffCollectionMemoizedSelectors<DaffOrderStateRootSlice, DaffOrderCollection['metadata']>;\n\nconst {\n selectOrderFeatureState,\n} = getDaffOrderReducersStateSelector();\n\nconst selectProductReviewsCollectionState = createSelector(\n selectOrderFeatureState,\n state => state.collection,\n);\n\nexport const getDaffOrderCollectionSelectors = (() => {\n let cache;\n return (): DaffOrderCollectionMemoizedSelectors =>\n cache = cache || daffCollectionSelectorFactory<DaffOrderStateRootSlice, DaffOrderCollection['metadata']>(selectProductReviewsCollectionState);\n})();\n","import {\n createSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport {\n daffOperationStateSelectorFactory,\n DaffOperationStateSelectors,\n DaffStateError,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { getDaffOrderCollectionSelectors } from './order-collection/selectors';\nimport { getDaffOrderEntitySelectors } from './order-entities.selector';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducerState,\n} from '../reducers/public_api';\n\nexport interface DaffOrderSelectors<T extends DaffOrder = DaffOrder> extends DaffOperationStateSelectors<DaffOrderStateRootSlice<T>, DaffOrderReducerState> {\n selectOrderState: MemoizedSelector<DaffOrderStateRootSlice, DaffOrderReducerState>;\n selectOrders: MemoizedSelector<DaffOrderStateRootSlice, T[]>;\n}\n\nconst createOrderSelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const {\n selectCollectionIds,\n } = getDaffOrderCollectionSelectors();\n const {\n selectOrderEntities,\n } = getDaffOrderEntitySelectors<T>();\n const selectOrderState = createSelector(\n selectOrderFeatureState,\n state => state.order,\n );\n\n const selectOrders = createSelector(\n selectCollectionIds,\n selectOrderEntities,\n (ids, entities) => ids.map((id) => entities[id]),\n );\n\n return {\n ...daffOperationStateSelectorFactory(selectOrderState),\n selectOrderState,\n selectOrders,\n };\n};\n\nexport const getOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderSelectors<T> =>\n cache = cache || createOrderSelectors<T>();\n})();\n","import { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderEntitySelectors,\n getDaffOrderEntitySelectors,\n} from './order-entities.selector';\nimport {\n DaffOrderFeatureSelector,\n getDaffOrderReducersStateSelector,\n} from './order-feature.selector';\nimport {\n DaffOrderSelectors,\n getOrderSelectors,\n} from './order.selector';\n\nexport interface DaffOrderAllSelectors<T extends DaffOrder = DaffOrder> extends\n DaffOrderEntitySelectors<T>,\n DaffOrderSelectors<T>,\n DaffOrderFeatureSelector<T> {}\n\nexport const getDaffOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderAllSelectors<T> =>\n cache = cache || {\n ...getOrderSelectors<T>(),\n ...getDaffOrderEntitySelectors<T>(),\n ...getDaffOrderReducersStateSelector<T>(),\n };\n})();\n","import { Injectable } from '@angular/core';\nimport { Dictionary } from '@ngrx/entity';\nimport {\n Action,\n Store,\n select,\n} from '@ngrx/store';\nimport { Observable } from 'rxjs';\n\nimport {\n DaffState,\n DaffStateError,\n} from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderTotal,\n} from '@daffodil/order';\n\nimport { DaffOrderFacadeInterface } from './order-facade.interface';\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { DaffOrderEntitySelectors } from '../../selectors/order-entities.selector';\nimport { getDaffOrderSelectors } from '../../selectors/public_api';\n\n/**\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffOrderFacade<T extends DaffOrder = DaffOrder> implements DaffOrderFacadeInterface<T> {\n loading$: Observable<boolean>;\n errors$: Observable<DaffStateError[]>;\n loadingState$: Observable<DaffState>;\n resolving$: Observable<boolean>;\n mutating$: Observable<boolean>;\n hasErrors$: Observable<boolean>;\n\n orders$: Observable<T[]>;\n orderIds$: Observable<T['id'][]>;\n orderCount$: Observable<number>;\n orderEntities$: Observable<Dictionary<T>>;\n\n placedOrder$: Observable<T>;\n hasPlacedOrder$: Observable<boolean>;\n\n _order: DaffOrderEntitySelectors<T>['selectOrder'];\n _totals: DaffOrderEntitySelectors<T>['selectOrderTotals'];\n _appliedCodes: DaffOrderEntitySelectors<T>['selectOrderAppliedCodes'];\n _items: DaffOrderEntitySelectors<T>['selectOrderItems'];\n _billingAddresses: DaffOrderEntitySelectors<T>['selectOrderBillingAddresses'];\n _shippingAddresses: DaffOrderEntitySelectors<T>['selectOrderShippingTotalAddresses'];\n _shipments: DaffOrderEntitySelectors<T>['selectOrderShipments'];\n _payment: DaffOrderEntitySelectors<T>['selectOrderPayment'];\n _invoices: DaffOrderEntitySelectors<T>['selectOrderInvoices'];\n _credits: DaffOrderEntitySelectors<T>['selectOrderCredits'];\n _grandTotal: DaffOrderEntitySelectors<T>['selectOrderGrandTotal'];\n _subtotal: DaffOrderEntitySelectors<T>['selectOrderSubtotal'];\n _shipping: DaffOrderEntitySelectors<T>['selectOrderShippingTotal'];\n _discount: DaffOrderEntitySelectors<T>['selectOrderDiscountTotal'];\n _hasDiscount: DaffOrderEntitySelectors<T>['selectOrderHasDiscount'];\n _tax: DaffOrderEntitySelectors<T>['selectOrderTaxTotal'];\n\n constructor(private store: Store<DaffOrderStateRootSlice<T>>) {\n const {\n selectOrderIds,\n selectOrderEntities,\n selectOrders,\n selectOrderTotal,\n selectLoading,\n selectErrors,\n selectHasErrors,\n selectMutating,\n selectResolving,\n selectLoadingState,\n\n selectPlacedOrder,\n selectHasPlacedOrder,\n\n selectOrder,\n selectOrderTotals,\n selectOrderAppliedCodes,\n selectOrderItems,\n selectOrderBillingAddresses,\n selectOrderShippingTotalAddresses,\n selectOrderShipments,\n selectOrderPayment,\n selectOrderInvoices,\n selectOrderCredits,\n\n selectOrderGrandTotal,\n selectOrderSubtotal,\n selectOrderShippingTotal,\n selectOrderDiscountTotal,\n selectOrderHasDiscount,\n selectOrderTaxTotal,\n } = getDaffOrderSelectors<T>();\n\n this.loading$ = this.store.pipe(select(selectLoading));\n this.errors$ = this.store.pipe(select(selectErrors));\n this.loadingState$ = this.store.pipe(select(selectLoadingState));\n this.resolving$ = this.store.pipe(select(selectResolving));\n this.mutating$ = this.store.pipe(select(selectMutating));\n this.hasErrors$ = this.store.pipe(select(selectHasErrors));\n\n this.orders$ = this.store.pipe(select(selectOrders));\n this.orderIds$ = this.store.pipe(select(selectOrderIds));\n this.orderCount$ = this.store.pipe(select(selectOrderTotal));\n this.orderEntities$ = this.store.pipe(select(selectOrderEntities));\n\n this.placedOrder$ = this.store.pipe(select(selectPlacedOrder));\n this.hasPlacedOrder$ = this.store.pipe(select(selectHasPlacedOrder));\n\n this._order = selectOrder;\n this._totals = selectOrderTotals;\n this._appliedCodes = selectOrderAppliedCodes;\n this._items = selectOrderItems;\n this._billingAddresses = selectOrderBillingAddresses;\n this._shippingAddresses = selectOrderShippingTotalAddresses;\n this._shipments = selectOrderShipments;\n this._payment = selectOrderPayment;\n this._invoices = selectOrderInvoices;\n this._credits = selectOrderCredits;\n this._grandTotal = selectOrderGrandTotal;\n this._subtotal = selectOrderSubtotal;\n this._shipping = selectOrderShippingTotal;\n this._discount = selectOrderDiscountTotal;\n this._hasDiscount = selectOrderHasDiscount;\n this._tax = selectOrderTaxTotal;\n }\n\n getOrder$(orderId: T['id']): Observable<T> {\n return this.store.pipe(select(this._order(orderId)));\n }\n\n getTotals$(orderId: T['id']): Observable<T['totals']> {\n return this.store.pipe(select(this._totals(orderId)));\n }\n\n getAppliedCodes$(orderId: T['id']): Observable<T['applied_codes']> {\n return this.store.pipe(select(this._appliedCodes(orderId)));\n }\n\n getItems$(orderId: T['id']): Observable<T['items']> {\n return this.store.pipe(select(this._items(orderId)));\n }\n\n getBillingAddresses$(orderId: T['id']): Observable<T['billing_addresses']> {\n return this.store.pipe(select(this._billingAddresses(orderId)));\n }\n\n getShippingAddresses$(orderId: T['id']): Observable<T['shipping_addresses']> {\n return this.store.pipe(select(this._shippingAddresses(orderId)));\n }\n\n getShipments$(orderId: T['id']): Observable<T['shipments']> {\n return this.store.pipe(select(this._shipments(orderId)));\n }\n\n getPayment$(orderId: T['id']): Observable<T['payment']> {\n return this.store.pipe(select(this._payment(orderId)));\n }\n\n getInvoices$(orderId: T['id']): Observable<T['invoices']> {\n return this.store.pipe(select(this._invoices(orderId)));\n }\n\n getCredits$(orderId: T['id']): Observable<T['credits']> {\n return this.store.pipe(select(this._credits(orderId)));\n }\n\n getGrandTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._grandTotal(orderId)));\n };\n getSubtotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._subtotal(orderId)));\n };\n getShippingTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._shipping(orderId)));\n };\n getDiscountTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._discount(orderId)));\n };\n hasDiscount$(orderId: T['id']): Observable<boolean> {\n return this.store.pipe(select(this._hasDiscount(orderId)));\n };\n getTaxTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._tax(orderId)));\n };\n\n dispatch(action: Action) {\n this.store.dispatch(action);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngrx/store';\n\nimport {\n DaffCollectionFacadeInterface,\n DaffCollectionFacade,\n} from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderCollection,\n} from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { getDaffOrderCollectionSelectors } from '../../selectors/public_api';\n\n/**\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffOrderCollectionFacade<T extends DaffOrder = DaffOrder>\n extends DaffCollectionFacade<DaffOrderStateRootSlice<T>, DaffOrderCollection['metadata']>\n implements DaffCollectionFacadeInterface<DaffOrderCollection['metadata']> {\n constructor(store: Store<DaffOrderStateRootSlice<T>>) {\n\t super(\n store,\n getDaffOrderCollectionSelectors(),\n );\n }\n}\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n createEffect,\n ofType,\n} from '@ngrx/effects';\nimport {\n asyncScheduler,\n of,\n} from 'rxjs';\nimport {\n switchMap,\n map,\n catchError,\n throttleTime,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {\n daffCollectionBuildRequestFromMetadata,\n DaffError,\n} from '@daffodil/core';\nimport { ErrorTransformer } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DAFF_ORDER_ERROR_MATCHER,\n} from '@daffodil/order';\nimport {\n DaffOrderServiceInterface,\n DaffOrderDriver,\n} from '@daffodil/order/driver';\n\nimport {\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n DaffOrderListFailure,\n DaffOrderListSuccess,\n} from '../actions/public_api';\nimport { DaffOrderCollectionFacade } from '../facades/public_api';\n\nexport const DAFF_ORDER_COLLECTION_ACTION_TYPES = [\n DaffOrderCollectionActionTypes.ChangeCurrentPageAction,\n DaffOrderCollectionActionTypes.ChangePageSizeAction,\n DaffOrderCollectionActionTypes.ChangeSortingAction,\n DaffOrderCollectionActionTypes.ChangeFilterAction,\n];\n\n@Injectable()\nexport class DaffOrderCollectionEffects<\n T extends DaffOrder = DaffOrder,\n> {\n constructor(\n private actions$: Actions,\n private collectionFacade: DaffOrderCollectionFacade,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n @Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * Updates the order collection according to the action.\n * It will take the request metedata, including currently\n * applied filters, from state, form them into a request,\n * and pass that into the {@link DaffProductCollectionDriverCall} provided to this class.\n *\n * @param throttleWindow the amount of time to delay when apply/removing filters\n * in a sequence.\n */\n update$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(\n ofType<DaffOrderCollectionActions>(...DAFF_ORDER_COLLECTION_ACTION_TYPES),\n withLatestFrom(\n this.collectionFacade.metadata$,\n ),\n throttleTime(throttleWindow, scheduler, { leading: true, trailing: true }),\n switchMap(([action, metadata]) => this.driver.list(\n action.cartId,\n daffCollectionBuildRequestFromMetadata(metadata),\n ).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n )),\n ));\n}\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n createEffect,\n ofType,\n} from '@ngrx/effects';\nimport { of } from 'rxjs';\nimport {\n switchMap,\n map,\n catchError,\n} from 'rxjs/operators';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffError } from '@daffodil/core';\nimport { ErrorTransformer } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DAFF_ORDER_ERROR_MATCHER,\n} from '@daffodil/order';\nimport {\n DaffOrderServiceInterface,\n DaffOrderDriver,\n} from '@daffodil/order/driver';\n\nimport {\n DaffOrderActionTypes,\n DaffOrderLoad,\n DaffOrderLoadSuccess,\n DaffOrderLoadFailure,\n DaffOrderList,\n DaffOrderListSuccess,\n DaffOrderListFailure,\n} from '../actions/order.actions';\n\n@Injectable()\nexport class DaffOrderEffects<\n T extends DaffOrder = DaffOrder,\n> {\n constructor(\n private actions$: Actions,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n @Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * An effect for the loading of an order.\n */\n\n get$ = createEffect(() => this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderLoadAction),\n switchMap((action: DaffOrderLoad<T>) =>\n this.driver.get(action.orderId, action.cartId).pipe(\n map(resp => new DaffOrderLoadSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderLoadFailure(this.errorMatcher(error)))),\n ),\n ),\n ));\n\n /**\n * An effect for the listing of orders.\n */\n\n list$ = createEffect(() => this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderListAction),\n switchMap((action: DaffOrderList) =>\n this.driver.list(action.cartId, action.request).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n ),\n ),\n ));\n}\n","import {\n inject,\n InjectionToken,\n} from '@angular/core';\nimport {\n ActionReducer,\n combineReducers,\n} from '@ngrx/store';\n\nimport { daffComposeReducers } from '@daffodil/core/state';\n// these unused imports are a workaround\nimport { DaffOrder } from '@daffodil/order';\n\nimport { DAFF_ORDER_EXTRA_REDUCERS } from './extra.token';\nimport { daffOrderReducer } from '../order/order.reducer';\nimport { daffOrderEntitiesReducer } from '../order-entities/public_api';\nimport { DaffOrderReducersState } from '../order-reducers.interface';\nimport { daffOrdersCollectionReducer } from '../public_api';\n\n/**\n * An internal token to hold the Daffodil order reducers.\n * Includes the extra and standard reducers.\n *\n * @docs-private\n */\nexport const DAFF_ORDER_REDUCERS = new InjectionToken<ActionReducer<DaffOrderReducersState>>(\n ' DAFF_ORDER_REDUCERS',\n {\n providedIn: 'any',\n factory: () => daffComposeReducers([\n combineReducers({\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n collection: daffOrdersCollectionReducer,\n }),\n ...inject(DAFF_ORDER_EXTRA_REDUCERS),\n ]),\n },\n);\n","import { NgModule } from '@angular/core';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule } from '@ngrx/store';\n\nimport { DaffCartStateModule } from '@daffodil/cart/state';\n\nimport { DaffOrderCollectionEffects } from './effects/order-collection.effects';\nimport { DaffOrderEffects } from './effects/order.effects';\nimport { DAFF_ORDER_STORE_FEATURE_KEY } from './reducers/public_api';\nimport { DAFF_ORDER_REDUCERS } from './reducers/token/reducers.token';\n\n@NgModule({\n imports: [\n DaffCartStateModule,\n EffectsModule.forFeature([\n DaffOrderEffects,\n DaffOrderCollectionEffects,\n ]),\n StoreModule.forFeature(DAFF_ORDER_STORE_FEATURE_KEY, DAFF_ORDER_REDUCERS),\n ],\n})\nexport class DaffOrderStateModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.DaffOrderCollectionFacade","i2"],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-order-state.mjs","sources":["../../../libs/order/state/src/actions/order-collection.actions.ts","../../../libs/order/state/src/actions/order.actions.ts","../../../libs/order/state/src/reducers/order/order-initial-state.ts","../../../libs/order/state/src/reducers/order/order.reducer.ts","../../../libs/order/state/src/reducers/order-collection/reducer.ts","../../../libs/order/state/src/reducers/order-entities/order-entities-adapter.ts","../../../libs/order/state/src/reducers/order-entities/order-entities-initial-state.ts","../../../libs/order/state/src/reducers/order-entities/order-entities.reducer.ts","../../../libs/order/state/src/reducers/order-reducers.ts","../../../libs/order/state/src/reducers/order-store-feature-key.ts","../../../libs/order/state/src/reducers/token/extra.token.ts","../../../libs/order/state/src/selectors/order-feature.selector.ts","../../../libs/order/state/src/selectors/order-entities.selector.ts","../../../libs/order/state/src/selectors/order-collection/selectors.ts","../../../libs/order/state/src/selectors/order.selector.ts","../../../libs/order/state/src/selectors/order-all.selector.ts","../../../libs/order/state/src/facades/order/order.facade.ts","../../../libs/order/state/src/facades/collection/facade.ts","../../../libs/order/state/src/injection-tokens/error-matcher.token.ts","../../../libs/order/state/src/effects/order-collection.effects.ts","../../../libs/order/state/src/effects/order.effects.ts","../../../libs/order/state/src/reducers/token/reducers.token.ts","../../../libs/order/state/src/order-state.module.ts","../../../libs/order/state/src/daffodil-order-state.ts"],"sourcesContent":["\nimport { DaffCart } from '@daffodil/cart';\nimport {\n DaffCollectionMetadata,\n DaffFilterRequest,\n} from '@daffodil/core';\nimport {\n DaffCollectionChangePageSize,\n DaffCollectionChangeCurrentPage,\n DaffCollectionChangeSortingOption,\n DaffCollectionReplaceFilters,\n} from '@daffodil/core/state';\n\n/**\n * Action types for Order Actions.\n */\nexport enum DaffOrderCollectionActionTypes {\n ChangePageSizeAction = '[@daffodil/order] Change Order Collection Page Size Action',\n ChangeCurrentPageAction = '[@daffodil/order] Change Order Collection Current Page Action',\n ChangeSortingAction = '[@daffodil/order] Change Order Collection Sorting Action',\n ChangeFilterAction = '[@daffodil/order] Change Order Collection Filter Action',\n}\n\n/**\n * An action for changing the number of items shown on each page for this collection.\n */\nexport class DaffOrderCollectionChangePageSize implements DaffCollectionChangePageSize {\n readonly type = DaffOrderCollectionActionTypes.ChangePageSizeAction;\n\n constructor(\n public pageSize: DaffCollectionMetadata['pageSize'],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for changing the current page of items for this collection.\n */\nexport class DaffOrderCollectionChangeCurrentPage implements DaffCollectionChangeCurrentPage {\n readonly type = DaffOrderCollectionActionTypes.ChangeCurrentPageAction;\n\n constructor(\n public currentPage: DaffCollectionMetadata['currentPage'],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for changing the sorting option for this collection.\n */\nexport class DaffOrderCollectionChangeSortingOption implements DaffCollectionChangeSortingOption {\n readonly type = DaffOrderCollectionActionTypes.ChangeSortingAction;\n\n constructor(\n public sort: {\n option: DaffCollectionMetadata['appliedSortOption'];\n direction: DaffCollectionMetadata['appliedSortDirection'];\n },\n public cartId?: DaffCart['id'],\n ) {}\n}\n\n/**\n * An action for filtering the collection by an overall rating value.\n */\nexport class DaffOrderCollectionChangeFilter implements DaffCollectionReplaceFilters {\n readonly type = DaffOrderCollectionActionTypes.ChangeFilterAction;\n\n constructor(\n public filters: DaffFilterRequest[],\n public cartId?: DaffCart['id'],\n ) {}\n}\n\nexport type DaffOrderCollectionActions =\n | DaffOrderCollectionChangePageSize\n | DaffOrderCollectionChangeCurrentPage\n | DaffOrderCollectionChangeSortingOption\n | DaffOrderCollectionChangeFilter;\n","import { Action } from '@ngrx/store';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffCollectionRequest } from '@daffodil/core';\nimport { DaffStateError } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderCollection,\n} from '@daffodil/order';\n\nexport enum DaffOrderActionTypes {\n OrderLoadAction = '[Order] Order Load Action',\n OrderLoadSuccessAction = '[Order] Order Load Success Action',\n OrderLoadFailureAction = '[Order] Order Load Failure Action',\n OrderListAction = '[Order] Order List Action',\n OrderListSuccessAction = '[Order] Order List Success Action',\n OrderListFailureAction = '[Order] Order List Failure Action'\n}\n\n/**\n * Triggers the loading of the specified order.\n *\n * @param orderId The order ID.\n * @param cartId The optional guest cart ID.\n */\nexport class DaffOrderLoad<\n T extends DaffOrder = DaffOrder,\n> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadAction;\n\n constructor(public orderId: T['id'], public cartId?: DaffCart['id']) {}\n}\n\nexport class DaffOrderLoadSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadSuccessAction;\n\n constructor(public payload: T) {}\n}\n\nexport class DaffOrderLoadFailure implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadFailureAction;\n\n constructor(public payload: DaffStateError) {}\n}\n\n/**\n * Triggers the loading of the orders for either the currently logged-in user or the specified guest cart.\n *\n * @param payload The guest cart ID.\n */\nexport class DaffOrderList implements Action {\n readonly type = DaffOrderActionTypes.OrderListAction;\n\n constructor(public cartId?: DaffCart['id'], public request: DaffCollectionRequest = {}) {}\n}\n\nexport class DaffOrderListSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderListSuccessAction;\n\n constructor(public payload: DaffOrderCollection<T>) {}\n}\n\nexport class DaffOrderListFailure implements Action {\n readonly type = DaffOrderActionTypes.OrderListFailureAction;\n\n constructor(public payload: DaffStateError) {}\n}\n\nexport type DaffOrderActions<\n T extends DaffOrder = DaffOrder,\n> =\n | DaffOrderLoad<T>\n | DaffOrderLoadSuccess<T>\n | DaffOrderLoadFailure\n | DaffOrderList\n | DaffOrderListSuccess<T>\n | DaffOrderListFailure;\n","import { daffOperationInitialState } from '@daffodil/core/state';\n\nimport { DaffOrderReducerState } from './order-reducer.interface';\n\nexport const daffOrderInitialState: DaffOrderReducerState = daffOperationInitialState;\n","import {\n daffCompleteOperation,\n daffOperationFailed,\n daffStartMutation,\n daffStartResolution,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { daffOrderInitialState } from './order-initial-state';\nimport { DaffOrderReducerState } from './order-reducer.interface';\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n} from '../../actions/public_api';\n\nexport function daffOrderReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderInitialState,\n action: DaffOrderActions<T> | DaffOrderCollectionActions,\n): DaffOrderReducerState {\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n case DaffOrderActionTypes.OrderLoadAction:\n return daffStartResolution(state);\n\n case DaffOrderCollectionActionTypes.ChangePageSizeAction:\n case DaffOrderCollectionActionTypes.ChangeCurrentPageAction:\n case DaffOrderCollectionActionTypes.ChangeFilterAction:\n case DaffOrderCollectionActionTypes.ChangeSortingAction:\n return daffStartMutation(state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return daffCompleteOperation(state);\n\n case DaffOrderActionTypes.OrderListFailureAction:\n case DaffOrderActionTypes.OrderLoadFailureAction:\n return daffOperationFailed([action.payload], state);\n\n default:\n return state;\n }\n}\n","import {\n daffApplyRequestsToFilters,\n daffClearFilters,\n} from '@daffodil/core';\nimport {\n daffCollectionReducerInitialState,\n getCollectionStateAdapter,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { DaffOrderCollectionReducerState } from './state.interface';\nimport {\n DaffOrderActionTypes,\n DaffOrderActions,\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n} from '../../actions/public_api';\n\n/**\n * Handles the reduction of order actions into the collection metadata state.\n */\nexport function daffOrdersCollectionReducer<T extends DaffOrder = DaffOrder>(\n state = daffCollectionReducerInitialState,\n action: DaffOrderActions<T> | DaffOrderCollectionActions,\n): DaffOrderCollectionReducerState {\n const adapter = getCollectionStateAdapter();\n\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n return adapter.storeRequest(action.request, state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n return adapter.setMetadata(action.payload.metadata, state);\n\n case DaffOrderActionTypes.OrderListFailureAction:\n return daffCollectionReducerInitialState;\n\n case DaffOrderCollectionActionTypes.ChangePageSizeAction:\n return adapter.setPageSize(action.pageSize, state);\n\n case DaffOrderCollectionActionTypes.ChangeCurrentPageAction:\n return adapter.setCurrentPage(action.currentPage, state);\n\n case DaffOrderCollectionActionTypes.ChangeSortingAction:\n return adapter.setSort(action.sort.option, action.sort.direction, state);\n\n case DaffOrderCollectionActionTypes.ChangeFilterAction:\n return adapter.setFilters(daffApplyRequestsToFilters(action.filters, daffClearFilters(state.filters)), state);\n\n default:\n return state;\n }\n}\n","import {\n EntityAdapter,\n createEntityAdapter,\n} from '@ngrx/entity';\n\nimport { DaffOrder } from '@daffodil/order';\n\n/**\n * Order Adapter for changing/overwriting entity state.\n */\nexport const daffGetOrderAdapter = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): EntityAdapter<T> =>\n cache = cache || createEntityAdapter<T>();\n})();\n","import { daffGetOrderAdapter } from './order-entities-adapter';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\n\n/**\n * Initial state for order entity state.\n */\nexport const daffOrderEntitiesInitialState: DaffOrderEntityState<any> = daffGetOrderAdapter().getInitialState();\n","import { DaffOrder } from '@daffodil/order';\n\nimport { daffGetOrderAdapter } from './order-entities-adapter';\nimport { daffOrderEntitiesInitialState } from './order-entities-initial-state';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\n\n/**\n * Reducer function that catches actions and changes/overwrites order entities state.\n */\nexport function daffOrderEntitiesReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderEntitiesInitialState,\n action: DaffOrderActions<T>,\n): DaffOrderEntityState<T> {\n const adapter = daffGetOrderAdapter<T>();\n\n switch (action.type) {\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return adapter.upsertOne(action.payload, state);\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n return adapter.setAll(Object.values(action.payload.data), state);\n\n default:\n return state;\n }\n}\n","import { ActionReducerMap } from '@ngrx/store';\n\nimport { daffOrderReducer } from './order/order.reducer';\nimport { daffOrdersCollectionReducer } from './order-collection/public_api';\nimport { daffOrderEntitiesReducer } from './order-entities/public_api';\nimport { DaffOrderReducersState } from './order-reducers.interface';\n\nexport const daffOrderReducers: ActionReducerMap<DaffOrderReducersState> = {\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n collection: daffOrdersCollectionReducer,\n};\n","export const DAFF_ORDER_STORE_FEATURE_KEY = 'daffOrder';\n","import {\n InjectionToken,\n Provider,\n} from '@angular/core';\nimport { ActionReducer } from '@ngrx/store';\n\nimport { DaffOrderReducersState } from '../order-reducers.interface';\n\n/**\n * A token to hold the injectable extra reducers.\n *\n * Prefer using {@link daffOrderProvideExtraReducers}.\n */\nexport const DAFF_ORDER_EXTRA_REDUCERS = new InjectionToken<ActionReducer<DaffOrderReducersState>[]>(\n 'DAFF_ORDER_EXTRA_REDUCERS',\n {\n factory: () => [],\n providedIn: 'any',\n },\n);\n\n/**\n * Provides additional reducers that run after the standard Daffodil order reducers.\n *\n * ```ts\n * providers: [\n * ...daffOrderProvideExtraReducers(\n * myReducer1,\n * myReducer2\n * )\n * ]\n * ```\n */\nexport function daffOrderProvideExtraReducers(\n ...reducers: ActionReducer<DaffOrderReducersState>[]\n): Provider[] {\n return reducers.map(reducer => ({\n provide: DAFF_ORDER_EXTRA_REDUCERS,\n useValue: reducer,\n multi: true,\n }));\n}\n","import {\n createFeatureSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducersState,\n DAFF_ORDER_STORE_FEATURE_KEY,\n} from '../reducers/public_api';\n\nexport interface DaffOrderFeatureSelector<T extends DaffOrder = DaffOrder> {\n selectOrderFeatureState: MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderReducersState<T>>;\n}\n\nexport const getDaffOrderReducersStateSelector = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderFeatureSelector<T> =>\n cache = cache || {\n selectOrderFeatureState: createFeatureSelector<DaffOrderReducersState<T>>(DAFF_ORDER_STORE_FEATURE_KEY),\n };\n})();\n","import { Dictionary } from '@ngrx/entity';\nimport {\n createSelector,\n defaultMemoize,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport {\n getDaffCartSelectors,\n DaffCartStateRootSlice,\n} from '@daffodil/cart/state';\nimport {\n DaffOrder,\n DaffOrderItem,\n DaffOrderTotal,\n DaffOrderTotalTypeEnum,\n} from '@daffodil/order';\n\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\nimport {\n DaffOrderStateRootSlice,\n daffGetOrderAdapter,\n DaffOrderEntityState,\n} from '../reducers/public_api';\n\nexport interface DaffOrderEntitySelectors<T extends DaffOrder = DaffOrder> {\n selectOrderEntitiesState: MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderEntityState<T>>;\n /**\n * Selector for order IDs.\n */\n selectOrderIds: MemoizedSelector<DaffOrderStateRootSlice<T>, T['id'][]>;\n /**\n * Selector for order entities.\n */\n selectOrderEntities: MemoizedSelector<DaffOrderStateRootSlice<T>, Dictionary<T>>;\n /**\n * Selector for all orders.\n */\n selectAllOrders: MemoizedSelector<DaffOrderStateRootSlice<T>, T[]>;\n /**\n * Selector for total number of orders.\n */\n selectOrderTotal: MemoizedSelector<DaffOrderStateRootSlice<T>, number>;\n selectOrder: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T>;\n\n /**\n * Selector for the most recently placed order (if any).\n */\n selectPlacedOrder: MemoizedSelector<DaffOrderStateRootSlice<T>, T>;\n /**\n * Selector for the existence of the most recently placed order.\n */\n selectHasPlacedOrder: MemoizedSelector<DaffOrderStateRootSlice<T>, boolean>;\n\n /**\n * Selects the specified order's totals.\n */\n selectOrderTotals: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['totals']>;\n /**\n * Selects the specified order's applied coupon codes.\n */\n selectOrderAppliedCodes: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['applied_codes']>;\n /**\n * Selects the specified order's items.\n */\n selectOrderItems: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['items']>;\n /**\n * Selects the specified order's billing addresses.\n */\n selectOrderBillingAddresses: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['billing_addresses']>;\n /**\n * Selects the specified order's shipping addresses.\n */\n selectOrderShippingTotalAddresses: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['shipping_addresses']>;\n /**\n * Selects the specified order's shipments.\n */\n selectOrderShipments: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['shipments']>;\n /**\n * Selects the specified order's payment.\n */\n selectOrderPayment: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['payment']>;\n /**\n * Selects the specified order's invoices.\n */\n selectOrderInvoices: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['invoices']>;\n /**\n * Selects the specified order's credits.\n */\n selectOrderCredits: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['credits']>;\n\n /**\n * Selects the specified order's specified item.\n */\n selectOrderItem: (orderId: T['id'], itemId: T['items'][0]['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderItem>;\n\n /**\n * Selects the specified order's grand total.\n */\n selectOrderGrandTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's subtotal.\n */\n selectOrderSubtotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's shipping total.\n */\n selectOrderShippingTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects the specified order's discount total.\n */\n selectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n /**\n * Selects whether the specified order has a discount.\n */\n selectOrderHasDiscount: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, boolean>;\n /**\n * Selects the specified order's tax total.\n */\n selectOrderTaxTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n}\n\nconst createOrderEntitySelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const selectOrderEntitiesState = createSelector(\n selectOrderFeatureState,\n state => state.orders,\n );\n const { selectIds, selectEntities, selectAll, selectTotal } = daffGetOrderAdapter<T>().getSelectors(selectOrderEntitiesState);\n const { selectCartOrderId } = getDaffCartSelectors();\n\n const selectOrder: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectEntities,\n (orders: Dictionary<T>) => orders[orderId] || null,\n )).memoized;\n\n const selectPlacedOrder = createSelector(\n selectEntities,\n selectCartOrderId,\n (orders, orderId) => orderId ? selectOrder(orderId).projector(orders) : null,\n );\n\n const selectHasPlacedOrder = createSelector(\n selectPlacedOrder,\n placedOrder => !!placedOrder,\n );\n\n const selectOrderTotals: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['totals']> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.totals) || [],\n )).memoized;\n\n const selectOrderAppliedCodes = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.applied_codes) || [],\n )).memoized;\n\n const selectOrderItems: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, T['items']> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.items) || [],\n )).memoized;\n\n const selectOrderBillingAddresses = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.billing_addresses) || [],\n )).memoized;\n\n const selectOrderShippingTotalAddresses = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.shipping_addresses) || [],\n )).memoized;\n\n const selectOrderShipments = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.shipments) || [],\n )).memoized;\n\n const selectOrderPayment = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.payment) || null,\n )).memoized;\n\n const selectOrderInvoices = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.invoices) || [],\n )).memoized;\n\n const selectOrderCredits = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrder(orderId),\n (order) => (order && order.credits) || [],\n )).memoized;\n\n const selectOrderGrandTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.GrandTotal);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderSubtotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Subtotal);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderShippingTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Shipping);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal> =\n defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Discount);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderHasDiscount = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderDiscountTotal(orderId),\n discountTotal => discountTotal?.value > 0,\n )).memoized;\n\n const selectOrderTaxTotal = defaultMemoize((orderId: T['id']) => createSelector(\n selectOrderTotals(orderId),\n totals => {\n const index = totals.findIndex(total => total.type === DaffOrderTotalTypeEnum.Tax);\n\n return index > -1 ? totals[index] : null;\n },\n )).memoized;\n\n const selectOrderItem = defaultMemoize((orderId: T['id'], itemId: T['items'][0]['id']) => createSelector(\n selectOrderItems(orderId),\n items => items.find(item => item.id === itemId) || null,\n )).memoized;\n\n return {\n selectOrderEntitiesState,\n selectOrderIds: selectIds,\n selectOrderEntities: selectEntities,\n selectAllOrders: selectAll,\n selectOrderTotal: selectTotal,\n\n selectPlacedOrder,\n selectHasPlacedOrder,\n\n selectOrder,\n selectOrderTotals,\n selectOrderAppliedCodes,\n selectOrderItems,\n selectOrderBillingAddresses,\n selectOrderShippingTotalAddresses,\n selectOrderShipments,\n selectOrderPayment,\n selectOrderInvoices,\n selectOrderCredits,\n selectOrderItem,\n\n selectOrderGrandTotal,\n selectOrderSubtotal,\n selectOrderShippingTotal,\n selectOrderDiscountTotal,\n selectOrderHasDiscount,\n selectOrderTaxTotal,\n };\n};\n\nexport const getDaffOrderEntitySelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderEntitySelectors<T> =>\n cache = cache || createOrderEntitySelectors<T>();\n})();\n\n","import { createSelector } from '@ngrx/store';\n\nimport {\n DaffCollectionMemoizedSelectors,\n daffCollectionSelectorFactory,\n} from '@daffodil/core/state';\nimport { DaffOrderCollection } from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from '../order-feature.selector';\n\nexport type DaffOrderCollectionMemoizedSelectors = DaffCollectionMemoizedSelectors<DaffOrderStateRootSlice, DaffOrderCollection['metadata']>;\n\nconst {\n selectOrderFeatureState,\n} = getDaffOrderReducersStateSelector();\n\nconst selectProductReviewsCollectionState = createSelector(\n selectOrderFeatureState,\n state => state.collection,\n);\n\nexport const getDaffOrderCollectionSelectors = (() => {\n let cache;\n return (): DaffOrderCollectionMemoizedSelectors =>\n cache = cache || daffCollectionSelectorFactory<DaffOrderStateRootSlice, DaffOrderCollection['metadata']>(selectProductReviewsCollectionState);\n})();\n","import {\n createSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport {\n daffOperationStateSelectorFactory,\n DaffOperationStateSelectors,\n DaffStateError,\n} from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport { getDaffOrderCollectionSelectors } from './order-collection/selectors';\nimport { getDaffOrderEntitySelectors } from './order-entities.selector';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducerState,\n} from '../reducers/public_api';\n\nexport interface DaffOrderSelectors<T extends DaffOrder = DaffOrder> extends DaffOperationStateSelectors<DaffOrderStateRootSlice<T>, DaffOrderReducerState> {\n selectOrderState: MemoizedSelector<DaffOrderStateRootSlice, DaffOrderReducerState>;\n selectOrders: MemoizedSelector<DaffOrderStateRootSlice, T[]>;\n}\n\nconst createOrderSelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const {\n selectCollectionIds,\n } = getDaffOrderCollectionSelectors();\n const {\n selectOrderEntities,\n } = getDaffOrderEntitySelectors<T>();\n const selectOrderState = createSelector(\n selectOrderFeatureState,\n state => state.order,\n );\n\n const selectOrders = createSelector(\n selectCollectionIds,\n selectOrderEntities,\n (ids, entities) => ids.map((id) => entities[id]),\n );\n\n return {\n ...daffOperationStateSelectorFactory(selectOrderState),\n selectOrderState,\n selectOrders,\n };\n};\n\nexport const getOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderSelectors<T> =>\n cache = cache || createOrderSelectors<T>();\n})();\n","import { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderEntitySelectors,\n getDaffOrderEntitySelectors,\n} from './order-entities.selector';\nimport {\n DaffOrderFeatureSelector,\n getDaffOrderReducersStateSelector,\n} from './order-feature.selector';\nimport {\n DaffOrderSelectors,\n getOrderSelectors,\n} from './order.selector';\n\nexport interface DaffOrderAllSelectors<T extends DaffOrder = DaffOrder> extends\n DaffOrderEntitySelectors<T>,\n DaffOrderSelectors<T>,\n DaffOrderFeatureSelector<T> {}\n\nexport const getDaffOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderAllSelectors<T> =>\n cache = cache || {\n ...getOrderSelectors<T>(),\n ...getDaffOrderEntitySelectors<T>(),\n ...getDaffOrderReducersStateSelector<T>(),\n };\n})();\n","import { Injectable } from '@angular/core';\nimport { Dictionary } from '@ngrx/entity';\nimport {\n Action,\n Store,\n select,\n} from '@ngrx/store';\nimport { Observable } from 'rxjs';\n\nimport {\n DaffState,\n DaffStateError,\n} from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderTotal,\n} from '@daffodil/order';\n\nimport { DaffOrderFacadeInterface } from './order-facade.interface';\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { DaffOrderEntitySelectors } from '../../selectors/order-entities.selector';\nimport { getDaffOrderSelectors } from '../../selectors/public_api';\n\n/**\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffOrderFacade<T extends DaffOrder = DaffOrder> implements DaffOrderFacadeInterface<T> {\n loading$: Observable<boolean>;\n errors$: Observable<DaffStateError[]>;\n loadingState$: Observable<DaffState>;\n resolving$: Observable<boolean>;\n mutating$: Observable<boolean>;\n hasErrors$: Observable<boolean>;\n\n orders$: Observable<T[]>;\n orderIds$: Observable<T['id'][]>;\n orderCount$: Observable<number>;\n orderEntities$: Observable<Dictionary<T>>;\n\n placedOrder$: Observable<T>;\n hasPlacedOrder$: Observable<boolean>;\n\n _order: DaffOrderEntitySelectors<T>['selectOrder'];\n _totals: DaffOrderEntitySelectors<T>['selectOrderTotals'];\n _appliedCodes: DaffOrderEntitySelectors<T>['selectOrderAppliedCodes'];\n _items: DaffOrderEntitySelectors<T>['selectOrderItems'];\n _billingAddresses: DaffOrderEntitySelectors<T>['selectOrderBillingAddresses'];\n _shippingAddresses: DaffOrderEntitySelectors<T>['selectOrderShippingTotalAddresses'];\n _shipments: DaffOrderEntitySelectors<T>['selectOrderShipments'];\n _payment: DaffOrderEntitySelectors<T>['selectOrderPayment'];\n _invoices: DaffOrderEntitySelectors<T>['selectOrderInvoices'];\n _credits: DaffOrderEntitySelectors<T>['selectOrderCredits'];\n _grandTotal: DaffOrderEntitySelectors<T>['selectOrderGrandTotal'];\n _subtotal: DaffOrderEntitySelectors<T>['selectOrderSubtotal'];\n _shipping: DaffOrderEntitySelectors<T>['selectOrderShippingTotal'];\n _discount: DaffOrderEntitySelectors<T>['selectOrderDiscountTotal'];\n _hasDiscount: DaffOrderEntitySelectors<T>['selectOrderHasDiscount'];\n _tax: DaffOrderEntitySelectors<T>['selectOrderTaxTotal'];\n\n constructor(private store: Store<DaffOrderStateRootSlice<T>>) {\n const {\n selectOrderIds,\n selectOrderEntities,\n selectOrders,\n selectOrderTotal,\n selectLoading,\n selectErrors,\n selectHasErrors,\n selectMutating,\n selectResolving,\n selectLoadingState,\n\n selectPlacedOrder,\n selectHasPlacedOrder,\n\n selectOrder,\n selectOrderTotals,\n selectOrderAppliedCodes,\n selectOrderItems,\n selectOrderBillingAddresses,\n selectOrderShippingTotalAddresses,\n selectOrderShipments,\n selectOrderPayment,\n selectOrderInvoices,\n selectOrderCredits,\n\n selectOrderGrandTotal,\n selectOrderSubtotal,\n selectOrderShippingTotal,\n selectOrderDiscountTotal,\n selectOrderHasDiscount,\n selectOrderTaxTotal,\n } = getDaffOrderSelectors<T>();\n\n this.loading$ = this.store.pipe(select(selectLoading));\n this.errors$ = this.store.pipe(select(selectErrors));\n this.loadingState$ = this.store.pipe(select(selectLoadingState));\n this.resolving$ = this.store.pipe(select(selectResolving));\n this.mutating$ = this.store.pipe(select(selectMutating));\n this.hasErrors$ = this.store.pipe(select(selectHasErrors));\n\n this.orders$ = this.store.pipe(select(selectOrders));\n this.orderIds$ = this.store.pipe(select(selectOrderIds));\n this.orderCount$ = this.store.pipe(select(selectOrderTotal));\n this.orderEntities$ = this.store.pipe(select(selectOrderEntities));\n\n this.placedOrder$ = this.store.pipe(select(selectPlacedOrder));\n this.hasPlacedOrder$ = this.store.pipe(select(selectHasPlacedOrder));\n\n this._order = selectOrder;\n this._totals = selectOrderTotals;\n this._appliedCodes = selectOrderAppliedCodes;\n this._items = selectOrderItems;\n this._billingAddresses = selectOrderBillingAddresses;\n this._shippingAddresses = selectOrderShippingTotalAddresses;\n this._shipments = selectOrderShipments;\n this._payment = selectOrderPayment;\n this._invoices = selectOrderInvoices;\n this._credits = selectOrderCredits;\n this._grandTotal = selectOrderGrandTotal;\n this._subtotal = selectOrderSubtotal;\n this._shipping = selectOrderShippingTotal;\n this._discount = selectOrderDiscountTotal;\n this._hasDiscount = selectOrderHasDiscount;\n this._tax = selectOrderTaxTotal;\n }\n\n getOrder$(orderId: T['id']): Observable<T> {\n return this.store.pipe(select(this._order(orderId)));\n }\n\n getTotals$(orderId: T['id']): Observable<T['totals']> {\n return this.store.pipe(select(this._totals(orderId)));\n }\n\n getAppliedCodes$(orderId: T['id']): Observable<T['applied_codes']> {\n return this.store.pipe(select(this._appliedCodes(orderId)));\n }\n\n getItems$(orderId: T['id']): Observable<T['items']> {\n return this.store.pipe(select(this._items(orderId)));\n }\n\n getBillingAddresses$(orderId: T['id']): Observable<T['billing_addresses']> {\n return this.store.pipe(select(this._billingAddresses(orderId)));\n }\n\n getShippingAddresses$(orderId: T['id']): Observable<T['shipping_addresses']> {\n return this.store.pipe(select(this._shippingAddresses(orderId)));\n }\n\n getShipments$(orderId: T['id']): Observable<T['shipments']> {\n return this.store.pipe(select(this._shipments(orderId)));\n }\n\n getPayment$(orderId: T['id']): Observable<T['payment']> {\n return this.store.pipe(select(this._payment(orderId)));\n }\n\n getInvoices$(orderId: T['id']): Observable<T['invoices']> {\n return this.store.pipe(select(this._invoices(orderId)));\n }\n\n getCredits$(orderId: T['id']): Observable<T['credits']> {\n return this.store.pipe(select(this._credits(orderId)));\n }\n\n getGrandTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._grandTotal(orderId)));\n };\n getSubtotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._subtotal(orderId)));\n };\n getShippingTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._shipping(orderId)));\n };\n getDiscountTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._discount(orderId)));\n };\n hasDiscount$(orderId: T['id']): Observable<boolean> {\n return this.store.pipe(select(this._hasDiscount(orderId)));\n };\n getTaxTotal$(orderId: T['id']): Observable<DaffOrderTotal> {\n return this.store.pipe(select(this._tax(orderId)));\n };\n\n dispatch(action: Action) {\n this.store.dispatch(action);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngrx/store';\n\nimport {\n DaffCollectionFacadeInterface,\n DaffCollectionFacade,\n} from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderCollection,\n} from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { getDaffOrderCollectionSelectors } from '../../selectors/public_api';\n\n/**\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffOrderCollectionFacade<T extends DaffOrder = DaffOrder>\n extends DaffCollectionFacade<DaffOrderStateRootSlice<T>, DaffOrderCollection['metadata']>\n implements DaffCollectionFacadeInterface<DaffOrderCollection['metadata']> {\n constructor(store: Store<DaffOrderStateRootSlice<T>>) {\n\t super(\n store,\n getDaffOrderCollectionSelectors(),\n );\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { daffTransformErrorToStateError } from '@daffodil/core/state';\n\n/**\n * Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.\n * Can be used to further refine Daffodil errors into more specific app errors.\n */\nexport const DAFF_ORDER_ERROR_MATCHER = new InjectionToken<typeof daffTransformErrorToStateError>(\n 'DAFF_ORDER_ERROR_MATCHER',\n { factory: () => daffTransformErrorToStateError },\n);\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n createEffect,\n ofType,\n} from '@ngrx/effects';\nimport {\n asyncScheduler,\n of,\n} from 'rxjs';\nimport {\n switchMap,\n map,\n catchError,\n throttleTime,\n withLatestFrom,\n} from 'rxjs/operators';\n\nimport {\n daffCollectionBuildRequestFromMetadata,\n DaffError,\n} from '@daffodil/core';\nimport { ErrorTransformer } from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\nimport {\n DaffOrderServiceInterface,\n DaffOrderDriver,\n} from '@daffodil/order/driver';\n\nimport {\n DaffOrderCollectionActions,\n DaffOrderCollectionActionTypes,\n DaffOrderListFailure,\n DaffOrderListSuccess,\n} from '../actions/public_api';\nimport { DaffOrderCollectionFacade } from '../facades/public_api';\nimport { DAFF_ORDER_ERROR_MATCHER } from '../injection-tokens/public_api';\n\nexport const DAFF_ORDER_COLLECTION_ACTION_TYPES = [\n DaffOrderCollectionActionTypes.ChangeCurrentPageAction,\n DaffOrderCollectionActionTypes.ChangePageSizeAction,\n DaffOrderCollectionActionTypes.ChangeSortingAction,\n DaffOrderCollectionActionTypes.ChangeFilterAction,\n];\n\n@Injectable()\nexport class DaffOrderCollectionEffects<\n T extends DaffOrder = DaffOrder,\n> {\n constructor(\n private actions$: Actions,\n private collectionFacade: DaffOrderCollectionFacade,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n @Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * Updates the order collection according to the action.\n * It will take the request metedata, including currently\n * applied filters, from state, form them into a request,\n * and pass that into the {@link DaffProductCollectionDriverCall} provided to this class.\n *\n * @param throttleWindow the amount of time to delay when apply/removing filters\n * in a sequence.\n */\n update$ = createEffect(() => (throttleWindow = 300, scheduler = asyncScheduler) => this.actions$.pipe(\n ofType<DaffOrderCollectionActions>(...DAFF_ORDER_COLLECTION_ACTION_TYPES),\n withLatestFrom(\n this.collectionFacade.metadata$,\n ),\n throttleTime(throttleWindow, scheduler, { leading: true, trailing: true }),\n switchMap(([action, metadata]) => this.driver.list(\n action.cartId,\n daffCollectionBuildRequestFromMetadata(metadata),\n ).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n )),\n ));\n}\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n createEffect,\n ofType,\n} from '@ngrx/effects';\nimport { of } from 'rxjs';\nimport {\n switchMap,\n map,\n catchError,\n} from 'rxjs/operators';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffError } from '@daffodil/core';\nimport { ErrorTransformer } from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\nimport {\n DaffOrderServiceInterface,\n DaffOrderDriver,\n} from '@daffodil/order/driver';\n\nimport {\n DaffOrderActionTypes,\n DaffOrderLoad,\n DaffOrderLoadSuccess,\n DaffOrderLoadFailure,\n DaffOrderList,\n DaffOrderListSuccess,\n DaffOrderListFailure,\n} from '../actions/order.actions';\nimport { DAFF_ORDER_ERROR_MATCHER } from '../injection-tokens/public_api';\n\n@Injectable()\nexport class DaffOrderEffects<\n T extends DaffOrder = DaffOrder,\n> {\n constructor(\n private actions$: Actions,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n @Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * An effect for the loading of an order.\n */\n\n get$ = createEffect(() => this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderLoadAction),\n switchMap((action: DaffOrderLoad<T>) =>\n this.driver.get(action.orderId, action.cartId).pipe(\n map(resp => new DaffOrderLoadSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderLoadFailure(this.errorMatcher(error)))),\n ),\n ),\n ));\n\n /**\n * An effect for the listing of orders.\n */\n\n list$ = createEffect(() => this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderListAction),\n switchMap((action: DaffOrderList) =>\n this.driver.list(action.cartId, action.request).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n ),\n ),\n ));\n}\n","import {\n inject,\n InjectionToken,\n} from '@angular/core';\nimport {\n ActionReducer,\n combineReducers,\n} from '@ngrx/store';\n\nimport { daffComposeReducers } from '@daffodil/core/state';\n// these unused imports are a workaround\nimport { DaffOrder } from '@daffodil/order';\n\nimport { DAFF_ORDER_EXTRA_REDUCERS } from './extra.token';\nimport { daffOrderReducer } from '../order/order.reducer';\nimport { daffOrderEntitiesReducer } from '../order-entities/public_api';\nimport { DaffOrderReducersState } from '../order-reducers.interface';\nimport { daffOrdersCollectionReducer } from '../public_api';\n\n/**\n * An internal token to hold the Daffodil order reducers.\n * Includes the extra and standard reducers.\n *\n * @docs-private\n */\nexport const DAFF_ORDER_REDUCERS = new InjectionToken<ActionReducer<DaffOrderReducersState>>(\n ' DAFF_ORDER_REDUCERS',\n {\n providedIn: 'any',\n factory: () => daffComposeReducers([\n combineReducers({\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n collection: daffOrdersCollectionReducer,\n }),\n ...inject(DAFF_ORDER_EXTRA_REDUCERS),\n ]),\n },\n);\n","import { NgModule } from '@angular/core';\nimport { EffectsModule } from '@ngrx/effects';\nimport { StoreModule } from '@ngrx/store';\n\nimport { DaffCartStateModule } from '@daffodil/cart/state';\n\nimport { DaffOrderCollectionEffects } from './effects/order-collection.effects';\nimport { DaffOrderEffects } from './effects/order.effects';\nimport { DAFF_ORDER_STORE_FEATURE_KEY } from './reducers/public_api';\nimport { DAFF_ORDER_REDUCERS } from './reducers/token/reducers.token';\n\n@NgModule({\n imports: [\n DaffCartStateModule,\n EffectsModule.forFeature([\n DaffOrderEffects,\n DaffOrderCollectionEffects,\n ]),\n StoreModule.forFeature(DAFF_ORDER_STORE_FEATURE_KEY, DAFF_ORDER_REDUCERS),\n ],\n})\nexport class DaffOrderStateModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.DaffOrderCollectionFacade","i2"],"mappings":"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"}
@@ -1,6 +1,3 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { daffTransformErrorToStateError } from '@daffodil/core/state';
3
-
4
1
  var DaffOrderItemType;
5
2
  (function (DaffOrderItemType) {
6
3
  DaffOrderItemType["Simple"] = "simple";
@@ -17,15 +14,9 @@ var DaffOrderTotalTypeEnum;
17
14
  DaffOrderTotalTypeEnum["Shipping"] = "shipping";
18
15
  })(DaffOrderTotalTypeEnum || (DaffOrderTotalTypeEnum = {}));
19
16
 
20
- /**
21
- * Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.
22
- * Can be used to further refine Daffodil errors into more specific app errors.
23
- */
24
- const DAFF_ORDER_ERROR_MATCHER = new InjectionToken('DAFF_ORDER_ERROR_MATCHER', { factory: () => daffTransformErrorToStateError });
25
-
26
17
  /**
27
18
  * Generated bundle index. Do not edit.
28
19
  */
29
20
 
30
- export { DAFF_ORDER_ERROR_MATCHER, DaffOrderItemType, DaffOrderTotalTypeEnum };
21
+ export { DaffOrderItemType, DaffOrderTotalTypeEnum };
31
22
  //# sourceMappingURL=daffodil-order.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-order.mjs","sources":["../../../libs/order/src/models/order-item.ts","../../../libs/order/src/models/order-total.ts","../../../libs/order/src/injection-tokens/error-matcher.token.ts","../../../libs/order/src/daffodil-order.ts"],"sourcesContent":["import {\n DaffIdentifiable,\n ID,\n} from '@daffodil/core';\nimport { DaffProductImage } from '@daffodil/product';\n\nimport { DaffOrder } from './order';\n\nexport enum DaffOrderItemType {\n Simple = 'simple',\n Composite = 'composite',\n Configurable = 'configurable'\n}\n\nexport interface DaffOrderItem extends DaffIdentifiable {\n type: DaffOrderItemType;\n /**\n * @deprecated use id instead.\n */\n item_id: ID;\n qty_ordered: number;\n qty_canceled: number;\n qty_fulfilled: number;\n image: DaffProductImage;\n order_id: DaffOrder['id'];\n created_at: string;\n updated_at: string;\n product_id: ID;\n parent_item_id: ID;\n sku: string;\n name: string;\n weight: number;\n qty: number;\n price: number;\n discount_percent: number;\n discount_amount: number;\n tax_percent: number;\n tax_amount: number;\n row_total: number;\n row_total_with_discount: number;\n row_weight: number;\n tax_before_discount: number;\n}\n","export enum DaffOrderTotalTypeEnum {\n GrandTotal = 'grand_total',\n Subtotal = 'subtotal',\n Discount = 'discount',\n Tax = 'tax',\n Shipping = 'shipping'\n}\n\nexport interface DaffOrderTotal {\n label: string;\n value: number;\n sort_order: number;\n type: DaffOrderTotalTypeEnum | string;\n}\n","import { InjectionToken } from '@angular/core';\n\nimport { daffTransformErrorToStateError } from '@daffodil/core/state';\n\n/**\n * Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.\n * Can be used to further refine Daffodil errors into more specific app errors.\n */\nexport const DAFF_ORDER_ERROR_MATCHER = new InjectionToken<typeof daffTransformErrorToStateError>(\n 'DAFF_ORDER_ERROR_MATCHER',\n { factory: () => daffTransformErrorToStateError },\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;IAQY,kBAIX;AAJD,CAAA,UAAY,iBAAiB,EAAA;AAC3B,IAAA,iBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,iBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B,CAAA;AAC/B,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,GAI5B,EAAA,CAAA,CAAA;;ICZW,uBAMX;AAND,CAAA,UAAY,sBAAsB,EAAA;AAChC,IAAA,sBAAA,CAAA,YAAA,CAAA,GAAA,aAA0B,CAAA;AAC1B,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,sBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACvB,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,GAMjC,EAAA,CAAA,CAAA;;ACFD;;;AAGG;AACU,MAAA,wBAAwB,GAAG,IAAI,cAAc,CACxD,0BAA0B,EAC1B,EAAE,OAAO,EAAE,MAAM,8BAA8B,EAAE;;ACVnD;;AAEG;;;;"}
1
+ {"version":3,"file":"daffodil-order.mjs","sources":["../../../libs/order/src/models/order-item.ts","../../../libs/order/src/models/order-total.ts","../../../libs/order/src/daffodil-order.ts"],"sourcesContent":["import {\n DaffIdentifiable,\n ID,\n} from '@daffodil/core';\nimport { DaffProductImage } from '@daffodil/product';\n\nimport { DaffOrder } from './order';\n\nexport enum DaffOrderItemType {\n Simple = 'simple',\n Composite = 'composite',\n Configurable = 'configurable'\n}\n\nexport interface DaffOrderItem extends DaffIdentifiable {\n type: DaffOrderItemType;\n /**\n * @deprecated use id instead.\n */\n item_id: ID;\n qty_ordered: number;\n qty_canceled: number;\n qty_fulfilled: number;\n image: DaffProductImage;\n order_id: DaffOrder['id'];\n created_at: string;\n updated_at: string;\n product_id: ID;\n parent_item_id: ID;\n sku: string;\n name: string;\n weight: number;\n qty: number;\n price: number;\n discount_percent: number;\n discount_amount: number;\n tax_percent: number;\n tax_amount: number;\n row_total: number;\n row_total_with_discount: number;\n row_weight: number;\n tax_before_discount: number;\n}\n","export enum DaffOrderTotalTypeEnum {\n GrandTotal = 'grand_total',\n Subtotal = 'subtotal',\n Discount = 'discount',\n Tax = 'tax',\n Shipping = 'shipping'\n}\n\nexport interface DaffOrderTotal {\n label: string;\n value: number;\n sort_order: number;\n type: DaffOrderTotalTypeEnum | string;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"IAQY,kBAIX;AAJD,CAAA,UAAY,iBAAiB,EAAA;AAC3B,IAAA,iBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,iBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB,CAAA;AACvB,IAAA,iBAAA,CAAA,cAAA,CAAA,GAAA,cAA6B,CAAA;AAC/B,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,GAI5B,EAAA,CAAA,CAAA;;ICZW,uBAMX;AAND,CAAA,UAAY,sBAAsB,EAAA;AAChC,IAAA,sBAAA,CAAA,YAAA,CAAA,GAAA,aAA0B,CAAA;AAC1B,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,sBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACvB,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,GAMjC,EAAA,CAAA,CAAA;;ACND;;AAEG;;;;"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@daffodil/order","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/order"]}}},"version":"0.64.2","description":"A client-side Angular package for managing ecommerce orders agnostic to the ecommerce platform.","repository":{"type":"git","url":"https://github.com/graycoreio/daffodil"},"author":"Graycore LLC","license":"MIT","bugs":{"url":"https://github.com/graycoreio/daffodil/issues"},"homepage":"https://github.com/graycoreio/daffodil","peerDependencies":{"@angular/core":"^15.0.0","@angular/common":"^15.0.0","@daffodil/cart":"0.64.2","@daffodil/core":"0.64.2","@daffodil/geography":"0.64.2","@daffodil/product":"0.64.2"},"module":"fesm2015/daffodil-order.mjs","es2020":"fesm2020/daffodil-order.mjs","esm2020":"esm2020/daffodil-order.mjs","fesm2020":"fesm2020/daffodil-order.mjs","fesm2015":"fesm2015/daffodil-order.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2020":"./esm2020/daffodil-order.mjs","es2020":"./fesm2020/daffodil-order.mjs","es2015":"./fesm2015/daffodil-order.mjs","node":"./fesm2015/daffodil-order.mjs","default":"./fesm2020/daffodil-order.mjs"},"./driver/in-memory":{"types":"./driver/in-memory/index.d.ts","esm2020":"./esm2020/driver/in-memory/daffodil-order-driver-in-memory.mjs","es2020":"./fesm2020/daffodil-order-driver-in-memory.mjs","es2015":"./fesm2015/daffodil-order-driver-in-memory.mjs","node":"./fesm2015/daffodil-order-driver-in-memory.mjs","default":"./fesm2020/daffodil-order-driver-in-memory.mjs"},"./driver/magento/2-4-0":{"types":"./driver/magento/2-4-0/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-0/daffodil-order-driver-magento-2-4-0.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-0.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-0.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-0.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-0.mjs"},"./driver/magento/2-4-1":{"types":"./driver/magento/2-4-1/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-1/daffodil-order-driver-magento-2-4-1.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-1.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-1.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-1.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-1.mjs"},"./driver/magento/2-4-1/testing":{"types":"./driver/magento/2-4-1/testing/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-1/testing/daffodil-order-driver-magento-2-4-1-testing.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-1-testing.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-1-testing.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-1-testing.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-1-testing.mjs"},"./driver":{"types":"./driver/index.d.ts","esm2020":"./esm2020/driver/daffodil-order-driver.mjs","es2020":"./fesm2020/daffodil-order-driver.mjs","es2015":"./fesm2015/daffodil-order-driver.mjs","node":"./fesm2015/daffodil-order-driver.mjs","default":"./fesm2020/daffodil-order-driver.mjs"},"./driver/testing":{"types":"./driver/testing/index.d.ts","esm2020":"./esm2020/driver/testing/daffodil-order-driver-testing.mjs","es2020":"./fesm2020/daffodil-order-driver-testing.mjs","es2015":"./fesm2015/daffodil-order-driver-testing.mjs","node":"./fesm2015/daffodil-order-driver-testing.mjs","default":"./fesm2020/daffodil-order-driver-testing.mjs"},"./routing":{"types":"./routing/index.d.ts","esm2020":"./esm2020/routing/daffodil-order-routing.mjs","es2020":"./fesm2020/daffodil-order-routing.mjs","es2015":"./fesm2015/daffodil-order-routing.mjs","node":"./fesm2015/daffodil-order-routing.mjs","default":"./fesm2020/daffodil-order-routing.mjs"},"./state":{"types":"./state/index.d.ts","esm2020":"./esm2020/state/daffodil-order-state.mjs","es2020":"./fesm2020/daffodil-order-state.mjs","es2015":"./fesm2015/daffodil-order-state.mjs","node":"./fesm2015/daffodil-order-state.mjs","default":"./fesm2020/daffodil-order-state.mjs"},"./state/testing":{"types":"./state/testing/index.d.ts","esm2020":"./esm2020/state/testing/daffodil-order-state-testing.mjs","es2020":"./fesm2020/daffodil-order-state-testing.mjs","es2015":"./fesm2015/daffodil-order-state-testing.mjs","node":"./fesm2015/daffodil-order-state-testing.mjs","default":"./fesm2020/daffodil-order-state-testing.mjs"},"./testing":{"types":"./testing/index.d.ts","esm2020":"./esm2020/testing/daffodil-order-testing.mjs","es2020":"./fesm2020/daffodil-order-testing.mjs","es2015":"./fesm2015/daffodil-order-testing.mjs","node":"./fesm2015/daffodil-order-testing.mjs","default":"./fesm2020/daffodil-order-testing.mjs"}},"sideEffects":false,"dependencies":{"tslib":"^2.3.0"}}
1
+ {"name":"@daffodil/order","nx":{"targets":{"build":{"outputs":["{workspaceRoot}/dist/order"]}}},"version":"0.66.1","description":"A client-side Angular package for managing ecommerce orders agnostic to the ecommerce platform.","repository":{"type":"git","url":"https://github.com/graycoreio/daffodil"},"author":"Graycore LLC","license":"MIT","bugs":{"url":"https://github.com/graycoreio/daffodil/issues"},"homepage":"https://github.com/graycoreio/daffodil","peerDependencies":{"@angular/core":"^15.0.0","@angular/common":"^15.0.0","@daffodil/cart":"0.66.1","@daffodil/core":"0.66.1","@daffodil/geography":"0.66.1","@daffodil/product":"0.66.1"},"module":"fesm2015/daffodil-order.mjs","es2020":"fesm2020/daffodil-order.mjs","esm2020":"esm2020/daffodil-order.mjs","fesm2020":"fesm2020/daffodil-order.mjs","fesm2015":"fesm2015/daffodil-order.mjs","typings":"index.d.ts","exports":{"./package.json":{"default":"./package.json"},".":{"types":"./index.d.ts","esm2020":"./esm2020/daffodil-order.mjs","es2020":"./fesm2020/daffodil-order.mjs","es2015":"./fesm2015/daffodil-order.mjs","node":"./fesm2015/daffodil-order.mjs","default":"./fesm2020/daffodil-order.mjs"},"./driver/in-memory":{"types":"./driver/in-memory/index.d.ts","esm2020":"./esm2020/driver/in-memory/daffodil-order-driver-in-memory.mjs","es2020":"./fesm2020/daffodil-order-driver-in-memory.mjs","es2015":"./fesm2015/daffodil-order-driver-in-memory.mjs","node":"./fesm2015/daffodil-order-driver-in-memory.mjs","default":"./fesm2020/daffodil-order-driver-in-memory.mjs"},"./driver/magento/2-4-0":{"types":"./driver/magento/2-4-0/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-0/daffodil-order-driver-magento-2-4-0.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-0.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-0.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-0.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-0.mjs"},"./driver/magento/2-4-1":{"types":"./driver/magento/2-4-1/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-1/daffodil-order-driver-magento-2-4-1.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-1.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-1.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-1.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-1.mjs"},"./driver/magento/2-4-1/testing":{"types":"./driver/magento/2-4-1/testing/index.d.ts","esm2020":"./esm2020/driver/magento/2-4-1/testing/daffodil-order-driver-magento-2-4-1-testing.mjs","es2020":"./fesm2020/daffodil-order-driver-magento-2-4-1-testing.mjs","es2015":"./fesm2015/daffodil-order-driver-magento-2-4-1-testing.mjs","node":"./fesm2015/daffodil-order-driver-magento-2-4-1-testing.mjs","default":"./fesm2020/daffodil-order-driver-magento-2-4-1-testing.mjs"},"./driver":{"types":"./driver/index.d.ts","esm2020":"./esm2020/driver/daffodil-order-driver.mjs","es2020":"./fesm2020/daffodil-order-driver.mjs","es2015":"./fesm2015/daffodil-order-driver.mjs","node":"./fesm2015/daffodil-order-driver.mjs","default":"./fesm2020/daffodil-order-driver.mjs"},"./driver/testing":{"types":"./driver/testing/index.d.ts","esm2020":"./esm2020/driver/testing/daffodil-order-driver-testing.mjs","es2020":"./fesm2020/daffodil-order-driver-testing.mjs","es2015":"./fesm2015/daffodil-order-driver-testing.mjs","node":"./fesm2015/daffodil-order-driver-testing.mjs","default":"./fesm2020/daffodil-order-driver-testing.mjs"},"./routing":{"types":"./routing/index.d.ts","esm2020":"./esm2020/routing/daffodil-order-routing.mjs","es2020":"./fesm2020/daffodil-order-routing.mjs","es2015":"./fesm2015/daffodil-order-routing.mjs","node":"./fesm2015/daffodil-order-routing.mjs","default":"./fesm2020/daffodil-order-routing.mjs"},"./state":{"types":"./state/index.d.ts","esm2020":"./esm2020/state/daffodil-order-state.mjs","es2020":"./fesm2020/daffodil-order-state.mjs","es2015":"./fesm2015/daffodil-order-state.mjs","node":"./fesm2015/daffodil-order-state.mjs","default":"./fesm2020/daffodil-order-state.mjs"},"./state/testing":{"types":"./state/testing/index.d.ts","esm2020":"./esm2020/state/testing/daffodil-order-state-testing.mjs","es2020":"./fesm2020/daffodil-order-state-testing.mjs","es2015":"./fesm2015/daffodil-order-state-testing.mjs","node":"./fesm2015/daffodil-order-state-testing.mjs","default":"./fesm2020/daffodil-order-state-testing.mjs"},"./testing":{"types":"./testing/index.d.ts","esm2020":"./esm2020/testing/daffodil-order-testing.mjs","es2020":"./fesm2020/daffodil-order-testing.mjs","es2015":"./fesm2015/daffodil-order-testing.mjs","node":"./fesm2015/daffodil-order-testing.mjs","default":"./fesm2020/daffodil-order-testing.mjs"}},"sideEffects":false,"dependencies":{"tslib":"^2.3.0"}}
package/public_api.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export * from './models/public_api';
2
- export * from './injection-tokens/public_api';
@@ -2,4 +2,5 @@ export * from './actions/public_api';
2
2
  export * from './reducers/public_api';
3
3
  export * from './selectors/public_api';
4
4
  export * from './facades/public_api';
5
+ export * from './injection-tokens/public_api';
5
6
  export { DaffOrderStateModule } from './order-state.module';
@@ -1,6 +1,6 @@
1
1
  import * as i0 from "@angular/core";
2
- export declare class DaffOrderTestingModule {
3
- static ɵfac: i0.ɵɵFactoryDeclaration<DaffOrderTestingModule, never>;
4
- static ɵmod: i0.ɵɵNgModuleDeclaration<DaffOrderTestingModule, never, never, never>;
5
- static ɵinj: i0.ɵɵInjectorDeclaration<DaffOrderTestingModule>;
2
+ export declare class DaffOrderStateTestingModule {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<DaffOrderStateTestingModule, never>;
4
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DaffOrderStateTestingModule, never, never, never>;
5
+ static ɵinj: i0.ɵɵInjectorDeclaration<DaffOrderStateTestingModule>;
6
6
  }
@@ -1,2 +1,2 @@
1
1
  export { MockDaffOrderFacade } from './mock-order-facade';
2
- export { DaffOrderTestingModule } from './order-testing.module';
2
+ export { DaffOrderStateTestingModule } from './order-testing.module';
@@ -1,8 +0,0 @@
1
- import { InjectionToken } from '@angular/core';
2
- import { daffTransformErrorToStateError } from '@daffodil/core/state';
3
- /**
4
- * Transforms `DaffError`s into `DaffStateError`s before they are serialized into state.
5
- * Can be used to further refine Daffodil errors into more specific app errors.
6
- */
7
- export const DAFF_ORDER_ERROR_MATCHER = new InjectionToken('DAFF_ORDER_ERROR_MATCHER', { factory: () => daffTransformErrorToStateError });
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItbWF0Y2hlci50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvb3JkZXIvc3JjL2luamVjdGlvbi10b2tlbnMvZXJyb3ItbWF0Y2hlci50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXRFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUN4RCwwQkFBMEIsRUFDMUIsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsOEJBQThCLEVBQUUsQ0FDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGRhZmZUcmFuc2Zvcm1FcnJvclRvU3RhdGVFcnJvciB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlL3N0YXRlJztcblxuLyoqXG4gKiBUcmFuc2Zvcm1zIGBEYWZmRXJyb3JgcyBpbnRvIGBEYWZmU3RhdGVFcnJvcmBzIGJlZm9yZSB0aGV5IGFyZSBzZXJpYWxpemVkIGludG8gc3RhdGUuXG4gKiBDYW4gYmUgdXNlZCB0byBmdXJ0aGVyIHJlZmluZSBEYWZmb2RpbCBlcnJvcnMgaW50byBtb3JlIHNwZWNpZmljIGFwcCBlcnJvcnMuXG4gKi9cbmV4cG9ydCBjb25zdCBEQUZGX09SREVSX0VSUk9SX01BVENIRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48dHlwZW9mIGRhZmZUcmFuc2Zvcm1FcnJvclRvU3RhdGVFcnJvcj4oXG4gICdEQUZGX09SREVSX0VSUk9SX01BVENIRVInLFxuICB7IGZhY3Rvcnk6ICgpID0+IGRhZmZUcmFuc2Zvcm1FcnJvclRvU3RhdGVFcnJvciB9LFxuKTtcbiJdfQ==
@@ -1,2 +0,0 @@
1
- export { DAFF_ORDER_ERROR_MATCHER } from './error-matcher.token';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvb3JkZXIvc3JjL2luamVjdGlvbi10b2tlbnMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IERBRkZfT1JERVJfRVJST1JfTUFUQ0hFUiB9IGZyb20gJy4vZXJyb3ItbWF0Y2hlci50b2tlbic7XG4iXX0=