@vendure/core 1.6.4 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/api/common/custom-field-relation-resolver.service.d.ts +3 -1
  2. package/dist/api/common/custom-field-relation-resolver.service.js +7 -5
  3. package/dist/api/common/custom-field-relation-resolver.service.js.map +1 -1
  4. package/dist/api/config/generate-resolvers.d.ts +3 -0
  5. package/dist/api/config/generate-resolvers.js +7 -1
  6. package/dist/api/config/generate-resolvers.js.map +1 -1
  7. package/dist/api/resolvers/admin/collection.resolver.js +8 -2
  8. package/dist/api/resolvers/admin/collection.resolver.js.map +1 -1
  9. package/dist/api/resolvers/admin/order.resolver.d.ts +3 -2
  10. package/dist/api/resolvers/admin/order.resolver.js +15 -3
  11. package/dist/api/resolvers/admin/order.resolver.js.map +1 -1
  12. package/dist/api/resolvers/admin/product-option.resolver.d.ts +2 -1
  13. package/dist/api/resolvers/admin/product-option.resolver.js +13 -0
  14. package/dist/api/resolvers/admin/product-option.resolver.js.map +1 -1
  15. package/dist/api/resolvers/base/base-auth.resolver.d.ts +2 -2
  16. package/dist/api/resolvers/base/base-auth.resolver.js.map +1 -1
  17. package/dist/api/resolvers/entity/fulfillment-entity.resolver.d.ts +8 -2
  18. package/dist/api/resolvers/entity/fulfillment-entity.resolver.js +17 -3
  19. package/dist/api/resolvers/entity/fulfillment-entity.resolver.js.map +1 -1
  20. package/dist/api/resolvers/entity/order-item-entity.resolver.d.ts +3 -1
  21. package/dist/api/resolvers/entity/order-item-entity.resolver.js +9 -3
  22. package/dist/api/resolvers/entity/order-item-entity.resolver.js.map +1 -1
  23. package/dist/api/resolvers/entity/order-line-entity.resolver.d.ts +5 -3
  24. package/dist/api/resolvers/entity/order-line-entity.resolver.js +19 -2
  25. package/dist/api/resolvers/entity/order-line-entity.resolver.js.map +1 -1
  26. package/dist/api/resolvers/entity/payment-entity.resolver.d.ts +3 -1
  27. package/dist/api/resolvers/entity/payment-entity.resolver.js +6 -3
  28. package/dist/api/resolvers/entity/payment-entity.resolver.js.map +1 -1
  29. package/dist/api/resolvers/entity/product-option-group-entity.resolver.js +8 -3
  30. package/dist/api/resolvers/entity/product-option-group-entity.resolver.js.map +1 -1
  31. package/dist/api/resolvers/shop/shop-products.resolver.js +8 -2
  32. package/dist/api/resolvers/shop/shop-products.resolver.js.map +1 -1
  33. package/dist/api/schema/admin-api/order.api.graphql +11 -0
  34. package/dist/api/schema/admin-api/product-option-group.api.graphql +2 -0
  35. package/dist/api/schema/common/order.type.graphql +7 -0
  36. package/dist/bootstrap.js +2 -3
  37. package/dist/bootstrap.js.map +1 -1
  38. package/dist/common/configurable-operation.js +9 -4
  39. package/dist/common/configurable-operation.js.map +1 -1
  40. package/dist/common/constants.d.ts +1 -2
  41. package/dist/common/error/errors.d.ts +1 -0
  42. package/dist/common/error/errors.js.map +1 -1
  43. package/dist/common/error/generated-graphql-admin-errors.d.ts +10 -0
  44. package/dist/common/error/generated-graphql-admin-errors.js +17 -2
  45. package/dist/common/error/generated-graphql-admin-errors.js.map +1 -1
  46. package/dist/config/asset-import-strategy/asset-import-strategy.d.ts +24 -0
  47. package/dist/config/asset-import-strategy/asset-import-strategy.js +3 -0
  48. package/dist/config/asset-import-strategy/asset-import-strategy.js.map +1 -0
  49. package/dist/config/asset-import-strategy/default-asset-import-strategy.d.ts +24 -0
  50. package/dist/config/asset-import-strategy/default-asset-import-strategy.js +91 -0
  51. package/dist/config/asset-import-strategy/default-asset-import-strategy.js.map +1 -0
  52. package/dist/config/asset-naming-strategy/default-asset-naming-strategy.js +1 -1
  53. package/dist/config/asset-naming-strategy/default-asset-naming-strategy.js.map +1 -1
  54. package/dist/config/catalog/default-collection-filters.d.ts +18 -19
  55. package/dist/config/config-helpers.d.ts +4 -0
  56. package/dist/config/config-helpers.js +8 -1
  57. package/dist/config/config-helpers.js.map +1 -1
  58. package/dist/config/config.module.js +11 -0
  59. package/dist/config/config.module.js.map +1 -1
  60. package/dist/config/default-config.js +3 -1
  61. package/dist/config/default-config.js.map +1 -1
  62. package/dist/config/entity-id-strategy/entity-id-strategy.d.ts +7 -0
  63. package/dist/config/fulfillment/custom-fulfillment-process.d.ts +2 -2
  64. package/dist/config/index.d.ts +1 -0
  65. package/dist/config/index.js +1 -0
  66. package/dist/config/index.js.map +1 -1
  67. package/dist/config/logger/vendure-logger.d.ts +1 -0
  68. package/dist/config/logger/vendure-logger.js.map +1 -1
  69. package/dist/config/order/custom-order-process.d.ts +2 -2
  70. package/dist/config/order/order-item-price-calculation-strategy.d.ts +3 -0
  71. package/dist/config/payment/custom-payment-process.d.ts +2 -2
  72. package/dist/config/payment/dummy-payment-method-handler.js +8 -0
  73. package/dist/config/payment/dummy-payment-method-handler.js.map +1 -1
  74. package/dist/config/payment/payment-method-handler.d.ts +66 -0
  75. package/dist/config/payment/payment-method-handler.js +11 -1
  76. package/dist/config/payment/payment-method-handler.js.map +1 -1
  77. package/dist/config/promotion/actions/order-fixed-discount-action.js +1 -1
  78. package/dist/config/promotion/actions/order-fixed-discount-action.js.map +1 -1
  79. package/dist/config/promotion/conditions/buy-x-get-y-free-condition.d.ts +5 -7
  80. package/dist/config/vendure-config.d.ts +18 -0
  81. package/dist/connection/connection.module.d.ts +1 -1
  82. package/dist/connection/remove-custom-fields-with-eager-relations.d.ts +34 -0
  83. package/dist/connection/remove-custom-fields-with-eager-relations.js +55 -0
  84. package/dist/connection/remove-custom-fields-with-eager-relations.js.map +1 -0
  85. package/dist/connection/transaction-subscriber.d.ts +16 -2
  86. package/dist/connection/transaction-subscriber.js +27 -7
  87. package/dist/connection/transaction-subscriber.js.map +1 -1
  88. package/dist/connection/transaction-wrapper.js +6 -9
  89. package/dist/connection/transaction-wrapper.js.map +1 -1
  90. package/dist/connection/transactional-connection.d.ts +2 -33
  91. package/dist/connection/transactional-connection.js +23 -55
  92. package/dist/connection/transactional-connection.js.map +1 -1
  93. package/dist/data-import/providers/asset-importer/asset-importer.js +12 -18
  94. package/dist/data-import/providers/asset-importer/asset-importer.js.map +1 -1
  95. package/dist/entity/asset/asset.entity.js +4 -2
  96. package/dist/entity/asset/asset.entity.js.map +1 -1
  97. package/dist/entity/asset/orderable-asset.entity.js +3 -1
  98. package/dist/entity/asset/orderable-asset.entity.js.map +1 -1
  99. package/dist/entity/authentication-method/external-authentication-method.entity.js +3 -1
  100. package/dist/entity/authentication-method/external-authentication-method.entity.js.map +1 -1
  101. package/dist/entity/authentication-method/native-authentication-method.entity.js +3 -1
  102. package/dist/entity/authentication-method/native-authentication-method.entity.js.map +1 -1
  103. package/dist/entity/channel/channel.entity.js +5 -3
  104. package/dist/entity/channel/channel.entity.js.map +1 -1
  105. package/dist/entity/collection/collection-asset.entity.js +4 -2
  106. package/dist/entity/collection/collection-asset.entity.js.map +1 -1
  107. package/dist/entity/collection/collection-translation.entity.js +4 -2
  108. package/dist/entity/collection/collection-translation.entity.js.map +1 -1
  109. package/dist/entity/country/country-translation.entity.js +4 -2
  110. package/dist/entity/country/country-translation.entity.js.map +1 -1
  111. package/dist/entity/country/country.entity.js +3 -1
  112. package/dist/entity/country/country.entity.js.map +1 -1
  113. package/dist/entity/customer-group/customer-group.entity.js +3 -1
  114. package/dist/entity/customer-group/customer-group.entity.js.map +1 -1
  115. package/dist/entity/fulfillment/fulfillment.entity.js +3 -1
  116. package/dist/entity/fulfillment/fulfillment.entity.js.map +1 -1
  117. package/dist/entity/global-settings/global-settings.entity.js +3 -1
  118. package/dist/entity/global-settings/global-settings.entity.js.map +1 -1
  119. package/dist/entity/order-line/order-line.entity.js +4 -0
  120. package/dist/entity/order-line/order-line.entity.js.map +1 -1
  121. package/dist/entity/product/product-asset.entity.js +4 -2
  122. package/dist/entity/product/product-asset.entity.js.map +1 -1
  123. package/dist/entity/product-option/product-option-translation.entity.js.map +1 -1
  124. package/dist/entity/product-option-group/product-option-group-translation.entity.js.map +1 -1
  125. package/dist/entity/product-variant/product-variant-asset.entity.js +4 -2
  126. package/dist/entity/product-variant/product-variant-asset.entity.js.map +1 -1
  127. package/dist/entity/role/role.entity.js +3 -1
  128. package/dist/entity/role/role.entity.js.map +1 -1
  129. package/dist/entity/tag/tag.entity.js +3 -1
  130. package/dist/entity/tag/tag.entity.js.map +1 -1
  131. package/dist/entity/user/user.entity.js +3 -1
  132. package/dist/entity/user/user.entity.js.map +1 -1
  133. package/dist/entity/zone/zone.entity.js +3 -1
  134. package/dist/entity/zone/zone.entity.js.map +1 -1
  135. package/dist/event-bus/event-bus.js +14 -3
  136. package/dist/event-bus/event-bus.js.map +1 -1
  137. package/dist/event-bus/events/initializer-event.d.ts +12 -0
  138. package/dist/event-bus/events/initializer-event.js +19 -0
  139. package/dist/event-bus/events/initializer-event.js.map +1 -0
  140. package/dist/event-bus/events/product-option-event.d.ts +1 -1
  141. package/dist/event-bus/events/product-option-event.js.map +1 -1
  142. package/dist/event-bus/events/product-option-group-event.d.ts +1 -1
  143. package/dist/event-bus/events/product-option-group-event.js.map +1 -1
  144. package/dist/event-bus/index.d.ts +1 -0
  145. package/dist/event-bus/index.js +1 -0
  146. package/dist/event-bus/index.js.map +1 -1
  147. package/dist/i18n/messages/en.json +3 -0
  148. package/dist/job-queue/in-memory-job-queue-strategy.d.ts +1 -1
  149. package/dist/migrate.js +14 -0
  150. package/dist/migrate.js.map +1 -1
  151. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +33 -33
  152. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js.map +1 -1
  153. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +7 -7
  154. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js.map +1 -1
  155. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.d.ts +1 -0
  156. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.js +8 -1
  157. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-common.js.map +1 -1
  158. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.d.ts +11 -1
  159. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.js +31 -1
  160. package/dist/plugin/default-search-plugin/search-strategy/search-strategy-utils.js.map +1 -1
  161. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +29 -29
  162. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js.map +1 -1
  163. package/dist/plugin/plugin-metadata.js +2 -1
  164. package/dist/plugin/plugin-metadata.js.map +1 -1
  165. package/dist/plugin/vendure-plugin.d.ts +11 -2
  166. package/dist/plugin/vendure-plugin.js.map +1 -1
  167. package/dist/service/helpers/config-arg/config-arg.service.d.ts +1 -0
  168. package/dist/service/helpers/config-arg/config-arg.service.js +12 -1
  169. package/dist/service/helpers/config-arg/config-arg.service.js.map +1 -1
  170. package/dist/service/helpers/entity-hydrator/entity-hydrator.service.d.ts +3 -1
  171. package/dist/service/helpers/entity-hydrator/entity-hydrator.service.js +6 -4
  172. package/dist/service/helpers/entity-hydrator/entity-hydrator.service.js.map +1 -1
  173. package/dist/service/helpers/fulfillment-state-machine/fulfillment-state.d.ts +9 -1
  174. package/dist/service/helpers/fulfillment-state-machine/fulfillment-state.js.map +1 -1
  175. package/dist/service/helpers/list-query-builder/connection-utils.js +7 -1
  176. package/dist/service/helpers/list-query-builder/connection-utils.js.map +1 -1
  177. package/dist/service/helpers/list-query-builder/list-query-builder.d.ts +4 -3
  178. package/dist/service/helpers/list-query-builder/list-query-builder.js +17 -8
  179. package/dist/service/helpers/list-query-builder/list-query-builder.js.map +1 -1
  180. package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.d.ts +3 -1
  181. package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.js +6 -4
  182. package/dist/service/helpers/locale-string-hydrator/locale-string-hydrator.js.map +1 -1
  183. package/dist/service/helpers/order-calculator/order-calculator.d.ts +18 -0
  184. package/dist/service/helpers/order-calculator/order-calculator.js +18 -0
  185. package/dist/service/helpers/order-calculator/order-calculator.js.map +1 -1
  186. package/dist/service/helpers/order-modifier/order-modifier.d.ts +19 -1
  187. package/dist/service/helpers/order-modifier/order-modifier.js +49 -20
  188. package/dist/service/helpers/order-modifier/order-modifier.js.map +1 -1
  189. package/dist/service/helpers/order-state-machine/order-state-machine.js +1 -1
  190. package/dist/service/helpers/order-state-machine/order-state-machine.js.map +1 -1
  191. package/dist/service/helpers/order-state-machine/order-state.d.ts +9 -1
  192. package/dist/service/helpers/order-state-machine/order-state.js.map +1 -1
  193. package/dist/service/helpers/payment-state-machine/payment-state.d.ts +9 -1
  194. package/dist/service/helpers/payment-state-machine/payment-state.js.map +1 -1
  195. package/dist/service/helpers/product-price-applicator/product-price-applicator.d.ts +26 -2
  196. package/dist/service/helpers/product-price-applicator/product-price-applicator.js +26 -2
  197. package/dist/service/helpers/product-price-applicator/product-price-applicator.js.map +1 -1
  198. package/dist/service/helpers/slug-validator/slug-validator.d.ts +16 -0
  199. package/dist/service/helpers/slug-validator/slug-validator.js +11 -1
  200. package/dist/service/helpers/slug-validator/slug-validator.js.map +1 -1
  201. package/dist/service/helpers/translatable-saver/translatable-saver.d.ts +28 -1
  202. package/dist/service/helpers/translatable-saver/translatable-saver.js +28 -1
  203. package/dist/service/helpers/translatable-saver/translatable-saver.js.map +1 -1
  204. package/dist/service/helpers/translator/translator.service.d.ts +10 -0
  205. package/dist/service/helpers/translator/translator.service.js +29 -0
  206. package/dist/service/helpers/translator/translator.service.js.map +1 -0
  207. package/dist/service/helpers/utils/translate-entity.d.ts +3 -3
  208. package/dist/service/helpers/utils/translate-entity.js +11 -2
  209. package/dist/service/helpers/utils/translate-entity.js.map +1 -1
  210. package/dist/service/index.d.ts +1 -0
  211. package/dist/service/index.js +1 -0
  212. package/dist/service/index.js.map +1 -1
  213. package/dist/service/initializer.service.d.ts +3 -1
  214. package/dist/service/initializer.service.js +7 -2
  215. package/dist/service/initializer.service.js.map +1 -1
  216. package/dist/service/service.module.js +2 -0
  217. package/dist/service/service.module.js.map +1 -1
  218. package/dist/service/services/asset.service.d.ts +2 -1
  219. package/dist/service/services/asset.service.js +19 -4
  220. package/dist/service/services/asset.service.js.map +1 -1
  221. package/dist/service/services/collection.service.d.ts +3 -1
  222. package/dist/service/services/collection.service.js +16 -16
  223. package/dist/service/services/collection.service.js.map +1 -1
  224. package/dist/service/services/country.service.d.ts +3 -1
  225. package/dist/service/services/country.service.js +9 -7
  226. package/dist/service/services/country.service.js.map +1 -1
  227. package/dist/service/services/customer.service.d.ts +3 -1
  228. package/dist/service/services/customer.service.js +8 -6
  229. package/dist/service/services/customer.service.js.map +1 -1
  230. package/dist/service/services/facet-value.service.d.ts +3 -1
  231. package/dist/service/services/facet-value.service.js +11 -6
  232. package/dist/service/services/facet-value.service.js.map +1 -1
  233. package/dist/service/services/facet.service.d.ts +3 -1
  234. package/dist/service/services/facet.service.js +18 -8
  235. package/dist/service/services/facet.service.js.map +1 -1
  236. package/dist/service/services/fulfillment.service.d.ts +9 -0
  237. package/dist/service/services/fulfillment.service.js +48 -8
  238. package/dist/service/services/fulfillment.service.js.map +1 -1
  239. package/dist/service/services/order-testing.service.d.ts +3 -1
  240. package/dist/service/services/order-testing.service.js +6 -4
  241. package/dist/service/services/order-testing.service.js.map +1 -1
  242. package/dist/service/services/order.service.d.ts +10 -2
  243. package/dist/service/services/order.service.js +50 -27
  244. package/dist/service/services/order.service.js.map +1 -1
  245. package/dist/service/services/payment.service.d.ts +2 -0
  246. package/dist/service/services/payment.service.js +30 -10
  247. package/dist/service/services/payment.service.js.map +1 -1
  248. package/dist/service/services/product-option-group.service.d.ts +24 -2
  249. package/dist/service/services/product-option-group.service.js +92 -6
  250. package/dist/service/services/product-option-group.service.js.map +1 -1
  251. package/dist/service/services/product-option.service.d.ts +15 -2
  252. package/dist/service/services/product-option.service.js +66 -5
  253. package/dist/service/services/product-option.service.js.map +1 -1
  254. package/dist/service/services/product-variant.service.d.ts +3 -1
  255. package/dist/service/services/product-variant.service.js +12 -10
  256. package/dist/service/services/product-variant.service.js.map +1 -1
  257. package/dist/service/services/product.service.d.ts +5 -1
  258. package/dist/service/services/product.service.js +55 -20
  259. package/dist/service/services/product.service.js.map +1 -1
  260. package/dist/service/services/promotion.service.js +4 -1
  261. package/dist/service/services/promotion.service.js.map +1 -1
  262. package/dist/service/services/shipping-method.service.d.ts +3 -1
  263. package/dist/service/services/shipping-method.service.js +8 -6
  264. package/dist/service/services/shipping-method.service.js.map +1 -1
  265. package/dist/service/services/stock-movement.service.js +8 -7
  266. package/dist/service/services/stock-movement.service.js.map +1 -1
  267. package/dist/service/services/user.service.d.ts +1 -1
  268. package/dist/service/services/user.service.js +5 -0
  269. package/dist/service/services/user.service.js.map +1 -1
  270. package/dist/service/services/zone.service.d.ts +3 -1
  271. package/dist/service/services/zone.service.js +8 -6
  272. package/dist/service/services/zone.service.js.map +1 -1
  273. package/package.json +4 -4
