@vendure/core 1.5.2 → 1.6.0

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 (248) 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/decorators/relations.decorator.d.ts +102 -0
  4. package/dist/api/decorators/relations.decorator.js +187 -0
  5. package/dist/api/decorators/relations.decorator.js.map +1 -0
  6. package/dist/api/index.d.ts +1 -0
  7. package/dist/api/index.js +1 -0
  8. package/dist/api/index.js.map +1 -1
  9. package/dist/api/resolvers/admin/administrator.resolver.d.ts +3 -2
  10. package/dist/api/resolvers/admin/administrator.resolver.js +10 -6
  11. package/dist/api/resolvers/admin/administrator.resolver.js.map +1 -1
  12. package/dist/api/resolvers/admin/asset.resolver.d.ts +3 -2
  13. package/dist/api/resolvers/admin/asset.resolver.js +10 -6
  14. package/dist/api/resolvers/admin/asset.resolver.js.map +1 -1
  15. package/dist/api/resolvers/admin/collection.resolver.d.ts +5 -3
  16. package/dist/api/resolvers/admin/collection.resolver.js +25 -7
  17. package/dist/api/resolvers/admin/collection.resolver.js.map +1 -1
  18. package/dist/api/resolvers/admin/country.resolver.d.ts +3 -2
  19. package/dist/api/resolvers/admin/country.resolver.js +10 -6
  20. package/dist/api/resolvers/admin/country.resolver.js.map +1 -1
  21. package/dist/api/resolvers/admin/customer-group.resolver.d.ts +3 -2
  22. package/dist/api/resolvers/admin/customer-group.resolver.js +8 -4
  23. package/dist/api/resolvers/admin/customer-group.resolver.js.map +1 -1
  24. package/dist/api/resolvers/admin/customer.resolver.d.ts +3 -2
  25. package/dist/api/resolvers/admin/customer.resolver.js +10 -6
  26. package/dist/api/resolvers/admin/customer.resolver.js.map +1 -1
  27. package/dist/api/resolvers/admin/facet.resolver.d.ts +3 -2
  28. package/dist/api/resolvers/admin/facet.resolver.js +10 -6
  29. package/dist/api/resolvers/admin/facet.resolver.js.map +1 -1
  30. package/dist/api/resolvers/admin/order.resolver.d.ts +6 -5
  31. package/dist/api/resolvers/admin/order.resolver.js +25 -11
  32. package/dist/api/resolvers/admin/order.resolver.js.map +1 -1
  33. package/dist/api/resolvers/admin/payment-method.resolver.d.ts +3 -2
  34. package/dist/api/resolvers/admin/payment-method.resolver.js +10 -6
  35. package/dist/api/resolvers/admin/payment-method.resolver.js.map +1 -1
  36. package/dist/api/resolvers/admin/product-option.resolver.d.ts +3 -2
  37. package/dist/api/resolvers/admin/product-option.resolver.js +8 -4
  38. package/dist/api/resolvers/admin/product-option.resolver.js.map +1 -1
  39. package/dist/api/resolvers/admin/product.resolver.d.ts +4 -3
  40. package/dist/api/resolvers/admin/product.resolver.js +16 -10
  41. package/dist/api/resolvers/admin/product.resolver.js.map +1 -1
  42. package/dist/api/resolvers/admin/promotion.resolver.d.ts +3 -2
  43. package/dist/api/resolvers/admin/promotion.resolver.js +9 -6
  44. package/dist/api/resolvers/admin/promotion.resolver.js.map +1 -1
  45. package/dist/api/resolvers/admin/role.resolver.d.ts +3 -2
  46. package/dist/api/resolvers/admin/role.resolver.js +10 -6
  47. package/dist/api/resolvers/admin/role.resolver.js.map +1 -1
  48. package/dist/api/resolvers/admin/shipping-method.resolver.d.ts +3 -2
  49. package/dist/api/resolvers/admin/shipping-method.resolver.js +10 -6
  50. package/dist/api/resolvers/admin/shipping-method.resolver.js.map +1 -1
  51. package/dist/api/resolvers/admin/tax-rate.resolver.d.ts +3 -2
  52. package/dist/api/resolvers/admin/tax-rate.resolver.js +10 -6
  53. package/dist/api/resolvers/admin/tax-rate.resolver.js.map +1 -1
  54. package/dist/api/resolvers/entity/collection-entity.resolver.d.ts +2 -1
  55. package/dist/api/resolvers/entity/collection-entity.resolver.js +5 -3
  56. package/dist/api/resolvers/entity/collection-entity.resolver.js.map +1 -1
  57. package/dist/api/resolvers/entity/customer-entity.resolver.d.ts +2 -1
  58. package/dist/api/resolvers/entity/customer-entity.resolver.js +5 -3
  59. package/dist/api/resolvers/entity/customer-entity.resolver.js.map +1 -1
  60. package/dist/api/resolvers/entity/order-line-entity.resolver.d.ts +2 -1
  61. package/dist/api/resolvers/entity/order-line-entity.resolver.js +6 -3
  62. package/dist/api/resolvers/entity/order-line-entity.resolver.js.map +1 -1
  63. package/dist/api/resolvers/entity/product-entity.resolver.d.ts +3 -2
  64. package/dist/api/resolvers/entity/product-entity.resolver.js +10 -6
  65. package/dist/api/resolvers/entity/product-entity.resolver.js.map +1 -1
  66. package/dist/api/resolvers/shop/shop-order.resolver.d.ts +4 -3
  67. package/dist/api/resolvers/shop/shop-order.resolver.js +16 -8
  68. package/dist/api/resolvers/shop/shop-order.resolver.js.map +1 -1
  69. package/dist/api/resolvers/shop/shop-products.resolver.d.ts +8 -8
  70. package/dist/api/resolvers/shop/shop-products.resolver.js +32 -21
  71. package/dist/api/resolvers/shop/shop-products.resolver.js.map +1 -1
  72. package/dist/api/schema/admin-api/collection.api.graphql +7 -0
  73. package/dist/bootstrap.js +2 -0
  74. package/dist/bootstrap.js.map +1 -1
  75. package/dist/common/calculated-decorator.d.ts +16 -3
  76. package/dist/common/calculated-decorator.js +3 -0
  77. package/dist/common/calculated-decorator.js.map +1 -1
  78. package/dist/common/types/entity-relation-paths.d.ts +1 -1
  79. package/dist/config/catalog/collection-filter.d.ts +32 -0
  80. package/dist/config/catalog/collection-filter.js +32 -0
  81. package/dist/config/catalog/collection-filter.js.map +1 -1
  82. package/dist/config/catalog/default-collection-filters.d.ts +100 -0
  83. package/dist/config/catalog/default-collection-filters.js +154 -21
  84. package/dist/config/catalog/default-collection-filters.js.map +1 -1
  85. package/dist/config/config.module.js +2 -0
  86. package/dist/config/config.module.js.map +1 -1
  87. package/dist/config/config.service.d.ts +2 -1
  88. package/dist/config/config.service.js +3 -0
  89. package/dist/config/config.service.js.map +1 -1
  90. package/dist/config/custom-field/custom-field-types.d.ts +3 -0
  91. package/dist/config/default-config.js +5 -0
  92. package/dist/config/default-config.js.map +1 -1
  93. package/dist/config/entity-metadata/add-foreign-key-indices.d.ts +12 -0
  94. package/dist/config/entity-metadata/add-foreign-key-indices.js +33 -0
  95. package/dist/config/entity-metadata/add-foreign-key-indices.js.map +1 -0
  96. package/dist/config/entity-metadata/entity-metadata-modifier.d.ts +55 -0
  97. package/dist/config/entity-metadata/entity-metadata-modifier.js +3 -0
  98. package/dist/config/entity-metadata/entity-metadata-modifier.js.map +1 -0
  99. package/dist/config/index.d.ts +3 -0
  100. package/dist/config/index.js +3 -0
  101. package/dist/config/index.js.map +1 -1
  102. package/dist/config/payment/dummy-payment-method-handler.js +2 -2
  103. package/dist/config/payment/dummy-payment-method-handler.js.map +1 -1
  104. package/dist/config/payment/example-payment-method-handler.js +2 -2
  105. package/dist/config/payment/example-payment-method-handler.js.map +1 -1
  106. package/dist/config/payment/payment-method-eligibility-checker.d.ts +3 -3
  107. package/dist/config/payment/payment-method-eligibility-checker.js +2 -2
  108. package/dist/config/payment/payment-method-eligibility-checker.js.map +1 -1
  109. package/dist/config/payment/payment-method-handler.d.ts +7 -8
  110. package/dist/config/payment/payment-method-handler.js +6 -6
  111. package/dist/config/payment/payment-method-handler.js.map +1 -1
  112. package/dist/config/shipping-method/shipping-calculator.d.ts +3 -3
  113. package/dist/config/shipping-method/shipping-calculator.js +2 -2
  114. package/dist/config/shipping-method/shipping-calculator.js.map +1 -1
  115. package/dist/config/shipping-method/shipping-eligibility-checker.d.ts +4 -4
  116. package/dist/config/shipping-method/shipping-eligibility-checker.js +5 -5
  117. package/dist/config/shipping-method/shipping-eligibility-checker.js.map +1 -1
  118. package/dist/config/system/health-check-strategy.d.ts +47 -0
  119. package/dist/config/system/health-check-strategy.js +3 -0
  120. package/dist/config/system/health-check-strategy.js.map +1 -0
  121. package/dist/config/vendure-config.d.ts +39 -0
  122. package/dist/connection/transactional-connection.js +5 -0
  123. package/dist/connection/transactional-connection.js.map +1 -1
  124. package/dist/data-import/providers/importer/importer.d.ts +3 -2
  125. package/dist/data-import/providers/importer/importer.js +1 -0
  126. package/dist/data-import/providers/importer/importer.js.map +1 -1
  127. package/dist/entity/order/order.entity.js +3 -2
  128. package/dist/entity/order/order.entity.js.map +1 -1
  129. package/dist/entity/order-line/order-line.entity.js +22 -22
  130. package/dist/entity/order-line/order-line.entity.js.map +1 -1
  131. package/dist/entity/register-custom-entity-fields.js +8 -0
  132. package/dist/entity/register-custom-entity-fields.js.map +1 -1
  133. package/dist/entity/run-entity-metadata-modifiers.d.ts +2 -0
  134. package/dist/entity/run-entity-metadata-modifiers.js +15 -0
  135. package/dist/entity/run-entity-metadata-modifiers.js.map +1 -0
  136. package/dist/entity/shipping-method/shipping-method.entity.js +2 -2
  137. package/dist/entity/shipping-method/shipping-method.entity.js.map +1 -1
  138. package/dist/event-bus/events/role-event.d.ts +1 -1
  139. package/dist/event-bus/events/role-event.js +1 -1
  140. package/dist/event-bus/events/search-event.d.ts +20 -0
  141. package/dist/event-bus/events/search-event.js +21 -0
  142. package/dist/event-bus/events/search-event.js.map +1 -0
  143. package/dist/event-bus/index.d.ts +1 -0
  144. package/dist/event-bus/index.js +1 -0
  145. package/dist/event-bus/index.js.map +1 -1
  146. package/dist/health-check/health-check-registry.service.d.ts +7 -1
  147. package/dist/health-check/health-check-registry.service.js +7 -1
  148. package/dist/health-check/health-check-registry.service.js.map +1 -1
  149. package/dist/health-check/health-check.module.d.ts +1 -3
  150. package/dist/health-check/health-check.module.js +6 -5
  151. package/dist/health-check/health-check.module.js.map +1 -1
  152. package/dist/health-check/http-health-check-strategy.d.ts +36 -0
  153. package/dist/health-check/http-health-check-strategy.js +41 -0
  154. package/dist/health-check/http-health-check-strategy.js.map +1 -0
  155. package/dist/health-check/index.d.ts +2 -0
  156. package/dist/health-check/index.js +2 -0
  157. package/dist/health-check/index.js.map +1 -1
  158. package/dist/health-check/typeorm-health-check-strategy.d.ts +36 -0
  159. package/dist/health-check/typeorm-health-check-strategy.js +44 -0
  160. package/dist/health-check/typeorm-health-check-strategy.js.map +1 -0
  161. package/dist/job-queue/subscribable-job.js +1 -1
  162. package/dist/plugin/default-search-plugin/default-search-plugin.d.ts +9 -3
  163. package/dist/plugin/default-search-plugin/default-search-plugin.js +25 -2
  164. package/dist/plugin/default-search-plugin/default-search-plugin.js.map +1 -1
  165. package/dist/plugin/default-search-plugin/fulltext-search.service.d.ts +3 -1
  166. package/dist/plugin/default-search-plugin/fulltext-search.service.js +29 -19
  167. package/dist/plugin/default-search-plugin/fulltext-search.service.js.map +1 -1
  168. package/dist/plugin/default-search-plugin/indexer/search-index.service.js +1 -1
  169. package/dist/plugin/default-search-plugin/indexer/search-index.service.js.map +1 -1
  170. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.d.ts +4 -4
  171. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +7 -3
  172. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js.map +1 -1
  173. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.d.ts +4 -4
  174. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +7 -3
  175. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js.map +1 -1
  176. package/dist/plugin/default-search-plugin/search-strategy/search-strategy.d.ts +2 -1
  177. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.d.ts +4 -4
  178. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +7 -3
  179. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js.map +1 -1
  180. package/dist/plugin/default-search-plugin/types.d.ts +84 -0
  181. package/dist/service/helpers/list-query-builder/list-query-builder.d.ts +28 -0
  182. package/dist/service/helpers/list-query-builder/list-query-builder.js +118 -17
  183. package/dist/service/helpers/list-query-builder/list-query-builder.js.map +1 -1
  184. package/dist/service/helpers/list-query-builder/parse-channel-param.d.ts +1 -1
  185. package/dist/service/helpers/list-query-builder/parse-channel-param.js +2 -2
  186. package/dist/service/helpers/list-query-builder/parse-channel-param.js.map +1 -1
  187. package/dist/service/helpers/list-query-builder/parse-filter-params.d.ts +1 -1
  188. package/dist/service/helpers/list-query-builder/parse-filter-params.js +3 -2
  189. package/dist/service/helpers/list-query-builder/parse-filter-params.js.map +1 -1
  190. package/dist/service/helpers/list-query-builder/parse-sort-params.d.ts +1 -1
  191. package/dist/service/helpers/list-query-builder/parse-sort-params.js +4 -3
  192. package/dist/service/helpers/list-query-builder/parse-sort-params.js.map +1 -1
  193. package/dist/service/helpers/order-modifier/order-modifier.js +2 -1
  194. package/dist/service/helpers/order-modifier/order-modifier.js.map +1 -1
  195. package/dist/service/services/administrator.service.d.ts +4 -3
  196. package/dist/service/services/administrator.service.js +6 -5
  197. package/dist/service/services/administrator.service.js.map +1 -1
  198. package/dist/service/services/asset.service.d.ts +3 -2
  199. package/dist/service/services/asset.service.js +6 -4
  200. package/dist/service/services/asset.service.js.map +1 -1
  201. package/dist/service/services/collection.service.d.ts +8 -5
  202. package/dist/service/services/collection.service.js +42 -12
  203. package/dist/service/services/collection.service.js.map +1 -1
  204. package/dist/service/services/country.service.d.ts +3 -2
  205. package/dist/service/services/country.service.js +4 -4
  206. package/dist/service/services/country.service.js.map +1 -1
  207. package/dist/service/services/customer-group.service.d.ts +3 -2
  208. package/dist/service/services/customer-group.service.js +4 -4
  209. package/dist/service/services/customer-group.service.js.map +1 -1
  210. package/dist/service/services/customer.service.d.ts +3 -2
  211. package/dist/service/services/customer.service.js +3 -3
  212. package/dist/service/services/customer.service.js.map +1 -1
  213. package/dist/service/services/facet.service.d.ts +3 -2
  214. package/dist/service/services/facet.service.js +10 -6
  215. package/dist/service/services/facet.service.js.map +1 -1
  216. package/dist/service/services/order.service.d.ts +15 -8
  217. package/dist/service/services/order.service.js +57 -40
  218. package/dist/service/services/order.service.js.map +1 -1
  219. package/dist/service/services/payment-method.service.d.ts +3 -2
  220. package/dist/service/services/payment-method.service.js +7 -5
  221. package/dist/service/services/payment-method.service.js.map +1 -1
  222. package/dist/service/services/payment.service.js +4 -4
  223. package/dist/service/services/payment.service.js.map +1 -1
  224. package/dist/service/services/product-option-group.service.d.ts +3 -2
  225. package/dist/service/services/product-option-group.service.js +4 -4
  226. package/dist/service/services/product-option-group.service.js.map +1 -1
  227. package/dist/service/services/product-variant.service.d.ts +10 -3
  228. package/dist/service/services/product-variant.service.js +35 -35
  229. package/dist/service/services/product-variant.service.js.map +1 -1
  230. package/dist/service/services/product.service.d.ts +5 -4
  231. package/dist/service/services/product.service.js +18 -8
  232. package/dist/service/services/product.service.js.map +1 -1
  233. package/dist/service/services/promotion.service.d.ts +3 -2
  234. package/dist/service/services/promotion.service.js +4 -3
  235. package/dist/service/services/promotion.service.js.map +1 -1
  236. package/dist/service/services/role.service.d.ts +3 -2
  237. package/dist/service/services/role.service.js +4 -4
  238. package/dist/service/services/role.service.js.map +1 -1
  239. package/dist/service/services/shipping-method.service.d.ts +3 -2
  240. package/dist/service/services/shipping-method.service.js +4 -4
  241. package/dist/service/services/shipping-method.service.js.map +1 -1
  242. package/dist/service/services/tax-rate.service.d.ts +3 -2
  243. package/dist/service/services/tax-rate.service.js +4 -4
  244. package/dist/service/services/tax-rate.service.js.map +1 -1
  245. package/dist/service/services/zone.service.d.ts +2 -2
  246. package/dist/service/services/zone.service.js +2 -2
  247. package/dist/service/services/zone.service.js.map +1 -1
  248. package/package.json +5 -3
