@daffodil/order 0.38.6 → 0.39.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (248) hide show
  1. package/bundles/daffodil-order-driver-in-memory.umd.js +10 -101
  2. package/bundles/daffodil-order-driver-in-memory.umd.js.map +1 -1
  3. package/bundles/daffodil-order-driver-in-memory.umd.min.js +1 -1
  4. package/bundles/daffodil-order-driver-in-memory.umd.min.js.map +1 -1
  5. package/bundles/daffodil-order-driver-magento-2.4.0.umd.js +19 -198
  6. package/bundles/daffodil-order-driver-magento-2.4.0.umd.js.map +1 -1
  7. package/bundles/daffodil-order-driver-magento-2.4.0.umd.min.js +2 -2
  8. package/bundles/daffodil-order-driver-magento-2.4.0.umd.min.js.map +1 -1
  9. package/bundles/daffodil-order-driver-magento-2.4.1.umd.js +46 -412
  10. package/bundles/daffodil-order-driver-magento-2.4.1.umd.js.map +1 -1
  11. package/bundles/daffodil-order-driver-magento-2.4.1.umd.min.js +1 -15
  12. package/bundles/daffodil-order-driver-magento-2.4.1.umd.min.js.map +1 -1
  13. package/bundles/daffodil-order-driver-testing.umd.js +3 -53
  14. package/bundles/daffodil-order-driver-testing.umd.js.map +1 -1
  15. package/bundles/daffodil-order-driver-testing.umd.min.js +1 -1
  16. package/bundles/daffodil-order-driver-testing.umd.min.js.map +1 -1
  17. package/bundles/daffodil-order-driver.umd.js +2 -61
  18. package/bundles/daffodil-order-driver.umd.js.map +1 -1
  19. package/bundles/daffodil-order-driver.umd.min.js +2 -3
  20. package/bundles/daffodil-order-driver.umd.min.js.map +1 -1
  21. package/bundles/daffodil-order-routing.umd.js +4 -71
  22. package/bundles/daffodil-order-routing.umd.js.map +1 -1
  23. package/bundles/daffodil-order-routing.umd.min.js +1 -1
  24. package/bundles/daffodil-order-routing.umd.min.js.map +1 -1
  25. package/bundles/daffodil-order-state-testing.umd.js +3 -120
  26. package/bundles/daffodil-order-state-testing.umd.js.map +1 -1
  27. package/bundles/daffodil-order-state-testing.umd.min.js +1 -1
  28. package/bundles/daffodil-order-state-testing.umd.min.js.map +1 -1
  29. package/bundles/daffodil-order-state.umd.js +82 -876
  30. package/bundles/daffodil-order-state.umd.js.map +1 -1
  31. package/bundles/daffodil-order-state.umd.min.js +2 -2
  32. package/bundles/daffodil-order-state.umd.min.js.map +1 -1
  33. package/bundles/daffodil-order-testing.umd.js +16 -260
  34. package/bundles/daffodil-order-testing.umd.js.map +1 -1
  35. package/bundles/daffodil-order-testing.umd.min.js +1 -1
  36. package/bundles/daffodil-order-testing.umd.min.js.map +1 -1
  37. package/bundles/daffodil-order.umd.js +14 -133
  38. package/bundles/daffodil-order.umd.js.map +1 -1
  39. package/bundles/daffodil-order.umd.min.js +1 -1
  40. package/bundles/daffodil-order.umd.min.js.map +1 -1
  41. package/driver/in-memory/package.json +1 -1
  42. package/driver/magento/2.4.0/package.json +1 -1
  43. package/driver/magento/2.4.1/package.json +1 -1
  44. package/driver/package.json +1 -1
  45. package/driver/testing/package.json +1 -1
  46. package/esm2015/daffodil-order.js +2 -7
  47. package/esm2015/driver/daffodil-order-driver.js +2 -7
  48. package/esm2015/driver/errors/invalid-api-response.js +1 -15
  49. package/esm2015/driver/errors/order-not-found.js +1 -15
  50. package/esm2015/driver/errors/public_api.js +1 -6
  51. package/esm2015/driver/in-memory/backend/order.service.js +8 -46
  52. package/esm2015/driver/in-memory/daffodil-order-driver-in-memory.js +2 -7
  53. package/esm2015/driver/in-memory/drivers/order-driver.module.js +1 -9
  54. package/esm2015/driver/in-memory/drivers/order.service.js +3 -27
  55. package/esm2015/driver/in-memory/drivers/public_api.js +1 -6
  56. package/esm2015/driver/in-memory/index.js +2 -7
  57. package/esm2015/driver/in-memory/public_api.js +2 -7
  58. package/esm2015/driver/index.js +2 -7
  59. package/esm2015/driver/interfaces/order-service.interface.js +1 -28
  60. package/esm2015/driver/magento/2.4.0/daffodil-order-driver-magento-2.4.0.js +2 -7
  61. package/esm2015/driver/magento/2.4.0/errors/codes.js +5 -11
  62. package/esm2015/driver/magento/2.4.0/errors/map.js +1 -7
  63. package/esm2015/driver/magento/2.4.0/errors/transform.js +1 -10
  64. package/esm2015/driver/magento/2.4.0/index.js +2 -7
  65. package/esm2015/driver/magento/2.4.0/injection-tokens/fragments/order.js +2 -11
  66. package/esm2015/driver/magento/2.4.0/injection-tokens/public_api.js +1 -6
  67. package/esm2015/driver/magento/2.4.0/models/responses/order-address.js +2 -42
  68. package/esm2015/driver/magento/2.4.0/models/responses/order-invoice.js +2 -32
  69. package/esm2015/driver/magento/2.4.0/models/responses/order-item.js +2 -56
  70. package/esm2015/driver/magento/2.4.0/models/responses/order-payment.js +2 -30
  71. package/esm2015/driver/magento/2.4.0/models/responses/order-shipment-item.js +2 -18
  72. package/esm2015/driver/magento/2.4.0/models/responses/order-shipment-tracking.js +2 -20
  73. package/esm2015/driver/magento/2.4.0/models/responses/order-shipment.js +2 -18
  74. package/esm2015/driver/magento/2.4.0/models/responses/order.js +2 -52
  75. package/esm2015/driver/magento/2.4.0/models/responses/public_api.js +2 -6
  76. package/esm2015/driver/magento/2.4.0/order-driver.module.js +1 -9
  77. package/esm2015/driver/magento/2.4.0/order.service.js +6 -45
  78. package/esm2015/driver/magento/2.4.0/public_api.js +4 -9
  79. package/esm2015/driver/magento/2.4.0/queries/fragments/order-address.js +1 -7
  80. package/esm2015/driver/magento/2.4.0/queries/fragments/order-invoice.js +1 -7
  81. package/esm2015/driver/magento/2.4.0/queries/fragments/order-item.js +1 -7
  82. package/esm2015/driver/magento/2.4.0/queries/fragments/order-payment.js +1 -7
  83. package/esm2015/driver/magento/2.4.0/queries/fragments/order-shipment-item.js +1 -7
  84. package/esm2015/driver/magento/2.4.0/queries/fragments/order-shipment-tracking.js +1 -7
  85. package/esm2015/driver/magento/2.4.0/queries/fragments/order-shipment.js +1 -7
  86. package/esm2015/driver/magento/2.4.0/queries/fragments/order.js +1 -7
  87. package/esm2015/driver/magento/2.4.0/queries/fragments/public_api.js +1 -6
  88. package/esm2015/driver/magento/2.4.0/queries/get-guest-orders.js +3 -13
  89. package/esm2015/driver/magento/2.4.0/queries/public_api.js +3 -8
  90. package/esm2015/driver/magento/2.4.0/queries/responses/get-guest-orders.js +2 -14
  91. package/esm2015/driver/magento/2.4.0/queries/responses/public_api.js +2 -6
  92. package/esm2015/driver/magento/2.4.0/transforms/responses/order.js +2 -45
  93. package/esm2015/driver/magento/2.4.0/validators/get-orders.js +5 -20
  94. package/esm2015/driver/magento/2.4.0/validators/public_api.js +1 -6
  95. package/esm2015/driver/magento/2.4.1/daffodil-order-driver-magento-2.4.1.js +2 -7
  96. package/esm2015/driver/magento/2.4.1/errors/codes.js +5 -11
  97. package/esm2015/driver/magento/2.4.1/errors/map.js +1 -7
  98. package/esm2015/driver/magento/2.4.1/errors/transform.js +1 -10
  99. package/esm2015/driver/magento/2.4.1/index.js +2 -7
  100. package/esm2015/driver/magento/2.4.1/injection-tokens/fragments/order.js +2 -11
  101. package/esm2015/driver/magento/2.4.1/injection-tokens/public_api.js +1 -6
  102. package/esm2015/driver/magento/2.4.1/models/responses/discount.js +2 -18
  103. package/esm2015/driver/magento/2.4.1/models/responses/order-address.js +2 -42
  104. package/esm2015/driver/magento/2.4.1/models/responses/order-credit-item.js +2 -18
  105. package/esm2015/driver/magento/2.4.1/models/responses/order-credit.js +2 -18
  106. package/esm2015/driver/magento/2.4.1/models/responses/order-invoice-item.js +2 -26
  107. package/esm2015/driver/magento/2.4.1/models/responses/order-invoice.js +2 -18
  108. package/esm2015/driver/magento/2.4.1/models/responses/order-item.js +7 -97
  109. package/esm2015/driver/magento/2.4.1/models/responses/order-payment.js +2 -32
  110. package/esm2015/driver/magento/2.4.1/models/responses/order-shipment-item.js +2 -26
  111. package/esm2015/driver/magento/2.4.1/models/responses/order-shipment-tracking.js +2 -20
  112. package/esm2015/driver/magento/2.4.1/models/responses/order-shipment.js +2 -18
  113. package/esm2015/driver/magento/2.4.1/models/responses/order-total.js +2 -24
  114. package/esm2015/driver/magento/2.4.1/models/responses/order.js +2 -42
  115. package/esm2015/driver/magento/2.4.1/models/responses/public_api.js +4 -9
  116. package/esm2015/driver/magento/2.4.1/order-driver.module.js +1 -9
  117. package/esm2015/driver/magento/2.4.1/order.service.js +6 -45
  118. package/esm2015/driver/magento/2.4.1/public_api.js +4 -9
  119. package/esm2015/driver/magento/2.4.1/queries/fragments/order-address.js +1 -7
  120. package/esm2015/driver/magento/2.4.1/queries/fragments/order-credit-item.js +1 -7
  121. package/esm2015/driver/magento/2.4.1/queries/fragments/order-credit-total.js +1 -7
  122. package/esm2015/driver/magento/2.4.1/queries/fragments/order-credit.js +1 -7
  123. package/esm2015/driver/magento/2.4.1/queries/fragments/order-invoice-item.js +1 -7
  124. package/esm2015/driver/magento/2.4.1/queries/fragments/order-invoice-total.js +1 -7
  125. package/esm2015/driver/magento/2.4.1/queries/fragments/order-invoice.js +1 -7
  126. package/esm2015/driver/magento/2.4.1/queries/fragments/order-item.js +1 -8
  127. package/esm2015/driver/magento/2.4.1/queries/fragments/order-payment.js +1 -7
  128. package/esm2015/driver/magento/2.4.1/queries/fragments/order-shipment-item.js +1 -7
  129. package/esm2015/driver/magento/2.4.1/queries/fragments/order-shipment-tracking.js +1 -7
  130. package/esm2015/driver/magento/2.4.1/queries/fragments/order-shipment.js +1 -7
  131. package/esm2015/driver/magento/2.4.1/queries/fragments/order-total.js +1 -7
  132. package/esm2015/driver/magento/2.4.1/queries/fragments/order.js +1 -7
  133. package/esm2015/driver/magento/2.4.1/queries/fragments/public_api.js +1 -6
  134. package/esm2015/driver/magento/2.4.1/queries/get-guest-orders.js +3 -13
  135. package/esm2015/driver/magento/2.4.1/queries/public_api.js +3 -8
  136. package/esm2015/driver/magento/2.4.1/queries/responses/get-guest-orders.js +2 -14
  137. package/esm2015/driver/magento/2.4.1/queries/responses/public_api.js +2 -6
  138. package/esm2015/driver/magento/2.4.1/transforms/responses/order.js +14 -144
  139. package/esm2015/driver/magento/2.4.1/validators/get-orders.js +5 -20
  140. package/esm2015/driver/magento/2.4.1/validators/public_api.js +1 -6
  141. package/esm2015/driver/testing/daffodil-order-driver-testing.js +2 -7
  142. package/esm2015/driver/testing/drivers/order-driver.module.js +1 -9
  143. package/esm2015/driver/testing/drivers/order.service.js +3 -25
  144. package/esm2015/driver/testing/drivers/public_api.js +1 -6
  145. package/esm2015/driver/testing/index.js +2 -7
  146. package/esm2015/driver/testing/public_api.js +2 -7
  147. package/esm2015/index.js +2 -7
  148. package/esm2015/injection-tokens/error-matcher.token.js +2 -11
  149. package/esm2015/injection-tokens/public_api.js +1 -6
  150. package/esm2015/models/composite-order-item.js +2 -24
  151. package/esm2015/models/configurable-order-item.js +2 -24
  152. package/esm2015/models/order-address.js +2 -14
  153. package/esm2015/models/order-coupon.js +2 -16
  154. package/esm2015/models/order-credit.js +2 -6
  155. package/esm2015/models/order-invoice.js +2 -24
  156. package/esm2015/models/order-item.js +7 -70
  157. package/esm2015/models/order-payment.js +2 -35
  158. package/esm2015/models/order-shipment-item.js +2 -16
  159. package/esm2015/models/order-shipment-tracking.js +2 -22
  160. package/esm2015/models/order-shipment.js +2 -26
  161. package/esm2015/models/order-shipping-method.js +2 -30
  162. package/esm2015/models/order-total.js +9 -29
  163. package/esm2015/models/order.js +2 -44
  164. package/esm2015/models/public_api.js +1 -6
  165. package/esm2015/public_api.js +3 -8
  166. package/esm2015/routing/daffodil-order-routing.js +2 -7
  167. package/esm2015/routing/guards/placed-order/placed-order-guard-redirect.token.js +1 -7
  168. package/esm2015/routing/guards/placed-order/placed-order.guard.js +4 -38
  169. package/esm2015/routing/guards/public_api.js +1 -6
  170. package/esm2015/routing/index.js +2 -7
  171. package/esm2015/routing/order-routing.module.js +1 -6
  172. package/esm2015/routing/public_api.js +2 -7
  173. package/esm2015/state/actions/order.actions.js +10 -81
  174. package/esm2015/state/daffodil-order-state.js +2 -7
  175. package/esm2015/state/effects/order.effects.js +3 -67
  176. package/esm2015/state/facades/order/order-facade.interface.js +2 -115
  177. package/esm2015/state/facades/order/order.facade.js +3 -141
  178. package/esm2015/state/facades/public_api.js +1 -6
  179. package/esm2015/state/index.js +2 -7
  180. package/esm2015/state/order-state.module.js +1 -6
  181. package/esm2015/state/public_api.js +5 -10
  182. package/esm2015/state/reducers/order/order-initial-state.js +1 -7
  183. package/esm2015/state/reducers/order/order-reducer.interface.js +2 -16
  184. package/esm2015/state/reducers/order/order.reducer.js +1 -12
  185. package/esm2015/state/reducers/order/public_api.js +1 -6
  186. package/esm2015/state/reducers/order-entities/order-entities-adapter.js +4 -18
  187. package/esm2015/state/reducers/order-entities/order-entities-initial-state.js +1 -7
  188. package/esm2015/state/reducers/order-entities/order-entities-state.interface.js +2 -6
  189. package/esm2015/state/reducers/order-entities/order-entities.reducer.js +1 -11
  190. package/esm2015/state/reducers/order-entities/public_api.js +1 -6
  191. package/esm2015/state/reducers/order-reducers.interface.js +1 -26
  192. package/esm2015/state/reducers/order-reducers.js +1 -7
  193. package/esm2015/state/reducers/order-store-feature-key.js +1 -7
  194. package/esm2015/state/reducers/public_api.js +3 -8
  195. package/esm2015/state/selectors/order-all.selector.js +4 -23
  196. package/esm2015/state/selectors/order-entities.selector.js +36 -375
  197. package/esm2015/state/selectors/order-feature.selector.js +5 -28
  198. package/esm2015/state/selectors/order.selector.js +9 -55
  199. package/esm2015/state/selectors/public_api.js +2 -7
  200. package/esm2015/state/testing/daffodil-order-state-testing.js +2 -7
  201. package/esm2015/state/testing/index.js +2 -7
  202. package/esm2015/state/testing/mock-order-facade.js +3 -101
  203. package/esm2015/state/testing/order-testing.module.js +1 -6
  204. package/esm2015/state/testing/public_api.js +1 -6
  205. package/esm2015/testing/daffodil-order-testing.js +2 -7
  206. package/esm2015/testing/factories/composite-order-item.factory.js +2 -13
  207. package/esm2015/testing/factories/configurable-order-item.factory.js +2 -13
  208. package/esm2015/testing/factories/order-address.factory.js +2 -11
  209. package/esm2015/testing/factories/order-coupon.factory.js +2 -11
  210. package/esm2015/testing/factories/order-invoice.factory.js +2 -21
  211. package/esm2015/testing/factories/order-item.factory.js +2 -59
  212. package/esm2015/testing/factories/order-payment.factory.js +2 -31
  213. package/esm2015/testing/factories/order-shipment-item.factory.js +2 -13
  214. package/esm2015/testing/factories/order-shipment-tracking.factory.js +2 -19
  215. package/esm2015/testing/factories/order-shipment.factory.js +2 -23
  216. package/esm2015/testing/factories/order-shipping-rate.factory.js +2 -35
  217. package/esm2015/testing/factories/order-total.factory.js +2 -17
  218. package/esm2015/testing/factories/order.factory.js +2 -37
  219. package/esm2015/testing/factories/public_api.js +1 -6
  220. package/esm2015/testing/helpers/order-helper.js +2 -8
  221. package/esm2015/testing/helpers/public_api.js +1 -6
  222. package/esm2015/testing/index.js +2 -7
  223. package/esm2015/testing/public_api.js +3 -8
  224. package/fesm2015/daffodil-order-driver-in-memory.js +11 -101
  225. package/fesm2015/daffodil-order-driver-in-memory.js.map +1 -1
  226. package/fesm2015/daffodil-order-driver-magento-2.4.0.js +19 -261
  227. package/fesm2015/daffodil-order-driver-magento-2.4.0.js.map +1 -1
  228. package/fesm2015/daffodil-order-driver-magento-2.4.1.js +37 -542
  229. package/fesm2015/daffodil-order-driver-magento-2.4.1.js.map +1 -1
  230. package/fesm2015/daffodil-order-driver-testing.js +4 -54
  231. package/fesm2015/daffodil-order-driver-testing.js.map +1 -1
  232. package/fesm2015/daffodil-order-driver.js +1 -70
  233. package/fesm2015/daffodil-order-driver.js.map +1 -1
  234. package/fesm2015/daffodil-order-routing.js +5 -70
  235. package/fesm2015/daffodil-order-routing.js.map +1 -1
  236. package/fesm2015/daffodil-order-state-testing.js +4 -121
  237. package/fesm2015/daffodil-order-state-testing.js.map +1 -1
  238. package/fesm2015/daffodil-order-state.js +69 -871
  239. package/fesm2015/daffodil-order-state.js.map +1 -1
  240. package/fesm2015/daffodil-order-testing.js +16 -325
  241. package/fesm2015/daffodil-order-testing.js.map +1 -1
  242. package/fesm2015/daffodil-order.js +17 -133
  243. package/fesm2015/daffodil-order.js.map +1 -1
  244. package/package.json +5 -5
  245. package/routing/package.json +1 -1
  246. package/state/package.json +1 -1
  247. package/state/testing/package.json +1 -1
  248. package/testing/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"daffodil-order-state.js","sources":["../../../libs/order/state/src/actions/order.actions.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/order-initial-state.ts","../../../libs/order/state/src/reducers/order/order.reducer.ts","../../../libs/order/state/src/reducers/order-reducers.ts","../../../libs/order/state/src/reducers/order-store-feature-key.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.selector.ts","../../../libs/order/state/src/selectors/order-all.selector.ts","../../../libs/order/state/src/facades/order/order.facade.ts","../../../libs/order/state/src/effects/order.effects.ts","../../../libs/order/state/src/order-state.module.ts"],"sourcesContent":["import { Action } from '@ngrx/store';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffStateError } from '@daffodil/core/state';\nimport { DaffOrder } 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 V extends DaffCart = DaffCart\n> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadAction;\n\n constructor(public orderId: T['id'], public cartId?: V['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<T extends DaffCart = DaffCart> implements Action {\n readonly type = DaffOrderActionTypes.OrderListAction;\n\n constructor(public payload?: T['id']) {}\n}\n\nexport class DaffOrderListSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderListSuccessAction;\n\n constructor(public payload: 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 V extends DaffCart = DaffCart\n> =\n | DaffOrderLoad<T, V>\n | DaffOrderLoadSuccess<T>\n | DaffOrderLoadFailure\n | DaffOrderList\n | DaffOrderListSuccess<T>\n | DaffOrderListFailure;\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 {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\nimport { daffGetOrderAdapter } from './order-entities-adapter';\nimport { daffOrderEntitiesInitialState } from './order-entities-initial-state';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\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.upsertMany(action.payload, state);\n\n default:\n return state;\n }\n}\n","import { DaffOrderReducerState } from './order-reducer.interface';\n\nexport const daffOrderInitialState: DaffOrderReducerState = {\n loading: false,\n errors: [],\n};\n","import { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\nimport { daffOrderInitialState } from './order-initial-state';\nimport { DaffOrderReducerState } from './order-reducer.interface';\n\nexport function daffOrderReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderInitialState,\n action: DaffOrderActions<T>,\n): DaffOrderReducerState {\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n case DaffOrderActionTypes.OrderLoadAction:\n return {\n ...state,\n loading: true,\n };\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return {\n ...state,\n loading: false,\n errors: [],\n };\n\n case DaffOrderActionTypes.OrderListFailureAction:\n case DaffOrderActionTypes.OrderLoadFailureAction:\n return {\n ...state,\n errors: [\n ...state.errors,\n action.payload,\n ],\n loading: false,\n };\n\n default:\n return state;\n }\n}\n","import { ActionReducerMap } from '@ngrx/store';\n\nimport { daffOrderEntitiesReducer } from './order-entities/public_api';\nimport { DaffOrderReducersState } from './order-reducers.interface';\nimport { daffOrderReducer } from './order/order.reducer';\n\nexport const daffOrderReducers: ActionReducerMap<DaffOrderReducersState> = {\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n};\n","export const DAFF_ORDER_STORE_FEATURE_KEY = 'daffOrder';\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 {\n DaffOrderStateRootSlice,\n daffGetOrderAdapter,\n DaffOrderEntityState,\n} from '../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\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\tselectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n\t/**\n\t * Selects whether the specified order has a discount.\n\t */\n\tselectOrderHasDiscount: (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 {\n createSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport { DaffStateError } from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducerState,\n} from '../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\n\nexport interface DaffOrderSelectors {\n selectOrderState: MemoizedSelector<DaffOrderStateRootSlice, DaffOrderReducerState>;\n selectOrderLoading: MemoizedSelector<DaffOrderStateRootSlice, boolean>;\n selectOrderErrors: MemoizedSelector<DaffOrderStateRootSlice, DaffStateError[]>;\n}\n\nconst createOrderSelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const selectOrderState = createSelector(\n selectOrderFeatureState,\n state => state.order,\n );\n\n const selectOrderLoading = createSelector(\n selectOrderState,\n state => state.loading,\n );\n\n const selectOrderErrors = createSelector(\n selectOrderState,\n state => state.errors,\n );\n\n return {\n selectOrderState,\n selectOrderLoading,\n selectOrderErrors,\n };\n};\n\nexport const getOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderSelectors =>\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,\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 { DaffStateError } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderTotal,\n} from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { DaffOrderEntitySelectors } from '../../selectors/order-entities.selector';\nimport { getDaffOrderSelectors } from '../../selectors/public_api';\nimport { DaffOrderFacadeInterface } from './order-facade.interface';\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\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 selectAllOrders,\n selectOrderTotal,\n selectOrderLoading,\n selectOrderErrors,\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(selectOrderLoading));\n this.errors$ = this.store.pipe(select(selectOrderErrors));\n\n this.orders$ = this.store.pipe(select(selectAllOrders));\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 {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n Effect,\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 V extends DaffCart = DaffCart\n> {\n constructor(\n private actions$: Actions,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n\t\t@Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * An effect for the loading of an order.\n */\n @Effect()\n get$ = this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderLoadAction),\n switchMap((action: DaffOrderLoad<T, V>) =>\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 @Effect()\n list$ = this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderListAction),\n switchMap((action: DaffOrderList) =>\n this.driver.list(action.payload).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n ),\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 { DaffOrderEffects } from './effects/order.effects';\nimport {\n DAFF_ORDER_STORE_FEATURE_KEY,\n daffOrderReducers,\n} from './reducers/public_api';\n\n@NgModule({\n imports: [\n DaffCartStateModule,\n EffectsModule.forFeature([\n DaffOrderEffects,\n ]),\n StoreModule.forFeature(DAFF_ORDER_STORE_FEATURE_KEY, daffOrderReducers),\n ],\n})\nexport class DaffOrderStateModule {}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daffodil-order-state.js","sources":["../../../libs/order/state/src/actions/order.actions.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/order-initial-state.ts","../../../libs/order/state/src/reducers/order/order.reducer.ts","../../../libs/order/state/src/reducers/order-reducers.ts","../../../libs/order/state/src/reducers/order-store-feature-key.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.selector.ts","../../../libs/order/state/src/selectors/order-all.selector.ts","../../../libs/order/state/src/facades/order/order.facade.ts","../../../libs/order/state/src/effects/order.effects.ts","../../../libs/order/state/src/order-state.module.ts","../../../libs/order/state/src/daffodil-order-state.ts"],"sourcesContent":["import { Action } from '@ngrx/store';\n\nimport { DaffCart } from '@daffodil/cart';\nimport { DaffStateError } from '@daffodil/core/state';\nimport { DaffOrder } 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 V extends DaffCart = DaffCart\n> implements Action {\n readonly type = DaffOrderActionTypes.OrderLoadAction;\n\n constructor(public orderId: T['id'], public cartId?: V['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<T extends DaffCart = DaffCart> implements Action {\n readonly type = DaffOrderActionTypes.OrderListAction;\n\n constructor(public payload?: T['id']) {}\n}\n\nexport class DaffOrderListSuccess<T extends DaffOrder = DaffOrder> implements Action {\n readonly type = DaffOrderActionTypes.OrderListSuccessAction;\n\n constructor(public payload: 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 V extends DaffCart = DaffCart\n> =\n | DaffOrderLoad<T, V>\n | DaffOrderLoadSuccess<T>\n | DaffOrderLoadFailure\n | DaffOrderList\n | DaffOrderListSuccess<T>\n | DaffOrderListFailure;\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 {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\nimport { daffGetOrderAdapter } from './order-entities-adapter';\nimport { daffOrderEntitiesInitialState } from './order-entities-initial-state';\nimport { DaffOrderEntityState } from './order-entities-state.interface';\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.upsertMany(action.payload, state);\n\n default:\n return state;\n }\n}\n","import { DaffOrderReducerState } from './order-reducer.interface';\n\nexport const daffOrderInitialState: DaffOrderReducerState = {\n loading: false,\n errors: [],\n};\n","import { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderActions,\n DaffOrderActionTypes,\n} from '../../actions/order.actions';\nimport { daffOrderInitialState } from './order-initial-state';\nimport { DaffOrderReducerState } from './order-reducer.interface';\n\nexport function daffOrderReducer<T extends DaffOrder = DaffOrder>(\n state = daffOrderInitialState,\n action: DaffOrderActions<T>,\n): DaffOrderReducerState {\n switch (action.type) {\n case DaffOrderActionTypes.OrderListAction:\n case DaffOrderActionTypes.OrderLoadAction:\n return {\n ...state,\n loading: true,\n };\n\n case DaffOrderActionTypes.OrderListSuccessAction:\n case DaffOrderActionTypes.OrderLoadSuccessAction:\n return {\n ...state,\n loading: false,\n errors: [],\n };\n\n case DaffOrderActionTypes.OrderListFailureAction:\n case DaffOrderActionTypes.OrderLoadFailureAction:\n return {\n ...state,\n errors: [\n ...state.errors,\n action.payload,\n ],\n loading: false,\n };\n\n default:\n return state;\n }\n}\n","import { ActionReducerMap } from '@ngrx/store';\n\nimport { daffOrderEntitiesReducer } from './order-entities/public_api';\nimport { DaffOrderReducersState } from './order-reducers.interface';\nimport { daffOrderReducer } from './order/order.reducer';\n\nexport const daffOrderReducers: ActionReducerMap<DaffOrderReducersState> = {\n order: daffOrderReducer,\n orders: daffOrderEntitiesReducer,\n};\n","export const DAFF_ORDER_STORE_FEATURE_KEY = 'daffOrder';\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 {\n DaffOrderStateRootSlice,\n daffGetOrderAdapter,\n DaffOrderEntityState,\n} from '../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\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\tselectOrderDiscountTotal: (orderId: T['id']) => MemoizedSelector<DaffOrderStateRootSlice<T>, DaffOrderTotal>;\n\t/**\n\t * Selects whether the specified order has a discount.\n\t */\n\tselectOrderHasDiscount: (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 {\n createSelector,\n MemoizedSelector,\n} from '@ngrx/store';\n\nimport { DaffStateError } from '@daffodil/core/state';\nimport { DaffOrder } from '@daffodil/order';\n\nimport {\n DaffOrderStateRootSlice,\n DaffOrderReducerState,\n} from '../reducers/public_api';\nimport { getDaffOrderReducersStateSelector } from './order-feature.selector';\n\nexport interface DaffOrderSelectors {\n selectOrderState: MemoizedSelector<DaffOrderStateRootSlice, DaffOrderReducerState>;\n selectOrderLoading: MemoizedSelector<DaffOrderStateRootSlice, boolean>;\n selectOrderErrors: MemoizedSelector<DaffOrderStateRootSlice, DaffStateError[]>;\n}\n\nconst createOrderSelectors = <T extends DaffOrder = DaffOrder>() => {\n const { selectOrderFeatureState } = getDaffOrderReducersStateSelector<T>();\n const selectOrderState = createSelector(\n selectOrderFeatureState,\n state => state.order,\n );\n\n const selectOrderLoading = createSelector(\n selectOrderState,\n state => state.loading,\n );\n\n const selectOrderErrors = createSelector(\n selectOrderState,\n state => state.errors,\n );\n\n return {\n selectOrderState,\n selectOrderLoading,\n selectOrderErrors,\n };\n};\n\nexport const getOrderSelectors = (() => {\n let cache;\n return <T extends DaffOrder = DaffOrder>(): DaffOrderSelectors =>\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,\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 { DaffStateError } from '@daffodil/core/state';\nimport {\n DaffOrder,\n DaffOrderTotal,\n} from '@daffodil/order';\n\nimport { DaffOrderStateRootSlice } from '../../reducers/public_api';\nimport { DaffOrderEntitySelectors } from '../../selectors/order-entities.selector';\nimport { getDaffOrderSelectors } from '../../selectors/public_api';\nimport { DaffOrderFacadeInterface } from './order-facade.interface';\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\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 selectAllOrders,\n selectOrderTotal,\n selectOrderLoading,\n selectOrderErrors,\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(selectOrderLoading));\n this.errors$ = this.store.pipe(select(selectOrderErrors));\n\n this.orders$ = this.store.pipe(select(selectAllOrders));\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 {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Actions,\n Effect,\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 V extends DaffCart = DaffCart\n> {\n constructor(\n private actions$: Actions,\n @Inject(DaffOrderDriver) private driver: DaffOrderServiceInterface<T>,\n\t\t@Inject(DAFF_ORDER_ERROR_MATCHER) private errorMatcher: ErrorTransformer,\n ) {}\n\n /**\n * An effect for the loading of an order.\n */\n @Effect()\n get$ = this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderLoadAction),\n switchMap((action: DaffOrderLoad<T, V>) =>\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 @Effect()\n list$ = this.actions$.pipe(\n ofType(DaffOrderActionTypes.OrderListAction),\n switchMap((action: DaffOrderList) =>\n this.driver.list(action.payload).pipe(\n map(resp => new DaffOrderListSuccess<T>(resp)),\n catchError((error: DaffError) => of(new DaffOrderListFailure(this.errorMatcher(error)))),\n ),\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 { DaffOrderEffects } from './effects/order.effects';\nimport {\n DAFF_ORDER_STORE_FEATURE_KEY,\n daffOrderReducers,\n} from './reducers/public_api';\n\n@NgModule({\n imports: [\n DaffCartStateModule,\n EffectsModule.forFeature([\n DaffOrderEffects,\n ]),\n StoreModule.forFeature(DAFF_ORDER_STORE_FEATURE_KEY, daffOrderReducers),\n ],\n})\nexport class DaffOrderStateModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {DaffOrderEffects as ɵa} from './effects/order.effects';"],"names":[],"mappings":"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"}