@vendure/core 2.0.0-next.2 → 2.0.0-next.3

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 (291) hide show
  1. package/dist/api/common/configurable-operation-codec.js +2 -2
  2. package/dist/api/common/configurable-operation-codec.js.map +1 -1
  3. package/dist/api/config/generate-permissions.js +29 -4
  4. package/dist/api/config/generate-permissions.js.map +1 -1
  5. package/dist/api/decorators/relations.decorator.d.ts +102 -0
  6. package/dist/api/decorators/relations.decorator.js +185 -0
  7. package/dist/api/decorators/relations.decorator.js.map +1 -0
  8. package/dist/api/decorators/request-context.decorator.js +9 -2
  9. package/dist/api/decorators/request-context.decorator.js.map +1 -1
  10. package/dist/api/index.d.ts +1 -0
  11. package/dist/api/index.js +1 -0
  12. package/dist/api/index.js.map +1 -1
  13. package/dist/api/middleware/transaction-interceptor.d.ts +9 -0
  14. package/dist/api/middleware/transaction-interceptor.js +16 -1
  15. package/dist/api/middleware/transaction-interceptor.js.map +1 -1
  16. package/dist/api/resolvers/admin/administrator.resolver.d.ts +3 -2
  17. package/dist/api/resolvers/admin/administrator.resolver.js +10 -6
  18. package/dist/api/resolvers/admin/administrator.resolver.js.map +1 -1
  19. package/dist/api/resolvers/admin/asset.resolver.d.ts +3 -2
  20. package/dist/api/resolvers/admin/asset.resolver.js +10 -6
  21. package/dist/api/resolvers/admin/asset.resolver.js.map +1 -1
  22. package/dist/api/resolvers/admin/collection.resolver.d.ts +5 -3
  23. package/dist/api/resolvers/admin/collection.resolver.js +25 -7
  24. package/dist/api/resolvers/admin/collection.resolver.js.map +1 -1
  25. package/dist/api/resolvers/admin/country.resolver.d.ts +3 -2
  26. package/dist/api/resolvers/admin/country.resolver.js +10 -6
  27. package/dist/api/resolvers/admin/country.resolver.js.map +1 -1
  28. package/dist/api/resolvers/admin/customer-group.resolver.d.ts +3 -2
  29. package/dist/api/resolvers/admin/customer-group.resolver.js +8 -4
  30. package/dist/api/resolvers/admin/customer-group.resolver.js.map +1 -1
  31. package/dist/api/resolvers/admin/customer.resolver.d.ts +3 -2
  32. package/dist/api/resolvers/admin/customer.resolver.js +10 -6
  33. package/dist/api/resolvers/admin/customer.resolver.js.map +1 -1
  34. package/dist/api/resolvers/admin/facet.resolver.d.ts +3 -2
  35. package/dist/api/resolvers/admin/facet.resolver.js +10 -6
  36. package/dist/api/resolvers/admin/facet.resolver.js.map +1 -1
  37. package/dist/api/resolvers/admin/order.resolver.d.ts +3 -2
  38. package/dist/api/resolvers/admin/order.resolver.js +10 -6
  39. package/dist/api/resolvers/admin/order.resolver.js.map +1 -1
  40. package/dist/api/resolvers/admin/payment-method.resolver.d.ts +3 -2
  41. package/dist/api/resolvers/admin/payment-method.resolver.js +10 -6
  42. package/dist/api/resolvers/admin/payment-method.resolver.js.map +1 -1
  43. package/dist/api/resolvers/admin/product-option.resolver.d.ts +3 -2
  44. package/dist/api/resolvers/admin/product-option.resolver.js +8 -4
  45. package/dist/api/resolvers/admin/product-option.resolver.js.map +1 -1
  46. package/dist/api/resolvers/admin/product.resolver.d.ts +4 -3
  47. package/dist/api/resolvers/admin/product.resolver.js +16 -10
  48. package/dist/api/resolvers/admin/product.resolver.js.map +1 -1
  49. package/dist/api/resolvers/admin/promotion.resolver.d.ts +3 -2
  50. package/dist/api/resolvers/admin/promotion.resolver.js +9 -6
  51. package/dist/api/resolvers/admin/promotion.resolver.js.map +1 -1
  52. package/dist/api/resolvers/admin/role.resolver.d.ts +3 -2
  53. package/dist/api/resolvers/admin/role.resolver.js +10 -6
  54. package/dist/api/resolvers/admin/role.resolver.js.map +1 -1
  55. package/dist/api/resolvers/admin/shipping-method.resolver.d.ts +3 -2
  56. package/dist/api/resolvers/admin/shipping-method.resolver.js +10 -6
  57. package/dist/api/resolvers/admin/shipping-method.resolver.js.map +1 -1
  58. package/dist/api/resolvers/admin/tax-rate.resolver.d.ts +3 -2
  59. package/dist/api/resolvers/admin/tax-rate.resolver.js +10 -6
  60. package/dist/api/resolvers/admin/tax-rate.resolver.js.map +1 -1
  61. package/dist/api/resolvers/entity/collection-entity.resolver.d.ts +2 -1
  62. package/dist/api/resolvers/entity/collection-entity.resolver.js +5 -3
  63. package/dist/api/resolvers/entity/collection-entity.resolver.js.map +1 -1
  64. package/dist/api/resolvers/entity/customer-entity.resolver.d.ts +2 -1
  65. package/dist/api/resolvers/entity/customer-entity.resolver.js +5 -3
  66. package/dist/api/resolvers/entity/customer-entity.resolver.js.map +1 -1
  67. package/dist/api/resolvers/entity/order-line-entity.resolver.d.ts +6 -3
  68. package/dist/api/resolvers/entity/order-line-entity.resolver.js +19 -2
  69. package/dist/api/resolvers/entity/order-line-entity.resolver.js.map +1 -1
  70. package/dist/api/resolvers/entity/product-entity.resolver.d.ts +3 -2
  71. package/dist/api/resolvers/entity/product-entity.resolver.js +10 -6
  72. package/dist/api/resolvers/entity/product-entity.resolver.js.map +1 -1
  73. package/dist/api/resolvers/shop/shop-order.resolver.d.ts +4 -3
  74. package/dist/api/resolvers/shop/shop-order.resolver.js +16 -8
  75. package/dist/api/resolvers/shop/shop-order.resolver.js.map +1 -1
  76. package/dist/api/resolvers/shop/shop-products.resolver.d.ts +8 -8
  77. package/dist/api/resolvers/shop/shop-products.resolver.js +32 -21
  78. package/dist/api/resolvers/shop/shop-products.resolver.js.map +1 -1
  79. package/dist/api/schema/admin-api/collection.api.graphql +7 -0
  80. package/dist/bootstrap.js +8 -3
  81. package/dist/bootstrap.js.map +1 -1
  82. package/dist/common/calculated-decorator.d.ts +16 -3
  83. package/dist/common/calculated-decorator.js +3 -0
  84. package/dist/common/calculated-decorator.js.map +1 -1
  85. package/dist/common/constants.d.ts +1 -0
  86. package/dist/common/constants.js +2 -1
  87. package/dist/common/constants.js.map +1 -1
  88. package/dist/common/types/entity-relation-paths.d.ts +1 -1
  89. package/dist/config/catalog/collection-filter.d.ts +32 -0
  90. package/dist/config/catalog/collection-filter.js +32 -0
  91. package/dist/config/catalog/collection-filter.js.map +1 -1
  92. package/dist/config/catalog/default-collection-filters.d.ts +42 -0
  93. package/dist/config/catalog/default-collection-filters.js +41 -8
  94. package/dist/config/catalog/default-collection-filters.js.map +1 -1
  95. package/dist/config/default-config.js +1 -0
  96. package/dist/config/default-config.js.map +1 -1
  97. package/dist/config/entity-metadata/add-foreign-key-indices.d.ts +12 -0
  98. package/dist/config/entity-metadata/add-foreign-key-indices.js +33 -0
  99. package/dist/config/entity-metadata/add-foreign-key-indices.js.map +1 -0
  100. package/dist/config/entity-metadata/entity-metadata-modifier.d.ts +55 -0
  101. package/dist/config/entity-metadata/entity-metadata-modifier.js +3 -0
  102. package/dist/config/entity-metadata/entity-metadata-modifier.js.map +1 -0
  103. package/dist/config/index.d.ts +2 -0
  104. package/dist/config/index.js +2 -0
  105. package/dist/config/index.js.map +1 -1
  106. package/dist/config/shipping-method/shipping-calculator.d.ts +3 -3
  107. package/dist/config/shipping-method/shipping-calculator.js +2 -2
  108. package/dist/config/shipping-method/shipping-calculator.js.map +1 -1
  109. package/dist/config/shipping-method/shipping-eligibility-checker.d.ts +4 -4
  110. package/dist/config/shipping-method/shipping-eligibility-checker.js +5 -5
  111. package/dist/config/shipping-method/shipping-eligibility-checker.js.map +1 -1
  112. package/dist/config/vendure-config.d.ts +12 -0
  113. package/dist/connection/transaction-wrapper.d.ts +5 -1
  114. package/dist/connection/transaction-wrapper.js +9 -3
  115. package/dist/connection/transaction-wrapper.js.map +1 -1
  116. package/dist/connection/transactional-connection.d.ts +7 -3
  117. package/dist/connection/transactional-connection.js +8 -3
  118. package/dist/connection/transactional-connection.js.map +1 -1
  119. package/dist/data-import/providers/importer/importer.d.ts +3 -2
  120. package/dist/data-import/providers/importer/importer.js +13 -7
  121. package/dist/data-import/providers/importer/importer.js.map +1 -1
  122. package/dist/entity/address/address.entity.js +2 -0
  123. package/dist/entity/address/address.entity.js.map +1 -1
  124. package/dist/entity/asset/orderable-asset.entity.js +1 -0
  125. package/dist/entity/asset/orderable-asset.entity.js.map +1 -1
  126. package/dist/entity/authentication-method/authentication-method.entity.js +1 -0
  127. package/dist/entity/authentication-method/authentication-method.entity.js.map +1 -1
  128. package/dist/entity/channel/channel.entity.js +2 -0
  129. package/dist/entity/channel/channel.entity.js.map +1 -1
  130. package/dist/entity/collection/collection-translation.entity.js +1 -0
  131. package/dist/entity/collection/collection-translation.entity.js.map +1 -1
  132. package/dist/entity/collection/collection.entity.js +1 -0
  133. package/dist/entity/collection/collection.entity.js.map +1 -1
  134. package/dist/entity/country/country-translation.entity.js +1 -0
  135. package/dist/entity/country/country-translation.entity.js.map +1 -1
  136. package/dist/entity/facet/facet-translation.entity.js +1 -0
  137. package/dist/entity/facet/facet-translation.entity.js.map +1 -1
  138. package/dist/entity/facet-value/facet-value-translation.entity.js +1 -0
  139. package/dist/entity/facet-value/facet-value-translation.entity.js.map +1 -1
  140. package/dist/entity/facet-value/facet-value.entity.js +1 -0
  141. package/dist/entity/facet-value/facet-value.entity.js.map +1 -1
  142. package/dist/entity/history-entry/customer-history-entry.entity.js +1 -0
  143. package/dist/entity/history-entry/customer-history-entry.entity.js.map +1 -1
  144. package/dist/entity/history-entry/history-entry.entity.js +1 -0
  145. package/dist/entity/history-entry/history-entry.entity.js.map +1 -1
  146. package/dist/entity/history-entry/order-history-entry.entity.js +1 -0
  147. package/dist/entity/history-entry/order-history-entry.entity.js.map +1 -1
  148. package/dist/entity/order/order.entity.js +5 -2
  149. package/dist/entity/order/order.entity.js.map +1 -1
  150. package/dist/entity/order-item/order-item.entity.js +2 -0
  151. package/dist/entity/order-item/order-item.entity.js.map +1 -1
  152. package/dist/entity/order-line/order-line.entity.js +4 -0
  153. package/dist/entity/order-line/order-line.entity.js.map +1 -1
  154. package/dist/entity/order-modification/order-modification.entity.js +1 -0
  155. package/dist/entity/order-modification/order-modification.entity.js.map +1 -1
  156. package/dist/entity/payment/payment.entity.js +1 -0
  157. package/dist/entity/payment/payment.entity.js.map +1 -1
  158. package/dist/entity/product/product-translation.entity.js +1 -0
  159. package/dist/entity/product/product-translation.entity.js.map +1 -1
  160. package/dist/entity/product/product.entity.js +1 -0
  161. package/dist/entity/product/product.entity.js.map +1 -1
  162. package/dist/entity/product-option/product-option-translation.entity.js +1 -0
  163. package/dist/entity/product-option/product-option-translation.entity.js.map +1 -1
  164. package/dist/entity/product-option/product-option.entity.js +1 -0
  165. package/dist/entity/product-option/product-option.entity.js.map +1 -1
  166. package/dist/entity/product-option-group/product-option-group-translation.entity.js +1 -0
  167. package/dist/entity/product-option-group/product-option-group-translation.entity.js.map +1 -1
  168. package/dist/entity/product-option-group/product-option-group.entity.js +1 -0
  169. package/dist/entity/product-option-group/product-option-group.entity.js.map +1 -1
  170. package/dist/entity/product-variant/product-variant-price.entity.js +1 -0
  171. package/dist/entity/product-variant/product-variant-price.entity.js.map +1 -1
  172. package/dist/entity/product-variant/product-variant-translation.entity.js +1 -0
  173. package/dist/entity/product-variant/product-variant-translation.entity.js.map +1 -1
  174. package/dist/entity/product-variant/product-variant.entity.js +3 -0
  175. package/dist/entity/product-variant/product-variant.entity.js.map +1 -1
  176. package/dist/entity/refund/refund.entity.js +1 -0
  177. package/dist/entity/refund/refund.entity.js.map +1 -1
  178. package/dist/entity/run-entity-metadata-modifiers.d.ts +2 -0
  179. package/dist/entity/run-entity-metadata-modifiers.js +15 -0
  180. package/dist/entity/run-entity-metadata-modifiers.js.map +1 -0
  181. package/dist/entity/session/authenticated-session.entity.js +1 -0
  182. package/dist/entity/session/authenticated-session.entity.js.map +1 -1
  183. package/dist/entity/session/session.entity.js +2 -0
  184. package/dist/entity/session/session.entity.js.map +1 -1
  185. package/dist/entity/shipping-line/shipping-line.entity.js +2 -0
  186. package/dist/entity/shipping-line/shipping-line.entity.js.map +1 -1
  187. package/dist/entity/shipping-method/shipping-method-translation.entity.js +1 -0
  188. package/dist/entity/shipping-method/shipping-method-translation.entity.js.map +1 -1
  189. package/dist/entity/shipping-method/shipping-method.entity.js +2 -2
  190. package/dist/entity/shipping-method/shipping-method.entity.js.map +1 -1
  191. package/dist/entity/stock-movement/allocation.entity.js +1 -0
  192. package/dist/entity/stock-movement/allocation.entity.js.map +1 -1
  193. package/dist/entity/stock-movement/cancellation.entity.js.map +1 -1
  194. package/dist/entity/stock-movement/release.entity.js +1 -0
  195. package/dist/entity/stock-movement/release.entity.js.map +1 -1
  196. package/dist/entity/stock-movement/sale.entity.js.map +1 -1
  197. package/dist/entity/stock-movement/stock-movement.entity.js +1 -0
  198. package/dist/entity/stock-movement/stock-movement.entity.js.map +1 -1
  199. package/dist/entity/surcharge/surcharge.entity.js +2 -0
  200. package/dist/entity/surcharge/surcharge.entity.js.map +1 -1
  201. package/dist/entity/tax-rate/tax-rate.entity.js +3 -0
  202. package/dist/entity/tax-rate/tax-rate.entity.js.map +1 -1
  203. package/dist/event-bus/event-bus.js +12 -3
  204. package/dist/event-bus/event-bus.js.map +1 -1
  205. package/dist/plugin/default-search-plugin/default-search-plugin.d.ts +9 -3
  206. package/dist/plugin/default-search-plugin/default-search-plugin.js +25 -2
  207. package/dist/plugin/default-search-plugin/default-search-plugin.js.map +1 -1
  208. package/dist/plugin/default-search-plugin/fulltext-search.service.d.ts +3 -1
  209. package/dist/plugin/default-search-plugin/fulltext-search.service.js +27 -19
  210. package/dist/plugin/default-search-plugin/fulltext-search.service.js.map +1 -1
  211. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.d.ts +4 -4
  212. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +7 -3
  213. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js.map +1 -1
  214. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.d.ts +4 -4
  215. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +7 -3
  216. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js.map +1 -1
  217. package/dist/plugin/default-search-plugin/search-strategy/search-strategy.d.ts +2 -1
  218. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.d.ts +4 -4
  219. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +7 -3
  220. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js.map +1 -1
  221. package/dist/plugin/default-search-plugin/types.d.ts +84 -0
  222. package/dist/service/helpers/list-query-builder/list-query-builder.d.ts +29 -1
  223. package/dist/service/helpers/list-query-builder/list-query-builder.js +116 -17
  224. package/dist/service/helpers/list-query-builder/list-query-builder.js.map +1 -1
  225. package/dist/service/helpers/list-query-builder/parse-channel-param.d.ts +1 -1
  226. package/dist/service/helpers/list-query-builder/parse-channel-param.js +2 -2
  227. package/dist/service/helpers/list-query-builder/parse-channel-param.js.map +1 -1
  228. package/dist/service/helpers/list-query-builder/parse-filter-params.d.ts +1 -1
  229. package/dist/service/helpers/list-query-builder/parse-filter-params.js +3 -2
  230. package/dist/service/helpers/list-query-builder/parse-filter-params.js.map +1 -1
  231. package/dist/service/helpers/list-query-builder/parse-sort-params.d.ts +1 -1
  232. package/dist/service/helpers/list-query-builder/parse-sort-params.js +4 -3
  233. package/dist/service/helpers/list-query-builder/parse-sort-params.js.map +1 -1
  234. package/dist/service/helpers/order-calculator/prorate.js +1 -1
  235. package/dist/service/helpers/order-calculator/prorate.js.map +1 -1
  236. package/dist/service/helpers/slug-validator/slug-validator.js +15 -6
  237. package/dist/service/helpers/slug-validator/slug-validator.js.map +1 -1
  238. package/dist/service/helpers/utils/translate-entity.js +1 -2
  239. package/dist/service/helpers/utils/translate-entity.js.map +1 -1
  240. package/dist/service/services/administrator.service.d.ts +4 -3
  241. package/dist/service/services/administrator.service.js +6 -5
  242. package/dist/service/services/administrator.service.js.map +1 -1
  243. package/dist/service/services/asset.service.d.ts +3 -2
  244. package/dist/service/services/asset.service.js +6 -4
  245. package/dist/service/services/asset.service.js.map +1 -1
  246. package/dist/service/services/collection.service.d.ts +8 -5
  247. package/dist/service/services/collection.service.js +37 -11
  248. package/dist/service/services/collection.service.js.map +1 -1
  249. package/dist/service/services/country.service.d.ts +3 -2
  250. package/dist/service/services/country.service.js +4 -4
  251. package/dist/service/services/country.service.js.map +1 -1
  252. package/dist/service/services/customer-group.service.d.ts +6 -3
  253. package/dist/service/services/customer-group.service.js +12 -7
  254. package/dist/service/services/customer-group.service.js.map +1 -1
  255. package/dist/service/services/customer.service.d.ts +3 -2
  256. package/dist/service/services/customer.service.js +3 -3
  257. package/dist/service/services/customer.service.js.map +1 -1
  258. package/dist/service/services/facet.service.d.ts +3 -2
  259. package/dist/service/services/facet.service.js +10 -6
  260. package/dist/service/services/facet.service.js.map +1 -1
  261. package/dist/service/services/order.service.d.ts +6 -4
  262. package/dist/service/services/order.service.js +53 -44
  263. package/dist/service/services/order.service.js.map +1 -1
  264. package/dist/service/services/payment-method.service.d.ts +3 -2
  265. package/dist/service/services/payment-method.service.js +6 -4
  266. package/dist/service/services/payment-method.service.js.map +1 -1
  267. package/dist/service/services/product-option-group.service.d.ts +3 -2
  268. package/dist/service/services/product-option-group.service.js +4 -4
  269. package/dist/service/services/product-option-group.service.js.map +1 -1
  270. package/dist/service/services/product-variant.service.d.ts +11 -3
  271. package/dist/service/services/product-variant.service.js +53 -40
  272. package/dist/service/services/product-variant.service.js.map +1 -1
  273. package/dist/service/services/product.service.d.ts +5 -4
  274. package/dist/service/services/product.service.js +18 -8
  275. package/dist/service/services/product.service.js.map +1 -1
  276. package/dist/service/services/promotion.service.d.ts +3 -2
  277. package/dist/service/services/promotion.service.js +6 -4
  278. package/dist/service/services/promotion.service.js.map +1 -1
  279. package/dist/service/services/role.service.d.ts +3 -2
  280. package/dist/service/services/role.service.js +4 -4
  281. package/dist/service/services/role.service.js.map +1 -1
  282. package/dist/service/services/shipping-method.service.d.ts +3 -2
  283. package/dist/service/services/shipping-method.service.js +4 -4
  284. package/dist/service/services/shipping-method.service.js.map +1 -1
  285. package/dist/service/services/tax-rate.service.d.ts +3 -2
  286. package/dist/service/services/tax-rate.service.js +4 -4
  287. package/dist/service/services/tax-rate.service.js.map +1 -1
  288. package/dist/service/services/zone.service.d.ts +2 -2
  289. package/dist/service/services/zone.service.js +2 -2
  290. package/dist/service/services/zone.service.js.map +1 -1
  291. package/package.json +4 -3
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultCollectionFilters = exports.variantNameCollectionFilter = exports.facetValueCollectionFilter = void 0;
3
+ exports.defaultCollectionFilters = exports.variantIdCollectionFilter = exports.variantNameCollectionFilter = exports.facetValueCollectionFilter = void 0;
4
4
  const generated_types_1 = require("@vendure/common/lib/generated-types");