@@ -1 +1 @@
1
- {"version":3,"file":"shop-products.resolver.js","sourceRoot":"","sources":["../../../../src/api/resolvers/shop/shop-products.resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shop-products.resolver.js","sourceRoot":"","sources":["../../../../src/api/resolvers/shop/shop-products.resolver.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ type Query {
3
3
  "Get a Collection either by id or slug. If neither id nor slug is specified, an error will result."
4
4
  collection(id: ID, slug: String): Collection
5
5
  collectionFilters: [ConfigurableOperationDefinition!]!
6
+ "Used for real-time previews of the contents of a Collection"
7
+ previewCollectionVariants(input: PreviewCollectionVariantsInput!, options: ProductVariantListOptions): ProductVariantList!
6
8
  }
7
9
 
8
10
  type Mutation {
@@ -52,6 +54,11 @@ input CreateCollectionInput {
52
54
  translations: [CreateCollectionTranslationInput!]!
53
55
  }
54
56
 
57
+ input PreviewCollectionVariantsInput {
58
+ parentId: ID
59
+ filters: [ConfigurableOperationInput!]!
60
+ }
61
+
55
62
  input UpdateCollectionInput {
56
63
  id: ID!
57
64
  isPrivate: Boolean
package/dist/bootstrap.js CHANGED
@@ -30,6 +30,7 @@ const vendure_logger_1 = require("./config/logger/vendure-logger");
30
30
  const administrator_entity_1 = require("./entity/administrator/administrator.entity");
31
31
  const entities_1 = require("./entity/entities");
32
32
  const register_custom_entity_fields_1 = require("./entity/register-custom-entity-fields");
33
+ const run_entity_metadata_modifiers_1 = require("./entity/run-entity-metadata-modifiers");
33
34
  const set_entity_id_strategy_1 = require("./entity/set-entity-id-strategy");
34
35
  const validate_custom_fields_config_1 = require("./entity/validate-custom-fields-config");
35
36
  const plugin_metadata_1 = require("./plugin/plugin-metadata");
@@ -157,6 +158,7 @@ async function preBootstrapConfig(userConfig) {
157
158
  }
158
159
  config = await runPluginConfigurations(config);
159
160
  register_custom_entity_fields_1.registerCustomEntityFields(config);
161
+ await run_entity_metadata_modifiers_1.runEntityMetadataModifiers(config);
160
162
  setExposedHeaders(config);
161
163
  return config;
162
164
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
@@ -5,13 +5,23 @@ import { SelectQueryBuilder } from 'typeorm';
5
5
  */
6
6
  export declare const CALCULATED_PROPERTIES = "__calculatedProperties__";
7
7
  /**
8
- * Optional metadata used to tell the ListQueryBuilder how to deal with
9
- * calculated columns when sorting or filtering.
8
+ * @description
9
+ * Optional metadata used to tell the {@link ListQueryBuilder} & {@link Relations} decorator how to deal with
10
+ * calculated columns when sorting, filtering and deriving required relations from GraphQL operations.
11
+ *
12
+ * @docsCategory data-access
13
+ * @docsPage Calculated
10
14
  */
11
15
  export interface CalculatedColumnQueryInstruction {
16
+ /**
17
+ * @description
18
+ * If the calculated property depends on one or more relations being present
19
+ * on the entity (e.g. an `Order` entity calculating the `totalQuantity` by adding
20
+ * up the quantities of each `OrderLine`), then those relations should be defined here.
21
+ */
12
22
  relations?: string[];
13
23
  query?: (qb: SelectQueryBuilder<any>) => void;
14
- expression: string;
24
+ expression?: string;
15
25
  }
16
26
  export interface CalculatedColumnDefinition {
17
27
  name: string | symbol;
@@ -22,5 +32,8 @@ export interface CalculatedColumnDefinition {
22
32
  * Used to define calculated entity getters. The decorator simply attaches an array of "calculated"
23
33
  * property names to the entity's prototype. This array is then used by the {@link CalculatedPropertySubscriber}
24
34
  * to transfer the getter function from the prototype to the entity instance.
35
+ *
36
+ * @docsCategory data-access
37
+ * @docsWeight 0
25
38
  */
26
39
  export declare function Calculated(queryInstruction?: CalculatedColumnQueryInstruction): MethodDecorator;
@@ -11,6 +11,9 @@ exports.CALCULATED_PROPERTIES = '__calculatedProperties__';
11
11
  * Used to define calculated entity getters. The decorator simply attaches an array of "calculated"
12
12
  * property names to the entity's prototype. This array is then used by the {@link CalculatedPropertySubscriber}
13
13
  * to transfer the getter function from the prototype to the entity instance.
14
+ *
15
+ * @docsCategory data-access
16
+ * @docsWeight 0
14
17
  */
15
18
  function Calculated(queryInstruction) {
16
19
  return (target, propertyKey, descriptor) => {
@@ -1 +1 @@
1
- {"version":3,"file":"calculated-decorator.js","sourceRoot":"","sources":["../../src/common/calculated-decorator.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AAiBhE;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,gBAAmD;IAC1E,OAAO,CACH,MAAuC,EACvC,WAA4B,EAC5B,UAA8B,EAChC,EAAE;QACA,MAAM,UAAU,GAA+B;YAC3C,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,gBAAgB;SAC9B,CAAC;QACF,IAAI,MAAM,CAAC,6BAAqB,CAAC,EAAE;YAC/B,IACI,CAAC,MAAM,CAAC,6BAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAA6B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAClF,UAAU,CAAC,IAAI,CAClB,EACH;gBACE,MAAM,CAAC,6BAAqB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAClD;SACJ;aAAM;YACH,MAAM,CAAC,6BAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;SAChD;IACL,CAAC,CAAC;AACN,CAAC;AAtBD,gCAsBC"}
1
+ {"version":3,"file":"calculated-decorator.js","sourceRoot":"","sources":["../../src/common/calculated-decorator.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACU,QAAA,qBAAqB,GAAG,0BAA0B,CAAC;AA2BhE;;;;;;;;GAQG;AACH,SAAgB,UAAU,CAAC,gBAAmD;IAC1E,OAAO,CACH,MAAuC,EACvC,WAA4B,EAC5B,UAA8B,EAChC,EAAE;QACA,MAAM,UAAU,GAA+B;YAC3C,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,gBAAgB;SAC9B,CAAC;QACF,IAAI,MAAM,CAAC,6BAAqB,CAAC,EAAE;YAC/B,IACI,CAAC,MAAM,CAAC,6BAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,CAA6B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAClF,UAAU,CAAC,IAAI,CAClB,EACH;gBACE,MAAM,CAAC,6BAAqB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAClD;SACJ;aAAM;YACH,MAAM,CAAC,6BAAqB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;SAChD;IACL,CAAC,CAAC;AACN,CAAC;AAtBD,gCAsBC"}
@@ -30,7 +30,7 @@ export declare type PathsToStringProps1<T extends VendureEntity> = T extends str
30
30
  [K in EntityRelationKeys<T>]: K;
31
31
  }[Extract<EntityRelationKeys<T>, string>];
32
32
  export declare type PathsToStringProps2<T extends VendureEntity> = T extends string ? never : {
33
- [K in EntityRelationKeys<T>]: T[K] extends VendureEntity[] ? [K, PathsToStringProps1<T[K][number]>] : T[K] extends VendureEntity ? [K, PathsToStringProps1<T[K]>] : never;
33
+ [K in EntityRelationKeys<T>]: T[K] extends VendureEntity[] ? [K, PathsToStringProps1<T[K][number]>] : T[K] extends VendureEntity | undefined ? [K, PathsToStringProps1<T[K]>] : never;
34
34
  }[Extract<EntityRelationKeys<T>, string>];
35
35
  export declare type TripleDotPath = `${string}.${string}.${string}`;
36
36
  export declare type Join<T extends Array<string | any>, D extends string> = T extends [] ? never : T extends [infer F] ? F : T extends [infer F, ...infer R] ? F extends string ? `${F}${D}${Join<Extract<R, string[]>, D>}` : never : string;
@@ -15,6 +15,38 @@ export interface CollectionFilterConfig<T extends ConfigArgs> extends Configurab
15
15
  * Creating a CollectionFilter is considered an advanced Vendure topic. For more insight into how
16
16
  * they work, study the [default collection filters](https://github.com/vendure-ecommerce/vendure/blob/master/packages/core/src/config/catalog/default-collection-filters.ts)
17
17
  *
18
+ * Here's a simple example of a custom CollectionFilter:
19
+ *
20
+ * @example
21
+ * ```TypeScript
22
+ * import { CollectionFilter, LanguageCode } from '\@vendure/core';
23
+ *
24
+ * export const skuCollectionFilter = new CollectionFilter({
25
+ * args: {
26
+ * // The `args` object defines the user-configurable arguments
27
+ * // which will get passed to the filter's `apply()` function.
28
+ * sku: {
29
+ * type: 'string',
30
+ * label: [{ languageCode: LanguageCode.en, value: 'SKU' }],
31
+ * description: [
32
+ * {
33
+ * languageCode: LanguageCode.en,
34
+ * value: 'Matches any product variants with SKUs containing this value',
35
+ * },
36
+ * ],
37
+ * },
38
+ * },
39
+ * code: 'variant-sku-filter',
40
+ * description: [{ languageCode: LanguageCode.en, value: 'Filter by matching SKU' }],
41
+ *
42
+ * // This is the function that defines the logic of the filter.
43
+ * apply: (qb, args) => {
44
+ * const LIKE = qb.connection.options.type === 'postgres' ? 'ILIKE' : 'LIKE';
45
+ * return qb.andWhere(`productVariant.sku ${LIKE} :sku`, { sku: `%${args.sku}%` });
46
+ * },
47
+ * });
48
+ * ```
49
+ *
18
50
  * @docsCategory configuration
19
51
  */
20
52
  export declare class CollectionFilter<T extends ConfigArgs = ConfigArgs> extends ConfigurableOperationDef<T> {
@@ -12,6 +12,38 @@ const configurable_operation_1 = require("../../common/configurable-operation");
12
12
  * Creating a CollectionFilter is considered an advanced Vendure topic. For more insight into how
13
13
  * they work, study the [default collection filters](https://github.com/vendure-ecommerce/vendure/blob/master/packages/core/src/config/catalog/default-collection-filters.ts)
14
14
  *
15
+ * Here's a simple example of a custom CollectionFilter:
16
+ *
17
+ * @example
18
+ * ```TypeScript
19
+ * import { CollectionFilter, LanguageCode } from '\@vendure/core';
20
+ *
21
+ * export const skuCollectionFilter = new CollectionFilter({
22
+ * args: {
23
+ * // The `args` object defines the user-configurable arguments
24
+ * // which will get passed to the filter's `apply()` function.
25
+ * sku: {
26
+ * type: 'string',
27
+ * label: [{ languageCode: LanguageCode.en, value: 'SKU' }],
28
+ * description: [
29
+ * {
30
+ * languageCode: LanguageCode.en,
31
+ * value: 'Matches any product variants with SKUs containing this value',
32
+ * },
33
+ * ],
34
+ * },
35
+ * },
36
+ * code: 'variant-sku-filter',
37
+ * description: [{ languageCode: LanguageCode.en, value: 'Filter by matching SKU' }],
38
+ *
39
+ * // This is the function that defines the logic of the filter.
40
+ * apply: (qb, args) => {
41
+ * const LIKE = qb.connection.options.type === 'postgres' ? 'ILIKE' : 'LIKE';
42
+ * return qb.andWhere(`productVariant.sku ${LIKE} :sku`, { sku: `%${args.sku}%` });
43
+ * },
44
+ * });
45
+ * ```
46
+ *
15
47
  * @docsCategory configuration
16
48
  */
17
49
  class CollectionFilter extends configurable_operation_1.ConfigurableOperationDef {
@@ -1 +1 @@
1
- {"version":3,"file":"collection-filter.js","sourceRoot":"","sources":["../../../src/config/catalog/collection-filter.ts"],"names":[],"mappings":";;;AAGA,gFAK6C;AAW7C,iCAAiC;AACjC;;;;;;;;;;GAUG;AACH,MAAa,gBAAoD,SAAQ,iDAA2B;IAGhG,YAAY,MAAiC;QACzC,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,EAAsC,EAAE,IAAiB;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;CACJ;AAXD,4CAWC"}
1
+ {"version":3,"file":"collection-filter.js","sourceRoot":"","sources":["../../../src/config/catalog/collection-filter.ts"],"names":[],"mappings":";;;AAGA,gFAK6C;AAW7C,iCAAiC;AACjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAa,gBAAoD,SAAQ,iDAA2B;IAGhG,YAAY,MAAiC;QACzC,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,EAAsC,EAAE,IAAiB;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACxD,CAAC;CACJ;AAXD,4CAWC"}
@@ -1,4 +1,18 @@
1
+ import { LanguageCode } from '@vendure/common/lib/generated-types';
2
+ import { ConfigArgDef } from '../../common/configurable-operation';
1
3
  import { CollectionFilter } from './collection-filter';
4
+ /**
5
+ * @description
6
+ * Used to created unique key names for DB query parameters, to avoid conflicts if the
7
+ * same filter is applied multiple times.
8
+ */
9
+ export declare function randomSuffix(prefix: string): string;
10
+ /**
11
+ * @description
12
+ * Add this to your CollectionFilter `args` object to display the standard UI component
13
+ * for selecting the combination mode when working with multiple filters.
14
+ */
15
+ export declare const combineWithAndArg: ConfigArgDef<'boolean'>;
2
16
  /**
3
17
  * Filters for ProductVariants having the given facetValueIds (including parent Product)
4
18
  */
@@ -9,10 +23,23 @@ export declare const facetValueCollectionFilter: CollectionFilter<{
9
23
  ui: {
10
24
  component: string;
11
25
  };
26
+ label: {
27
+ languageCode: LanguageCode.en;
28
+ value: string;
29
+ }[];
12
30
  };
13
31
  containsAny: {
14
32
  type: "boolean";
33
+ label: {
34
+ languageCode: LanguageCode.en;
35
+ value: string;
36
+ }[];
37
+ description: {
38
+ languageCode: LanguageCode.en;
39
+ value: string;
40
+ }[];
15
41
  };
42
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
16
43
  }>;
17
44
  export declare const variantNameCollectionFilter: CollectionFilter<{
18
45
  operator: {
@@ -27,6 +54,37 @@ export declare const variantNameCollectionFilter: CollectionFilter<{
27
54
  term: {
28
55
  type: "string";
29
56
  };
57
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
58
+ }>;
59
+ export declare const variantIdCollectionFilter: CollectionFilter<{
60
+ variantIds: {
61
+ type: "ID";
62
+ list: true;
63
+ label: {
64
+ languageCode: LanguageCode.en;
65
+ value: string;
66
+ }[];
67
+ ui: {
68
+ component: string;
69
+ selectionMode: string;
70
+ };
71
+ };
72
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
73
+ }>;
74
+ export declare const productIdCollectionFilter: CollectionFilter<{
75
+ productIds: {
76
+ type: "ID";
77
+ list: true;
78
+ label: {
79
+ languageCode: LanguageCode.en;
80
+ value: string;
81
+ }[];
82
+ ui: {
83
+ component: string;
84
+ selectionMode: string;
85
+ };
86
+ };
87
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
30
88
  }>;
31
89
  export declare const defaultCollectionFilters: (CollectionFilter<{
32
90
  facetValueIds: {
@@ -35,10 +93,23 @@ export declare const defaultCollectionFilters: (CollectionFilter<{
35
93
  ui: {
36
94
  component: string;
37
95
  };
96
+ label: {
97
+ languageCode: LanguageCode.en;
98
+ value: string;
99
+ }[];
38
100
  };
39
101
  containsAny: {
40
102
  type: "boolean";
103
+ label: {
104
+ languageCode: LanguageCode.en;
105
+ value: string;
106
+ }[];
107
+ description: {
108
+ languageCode: LanguageCode.en;
109
+ value: string;
110
+ }[];
41
111
  };
112
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
42
113
  }> | CollectionFilter<{
43
114
  operator: {
44
115
  type: "string";
@@ -52,4 +123,33 @@ export declare const defaultCollectionFilters: (CollectionFilter<{
52
123
  term: {
53
124
  type: "string";
54
125
  };
126
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
127
+ }> | CollectionFilter<{
128
+ variantIds: {
129
+ type: "ID";
130
+ list: true;
131
+ label: {
132
+ languageCode: LanguageCode.en;
133
+ value: string;
134
+ }[];
135
+ ui: {
136
+ component: string;
137
+ selectionMode: string;
138
+ };
139
+ };
140
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
141
+ }> | CollectionFilter<{
142
+ productIds: {
143
+ type: "ID";
144
+ list: true;
145
+ label: {
146
+ languageCode: LanguageCode.en;
147
+ value: string;
148
+ }[];
149
+ ui: {
150
+ component: string;
151
+ selectionMode: string;
152
+ };
153
+ };
154
+ combineWithAnd: import("../../common/configurable-operation").ConfigArgCommonDef<"boolean"> & import("../../common/configurable-operation").WithArgConfig<never>;
55
155
  }>)[];
@@ -1,11 +1,40 @@
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.productIdCollectionFilter = exports.variantIdCollectionFilter = exports.variantNameCollectionFilter = exports.facetValueCollectionFilter = exports.combineWithAndArg = exports.randomSuffix = 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");
7
7
  const product_variant_entity_1 = require("../../entity/product-variant/product-variant.entity");
8
8
  const collection_filter_1 = require("./collection-filter");
9
+ /**
10
+ * @description
11
+ * Used to created unique key names for DB query parameters, to avoid conflicts if the
12
+ * same filter is applied multiple times.
13
+ */
14
+ function randomSuffix(prefix) {
15
+ const nanoid = nanoid_1.customAlphabet('123456789abcdefghijklmnopqrstuvwxyz', 6);
16
+ return `${prefix}_${nanoid()}`;
17
+ }
18
+ exports.randomSuffix = randomSuffix;
19
+ /**
20
+ * @description
21
+ * Add this to your CollectionFilter `args` object to display the standard UI component
22
+ * for selecting the combination mode when working with multiple filters.
23
+ */
24
+ exports.combineWithAndArg = {
25
+ type: 'boolean',
26
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Combination mode' }],
27
+ description: [
28
+ {
29
+ languageCode: generated_types_1.LanguageCode.en,
30
+ value: 'If this filter is being combined with other filters, do all conditions need to be satisfied (AND), or just one or the other (OR)?',
31
+ },
32
+ ],
33
+ defaultValue: true,
34
+ ui: {
35
+ component: 'combination-mode-form-input',
36
+ },
37
+ };
9
38
  /**
10
39
  * Filters for ProductVariants having the given facetValueIds (including parent Product)
11
40
  */
@@ -17,11 +46,22 @@ exports.facetValueCollectionFilter = new collection_filter_1.CollectionFilter({
17
46
  ui: {
18
47
  component: 'facet-value-form-input',
19
48
  },
49
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Facet values' }],
50
+ },
51
+ containsAny: {
52
+ type: 'boolean',
53
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Contains any' }],
54
+ description: [
55
+ {
56
+ languageCode: generated_types_1.LanguageCode.en,
57
+ 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.',
58
+ },
59
+ ],
20
60
  },
21
- containsAny: { type: 'boolean' },
61
+ combineWithAnd: exports.combineWithAndArg,
22
62
  },
23
63
  code: 'facet-value-filter',
24
- description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by FacetValues' }],
64
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by facet values' }],
25
65
  apply: (qb, args) => {
26
66
  const ids = args.facetValueIds;
27
67
  if (ids.length) {
@@ -52,14 +92,23 @@ exports.facetValueCollectionFilter = new collection_filter_1.CollectionFilter({
52
92
  .createQueryBuilder()
53
93
  .select('variant_ids_table.variant_id')
54
94
  .from(`(${union.getQuery()})`, 'variant_ids_table');
55
- qb.andWhere(`productVariant.id IN (${variantIds.getQuery()})`).setParameters({
95
+ const clause = `productVariant.id IN (${variantIds.getQuery()})`;
96
+ const params = {
56
97
  [idsName]: ids,
57
98
  [countName]: args.containsAny ? 1 : ids.length,
58
- });
99
+ };
100
+ if (args.combineWithAnd !== false) {
101
+ qb.andWhere(clause).setParameters(params);
102
+ }
103
+ else {
104
+ qb.orWhere(clause).setParameters(params);
105
+ }
59
106
  }
60
107
  else {
61
108
  // If no facetValueIds are specified, no ProductVariants will be matched.
62
- qb.andWhere('1 = 0');
109
+ if (args.combineWithAnd !== false) {
110
+ qb.andWhere('1 = 0');
111
+ }
63
112
  }
64
113
  return qb;
65
114
  },
@@ -79,39 +128,123 @@ exports.variantNameCollectionFilter = new collection_filter_1.CollectionFilter({
79
128
  },
80
129
  },
81
130
  term: { type: 'string' },
131
+ combineWithAnd: exports.combineWithAndArg,
82
132
  },
83
133
  code: 'variant-name-filter',
84
- description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by ProductVariant name' }],
134
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Filter by product variant name' }],
85
135
  apply: (qb, args) => {
86
- const translationAlias = `variant_name_filter_translation`;
87
- const nanoid = nanoid_1.customAlphabet('123456789abcdefghijklmnopqrstuvwxyz', 6);
88
- const termName = `term_${nanoid()}`;
89
- const hasJoinOnTranslations = !!qb.expressionMap.joinAttributes.find(ja => ja.entityOrProperty === 'productVariant.translations');
90
- if (!hasJoinOnTranslations) {
136
+ let translationAlias = `variant_name_filter_translation`;
137
+ const termName = randomSuffix(`term`);
138
+ const translationsJoin = qb.expressionMap.joinAttributes.find(ja => ja.entityOrProperty === 'productVariant.translations');
139
+ if (!translationsJoin) {
91
140
  qb.leftJoin('productVariant.translations', translationAlias);
92
141
  }
142
+ else {
143
+ translationAlias = translationsJoin.alias.name;
144
+ }
93
145
  const LIKE = qb.connection.options.type === 'postgres' ? 'ILIKE' : 'LIKE';
146
+ let clause;
147
+ let params;
94
148
  switch (args.operator) {
95
149
  case 'contains':
96
- return qb.andWhere(`${translationAlias}.name ${LIKE} :${termName}`, {
150
+ clause = `${translationAlias}.name ${LIKE} :${termName}`;
151
+ params = {
97
152
  [termName]: `%${args.term}%`,
98
- });
153
+ };
154
+ break;
99
155
  case 'doesNotContain':
100
- return qb.andWhere(`${translationAlias}.name NOT ${LIKE} :${termName}`, {
156
+ clause = `${translationAlias}.name NOT ${LIKE} :${termName}`;
157
+ params = {
101
158
  [termName]: `%${args.term}%`,
102
- });
159
+ };
160
+ break;
103
161
  case 'startsWith':
104
- return qb.andWhere(`${translationAlias}.name ${LIKE} :${termName}`, {
162
+ clause = `${translationAlias}.name ${LIKE} :${termName}`;
163
+ params = {
105
164
  [termName]: `${args.term}%`,
106
- });
165
+ };
166
+ break;
107
167
  case 'endsWith':
108
- return qb.andWhere(`${translationAlias}.name ${LIKE} :${termName}`, {
168
+ clause = `${translationAlias}.name ${LIKE} :${termName}`;
169
+ params = {
109
170
  [termName]: `%${args.term}`,
110
- });
171
+ };
172
+ break;
111
173
  default:
112
174
  throw new errors_1.UserInputError(`${args.operator} is not a valid operator`);
113
175
  }
176
+ if (args.combineWithAnd === false) {
177
+ return qb.orWhere(clause, params);
178
+ }
179
+ else {
180
+ return qb.andWhere(clause, params);
181
+ }
182
+ },
183
+ });
184
+ exports.variantIdCollectionFilter = new collection_filter_1.CollectionFilter({
185
+ args: {
186
+ variantIds: {
187
+ type: 'ID',
188
+ list: true,
189
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Product variants' }],
190
+ ui: {
191
+ component: 'product-multi-form-input',
192
+ selectionMode: 'variant',
193
+ },
194
+ },
195
+ combineWithAnd: exports.combineWithAndArg,
196
+ },
197
+ code: 'variant-id-filter',
198
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Manually select product variants' }],
199
+ apply: (qb, args) => {
200
+ if (args.variantIds.length === 0) {
201
+ return qb;
202
+ }
203
+ const variantIdsKey = randomSuffix(`variantIds`);
204
+ const clause = `productVariant.id IN (:...${variantIdsKey})`;
205
+ const params = { [variantIdsKey]: args.variantIds };
206
+ if (args.combineWithAnd === false) {
207
+ return qb.orWhere(clause, params);
208
+ }
209
+ else {
210
+ return qb.andWhere(clause, params);
211
+ }
212
+ },
213
+ });
214
+ exports.productIdCollectionFilter = new collection_filter_1.CollectionFilter({
215
+ args: {
216
+ productIds: {
217
+ type: 'ID',
218
+ list: true,
219
+ label: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Products' }],
220
+ ui: {
221
+ component: 'product-multi-form-input',
222
+ selectionMode: 'product',
223
+ },
224
+ },
225
+ combineWithAnd: exports.combineWithAndArg,
226
+ },
227
+ code: 'product-id-filter',
228
+ description: [{ languageCode: generated_types_1.LanguageCode.en, value: 'Manually select products' }],
229
+ apply: (qb, args) => {
230
+ if (args.productIds.length === 0) {
231
+ return qb;
232
+ }
233
+ const productIdsKey = randomSuffix(`productIds`);
234
+ const clause = `productVariant.productId IN (:...${productIdsKey})`;
235
+ const params = { [productIdsKey]: args.productIds };
236
+ if (args.combineWithAnd === false) {
237
+ return qb.orWhere(clause, params);
238
+ }
239
+ else {
240
+ return qb.andWhere(clause, params);
241
+ }
114
242
  },
115
243
  });
116
- exports.defaultCollectionFilters = [exports.facetValueCollectionFilter, exports.variantNameCollectionFilter];
244
+ exports.defaultCollectionFilters = [
245
+ exports.facetValueCollectionFilter,
246
+ exports.variantNameCollectionFilter,
247
+ exports.variantIdCollectionFilter,
248
+ exports.productIdCollectionFilter,
249
+ ];
117
250
  //# sourceMappingURL=default-collection-filters.js.map