@@ -40,8 +40,8 @@ const stock_movement_service_1 = require("../../services/stock-movement.service"
40
40
  const custom_field_relation_service_1 = require("../custom-field-relation/custom-field-relation.service");
41
41
  const entity_hydrator_service_1 = require("../entity-hydrator/entity-hydrator.service");
42
42
  const order_calculator_1 = require("../order-calculator/order-calculator");
43
+ const translator_service_1 = require("../translator/translator.service");
43
44
  const patch_entity_1 = require("../utils/patch-entity");
44
- const translate_entity_1 = require("../utils/translate-entity");
45
45
  /**
46
46
  * @description
47
47
  * This helper is responsible for modifying the contents of an Order.
@@ -52,9 +52,11 @@ const translate_entity_1 = require("../utils/translate-entity");
52
52
  * So this helper was mainly extracted to isolate the huge `modifyOrder` method since the
53
53
  * OrderService was just growing too large. Future refactoring could improve the organization
54
54
  * of these Order-related methods into a more clearly-delineated set of classes.
55
+ *
56
+ * @docsCategory service-helpers
55
57
  */
56
58
  let OrderModifier = class OrderModifier {
57
- constructor(connection, configService, orderCalculator, paymentService, countryService, stockMovementService, productVariantService, customFieldRelationService, promotionService, eventBus, entityHydrator, historyService) {
59
+ constructor(connection, configService, orderCalculator, paymentService, countryService, stockMovementService, productVariantService, customFieldRelationService, promotionService, eventBus, entityHydrator, historyService, translator) {
58
60
  this.connection = connection;
59
61
  this.configService = configService;
60
62
  this.orderCalculator = orderCalculator;
@@ -67,8 +69,10 @@ let OrderModifier = class OrderModifier {
67
69
  this.eventBus = eventBus;
68
70
  this.entityHydrator = entityHydrator;
69
71
  this.historyService = historyService;
72
+ this.translator = translator;
70
73
  }
71
74
  /**
75
+ * @description
72
76
  * Ensure that the ProductVariant has sufficient saleable stock to add the given
73
77
  * quantity to an Order.
74
78
  */
@@ -80,6 +84,11 @@ let OrderModifier = class OrderModifier {
80
84
  }
81
85
  return correctedQuantity;
82
86
  }
87
+ /**
88
+ * @description
89
+ * Given a ProductVariant ID and optional custom fields, this method will return an existing OrderLine that
90
+ * matches, or `undefined` if no match is found.
91
+ */
83
92
  async getExistingOrderLine(ctx, order, productVariantId, customFields) {
84
93
  for (const line of order.lines) {
85
94
  const match = utils_1.idsAreEqual(line.productVariant.id, productVariantId) &&
@@ -90,6 +99,7 @@ let OrderModifier = class OrderModifier {
90
99
  }
91
100
  }
92
101
  /**
102
+ * @description
93
103
  * Returns the OrderLine to which a new OrderItem belongs, creating a new OrderLine
94
104
  * if no existing line is found.
95
105
  */
@@ -116,13 +126,14 @@ let OrderModifier = class OrderModifier {
116
126
  'productVariant.taxCategory',
117
127
  ],
118
128
  });
119
- lineWithRelations.productVariant = translate_entity_1.translateDeep(await this.productVariantService.applyChannelPriceAndTax(lineWithRelations.productVariant, ctx, order), ctx.languageCode);
129
+ lineWithRelations.productVariant = this.translator.translate(await this.productVariantService.applyChannelPriceAndTax(lineWithRelations.productVariant, ctx, order), ctx);
120
130
  order.lines.push(lineWithRelations);
121
131
  await this.connection.getRepository(ctx, order_entity_1.Order).save(order, { reload: false });
122
132
  this.eventBus.publish(new index_1.OrderLineEvent(ctx, order, lineWithRelations, 'created'));
123
133
  return lineWithRelations;
124
134
  }
125
135
  /**
136
+ * @description
126
137
  * Updates the quantity of an OrderLine, taking into account the available saleable stock level.
127
138
  * Returns the actual quantity that the OrderLine was updated to (which may be less than the
128
139
  * `quantity` argument if insufficient stock was available.
@@ -367,10 +378,15 @@ let OrderModifier = class OrderModifier {
367
378
  order.couponCodes = input.couponCodes;
368
379
  }
369
380
  const updatedOrderLines = order.lines.filter(l => updatedOrderLineIds.includes(l.id));
370
- const promotions = await this.connection.getRepository(ctx, promotion_entity_1.Promotion).find({
371
- where: { enabled: true, deletedAt: null },
372
- order: { priorityScore: 'ASC' },
373
- });
381
+ const promotions = await this.connection
382
+ .getRepository(ctx, promotion_entity_1.Promotion)
383
+ .createQueryBuilder('promotion')
384
+ .leftJoin('promotion.channels', 'channel')
385
+ .where('channel.id = :channelId', { channelId: ctx.channelId })
386
+ .andWhere('promotion.deletedAt IS NULL')
387
+ .andWhere('promotion.enabled = :enabled', { enabled: true })
388
+ .orderBy('promotion.priorityScore', 'ASC')
389
+ .getMany();
374
390
  await this.orderCalculator.applyPriceAdjustments(ctx, order, promotions, updatedOrderLines, {
375
391
  recalculateShipping: (_g = input.options) === null || _g === void 0 ? void 0 : _g.recalculateShipping,
376
392
  });
@@ -476,8 +492,8 @@ let OrderModifier = class OrderModifier {
476
492
  // or equal to the defaultValue
477
493
  for (const def of customFieldDefs) {
478
494
  const key = def.name;
479
- const existingValue = existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
480
- if (existingValue != null) {
495
+ const existingValue = this.coerceValue(def, existingCustomFields);
496
+ if (existingValue != null && (!def.list || (existingValue === null || existingValue === void 0 ? void 0 : existingValue.length) !== 0)) {
481
497
  if (def.defaultValue != null) {
482
498
  if (existingValue !== def.defaultValue) {
483
499
  return false;
@@ -503,13 +519,8 @@ let OrderModifier = class OrderModifier {
503
519
  }
504
520
  for (const def of customFieldDefs) {
505
521
  const key = def.name;
506
- // This ternary is there because with the MySQL driver, boolean customFields with a default
507
- // of `false` were being rep-resented as `0`, thus causing the equality check to fail.
508
- // So if it's a boolean, we'll explicitly coerce the value to a boolean.
509
- const existingValue = def.type === 'boolean' && typeof (existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key]) === 'number'
510
- ? !!(existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key])
511
- : existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
512
- if (existingValue !== undefined) {
522
+ const existingValue = this.coerceValue(def, existingCustomFields);
523
+ if (def.type !== 'relation' && existingValue !== undefined) {
513
524
  const valuesMatch = JSON.stringify(inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === JSON.stringify(existingValue);
514
525
  const undefinedMatchesNull = existingValue === null && (inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === undefined;
515
526
  const defaultValueMatch = (inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === undefined && def.defaultValue === existingValue;
@@ -518,17 +529,34 @@ let OrderModifier = class OrderModifier {
518
529
  }
519
530
  }
520
531
  else if (def.type === 'relation') {
521
- const inputId = `${key}Id`;
532
+ const inputId = shared_utils_1.getGraphQlInputName(def);
522
533
  const inputValue = inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[inputId];
523
534
  // tslint:disable-next-line:no-non-null-assertion
524
535
  const existingRelation = lineWithCustomFieldRelations.customFields[key];
525
- if (inputValue && inputValue !== (existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.id)) {
526
- return false;
536
+ if (inputValue) {
537
+ const customFieldNotEqual = def.list
538
+ ? JSON.stringify(inputValue.sort()) !==
539
+ JSON.stringify(existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.map((relation) => relation.id).sort())
540
+ : inputValue !== (existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.id);
541
+ if (customFieldNotEqual) {
542
+ return false;
543
+ }
527
544
  }
528
545
  }
529
546
  }
530
547
  return true;
531
548
  }
549
+ /**
550
+ * This function is required because with the MySQL driver, boolean customFields with a default
551
+ * of `false` were being represented as `0`, thus causing the equality check to fail.
552
+ * So if it's a boolean, we'll explicitly coerce the value to a boolean.
553
+ */
554
+ coerceValue(def, existingCustomFields) {
555
+ const key = def.name;
556
+ return def.type === 'boolean' && typeof (existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key]) === 'number'
557
+ ? !!(existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key])
558
+ : existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
559
+ }
532
560
  async getProductVariantOrThrow(ctx, productVariantId) {
533
561
  const productVariant = await this.productVariantService.findOne(ctx, productVariantId);
534
562
  if (!productVariant) {
@@ -550,7 +578,8 @@ OrderModifier = __decorate([
550
578
  promotion_service_1.PromotionService,
551
579
  event_bus_1.EventBus,
552
580
  entity_hydrator_service_1.EntityHydrator,
553
- history_service_1.HistoryService])
581
+ history_service_1.HistoryService,
582
+ translator_service_1.TranslatorService])
554
583
  ], OrderModifier);