5
5
  const nanoid_1 = require("nanoid");
6
6
  const errors_1 = require("../../common/error/errors");
@@ -17,11 +17,21 @@ exports.facetValueCollectionFilter = new collection_filter_1.CollectionFilter({
17
17
  ui: {
18
18
  component: 'facet-value-form-input',
19
19
  },
20
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Facet values' }],
21
+ },
22
+ containsAny: {
23
+ type: 'boolean',
24
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Contains any' }],
25
+ description: [
26
+ {
27
+ languageCode: generated_types_1.LanguageCode.en,
28
+ value: 'If checked, product variants must have at least one of the selected facet values. If not checked, the variant must have all selected values.',
29
+ },
30
+ ],
20
31
  },
21
- containsAny: { type: 'boolean' },
22
32
  },
23
33
  code: 'facet-value-filter',
24
- description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by FacetValues' }],
34
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by facet values' }],
25
35
  apply: (qb, args) => {
26
36
  const ids = args.facetValueIds;
27
37
  if (ids.length) {
@@ -81,15 +91,18 @@ exports.variantNameCollectionFilter = new collection_filter_1.CollectionFilter({
81
91
  term: { type: 'string' },
82
92
  },
83
93
  code: 'variant-name-filter',
84
- description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by ProductVariant name' }],
94
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by product variant name' }],
85
95
  apply: (qb, args) => {
86
- const translationAlias = `variant_name_filter_translation`;
96
+ let translationAlias = `variant_name_filter_translation`;
87
97
  const nanoid = (0, nanoid_1.customAlphabet)('123456789abcdefghijklmnopqrstuvwxyz', 6);
88
98
  const termName = `term_${nanoid()}`;
89
- const hasJoinOnTranslations = !!qb.expressionMap.joinAttributes.find(ja => ja.entityOrProperty === 'productVariant.translations');
90
- if (!hasJoinOnTranslations) {
99
+ const translationsJoin = qb.expressionMap.joinAttributes.find(ja => ja.entityOrProperty === 'productVariant.translations');
100
+ if (!translationsJoin) {
91
101
  qb.leftJoin('productVariant.translations', translationAlias);
92
102
  }
103
+ else {
104
+ translationAlias = translationsJoin.alias.name;
105
+ }
93
106
  const LIKE = qb.connection.options.type === 'postgres' ? 'ILIKE' : 'LIKE';
94
107
  switch (args.operator) {
95
108
  case 'contains':
@@ -113,5 +126,25 @@ exports.variantNameCollectionFilter = new collection_filter_1.CollectionFilter({
113
126
  }
114
127
  },
115
128
  });
116
- exports.defaultCollectionFilters = [exports.facetValueCollectionFilter, exports.variantNameCollectionFilter];
129
+ exports.variantIdCollectionFilter = new collection_filter_1.CollectionFilter({
130
+ args: {
131
+ variantIds: {
132
+ type: 'ID',
133
+ list: true,
134
+ ui: {
135
+ component: 'product-selector-form-input',
136
+ },
137
+ },
138
+ },
139
+ code: 'variant-id-filter',
140
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Manually select product variants' }],
141
+ apply: (qb, args) => {
142
+ return qb.andWhere('productVariant.id IN (:...variantIds)', { variantIds: args.variantIds });
143
+ },
144
+ });
145
+ exports.defaultCollectionFilters = [
146
+ exports.facetValueCollectionFilter,
147
+ exports.variantNameCollectionFilter,
148
+ exports.variantIdCollectionFilter,
149
+ ];
117
150
  //# sourceMappingURL=default-collection-filters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"default-collection-filters.js","sourceRoot":"","sources":["../../../src/config/catalog/default-collection-filters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-collection-filters.js","sourceRoot":"","sources":["../../../src/config/catalog/default-collection-filters.ts"],"names":[],"mappings":"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"}
@@ -106,6 +106,7 @@ exports.defaultConfig = {
106
106
  entityOptions: {
107
107
  channelCacheTtl: 30000,
108
108
  zoneCacheTtl: 30000,
109
+ metadataModifiers: [],
109
110
  },
110
111
  promotionOptions: {
111
112
  promotionConditions: promotion_1.defaultPromotionConditions,
@@ -1 +1 @@
1
- {"version":3,"file":"default-config.js","sourceRoot":"","sources":["../../src/config/default-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-config.js","sourceRoot":"","sources":["../../src/config/default-config.ts"],"names":[],"mappings":";;;AAAA,yEAAmE;AACnE,2EAI8C;AAE9C,4FAAqF;AACrF,yHAAiH;AAEjH,yGAAmG;AACnG,kGAA4F;AAC5F,kGAA4F;AAC5F,8FAAwF;AACxF,sGAAgG;AAChG,0FAAqF;AACrF,qFAAgF;AAChF,qIAA6H;AAC7H,6FAAuF;AACvF,gGAA0F;AAC1F,yFAAoF;AACpF,4DAAwD;AACxD,6GAAsG;AACtG,yHAAiH;AACjH,yFAAmF;AACnF,iGAA2F;AAC3F,yEAAoE;AACpE,yFAAyF;AACzF,qEAAuE;AACvE,mEAA8D;AAC9D,2CAAkF;AAClF,uGAAgG;AAChG,+FAA0F;AAC1F,iHAA2G;AAC3G,uGAAgG;AAChG,+EAAyE;AAGzE;;;;;GAKG;AACU,QAAA,aAAa,GAAyB;IAC/C,mBAAmB,EAAE,IAAI;IACzB,mBAAmB,EAAE,8BAAY,CAAC,EAAE;IACpC,MAAM,EAAE,IAAI,8BAAa,EAAE;IAC3B,UAAU,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,IAAI;QACV,YAAY,EAAE,WAAW;QACzB,kBAAkB,EAAE,KAAK;QACzB,aAAa,EAAE,KAAK;QACpB,mBAAmB,EAAE,IAAI;QACzB,uBAAuB,EAAE,EAAE;QAC3B,WAAW,EAAE,UAAU;QACvB,iBAAiB,EAAE,KAAK;QACxB,YAAY,EAAE,KAAK;QACnB,kBAAkB,EAAE,GAAG;QACvB,sBAAsB,EAAE,EAAE;QAC1B,eAAe,EAAE,eAAe;QAChC,IAAI,EAAE;YACF,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI;SACpB;QACD,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,IAAI;QACnB,mBAAmB,EAAE,EAAE;KAC1B;IACD,WAAW,EAAE;QACT,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,QAAQ;QACrB,aAAa,EAAE;YACX,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5C,QAAQ,EAAE,IAAI;SACjB;QACD,kBAAkB,EAAE,gDAA6B;QACjD,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI,+DAA4B,EAAE;QACxD,eAAe,EAAE,GAAG;QACpB,mBAAmB,EAAE,IAAI;QACzB,yBAAyB,EAAE,IAAI;QAC/B,qBAAqB,EAAE;YACnB,UAAU,EAAE,8CAA2B;YACvC,QAAQ,EAAE,4CAAyB;SACtC;QACD,0BAA0B,EAAE,CAAC,IAAI,6DAA4B,EAAE,CAAC;QAChE,2BAA2B,EAAE,CAAC,IAAI,6DAA4B,EAAE,CAAC;QACjE,iBAAiB,EAAE,EAAE;QACrB,uBAAuB,EAAE,IAAI,gEAA6B,EAAE;QAC5D,0BAA0B,EAAE,IAAI,wEAAiC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;KACtF;IACD,cAAc,EAAE;QACZ,iBAAiB,EAAE,qDAAwB;QAC3C,sCAAsC,EAAE,IAAI,kGAA6C,EAAE;QAC3F,oBAAoB,EAAE,IAAI,4DAA2B,EAAE;KAC1D;IACD,gBAAgB,EAAE,IAAI,oDAAuB,EAAE;IAC/C,YAAY,EAAE;QACV,mBAAmB,EAAE,IAAI,0DAA0B,EAAE;QACrD,oBAAoB,EAAE,IAAI,kDAAsB,EAAE;QAClD,oBAAoB,EAAE,IAAI,kDAAsB,EAAE;QAClD,kBAAkB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;QAC7D,iBAAiB,EAAE,QAAQ;KAC9B;IACD,mBAAmB,EAAE;QACjB,QAAQ,EAAE,GAAG;QACb,IAAI,EAAE,OAAO;KAChB;IACD,aAAa,EAAE;QACX,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,KAAK;QACnB,iBAAiB,EAAE,EAAE;KACxB;IACD,gBAAgB,EAAE;QACd,mBAAmB,EAAE,sCAA0B;QAC/C,gBAAgB,EAAE,mCAAuB;KAC5C;IACD,eAAe,EAAE;QACb,2BAA2B,EAAE,CAAC,wEAAiC,CAAC;QAChE,mBAAmB,EAAE,CAAC,uDAAyB,CAAC;QAChD,wBAAwB,EAAE,EAAE;QAC5B,mBAAmB,EAAE,CAAC,qDAAwB,CAAC;KAClD;IACD,YAAY,EAAE;QACV,eAAe,EAAE,GAAG;QACpB,mBAAmB,EAAE,GAAG;QACxB,iCAAiC,EAAE,IAAI,wFAAwC,EAAE;QACjF,aAAa,EAAE,IAAI,2CAAmB,EAAE;QACxC,qBAAqB,EAAE,IAAI,qCAAgB,EAAE;QAC7C,OAAO,EAAE,EAAE;QACX,uBAAuB,EAAE,IAAI,kEAA8B,EAAE;QAC7D,iBAAiB,EAAE,IAAI,8CAAwB,EAAE;QACjD,yBAAyB,EAAE,IAAI,gEAAgC,CAAC,IAAI,CAAC;QACrE,4BAA4B,EAAE,IAAI,6EAAmC,EAAE;QACvE,mBAAmB,EAAE,IAAI,0DAA0B,EAAE;KACxD;IACD,cAAc,EAAE;QACZ,gCAAgC,EAAE,EAAE;QACpC,qBAAqB,EAAE,EAAE;QACzB,oBAAoB,EAAE,EAAE;KAC3B;IACD,UAAU,EAAE;QACR,eAAe,EAAE,IAAI,kDAAsB,EAAE;QAC7C,0BAA0B,EAAE,IAAI,yEAAiC,EAAE;KACtE;IACD,mBAAmB,EAAE;QACjB,eAAe,EAAE,SAAS;KAC7B;IACD,eAAe,EAAE;QACb,gBAAgB,EAAE,IAAI,uDAAwB,EAAE;QAChD,wBAAwB,EAAE,IAAI,wEAAgC,EAAE;QAChE,YAAY,EAAE,EAAE;QAChB,uBAAuB,EAAE,KAAK;QAC9B,MAAM,EAAE,EAAE;KACb;IACD,YAAY,EAAE;QACV,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,EAAE;QACjB,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,EAAE;QACX,UAAU,EAAE,EAAE;QACd,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE,EAAE;QACjB,KAAK,EAAE,EAAE;QACT,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,EAAE;QACf,cAAc,EAAE,EAAE;QAClB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,EAAE;QACjB,kBAAkB,EAAE,EAAE;QACtB,cAAc,EAAE,EAAE;QAClB,SAAS,EAAE,EAAE;QACb,cAAc,EAAE,EAAE;QAClB,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,EAAE;QACX,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;KACX;IACD,OAAO,EAAE,EAAE;CACd,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { EntityMetadataModifier } from './entity-metadata-modifier';
2
+ /**
3
+ * @description
4
+ * Dynamically adds `@Index()` metadata to all many-to-one relations. These are already added
5
+ * by default in MySQL/MariaDB, but not in Postgres. So this modification can lead to improved
6
+ * performance with Postgres - especially when dealing with large numbers of products, orders etc.
7
+ *
8
+ * See https://github.com/vendure-ecommerce/vendure/issues/1502
9
+ *
10
+ * TODO: In v2 we will add the Index to all relations manually, this making this redundant.
11
+ */
12
+ export declare const addForeignKeyIndices: EntityMetadataModifier;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addForeignKeyIndices = void 0;
4
+ const typeorm_1 = require("typeorm");
5
+ const stock_movement_entity_1 = require("../../entity/stock-movement/stock-movement.entity");
6
+ /**
7
+ * @description
8
+ * Dynamically adds `@Index()` metadata to all many-to-one relations. These are already added
9
+ * by default in MySQL/MariaDB, but not in Postgres. So this modification can lead to improved
10
+ * performance with Postgres - especially when dealing with large numbers of products, orders etc.
11
+ *
12
+ * See https://github.com/vendure-ecommerce/vendure/issues/1502
13
+ *
14
+ * TODO: In v2 we will add the Index to all relations manually, this making this redundant.
15
+ */
16
+ const addForeignKeyIndices = (metadata) => {
17
+ var _a;
18
+ for (const relationMetadata of metadata.relations) {
19
+ const { relationType, target } = relationMetadata;
20
+ if (relationType === 'many-to-one') {
21
+ const embeddedIn = (_a = metadata.embeddeds.find(e => e.type() === relationMetadata.target)) === null || _a === void 0 ? void 0 : _a.target;
22
+ const targetClass = (embeddedIn !== null && embeddedIn !== void 0 ? embeddedIn : target);
23
+ if (typeof targetClass === 'function') {
24
+ const instance = new targetClass();
25
+ if (!(instance instanceof stock_movement_entity_1.StockMovement)) {
26
+ (0, typeorm_1.Index)()(instance, relationMetadata.propertyName);
27
+ }
28
+ }
29
+ }
30
+ }
31
+ };
32
+ exports.addForeignKeyIndices = addForeignKeyIndices;
33
+ //# sourceMappingURL=add-foreign-key-indices.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-foreign-key-indices.js","sourceRoot":"","sources":["../../../src/config/entity-metadata/add-foreign-key-indices.ts"],"names":[],"mappings":";;;AAAA,qCAAgC;AAGhC,6FAAkF;AAIlF;;;;;;;;;GASG;AACI,MAAM,oBAAoB,GAA2B,CAAC,QAA6B,EAAE,EAAE;;IAC1F,KAAK,MAAM,gBAAgB,IAAI,QAAQ,CAAC,SAAS,EAAE;QAC/C,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,gBAAgB,CAAC;QAClD,IAAI,YAAY,KAAK,aAAa,EAAE;YAChC,MAAM,UAAU,GAAG,MAAA,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,gBAAgB,CAAC,MAAM,CAAC,0CAAE,MAAM,CAAC;YAC9F,MAAM,WAAW,GAAG,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,MAAM,CAAwB,CAAC;YAClE,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE;gBACnC,MAAM,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;gBACnC,IAAI,CAAC,CAAC,QAAQ,YAAY,qCAAa,CAAC,EAAE;oBACtC,IAAA,eAAK,GAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;iBACpD;aACJ;SACJ;KACJ;AACL,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B"}
@@ -0,0 +1,55 @@
1
+ import { MetadataArgsStorage } from 'typeorm/metadata-args/MetadataArgsStorage';
2
+ /**
3
+ * @description
4
+ * A function which allows TypeORM entity metadata to be manipulated prior to the DB schema being generated
5
+ * during bootstrap.
6
+ *
7
+ * {{% alert "warning" %}}
8
+ * Certain DB schema modifications will result in auto-generated migrations which will lead to data loss. For instance,
9
+ * changing the data type of a column will drop the column & data and then re-create it. To avoid loss of important data,
10
+ * always check and modify your migration scripts as needed.
11
+ * {{% /alert %}}
12
+ *
13
+ * @example
14
+ * ```TypeScript
15
+ * import { Index } from 'typeorm';
16
+ * import { EntityMetadataModifier, ProductVariant } from '\@vendure/core';
17
+ *
18
+ * // Adds a unique index to the ProductVariant.sku column
19
+ * export const addSkuUniqueIndex: EntityMetadataModifier = metadata => {
20
+ * const instance = new ProductVariant();
21
+ * Index({ unique: true })(instance, 'sku');
22
+ * };
23
+ * ```
24
+ *
25
+ * @example
26
+ * ```TypeScript
27
+ * import { Column } from 'typeorm';
28
+ * import { EntityMetadataModifier, ProductTranslation } from '\@vendure/core';
29
+ *
30
+ * // Use the "mediumtext" datatype for the Product's description rather than
31
+ * // the default "text" type.
32
+ * export const makeProductDescriptionMediumText: EntityMetadataModifier = metadata => {
33
+ * const descriptionColumnIndex = metadata.columns.findIndex(
34
+ * col => col.propertyName === 'description' && col.target === ProductTranslation,
35
+ * );
36
+ * if (-1 < descriptionColumnIndex) {
37
+ * // First we need to remove the existing column definition
38
+ * // from the metadata.
39
+ * metadata.columns.splice(descriptionColumnIndex, 1);
40
+ * // Then we add a new column definition with our custom
41
+ * // data type "mediumtext"
42
+ * // DANGER: this particular modification will generate a DB migration
43
+ * // which will result in data loss of existing descriptions. Make sure
44
+ * // to manually check & modify your migration scripts.
45
+ * const instance = new ProductTranslation();
46
+ * Column({ type: 'mediumtext' })(instance, 'description');
47
+ * }
48
+ * };
49
+ * ```
50
+ *
51
+ * @docsCategory configuration
52
+ * @docsPage EntityOptions
53
+ * @since 1.6.0
54
+ */
55
+ export declare type EntityMetadataModifier = (metadata: MetadataArgsStorage) => void | Promise<void>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=entity-metadata-modifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-metadata-modifier.js","sourceRoot":"","sources":["../../../src/config/entity-metadata/entity-metadata-modifier.ts"],"names":[],"mappings":""}
@@ -18,6 +18,8 @@ export * from './default-config';
18
18
  export * from './entity-id-strategy/auto-increment-id-strategy';
19
19
  export * from './entity-id-strategy/entity-id-strategy';
20
20
  export * from './entity-id-strategy/uuid-id-strategy';
21
+ export * from './entity-metadata/entity-metadata-modifier';
22
+ export * from './entity-metadata/add-foreign-key-indices';
21
23
  export * from './fulfillment/custom-fulfillment-process';
22
24
  export * from './fulfillment/fulfillment-handler';
23
25
  export * from './fulfillment/manual-fulfillment-handler';
@@ -30,6 +30,8 @@ __exportStar(require("./default-config"), exports);
30
30
  __exportStar(require("./entity-id-strategy/auto-increment-id-strategy"), exports);
31
31
  __exportStar(require("./entity-id-strategy/entity-id-strategy"), exports);
32
32
  __exportStar(require("./entity-id-strategy/uuid-id-strategy"), exports);
33
+ __exportStar(require("./entity-metadata/entity-metadata-modifier"), exports);
34
+ __exportStar(require("./entity-metadata/add-foreign-key-indices"), exports);
33
35
  __exportStar(require("./fulfillment/custom-fulfillment-process"), exports);
34
36
  __exportStar(require("./fulfillment/fulfillment-handler"), exports);
35
37
  __exportStar(require("./fulfillment/manual-fulfillment-handler"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gFAA8D;AAC9D,wFAAsE;AACtE,kFAAgE;AAChE,kFAAgE;AAChE,iEAA+C;AAC/C,0EAAwD;AACxD,8EAA4D;AAC5D,wEAAsD;AACtD,mEAAiD;AACjD,sEAAoD;AACpD,8DAA4C;AAC5C,uEAAqD;AACrD,uFAAqE;AACrE,kDAAgC;AAChC,mDAAiC;AACjC,oEAAkD;AAClD,mDAAiC;AACjC,kFAAgE;AAChE,0EAAwD;AACxD,wEAAsD;AACtD,2EAAyD;AACzD,oEAAkD;AAClD,2EAAyD;AACzD,6EAA2D;AAC3D,iEAA+C;AAC/C,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,iDAA+B;AAC/B,0EAAwD;AACxD,+DAA6C;AAC7C,kFAAgE;AAChE,wEAAsD;AACtD,4EAA0D;AAC1D,gEAA8C;AAC9C,8DAA4C;AAC5C,gFAA8D;AAC9D,+DAA6C;AAC7C,gEAA8C;AAC9C,oEAAkD;AAClD,gEAA8C;AAC9C,+EAA6D;AAC7D,6DAA2C;AAC3C,mEAAiD;AACjD,yEAAuD;AACvD,2EAAyD;AACzD,+EAA6D;AAC7D,mEAAiD;AACjD,8CAA4B;AAC5B,mFAAiE;AACjE,8EAA4D;AAC5D,yEAAuD;AACvD,gFAA8D;AAC9D,yFAAuE;AACvE,wEAAsD;AACtD,iFAA+D;AAC/D,8EAA4D;AAC5D,kEAAgD;AAChD,sEAAoD;AACpD,0DAAwC;AACxC,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gFAA8D;AAC9D,wFAAsE;AACtE,kFAAgE;AAChE,kFAAgE;AAChE,iEAA+C;AAC/C,0EAAwD;AACxD,8EAA4D;AAC5D,wEAAsD;AACtD,mEAAiD;AACjD,sEAAoD;AACpD,8DAA4C;AAC5C,uEAAqD;AACrD,uFAAqE;AACrE,kDAAgC;AAChC,mDAAiC;AACjC,oEAAkD;AAClD,mDAAiC;AACjC,kFAAgE;AAChE,0EAAwD;AACxD,wEAAsD;AACtD,6EAA2D;AAC3D,4EAA0D;AAC1D,2EAAyD;AACzD,oEAAkD;AAClD,2EAAyD;AACzD,6EAA2D;AAC3D,iEAA+C;AAC/C,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC;AACxC,iDAA+B;AAC/B,0EAAwD;AACxD,+DAA6C;AAC7C,kFAAgE;AAChE,wEAAsD;AACtD,4EAA0D;AAC1D,gEAA8C;AAC9C,8DAA4C;AAC5C,gFAA8D;AAC9D,+DAA6C;AAC7C,gEAA8C;AAC9C,oEAAkD;AAClD,gEAA8C;AAC9C,+EAA6D;AAC7D,6DAA2C;AAC3C,mEAAiD;AACjD,yEAAuD;AACvD,2EAAyD;AACzD,+EAA6D;AAC7D,mEAAiD;AACjD,8CAA4B;AAC5B,mFAAiE;AACjE,8EAA4D;AAC5D,yEAAuD;AACvD,gFAA8D;AAC9D,yFAAuE;AACvE,wEAAsD;AACtD,iFAA+D;AAC/D,8EAA4D;AAC5D,kEAAgD;AAChD,sEAAoD;AACpD,0DAAwC;AACxC,mDAAiC"}
@@ -1,7 +1,7 @@
1
1
  import { ConfigArg } from '@vendure/common/lib/generated-types';
2
2
  import { RequestContext } from '../../api/common/request-context';
3
3
  import { ConfigArgs, ConfigArgValues, ConfigurableOperationDef, ConfigurableOperationDefOptions } from '../../common/configurable-operation';
4
- import { Order } from '../../entity/order/order.entity';
4
+ import { ShippingMethod, Order } from '../../entity';
5
5
  export interface ShippingCalculatorConfig<T extends ConfigArgs> extends ConfigurableOperationDefOptions<T> {
6
6
  calculate: CalculateShippingFn<T>;
7
7
  }
@@ -46,7 +46,7 @@ export declare class ShippingCalculator<T extends ConfigArgs = ConfigArgs> exten
46
46
  *
47
47
  * @internal
48
48
  */
49
- calculate(ctx: RequestContext, order: Order, args: ConfigArg[]): CalculateShippingFnResult;
49
+ calculate(ctx: RequestContext, order: Order, args: ConfigArg[], method: ShippingMethod): CalculateShippingFnResult;
50
50
  }
51
51
  /**
52
52
  * @description
@@ -90,4 +90,4 @@ export declare type CalculateShippingFnResult = ShippingCalculationResult | Prom
90
90
  * @docsCategory shipping
91
91
  * @docsPage ShippingCalculator
92
92
  */
93
- export declare type CalculateShippingFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>) => CalculateShippingFnResult;
93
+ export declare type CalculateShippingFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>, method: ShippingMethod) => CalculateShippingFnResult;
@@ -45,8 +45,8 @@ class ShippingCalculator extends configurable_operation_1.ConfigurableOperationD
45
45
  *
46
46
  * @internal
47
47
  */
48
- calculate(ctx, order, args) {
49
- return this.calculateFn(ctx, order, this.argsArrayToHash(args));
48
+ calculate(ctx, order, args, method) {
49
+ return this.calculateFn(ctx, order, this.argsArrayToHash(args), method);
50
50
  }
51
51
  }
52
52
  exports.ShippingCalculator = ShippingCalculator;
@@ -1 +1 @@
1
- {"version":3,"file":"shipping-calculator.js","sourceRoot":"","sources":["../../../src/config/shipping-method/shipping-calculator.ts"],"names":[],"mappings":";;;AAGA,gFAK6C;AAO7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,kBAAsD,SAAQ,iDAA2B;IAGlG,YAAY,MAAmC;QAC3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB;QAC1D,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACpE,CAAC;CACJ;AAjBD,gDAiBC"}
1
+ {"version":3,"file":"shipping-calculator.js","sourceRoot":"","sources":["../../../src/config/shipping-method/shipping-calculator.ts"],"names":[],"mappings":";;;AAGA,gFAK6C;AAO7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAa,kBAAsD,SAAQ,iDAA2B;IAGlG,YAAY,MAAmC;QAC3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,SAAS,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB,EAAE,MAAsB;QAClF,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5E,CAAC;CACJ;AAjBD,gDAiBC"}
@@ -2,7 +2,7 @@ import { ConfigArg } from '@vendure/common/lib/generated-types';
2
2
  import { Json } from '@vendure/common/lib/shared-types';
3
3
  import { RequestContext } from '../../api/common/request-context';
4
4
  import { ConfigArgs, ConfigArgValues, ConfigurableOperationDef, ConfigurableOperationDefOptions } from '../../common/configurable-operation';
5
- import { Order } from '../../entity/order/order.entity';
5
+ import { ShippingMethod, Order } from '../../entity';
6
6
  /**
7
7
  * @description
8
8
  * Configuration passed into the constructor of a {@link ShippingEligibilityChecker} to
@@ -47,7 +47,7 @@ export declare class ShippingEligibilityChecker<T extends ConfigArgs = ConfigArg
47
47
  *
48
48
  * @internal
49
49
  */
50
- check(ctx: RequestContext, order: Order, args: ConfigArg[]): Promise<boolean>;
50
+ check(ctx: RequestContext, order: Order, args: ConfigArg[], method: ShippingMethod): Promise<boolean>;
51
51
  /**
52
52
  * Determines whether the check function needs to be run, based on the presence and
53
53
  * result of any defined `shouldRunCheckFn`.
@@ -66,7 +66,7 @@ export declare class ShippingEligibilityChecker<T extends ConfigArgs = ConfigArg
66
66
  *
67
67
  * @docsCategory shipping
68
68
  */
69
- export declare type CheckShippingEligibilityCheckerFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>) => boolean | Promise<boolean>;
69
+ export declare type CheckShippingEligibilityCheckerFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>, method: ShippingMethod) => boolean | Promise<boolean>;
70
70
  /**
71
71
  * @description
72
72
  * An optional method which is used to decide whether to run the `check()` function.
@@ -95,4 +95,4 @@ export declare type CheckShippingEligibilityCheckerFn<T extends ConfigArgs> = (c
95
95
  *
96
96
  * @docsCategory shipping
97
97
  */
98
- export declare type ShouldRunCheckFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>) => Json | Promise<Json>;
98
+ export declare type ShouldRunCheckFn<T extends ConfigArgs> = (ctx: RequestContext, order: Order, args: ConfigArgValues<T>, method: ShippingMethod) => Json | Promise<Json>;
@@ -39,20 +39,20 @@ class ShippingEligibilityChecker extends configurable_operation_1.ConfigurableOp
39
39
  *
40
40
  * @internal
41
41
  */
42
- async check(ctx, order, args) {
43
- const shouldRunCheck = await this.shouldRunCheck(ctx, order, args);
44
- return shouldRunCheck ? this.checkFn(ctx, order, this.argsArrayToHash(args)) : true;
42
+ async check(ctx, order, args, method) {
43
+ const shouldRunCheck = await this.shouldRunCheck(ctx, order, args, method);
44
+ return shouldRunCheck ? this.checkFn(ctx, order, this.argsArrayToHash(args), method) : true;
45
45
  }
46
46
  /**
47
47
  * Determines whether the check function needs to be run, based on the presence and
48
48
  * result of any defined `shouldRunCheckFn`.
49
49
  */
50
- async shouldRunCheck(ctx, order, args) {
50
+ async shouldRunCheck(ctx, order, args, method) {
51
51
  var _a;
52
52
  if (typeof this.shouldRunCheckFn === 'function') {
53
53
  const cacheKey = (_a = ctx.session) === null || _a === void 0 ? void 0 : _a.id;
54
54
  if (cacheKey) {
55
- const checkResult = await this.shouldRunCheckFn(ctx, order, this.argsArrayToHash(args));
55
+ const checkResult = await this.shouldRunCheckFn(ctx, order, this.argsArrayToHash(args), method);
56
56
  const checkResultHash = (0, crypto_1.createHash)('sha1')
57
57
  .update(JSON.stringify(checkResult))
58
58
  .digest('base64');
@@ -1 +1 @@
1
- {"version":3,"file":"shipping-eligibility-checker.js","sourceRoot":"","sources":["../../../src/config/shipping-method/shipping-eligibility-checker.ts"],"names":[],"mappings":";;;AAEA,mCAAoC;AAGpC,gFAK6C;AAC7C,sDAAkD;AAelD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,0BAA8D,SAAQ,iDAElF;IAKG,YAAY,MAA2C;QACnD,KAAK,CAAC,MAAM,CAAC,CAAC;QAHV,wBAAmB,GAAG,IAAI,oBAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAIrF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC;IAClD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB;QAC5D,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACnE,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB;;QAC7E,IAAI,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU,EAAE;YAC7C,MAAM,QAAQ,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,EAAE,CAAC;YACjC,IAAI,QAAQ,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxF,MAAM,eAAe,GAAG,IAAA,mBAAU,EAAC,MAAM,CAAC;qBACrC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;qBACnC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtB,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC9D,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACxD,IAAI,eAAe,KAAK,cAAc,EAAE;oBACpC,OAAO,KAAK,CAAC;iBAChB;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA7CD,gEA6CC"}
1
+ {"version":3,"file":"shipping-eligibility-checker.js","sourceRoot":"","sources":["../../../src/config/shipping-method/shipping-eligibility-checker.ts"],"names":[],"mappings":";;;AAEA,mCAAoC;AAGpC,gFAK6C;AAC7C,sDAAkD;AAelD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,0BAA8D,SAAQ,iDAElF;IAKG,YAAY,MAA2C;QACnD,KAAK,CAAC,MAAM,CAAC,CAAC;QAHV,wBAAmB,GAAG,IAAI,oBAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAIrF,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC;IAClD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB,EAAE,MAAsB;QACpF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3E,OAAO,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,GAAmB,EAAE,KAAY,EAAE,IAAiB,EAAE,MAAsB;;QACrG,IAAI,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU,EAAE;YAC7C,MAAM,QAAQ,GAAG,MAAA,GAAG,CAAC,OAAO,0CAAE,EAAE,CAAC;YACjC,IAAI,QAAQ,EAAE;gBACV,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;gBAChG,MAAM,eAAe,GAAG,IAAA,mBAAU,EAAC,MAAM,CAAC;qBACrC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;qBACnC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtB,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC9D,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACxD,IAAI,eAAe,KAAK,cAAc,EAAE;oBACpC,OAAO,KAAK,CAAC;iBAChB;aACJ;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA7CD,gEA6CC"}
@@ -18,6 +18,7 @@ import { ProductVariantPriceCalculationStrategy } from './catalog/product-varian
18
18
  import { StockDisplayStrategy } from './catalog/stock-display-strategy';
19
19
  import { CustomFields } from './custom-field/custom-field-types';
20
20
  import { EntityIdStrategy } from './entity-id-strategy/entity-id-strategy';
21
+ import { EntityMetadataModifier } from './entity-metadata/entity-metadata-modifier';
21
22
  import { CustomFulfillmentProcess } from './fulfillment/custom-fulfillment-process';
22
23
  import { FulfillmentHandler } from './fulfillment/fulfillment-handler';
23
24
  import { JobQueueStrategy } from './job-queue/job-queue-strategy';
@@ -838,6 +839,17 @@ export interface EntityOptions {
838
839
  * @default 30000
839
840
  */
840
841
  zoneCacheTtl?: number;
842
+ /**
843
+ * @description
844
+ * Allows the metadata of the built-in TypeORM entities to be manipulated. This allows you
845
+ * to do things like altering data types, adding indices etc. This is an advanced feature
846
+ * which should be used with some caution as it will result in DB schema changes. For examples
847
+ * see {@link EntityMetadataModifier}.
848
+ *
849
+ * @since 1.6.0
850
+ * @default []
851
+ */
852
+ metadataModifiers?: EntityMetadataModifier[];
841
853
  }
842
854
  /**
843
855
  * @description
@@ -13,8 +13,12 @@ export declare class TransactionWrapper {
13
13
  * Executes the `work` function within the context of a transaction. If the `work` function
14
14
  * resolves / completes, then all the DB operations it contains will be committed. If it
15
15
  * throws an error or rejects, then all DB operations will be rolled back.
16
+ *
17
+ * @note
18
+ * This function does not mutate your context. Instead, this function makes a copy and passes
19
+ * context to work function.
16
20
  */
17
- executeInTransaction<T>(ctx: RequestContext, work: () => Observable<T> | Promise<T>, mode: TransactionMode, connection: Connection): Promise<T>;
21
+ executeInTransaction<T>(originalCtx: RequestContext, work: (ctx: RequestContext) => Observable<T> | Promise<T>, mode: TransactionMode, connection: Connection): Promise<T>;
18
22
  /**
19
23
  * Attempts to start a DB transaction, with retry logic in the case that a transaction
20
24
  * is already started for the connection (which is mainly a problem with SQLite/Sql.js)
@@ -16,14 +16,20 @@ class TransactionWrapper {
16
16
  * Executes the `work` function within the context of a transaction. If the `work` function
17
17
  * resolves / completes, then all the DB operations it contains will be committed. If it
18
18
  * throws an error or rejects, then all DB operations will be rolled back.
19
+ *
20
+ * @note
21
+ * This function does not mutate your context. Instead, this function makes a copy and passes
22
+ * context to work function.
19
23
  */
20
- async executeInTransaction(ctx, work, mode, connection) {
24
+ async executeInTransaction(originalCtx, work, mode, connection) {
25
+ // Copy to make sure original context will remain valid after transaction completes
26
+ const ctx = originalCtx.copy();
21
27
  const queryRunnerExists = !!ctx[constants_1.TRANSACTION_MANAGER_KEY];
22
28
  if (queryRunnerExists) {
23
29
  // If a QueryRunner already exists on the RequestContext, there must be an existing
24
30
  // outer transaction in progress. In that case, we just execute the work function
25
31
  // as usual without needing to further wrap in a transaction.
26
- return (0, rxjs_1.lastValueFrom)((0, rxjs_1.from)(work()));
32
+ return (0, rxjs_1.lastValueFrom)((0, rxjs_1.from)(work(ctx)));
27
33
  }
28
34
  const queryRunner = connection.createQueryRunner();
29
35
  if (mode === 'auto') {
@@ -32,7 +38,7 @@ class TransactionWrapper {
32
38
  ctx[constants_1.TRANSACTION_MANAGER_KEY] = queryRunner.manager;
33
39
  try {
34
40
  const maxRetries = 5;
35
- const result = await (0, rxjs_1.lastValueFrom)((0, rxjs_1.from)(work()).pipe((0, operators_1.retryWhen)(errors => errors.pipe((0, operators_1.tap)(err => {
41
+ const result = await (0, rxjs_1.lastValueFrom)((0, rxjs_1.from)(work(ctx)).pipe((0, operators_1.retryWhen)(errors => errors.pipe((0, operators_1.tap)(err => {
36
42
  if (!this.isRetriableError(err)) {
37
43
  throw err;
38
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transaction-wrapper.js","sourceRoot":"","sources":["../../src/connection/transaction-wrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction-wrapper.js","sourceRoot":"","sources":["../../src/connection/transaction-wrapper.ts"],"names":[],"mappings":"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"}
@@ -58,16 +58,20 @@ export declare class TransactionalConnection {
58
58
  * of Vendure internal services.
59
59
  *
60
60
  * If there is already a {@link RequestContext} object available, you should pass it in as the first
61
- * argument in order to add a new transaction to it. If not, omit the first argument and an empty
61
+ * argument in order to create transactional context as the copy. If not, omit the first argument and an empty
62
62
  * RequestContext object will be created, which is then used to propagate the transaction to
63
63
  * all inner method calls.
64
64
  *
65
65
  * @example
66
66
  * ```TypeScript
67
- * private async transferCredit(fromId: ID, toId: ID, amount: number) {
68
- * await this.connection.withTransaction(ctx => {
67
+ * private async transferCredit(outerCtx: RequestContext, fromId: ID, toId: ID, amount: number) {
68
+ * await this.connection.withTransaction(outerCtx, ctx => {
69
69
  * await this.giftCardService.updateCustomerCredit(fromId, -amount);
70
70
  *
71
+ * // Note you must not use outerCtx here, instead use ctx. Otherwise this query
72
+ * // will be executed outside of transaction
73
+ * await this.connection.getRepository(ctx, GiftCard).update(fromId, { transferred: true })
74
+ *
71
75
  * // If some intermediate logic here throws an Error,
72
76
  * // then all DB transactions will be rolled back and neither Customer's
73
77
  * // credit balance will have changed.
@@ -58,10 +58,10 @@ let TransactionalConnection = class TransactionalConnection {
58
58
  return this.connection;
59
59
  }
60
60
  getRepository(ctxOrTarget, maybeTarget) {
61
- var _a;
62
61
  if (ctxOrTarget instanceof request_context_1.RequestContext) {
63
62
  const transactionManager = this.getTransactionManager(ctxOrTarget);
64
- if (transactionManager && maybeTarget && !((_a = transactionManager.queryRunner) === null || _a === void 0 ? void 0 : _a.isReleased)) {
63
+ if (transactionManager) {
64
+ // tslint:disable-next-line:no-non-null-assertion
65
65
  return transactionManager.getRepository(maybeTarget);
66
66
  }
67
67
  else {
@@ -86,7 +86,7 @@ let TransactionalConnection = class TransactionalConnection {
86
86
  ctx = request_context_1.RequestContext.empty();
87
87
  work = ctxOrWork;
88
88
  }
89
- return this.transactionWrapper.executeInTransaction(ctx, () => work(ctx), 'auto', this.rawConnection);
89
+ return this.transactionWrapper.executeInTransaction(ctx, work, 'auto', this.rawConnection);
90
90
  }
91
91
  /**
92
92
  * @description
@@ -180,6 +180,11 @@ let TransactionalConnection = class TransactionalConnection {
180
180
  */
181
181
  findOneInChannel(ctx, entity, id, channelId, options = {}) {
182
182
  const qb = this.getRepository(ctx, entity).createQueryBuilder('entity');
183
+ if (options.relations) {
184
+ // Joining custom field relations here does not seem to work well,
185
+ // so we simply omit them and rely on the custom field relation resolvers.
186
+ options.relations = options.relations.filter(r => !r.startsWith('customFields.'));
187
+ }
183
188
  typeorm_2.FindOptionsUtils.applyFindManyOptionsOrConditionsToQueryBuilder(qb, options);
184
189
  if (options.loadEagerRelations !== false) {
185
190
  // tslint:disable-next-line:no-non-null-assertion
@@ -1 +1 @@
1
- {"version":3,"file":"transactional-connection.js","sourceRoot":"","sources":["../../src/connection/transactional-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactional-connection.js","sourceRoot":"","sources":["../../src/connection/transactional-connection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAmD;AAEnD,qCASiB;AAEjB,mEAA+D;AAC/D,mDAA8D;AAC9D,mDAA6D;AAI7D,+DAA2D;AAG3D;;;;;;;;;;;GAWG;AAEH,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAChC,YACgC,UAAsB,EAC1C,kBAAsC;QADlB,eAAU,GAAV,UAAU,CAAY;QAC1C,uBAAkB,GAAlB,kBAAkB,CAAoB;IAC/C,CAAC;IAEJ;;;;;OAKG;IACH,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAmBD,aAAa,CACT,WAA4F,EAC5F,WAAgE;QAEhE,IAAI,WAAW,YAAY,gCAAc,EAAE;YACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,kBAAkB,EAAE;gBACpB,iDAAiD;gBACjD,OAAO,kBAAkB,CAAC,aAAa,CAAC,WAAY,CAAC,CAAC;aACzD;iBAAM;gBACH,iDAAiD;gBACjD,OAAO,IAAA,uBAAa,EAAC,WAAY,CAAC,CAAC;aACtC;SACJ;aAAM;YACH,iDAAiD;YACjD,OAAO,IAAA,uBAAa,EAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,WAAY,CAAC,CAAC;SACrD;IACL,CAAC;IA6CD,KAAK,CAAC,eAAe,CACjB,SAAiE,EACjE,SAA+C;QAE/C,IAAI,GAAmB,CAAC;QACxB,IAAI,IAAyC,CAAC;QAC9C,IAAI,SAAS,YAAY,gCAAc,EAAE;YACrC,GAAG,GAAG,SAAS,CAAC;YAChB,iDAAiD;YACjD,IAAI,GAAG,SAAU,CAAC;SACrB;aAAM;YACH,GAAG,GAAG,gCAAc,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,GAAG,SAAS,CAAC;SACpB;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC/F,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,GAAmB;;QACtC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAA,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,WAAW,0CAAE,mBAAmB,MAAK,KAAK,EAAE;YAChE,MAAM,kBAAkB,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;SAC3D;IACL,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,qBAAqB,CAAC,GAAmB;;QAC3C,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,WAAW,0CAAE,mBAAmB,EAAE;YACtD,MAAM,kBAAkB,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;SAC5D;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,mBAAmB,CAAC,GAAmB;;QACzC,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,WAAW,0CAAE,mBAAmB,EAAE;YACtD,MAAM,kBAAkB,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC;SAC9D;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAClB,GAAmB,EACnB,UAAmB,EACnB,EAAM,EACN,UAAsC,EAAE;QAExC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACxC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;SACtE;aAAM;YACH,IAAI,GAAQ,CAAC;YACb,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YACvD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE;gBACnD,IAAI;oBACA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;oBACjF,OAAO,MAAM,CAAC;iBACjB;gBAAC,OAAO,CAAM,EAAE;oBACb,GAAG,GAAG,CAAC,CAAC;oBACR,IAAI,OAAO,GAAG,UAAU,GAAG,CAAC,EAAE;wBAC1B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;qBAC5D;iBACJ;aACJ;YACD,MAAM,GAAG,CAAC;SACb;IACL,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAClC,GAAmB,EACnB,UAAmB,EACnB,EAAM,EACN,UAAmC,EAAE;QAErC,IAAI,MAAqB,CAAC;QAC1B,IAAI,OAAO,CAAC,SAAS,IAAI,IAAI,EAAE;YAC3B,MAAM,EAAE,SAAS,KAAiC,OAAO,EAAnC,uBAAuB,UAAK,OAAO,EAAnD,aAAyC,CAAU,CAAC;YAC1D,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAChC,GAAG,EACH,UAAoC,EACpC,EAAE,EACF,OAAO,CAAC,SAAS,EACjB,uBAAuB,CAC1B,CAAC;SACL;aAAM;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,OAAyB,CAAC,CAAC;SAC7F;QACD,IACI,CAAC,MAAM;YACP,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC;gBAC9B,MAA4B,CAAC,SAAS,KAAK,IAAI;gBAChD,OAAO,CAAC,kBAAkB,KAAK,IAAI,CAAC,EAC1C;YACE,MAAM,IAAI,4BAAmB,CAAC,UAAU,CAAC,IAAW,EAAE,EAAE,CAAC,CAAC;SAC7D;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CACZ,GAAmB,EACnB,MAAe,EACf,EAAM,EACN,SAAa,EACb,UAA0B,EAAE;QAE5B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxE,IAAI,OAAO,CAAC,SAAS,EAAE;YACnB,kEAAkE;YAClE,0EAA0E;YAC1E,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;SACrF;QACD,0BAAgB,CAAC,8CAA8C,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC7E,IAAI,OAAO,CAAC,kBAAkB,KAAK,KAAK,EAAE;YACtC,iDAAiD;YACjD,0BAAgB,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC;SAC3F;QACD,OAAO,EAAE;aACJ,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;aACtC,QAAQ,CAAC,iBAAiB,EAAE,EAAE,EAAE,EAAE,CAAC;aACnC,QAAQ,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,CAAC;aAClD,MAAM,EAAE,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,kBAAkB,CACd,GAAmB,EACnB,MAAe,EACf,GAAS,EACT,SAAa,EACb,OAAuB;QAEvB,gGAAgG;QAChG,+BAA+B;QAC/B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC9B;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACxE,0BAAgB,CAAC,8CAA8C,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC7E,IAAI,OAAO,CAAC,kBAAkB,KAAK,KAAK,EAAE;YACtC,iDAAiD;YACjD,0BAAgB,CAAC,kBAAkB,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC;SAC3F;QACD,OAAO,EAAE;aACJ,QAAQ,CAAC,iBAAiB,EAAE,SAAS,CAAC;aACtC,QAAQ,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,CAAC;aAC3C,QAAQ,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,CAAC;aAClD,OAAO,EAAE,CAAC;IACnB,CAAC;IAEO,qBAAqB,CAAC,GAAmB;QAC7C,OAAQ,GAAW,CAAC,mCAAuB,CAAC,CAAC;IACjD,CAAC;CACJ,CAAA;AAtRY,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAGJ,WAAA,IAAA,0BAAgB,GAAE,CAAA;qCAAqB,oBAAU;QACtB,wCAAkB;GAHzC,uBAAuB,CAsRnC;AAtRY,0DAAuB"}
@@ -9,7 +9,7 @@ import { FacetValueService } from '../../../service/services/facet-value.service
9
9
  import { FacetService } from '../../../service/services/facet.service';
10
10
  import { TaxCategoryService } from '../../../service/services/tax-category.service';
11
11
  import { AssetImporter } from '../asset-importer/asset-importer';
12
- import { ImportParser } from '../import-parser/import-parser';
12
+ import { ImportParser, ParsedProductWithVariants } from '../import-parser/import-parser';
13
13
  import { FastImporterService } from './fast-importer.service';
14
14
  export interface ImportProgress extends ImportInfo {
15
15
  currentProduct: string;
@@ -50,9 +50,10 @@ export declare class Importer {
50
50
  private doParseAndImport;
51
51
  private getRequestContext;
52
52
  /**
53
+ * @description
53
54
  * Imports the products specified in the rows object. Return an array of error messages.
54
55
  */
55
- private importProducts;
56
+ importProducts(ctx: RequestContext, rows: ParsedProductWithVariants[], onProgress: OnProgressFn): Promise<string[]>;
56
57
  private getFacetValueIds;
57
58
  private processCustomFieldValues;
58
59
  /**