555
584
  exports.OrderModifier = OrderModifier;
556
585
  //# sourceMappingURL=order-modifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ let OrderStateMachine = class OrderStateMachine {
97
97
  return `message.cannot-transition-from-arranging-additional-payment`;
98
98
  }
99
99
  }
100
- if (fromState === 'AddingItems' && toState !== 'Cancelled') {
100
+ if (fromState === 'AddingItems' && toState !== 'Cancelled' && data.order.lines.length > 0) {
101
101
  const variantIds = unique_1.unique(data.order.lines.map(l => l.productVariant.id));
102
102
  const qb = this.connection
103
103
  .getRepository(data.ctx, product_variant_entity_1.ProductVariant)
@@ -1 +1 @@
1
- {"version":3,"file":"order-state-machine.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-state-machine/order-state-machine.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yEAAuE;AAEvE,uDAAoD;AAGpD,yDAAqE;AACrE,oGAAgF;AAChF,oHAA+G;AAE/G,wHAAmH;AACnH,iDAAiE;AACjE,mEAA+D;AAC/D,2FAAuF;AACvF,4GAAiG;AACjG,qEAA2D;AAC3D,2EAAiE;AACjE,mGAAwF;AACxF,qFAAgF;AAChF,oDAAoD;AACpD,oEAAgE;AAChE,wEAAoE;AACpE,kFAA6E;AAC7E,sDAQ8B;AAE9B,+CAAuF;AAGvF,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAI1B,YACY,UAAmC,EACnC,aAA4B,EAC5B,oBAA0C,EAC1C,cAA8B,EAC9B,gBAAkC,EAClC,QAAkB;QALlB,eAAU,GAAV,UAAU,CAAyB;QACnC,kBAAa,GAAb,aAAa,CAAe;QAC5B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,aAAQ,GAAR,QAAQ,CAAU;QARb,iBAAY,GAAe,SAAS,CAAC;QAUlD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;IAED,eAAe;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,aAAa,CAAC,YAAwB,EAAE,QAAoB;QACxD,OAAO,IAAI,0BAAG,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACxE,CAAC;IAED,aAAa,CAAC,KAAY;QACtB,MAAM,GAAG,GAAG,IAAI,0BAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,GAAG,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAmB,EAAE,KAAY,EAAE,KAAiB;QACjE,MAAM,GAAG,GAAG,IAAI,0BAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9C,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,yBAAyB,CAAC,GAAmB,EAAE,EAAM;QAC/D,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,EAAE,oBAAK,EAAE,EAAE,EAAE;YAC1D,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,0BAA0B,CAAC;SAClE,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAAC,SAAqB,EAAE,OAAmB,EAAE,IAAyB;QACjG,IAAI,SAAS,KAAK,WAAW,EAAE;YAC3B,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU;iBACtC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,6CAAiB,CAAC;iBAC1C,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAC9E,IAAI,OAAO,KAAK,4BAA4B,EAAE;gBAC1C,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;oBACzF,OAAO,yDAAyD,CAAC;iBACpE;aACJ;iBAAM;gBACH,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE;oBAC7D,OAAO,wDAAwD,CAAC;iBACnE;aACJ;SACJ;QACD,IAAI,SAAS,KAAK,4BAA4B,EAAE;YAC5C,IAAI,OAAO,KAAK,WAAW,EAAE;gBACzB,OAAO;aACV;YACD,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,wBAAO,CAAC,CAAC,IAAI,CAAC;gBACjF,SAAS,EAAE,CAAC,SAAS,CAAC;gBACtB,KAAK,EAAE;oBACH,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE;iBAC/B;aACJ,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,gBAAgB,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,oCAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7E,IAAI,CAAC,GAAG,OAAO,EAAE;gBACb,OAAO,6DAA6D,CAAC;aACxE;SACJ;QACD,IAAI,SAAS,KAAK,aAAa,IAAI,OAAO,KAAK,WAAW,EAAE;YACxD,MAAM,UAAU,GAAG,eAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1E,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU;iBACrB,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,uCAAc,CAAC;iBACvC,kBAAkB,CAAC,SAAS,CAAC;iBAC7B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;iBACtC,KAAK,CAAC,2BAA2B,CAAC;iBAClC,QAAQ,CAAC,2BAA2B,CAAC;iBACrC,QAAQ,CAAC,gCAAgC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAChE,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,iBAAiB,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE;gBAChD,OAAO,yEAAyE,CAAC;aACpF;SACJ;QACD,IAAI,OAAO,KAAK,kBAAkB,EAAE;YAChC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC/B,OAAO,0DAA0D,CAAC;aACrE;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACtB,OAAO,uDAAuD,CAAC;aAClE;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBACpE,OAAO,8DAA8D,CAAC;aACzE;SACJ;QACD,IAAI,OAAO,KAAK,mBAAmB,EAAE;YACjC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,CAAC;YACzF,IAAI,CAAC,iCAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE;gBACxF,OAAO,uDAAuD,CAAC;aAClE;SACJ;QACD,IAAI,OAAO,KAAK,gBAAgB,IAAI,CAAC,iCAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;YAC7E,OAAO,oDAAoD,CAAC;SAC/D;QACD,IAAI,OAAO,KAAK,WAAW,IAAI,SAAS,KAAK,aAAa,IAAI,SAAS,KAAK,kBAAkB,EAAE;YAC5F,IAAI,CAAC,uCAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxC,OAAO,gDAAgD,CAAC;aAC3D;SACJ;QACD,IAAI,OAAO,KAAK,kBAAkB,EAAE;YAChC,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,2CAA6B,CAAC,qBAAqB,CAAC,EAAE;gBACvD,OAAO,2DAA2D,CAAC;aACtE;SACJ;QACD,IAAI,OAAO,KAAK,SAAS,EAAE;YACvB,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,kCAAoB,CAAC,qBAAqB,CAAC,EAAE;gBAC9C,OAAO,0DAA0D,CAAC;aACrE;SACJ;QACD,IAAI,OAAO,KAAK,oBAAoB,EAAE;YAClC,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,6CAA+B,CAAC,qBAAqB,CAAC,EAAE;gBACzD,OAAO,6DAA6D,CAAC;aACxE;SACJ;QACD,IAAI,OAAO,KAAK,WAAW,EAAE;YACzB,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,oCAAsB,CAAC,qBAAqB,CAAC,EAAE;gBAChD,OAAO,4DAA4D,CAAC;aACvE;SACJ;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,SAAqB,EAAE,OAAmB,EAAE,IAAyB;QAC/F,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC5B,MAAM,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;QACzF,IAAI,KAAK,CAAC,MAAM,EAAE;YACd,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAChG,IAAI,iBAAiB,EAAE;gBACnB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;gBACrB,KAAK,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC;gBACjC,MAAM,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC7D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,qCAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;aAC/E;SACJ;QACD,MAAM,mBAAmB,GAAG,MAAM,uBAAuB,CAAC,mBAAmB,CACzE,GAAG,EACH,SAAS,EACT,OAAO,EACP,KAAK,CACR,CAAC;QACF,IAAI,mBAAmB,EAAE;YACrB,MAAM,IAAI,CAAC,oBAAoB,CAAC,yBAAyB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACzE;QACD,IAAI,OAAO,KAAK,WAAW,EAAE;YACzB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;SACxB;QACD,MAAM,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC;YACjD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,IAAI,EAAE,kCAAgB,CAAC,sBAAsB;YAC7C,GAAG;YACH,IAAI,EAAE;gBACF,IAAI,EAAE,SAAS;gBACf,EAAE,EAAE,OAAO;aACd;SACJ,CAAC,CAAC;IACP,CAAC;IAEO,UAAU;;QACd,MAAM,eAAe,GAAG,MAAA,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,mCAAI,EAAE,CAAC;QAEtE,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,CACzC,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CACrB,yDAA0B,CAAC,WAAW,EAAE,OAAO,CAAC,WAA+B,CAAC,EACpF,mCAAqB,CACxB,CAAC;QAEF,MAAM,gBAAgB,GAAG,6DAA4B,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;QAErF,OAAO;YACH,WAAW,EAAE,cAAc;YAC3B,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAClD,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;oBACnC,IAAI,OAAO,OAAO,CAAC,iBAAiB,KAAK,UAAU,EAAE;wBACjD,MAAM,MAAM,GAAG,MAAM,gCAAwB,CACzC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CACtD,CAAC;wBACF,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;4BAChD,OAAO,MAAM,CAAC;yBACjB;qBACJ;iBACJ;gBACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAC5D,CAAC;YACD,eAAe,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;gBAChD,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;oBACnC,IAAI,OAAO,OAAO,CAAC,eAAe,KAAK,UAAU,EAAE;wBAC/C,MAAM,gCAAwB,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;qBACrF;iBACJ;gBACD,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;gBAC3C,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;oBACnC,IAAI,OAAO,OAAO,CAAC,iBAAiB,KAAK,UAAU,EAAE;wBACjD,MAAM,gCAAwB,CAC1B,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CACzD,CAAC;qBACL;iBACJ;gBACD,MAAM,IAAI,8BAAqB,CAAC,OAAO,IAAI,yCAAyC,EAAE;oBAClF,SAAS;oBACT,OAAO;iBACV,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;CACJ,CAAA;AAlOY,iBAAiB;IAD7B,mBAAU,EAAE;qCAMe,kDAAuB;QACpB,8BAAa;QACN,6CAAoB;QAC1B,gCAAc;QACZ,oCAAgB;QACxB,gBAAQ;GAVrB,iBAAiB,CAkO7B;AAlOY,8CAAiB"}
1
+ {"version":3,"file":"order-state-machine.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-state-machine/order-state-machine.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import { RequestContext } from '../../../api/common/request-context';
2
2
  import { Transitions } from '../../../common/finite-state-machine/types';
3
3
  import { Order } from '../../../entity/order/order.entity';
4
+ /**
5
+ * @description
6
+ * An interface to extend standard {@link OrderState}.
7
+ *
8
+ * @docsCategory orders
9
+ */
10
+ export interface CustomOrderStates {
11
+ }
4
12
  /**
5
13
  * @description
6
14
  * These are the default states of the Order process. They can be augmented and
@@ -8,7 +16,7 @@ import { Order } from '../../../entity/order/order.entity';
8
16
  *
9
17
  * @docsCategory orders
10
18
  */
11
- export declare type OrderState = 'Created' | 'AddingItems' | 'ArrangingPayment' | 'PaymentAuthorized' | 'PaymentSettled' | 'PartiallyShipped' | 'Shipped' | 'PartiallyDelivered' | 'Delivered' | 'Modifying' | 'ArrangingAdditionalPayment' | 'Cancelled';
19
+ export declare type OrderState = 'Created' | 'AddingItems' | 'ArrangingPayment' | 'PaymentAuthorized' | 'PaymentSettled' | 'PartiallyShipped' | 'Shipped' | 'PartiallyDelivered' | 'Delivered' | 'Modifying' | 'ArrangingAdditionalPayment' | 'Cancelled' | keyof CustomOrderStates;
12
20
  export declare const orderStateTransitions: Transitions<OrderState>;
13
21
  export interface OrderTransitionData {
14
22
  ctx: RequestContext;
@@ -1 +1 @@
1
- {"version":3,"file":"order-state.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-state-machine/order-state.ts"],"names":[],"mappings":";;;AAyBa,QAAA,qBAAqB,GAA4B;IAC1D,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,aAAa,CAAC;KACtB;IACD,WAAW,EAAE;QACT,EAAE,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC;KACxC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC;KAC1E;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,CAAC,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,4BAA4B,CAAC;KACjF;IACD,cAAc,EAAE;QACZ,EAAE,EAAE;YACA,oBAAoB;YACpB,WAAW;YACX,kBAAkB;YAClB,SAAS;YACT,WAAW;YACX,WAAW;YACX,4BAA4B;SAC/B;KACJ;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,CAAC;KAClE;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC;KACpE;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC;KAC9C;IACD,SAAS,EAAE;QACP,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,SAAS,EAAE;QACP,EAAE,EAAE;YACA,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;YAClB,SAAS;YACT,oBAAoB;YACpB,4BAA4B;SAC/B;KACJ;IACD,0BAA0B,EAAE;QACxB,EAAE,EAAE;YACA,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;YAClB,SAAS;YACT,oBAAoB;YACpB,WAAW;SACd;KACJ;IACD,SAAS,EAAE;QACP,EAAE,EAAE,EAAE;KACT;CACJ,CAAC"}
1
+ {"version":3,"file":"order-state.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-state-machine/order-state.ts"],"names":[],"mappings":";;;AAkCa,QAAA,qBAAqB,GAA4B;IAC1D,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,aAAa,CAAC;KACtB;IACD,WAAW,EAAE;QACT,EAAE,EAAE,CAAC,kBAAkB,EAAE,WAAW,CAAC;KACxC;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC;KAC1E;IACD,iBAAiB,EAAE;QACf,EAAE,EAAE,CAAC,gBAAgB,EAAE,WAAW,EAAE,WAAW,EAAE,4BAA4B,CAAC;KACjF;IACD,cAAc,EAAE;QACZ,EAAE,EAAE;YACA,oBAAoB;YACpB,WAAW;YACX,kBAAkB;YAClB,SAAS;YACT,WAAW;YACX,WAAW;YACX,4BAA4B;SAC/B;KACJ;IACD,gBAAgB,EAAE;QACd,EAAE,EAAE,CAAC,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,WAAW,CAAC;KAClE;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,oBAAoB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC;KACpE;IACD,kBAAkB,EAAE;QAChB,EAAE,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC;KAC9C;IACD,SAAS,EAAE;QACP,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,SAAS,EAAE;QACP,EAAE,EAAE;YACA,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;YAClB,SAAS;YACT,oBAAoB;YACpB,4BAA4B;SAC/B;KACJ;IACD,0BAA0B,EAAE;QACxB,EAAE,EAAE;YACA,mBAAmB;YACnB,gBAAgB;YAChB,kBAAkB;YAClB,SAAS;YACT,oBAAoB;YACpB,WAAW;SACd;KACJ;IACD,SAAS,EAAE;QACP,EAAE,EAAE,EAAE;KACT;CACJ,CAAC"}
@@ -2,13 +2,21 @@ import { RequestContext } from '../../../api/common/request-context';
2
2
  import { Transitions } from '../../../common/finite-state-machine/types';
3
3
  import { Order } from '../../../entity/order/order.entity';
4
4
  import { Payment } from '../../../entity/payment/payment.entity';
5
+ /**
6
+ * @description
7
+ * An interface to extend standard {@link PaymentState}.
8
+ *
9
+ * @docsCategory payment
10
+ */
11
+ export interface CustomPaymentStates {
12
+ }
5
13
  /**
6
14
  * @description
7
15
  * These are the default states of the payment process.
8
16
  *
9
17
  * @docsCategory payment
10
18
  */
11
- export declare type PaymentState = 'Created' | 'Authorized' | 'Settled' | 'Declined' | 'Error' | 'Cancelled';
19
+ export declare type PaymentState = 'Created' | 'Authorized' | 'Settled' | 'Declined' | 'Error' | 'Cancelled' | keyof CustomPaymentStates;
12
20
  export declare const paymentStateTransitions: Transitions<PaymentState>;
13
21
  /**
14
22
  * @description
@@ -1 +1 @@
1
- {"version":3,"file":"payment-state.js","sourceRoot":"","sources":["../../../../src/service/helpers/payment-state-machine/payment-state.ts"],"names":[],"mappings":";;;AAaa,QAAA,uBAAuB,GAA8B;IAC9D,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC;KAClE;IACD,UAAU,EAAE;QACR,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC;KACxC;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,QAAQ,EAAE;QACN,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,KAAK,EAAE;QACH,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,SAAS,EAAE;QACP,EAAE,EAAE,EAAE;KACT;CACJ,CAAC"}
1
+ {"version":3,"file":"payment-state.js","sourceRoot":"","sources":["../../../../src/service/helpers/payment-state-machine/payment-state.ts"],"names":[],"mappings":";;;AAqBa,QAAA,uBAAuB,GAA8B;IAC9D,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC;KAClE;IACD,UAAU,EAAE;QACR,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC;KACxC;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,QAAQ,EAAE;QACN,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,KAAK,EAAE;QACH,EAAE,EAAE,CAAC,WAAW,CAAC;KACpB;IACD,SAAS,EAAE;QACP,EAAE,EAAE,EAAE;KACT;CACJ,CAAC"}
@@ -8,7 +8,30 @@ import { ZoneService } from '../../services/zone.service';
8
8
  /**
9
9
  * @description
10
10
  * This helper is used to apply the correct price to a ProductVariant based on the current context
11
- * including active Channel, any current Order, etc.
11
+ * including active Channel, any current Order, etc. If you use the {@link TransactionalConnection} to
12
+ * directly query ProductVariants, you will find that the `price` and `priceWithTax` properties will
13
+ * always be `0` until you use the `applyChannelPriceAndTax()` method:
14
+ *
15
+ * @example
16
+ * ```TypeScript
17
+ * export class MyCustomService {
18
+ * constructor(private connection: TransactionalConnection,
19
+ * private productPriceApplicator: ProductPriceApplicator) {}
20
+ *
21
+ * getVariant(ctx: RequestContext, id: ID) {
22
+ * const productVariant = await this.connection
23
+ * .getRepository(ctx, ProductVariant)
24
+ * .findOne(id, { relations: ['taxCategory'] });
25
+ *
26
+ * await this.productPriceApplicator
27
+ * .applyChannelPriceAndTax(productVariant, ctx);
28
+ *
29
+ * return productVariant;
30
+ * }
31
+ * }
32
+ * ```
33
+ *
34
+ * @docsCategory service-helpers
12
35
  */
13
36
  export declare class ProductPriceApplicator {
14
37
  private configService;
@@ -18,7 +41,8 @@ export declare class ProductPriceApplicator {
18
41
  constructor(configService: ConfigService, taxRateService: TaxRateService, zoneService: ZoneService, requestCache: RequestContextCacheService);
19
42
  /**
20
43
  * @description
21
- * Populates the `price` field with the price for the specified channel.
44
+ * Populates the `price` field with the price for the specified channel. Make sure that
45
+ * the ProductVariant being passed in has its `taxCategory` relation joined.
22
46
  */
23
47
  applyChannelPriceAndTax(variant: ProductVariant, ctx: RequestContext, order?: Order): Promise<ProductVariant>;
24
48
  }
@@ -20,7 +20,30 @@ const zone_service_1 = require("../../services/zone.service");
20
20
  /**
21
21
  * @description
22
22
  * This helper is used to apply the correct price to a ProductVariant based on the current context
23
- * including active Channel, any current Order, etc.
23
+ * including active Channel, any current Order, etc. If you use the {@link TransactionalConnection} to
24
+ * directly query ProductVariants, you will find that the `price` and `priceWithTax` properties will
25
+ * always be `0` until you use the `applyChannelPriceAndTax()` method:
26
+ *
27
+ * @example
28
+ * ```TypeScript
29
+ * export class MyCustomService {
30
+ * constructor(private connection: TransactionalConnection,
31
+ * private productPriceApplicator: ProductPriceApplicator) {}
32
+ *
33
+ * getVariant(ctx: RequestContext, id: ID) {
34
+ * const productVariant = await this.connection
35
+ * .getRepository(ctx, ProductVariant)
36
+ * .findOne(id, { relations: ['taxCategory'] });
37
+ *
38
+ * await this.productPriceApplicator
39
+ * .applyChannelPriceAndTax(productVariant, ctx);
40
+ *
41
+ * return productVariant;
42
+ * }
43
+ * }
44
+ * ```
45
+ *
46
+ * @docsCategory service-helpers
24
47
  */
25
48
  let ProductPriceApplicator = class ProductPriceApplicator {
26
49
  constructor(configService, taxRateService, zoneService, requestCache) {
@@ -31,7 +54,8 @@ let ProductPriceApplicator = class ProductPriceApplicator {
31
54
  }
32
55
  /**
33
56
  * @description
34
- * Populates the `price` field with the price for the specified channel.
57
+ * Populates the `price` field with the price for the specified channel. Make sure that
58
+ * the ProductVariant being passed in has its `taxCategory` relation joined.
35
59
  */
36
60
  async applyChannelPriceAndTax(variant, ctx, order) {
37
61
  const channelPrice = variant.productVariantPrices.find(p => utils_1.idsAreEqual(p.channelId, ctx.channelId));
@@ -1 +1 @@
1
- {"version":3,"file":"product-price-applicator.js","sourceRoot":"","sources":["../../../../src/service/helpers/product-price-applicator/product-price-applicator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,gGAA0F;AAC1F,yDAAmE;AACnE,iDAAoD;AACpD,mEAA+D;AAG/D,sEAAiE;AACjE,8DAA0D;AAE1D;;;;GAIG;AAEH,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IAC/B,YACY,aAA4B,EAC5B,cAA8B,EAC9B,WAAwB,EACxB,YAAwC;QAHxC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAA4B;IACjD,CAAC;IAEJ;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CACzB,OAAuB,EACvB,GAAmB,EACnB,KAAa;QAEb,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAW,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,4BAAmB,CAAC,kCAAkC,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;aAC5B,CAAC,CAAC;SACN;QACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CACzE,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CACnE,CAAC;QACF,IAAI,CAAC,aAAa,EAAE;YAChB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;SAC7D;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CACjD,GAAG,EACH,qBAAqB,aAAa,CAAC,EAAE,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,EACjE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAC1F,CAAC;QAEF,MAAM,EAAE,sCAAsC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;QACrF,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,sCAAsC,CAAC,SAAS,CAAC;YACvF,UAAU,EAAE,YAAY,CAAC,KAAK;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,aAAa;YACb,GAAG;SACN,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,OAAO,CAAC,oBAAoB,GAAG,gBAAgB,CAAC;QAChD,OAAO,CAAC,cAAc,GAAG,iBAAiB,CAAC;QAC3C,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ,CAAA;AApDY,sBAAsB;IADlC,mBAAU,EAAE;qCAGkB,8BAAa;QACZ,iCAAc;QACjB,0BAAW;QACV,0DAA0B;GAL3C,sBAAsB,CAoDlC;AApDY,wDAAsB"}
1
+ {"version":3,"file":"product-price-applicator.js","sourceRoot":"","sources":["../../../../src/service/helpers/product-price-applicator/product-price-applicator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,gGAA0F;AAC1F,yDAAmE;AACnE,iDAAoD;AACpD,mEAA+D;AAG/D,sEAAiE;AACjE,8DAA0D;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IAC/B,YACY,aAA4B,EAC5B,cAA8B,EAC9B,WAAwB,EACxB,YAAwC;QAHxC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAA4B;IACjD,CAAC;IAEJ;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CACzB,OAAuB,EACvB,GAAmB,EACnB,KAAa;QAEb,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAW,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,4BAAmB,CAAC,kCAAkC,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;aAC5B,CAAC,CAAC;SACN;QACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CACzE,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CACnE,CAAC;QACF,IAAI,CAAC,aAAa,EAAE;YAChB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;SAC7D;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CACjD,GAAG,EACH,qBAAqB,aAAa,CAAC,EAAE,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,EACjE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAC1F,CAAC;QAEF,MAAM,EAAE,sCAAsC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;QACrF,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,sCAAsC,CAAC,SAAS,CAAC;YACvF,UAAU,EAAE,YAAY,CAAC,KAAK;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,aAAa;YACb,GAAG;SACN,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,OAAO,CAAC,oBAAoB,GAAG,gBAAgB,CAAC;QAChD,OAAO,CAAC,cAAc,GAAG,iBAAiB,CAAC;QAC3C,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ,CAAA;AArDY,sBAAsB;IADlC,mBAAU,EAAE;qCAGkB,8BAAa;QACZ,iCAAc;QACjB,0BAAW;QACV,0DAA0B;GAL3C,sBAAsB,CAqDlC;AArDY,wDAAsB"}
@@ -3,6 +3,10 @@ import { ID, Type } from '@vendure/common/lib/shared-types';
3
3
  import { RequestContext } from '../../../api/common/request-context';
4
4
  import { TransactionalConnection } from '../../../connection/transactional-connection';
5
5
  import { VendureEntity } from '../../../entity/base/base.entity';
6
+ /**
7
+ * @docsCategory service-helpers
8
+ * @docsPage SlugValidator
9
+ */
6
10
  export declare type InputWithSlug = {
7
11
  id?: ID | null;
8
12
  translations?: Array<{
@@ -11,12 +15,24 @@ export declare type InputWithSlug = {
11
15
  slug?: string | null;
12
16
  }> | null;
13
17
  };
18
+ /**
19
+ * @docsCategory service-helpers
20
+ * @docsPage SlugValidator
21
+ */
14
22
  export declare type TranslationEntity = VendureEntity & {
15
23
  id: ID;
16
24
  languageCode: LanguageCode;
17
25
  slug: string;
18
26
  base: any;
19
27
  };
28
+ /**
29
+ * @description
30
+ * Used to validate slugs to ensure they are URL-safe and unique. Designed to be used with translatable
31
+ * entities such as {@link Product} and {@link Collection}.
32
+ *
33
+ * @docsCategory service-helpers
34
+ * @docsWeight 0
35
+ */
20
36
  export declare class SlugValidator {
21
37
  private connection;
22
38
  constructor(connection: TransactionalConnection);
@@ -13,6 +13,14 @@ exports.SlugValidator = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
14
  const normalize_string_1 = require("@vendure/common/lib/normalize-string");
15
15
  const transactional_connection_1 = require("../../../connection/transactional-connection");
16
+ /**
17
+ * @description
18
+ * Used to validate slugs to ensure they are URL-safe and unique. Designed to be used with translatable
19
+ * entities such as {@link Product} and {@link Collection}.
20
+ *
21
+ * @docsCategory service-helpers
22
+ * @docsWeight 0
23
+ */
16
24
  let SlugValidator = class SlugValidator {
17
25
  constructor(connection) {
18
26
  this.connection = connection;
@@ -35,7 +43,9 @@ let SlugValidator = class SlugValidator {
35
43
  .getRepository(ctx, translationEntity)
36
44
  .createQueryBuilder('translation')
37
45
  .innerJoinAndSelect('translation.base', 'base')
38
- .where(`translation.slug = :slug`, { slug: t.slug })
46
+ .innerJoinAndSelect('base.channels', 'channel')
47
+ .where(`channel.id = :channelId`, { channelId: ctx.channelId })
48
+ .andWhere(`translation.slug = :slug`, { slug: t.slug })
39
49
  .andWhere(`translation.languageCode = :languageCode`, {
40
50
  languageCode: t.languageCode,
41
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"slug-validator.js","sourceRoot":"","sources":["../../../../src/service/helpers/slug-validator/slug-validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,2EAAuE;AAIvE,2FAAuF;AAqBvF,IAAa,aAAa,GAA1B,MAAa,aAAa;IACtB,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,GAAmB,EACnB,KAAQ,EACR,iBAA0B;QAE1B,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE;gBAChC,IAAI,CAAC,CAAC,IAAI,EAAE;oBACR,CAAC,CAAC,IAAI,GAAG,kCAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACtC,IAAI,KAAoB,CAAC;oBACzB,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,MAAM,IAAI,GAAS,EAAE,CAAC;oBACtB,MAAM,eAAe,GAAG,OAAO,CAAC;oBAChC,GAAG;wBACC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU;6BACrB,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC;6BACrC,kBAAkB,CAAC,aAAa,CAAC;6BACjC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC;6BAC9C,KAAK,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;6BACnD,QAAQ,CAAC,0CAA0C,EAAE;4BAClD,YAAY,EAAE,CAAC,CAAC,YAAY;yBAC/B,CAAC,CAAA;wBACN,IAAI,KAAK,CAAC,EAAE,EAAE;4BACV,EAAE,CAAC,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;yBAC5D;wBACD,IAAI,IAAI,CAAC,MAAM,EAAE;4BACb,EAAE,CAAC,QAAQ,CAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC7D;wBACD,KAAK,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;wBAC1B,IAAI,KAAK,EAAE;4BACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;gCACvB,MAAM,EAAE,CAAC;gCACT,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oCAC9B,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;iCAC1D;qCAAM;oCACH,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;iCAClC;6BACJ;iCAAM;gCACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;6BACvB;yBACJ;qBACJ,QAAQ,KAAK,EAAE;iBACnB;aACJ;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAtDY,aAAa;IADzB,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,aAAa,CAsDzB;AAtDY,sCAAa"}
1
+ {"version":3,"file":"slug-validator.js","sourceRoot":"","sources":["../../../../src/service/helpers/slug-validator/slug-validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,2EAAuE;AAIvE,2FAAuF;AA6BvF;;;;;;;GAOG;AAEH,IAAa,aAAa,GAA1B,MAAa,aAAa;IACtB,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,GAAmB,EACnB,KAAQ,EACR,iBAA0B;QAE1B,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE;gBAChC,IAAI,CAAC,CAAC,IAAI,EAAE;oBACR,CAAC,CAAC,IAAI,GAAG,kCAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACtC,IAAI,KAAoB,CAAC;oBACzB,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,MAAM,IAAI,GAAS,EAAE,CAAC;oBACtB,MAAM,eAAe,GAAG,OAAO,CAAC;oBAChC,GAAG;wBACC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU;6BACrB,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC;6BACrC,kBAAkB,CAAC,aAAa,CAAC;6BACjC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC;6BAC9C,kBAAkB,CAAC,eAAe,EAAE,SAAS,CAAC;6BAC9C,KAAK,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;6BAC9D,QAAQ,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;6BACtD,QAAQ,CAAC,0CAA0C,EAAE;4BAClD,YAAY,EAAE,CAAC,CAAC,YAAY;yBAC/B,CAAC,CAAC;wBACP,IAAI,KAAK,CAAC,EAAE,EAAE;4BACV,EAAE,CAAC,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;yBAC5D;wBACD,IAAI,IAAI,CAAC,MAAM,EAAE;4BACb,EAAE,CAAC,QAAQ,CAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC7D;wBACD,KAAK,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;wBAC1B,IAAI,KAAK,EAAE;4BACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;gCACvB,MAAM,EAAE,CAAC;gCACT,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oCAC9B,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;iCAC1D;qCAAM;oCACH,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;iCAClC;6BACJ;iCAAM;gCACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;6BACvB;yBACJ;qBACJ,QAAQ,KAAK,EAAE;iBACnB;aACJ;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAxDY,aAAa;IADzB,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,aAAa,CAwDzB;AAxDY,sCAAa"}
@@ -17,17 +17,44 @@ export interface UpdateTranslatableOptions<T extends Translatable> extends Creat
17
17
  };
18
18
  }
19
19
  /**
20
- * A helper which contains methods for creating and updating entities which implement the Translatable interface.
20
+ * @description
21
+ * A helper which contains methods for creating and updating entities which implement the {@link Translatable} interface.
22
+ *
23
+ * @example
24
+ * ```TypeScript
25
+ * export class MyService {
26
+ * constructor(private translatableSaver: TranslatableSaver) {}
27
+ *
28
+ * async create(ctx: RequestContext, input: CreateFacetInput): Promise<Translated<Facet>> {
29
+ * const facet = await this.translatableSaver.create({
30
+ * ctx,
31
+ * input,
32
+ * entityType: Facet,
33
+ * translationType: FacetTranslation,
34
+ * beforeSave: async f => {
35
+ * f.code = await this.ensureUniqueCode(ctx, f.code);
36
+ * },
37
+ * });
38
+ * return facet;
39
+ * }
40
+ *
41
+ * // ...
42
+ * }
43
+ * ```
44
+ *
45
+ * @docsCategory service-helpers
21
46
  */
22
47
  export declare class TranslatableSaver {
23
48
  private connection;
24
49
  constructor(connection: TransactionalConnection);
25
50
  /**
51
+ * @description
26
52
  * Create a translatable entity, including creating any translation entities according
27
53
  * to the `translations` array.
28
54
  */
29
55
  create<T extends Translatable & VendureEntity>(options: CreateTranslatableOptions<T>): Promise<T>;
30
56
  /**
57
+ * @description
31
58
  * Update a translatable entity. Performs a diff of the `translations` array in order to
32
59
  * perform the correct operation on the translations.
33
60
  */