@vendure/core 1.6.4 → 1.6.5

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 (34) hide show
  1. package/dist/config/config-helpers.d.ts +4 -0
  2. package/dist/config/config-helpers.js +8 -1
  3. package/dist/config/config-helpers.js.map +1 -1
  4. package/dist/config/config.module.js +9 -0
  5. package/dist/config/config.module.js.map +1 -1
  6. package/dist/config/order/order-item-price-calculation-strategy.d.ts +3 -0
  7. package/dist/plugin/default-search-plugin/search-strategy/mysql-search-strategy.js +3 -3
  8. package/dist/plugin/default-search-plugin/search-strategy/postgres-search-strategy.js +5 -5
  9. package/dist/plugin/default-search-plugin/search-strategy/sqlite-search-strategy.js +4 -4
  10. package/dist/service/helpers/list-query-builder/connection-utils.js +7 -1
  11. package/dist/service/helpers/list-query-builder/connection-utils.js.map +1 -1
  12. package/dist/service/helpers/list-query-builder/list-query-builder.d.ts +4 -3
  13. package/dist/service/helpers/list-query-builder/list-query-builder.js +17 -8
  14. package/dist/service/helpers/list-query-builder/list-query-builder.js.map +1 -1
  15. package/dist/service/helpers/order-calculator/order-calculator.d.ts +18 -0
  16. package/dist/service/helpers/order-calculator/order-calculator.js +18 -0
  17. package/dist/service/helpers/order-calculator/order-calculator.js.map +1 -1
  18. package/dist/service/helpers/order-modifier/order-modifier.d.ts +16 -0
  19. package/dist/service/helpers/order-modifier/order-modifier.js +34 -12
  20. package/dist/service/helpers/order-modifier/order-modifier.js.map +1 -1
  21. package/dist/service/helpers/product-price-applicator/product-price-applicator.d.ts +26 -2
  22. package/dist/service/helpers/product-price-applicator/product-price-applicator.js +26 -2
  23. package/dist/service/helpers/product-price-applicator/product-price-applicator.js.map +1 -1
  24. package/dist/service/helpers/slug-validator/slug-validator.d.ts +16 -0
  25. package/dist/service/helpers/slug-validator/slug-validator.js +8 -0
  26. package/dist/service/helpers/slug-validator/slug-validator.js.map +1 -1
  27. package/dist/service/helpers/translatable-saver/translatable-saver.d.ts +28 -1
  28. package/dist/service/helpers/translatable-saver/translatable-saver.js +28 -1
  29. package/dist/service/helpers/translatable-saver/translatable-saver.js.map +1 -1
  30. package/dist/service/services/product.service.js +11 -8
  31. package/dist/service/services/product.service.js.map +1 -1
  32. package/dist/service/services/promotion.service.js +4 -1
  33. package/dist/service/services/promotion.service.js.map +1 -1
  34. package/package.json +3 -3
@@ -52,6 +52,8 @@ const translate_entity_1 = require("../utils/translate-entity");
52
52
  * So this helper was mainly extracted to isolate the huge `modifyOrder` method since the
53
53
  * OrderService was just growing too large. Future refactoring could improve the organization
54
54
  * of these Order-related methods into a more clearly-delineated set of classes.
55
+ *
56
+ * @docsCategory service-helpers
55
57
  */
56
58
  let OrderModifier = class OrderModifier {
57
59
  constructor(connection, configService, orderCalculator, paymentService, countryService, stockMovementService, productVariantService, customFieldRelationService, promotionService, eventBus, entityHydrator, historyService) {
@@ -69,6 +71,7 @@ let OrderModifier = class OrderModifier {
69
71
  this.historyService = historyService;
70
72
  }
71
73
  /**
74
+ * @description
72
75
  * Ensure that the ProductVariant has sufficient saleable stock to add the given
73
76
  * quantity to an Order.
74
77
  */
@@ -80,6 +83,11 @@ let OrderModifier = class OrderModifier {
80
83
  }
81
84
  return correctedQuantity;
82
85
  }
86
+ /**
87
+ * @description
88
+ * Given a ProductVariant ID and optional custom fields, this method will return an existing OrderLine that
89
+ * matches, or `undefined` if no match is found.
90
+ */
83
91
  async getExistingOrderLine(ctx, order, productVariantId, customFields) {
84
92
  for (const line of order.lines) {
85
93
  const match = utils_1.idsAreEqual(line.productVariant.id, productVariantId) &&
@@ -90,6 +98,7 @@ let OrderModifier = class OrderModifier {
90
98
  }
91
99
  }
92
100
  /**
101
+ * @description
93
102
  * Returns the OrderLine to which a new OrderItem belongs, creating a new OrderLine
94
103
  * if no existing line is found.
95
104
  */
@@ -123,6 +132,7 @@ let OrderModifier = class OrderModifier {
123
132
  return lineWithRelations;
124
133
  }
125
134
  /**
135
+ * @description
126
136
  * Updates the quantity of an OrderLine, taking into account the available saleable stock level.
127
137
  * Returns the actual quantity that the OrderLine was updated to (which may be less than the
128
138
  * `quantity` argument if insufficient stock was available.
@@ -476,8 +486,8 @@ let OrderModifier = class OrderModifier {
476
486
  // or equal to the defaultValue
477
487
  for (const def of customFieldDefs) {
478
488
  const key = def.name;
479
- const existingValue = existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
480
- if (existingValue != null) {
489
+ const existingValue = this.coerceValue(def, existingCustomFields);
490
+ if (existingValue != null && (!def.list || (existingValue === null || existingValue === void 0 ? void 0 : existingValue.length) !== 0)) {
481
491
  if (def.defaultValue != null) {
482
492
  if (existingValue !== def.defaultValue) {
483
493
  return false;
@@ -503,13 +513,8 @@ let OrderModifier = class OrderModifier {
503
513
  }
504
514
  for (const def of customFieldDefs) {
505
515
  const key = def.name;
506
- // This ternary is there because with the MySQL driver, boolean customFields with a default
507
- // of `false` were being rep-resented as `0`, thus causing the equality check to fail.
508
- // So if it's a boolean, we'll explicitly coerce the value to a boolean.
509
- const existingValue = def.type === 'boolean' && typeof (existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key]) === 'number'
510
- ? !!(existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key])
511
- : existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
512
- if (existingValue !== undefined) {
516
+ const existingValue = this.coerceValue(def, existingCustomFields);
517
+ if (def.type !== 'relation' && existingValue !== undefined) {
513
518
  const valuesMatch = JSON.stringify(inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === JSON.stringify(existingValue);
514
519
  const undefinedMatchesNull = existingValue === null && (inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === undefined;
515
520
  const defaultValueMatch = (inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[key]) === undefined && def.defaultValue === existingValue;
@@ -518,17 +523,34 @@ let OrderModifier = class OrderModifier {
518
523
  }
519
524
  }
520
525
  else if (def.type === 'relation') {
521
- const inputId = `${key}Id`;
526
+ const inputId = shared_utils_1.getGraphQlInputName(def);
522
527
  const inputValue = inputCustomFields === null || inputCustomFields === void 0 ? void 0 : inputCustomFields[inputId];
523
528
  // tslint:disable-next-line:no-non-null-assertion
524
529
  const existingRelation = lineWithCustomFieldRelations.customFields[key];
525
- if (inputValue && inputValue !== (existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.id)) {
526
- return false;
530
+ if (inputValue) {
531
+ const customFieldNotEqual = def.list
532
+ ? JSON.stringify(inputValue.sort()) !==
533
+ JSON.stringify(existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.map((relation) => relation.id).sort())
534
+ : inputValue !== (existingRelation === null || existingRelation === void 0 ? void 0 : existingRelation.id);
535
+ if (customFieldNotEqual) {
536
+ return false;
537
+ }
527
538
  }
528
539
  }
529
540
  }
530
541
  return true;
531
542
  }
543
+ /**
544
+ * This function is required because with the MySQL driver, boolean customFields with a default
545
+ * of `false` were being represented as `0`, thus causing the equality check to fail.
546
+ * So if it's a boolean, we'll explicitly coerce the value to a boolean.
547
+ */
548
+ coerceValue(def, existingCustomFields) {
549
+ const key = def.name;
550
+ return def.type === 'boolean' && typeof (existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key]) === 'number'
551
+ ? !!(existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key])
552
+ : existingCustomFields === null || existingCustomFields === void 0 ? void 0 : existingCustomFields[key];
553
+ }
532
554
  async getProductVariantOrThrow(ctx, productVariantId) {
533
555
  const productVariant = await this.productVariantService.findOne(ctx, productVariantId);
534
556
  if (!productVariant) {
@@ -1 +1 @@
1
- {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"order-modifier.js","sourceRoot":"","sources":["../../../../src/service/helpers/order-modifier/order-modifier.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,30 @@ import { ZoneService } from '../../services/zone.service';
8
8
  /**
9
9
  * @description
10
10
  * This helper is used to apply the correct price to a ProductVariant based on the current context
11
- * including active Channel, any current Order, etc.
11
+ * including active Channel, any current Order, etc. If you use the {@link TransactionalConnection} to
12
+ * directly query ProductVariants, you will find that the `price` and `priceWithTax` properties will
13
+ * always be `0` until you use the `applyChannelPriceAndTax()` method:
14
+ *
15
+ * @example
16
+ * ```TypeScript
17
+ * export class MyCustomService {
18
+ * constructor(private connection: TransactionalConnection,
19
+ * private productPriceApplicator: ProductPriceApplicator) {}
20
+ *
21
+ * getVariant(ctx: RequestContext, id: ID) {
22
+ * const productVariant = await this.connection
23
+ * .getRepository(ctx, ProductVariant)
24
+ * .findOne(id, { relations: ['taxCategory'] });
25
+ *
26
+ * await this.productPriceApplicator
27
+ * .applyChannelPriceAndTax(productVariant, ctx);
28
+ *
29
+ * return productVariant;
30
+ * }
31
+ * }
32
+ * ```
33
+ *
34
+ * @docsCategory service-helpers
12
35
  */
13
36
  export declare class ProductPriceApplicator {
14
37
  private configService;
@@ -18,7 +41,8 @@ export declare class ProductPriceApplicator {
18
41
  constructor(configService: ConfigService, taxRateService: TaxRateService, zoneService: ZoneService, requestCache: RequestContextCacheService);
19
42
  /**
20
43
  * @description
21
- * Populates the `price` field with the price for the specified channel.
44
+ * Populates the `price` field with the price for the specified channel. Make sure that
45
+ * the ProductVariant being passed in has its `taxCategory` relation joined.
22
46
  */
23
47
  applyChannelPriceAndTax(variant: ProductVariant, ctx: RequestContext, order?: Order): Promise<ProductVariant>;
24
48
  }
@@ -20,7 +20,30 @@ const zone_service_1 = require("../../services/zone.service");
20
20
  /**
21
21
  * @description
22
22
  * This helper is used to apply the correct price to a ProductVariant based on the current context
23
- * including active Channel, any current Order, etc.
23
+ * including active Channel, any current Order, etc. If you use the {@link TransactionalConnection} to
24
+ * directly query ProductVariants, you will find that the `price` and `priceWithTax` properties will
25
+ * always be `0` until you use the `applyChannelPriceAndTax()` method:
26
+ *
27
+ * @example
28
+ * ```TypeScript
29
+ * export class MyCustomService {
30
+ * constructor(private connection: TransactionalConnection,
31
+ * private productPriceApplicator: ProductPriceApplicator) {}
32
+ *
33
+ * getVariant(ctx: RequestContext, id: ID) {
34
+ * const productVariant = await this.connection
35
+ * .getRepository(ctx, ProductVariant)
36
+ * .findOne(id, { relations: ['taxCategory'] });
37
+ *
38
+ * await this.productPriceApplicator
39
+ * .applyChannelPriceAndTax(productVariant, ctx);
40
+ *
41
+ * return productVariant;
42
+ * }
43
+ * }
44
+ * ```
45
+ *
46
+ * @docsCategory service-helpers
24
47
  */
25
48
  let ProductPriceApplicator = class ProductPriceApplicator {
26
49
  constructor(configService, taxRateService, zoneService, requestCache) {
@@ -31,7 +54,8 @@ let ProductPriceApplicator = class ProductPriceApplicator {
31
54
  }
32
55
  /**
33
56
  * @description
34
- * Populates the `price` field with the price for the specified channel.
57
+ * Populates the `price` field with the price for the specified channel. Make sure that
58
+ * the ProductVariant being passed in has its `taxCategory` relation joined.
35
59
  */
36
60
  async applyChannelPriceAndTax(variant, ctx, order) {
37
61
  const channelPrice = variant.productVariantPrices.find(p => utils_1.idsAreEqual(p.channelId, ctx.channelId));
@@ -1 +1 @@
1
- {"version":3,"file":"product-price-applicator.js","sourceRoot":"","sources":["../../../../src/service/helpers/product-price-applicator/product-price-applicator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,gGAA0F;AAC1F,yDAAmE;AACnE,iDAAoD;AACpD,mEAA+D;AAG/D,sEAAiE;AACjE,8DAA0D;AAE1D;;;;GAIG;AAEH,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IAC/B,YACY,aAA4B,EAC5B,cAA8B,EAC9B,WAAwB,EACxB,YAAwC;QAHxC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAA4B;IACjD,CAAC;IAEJ;;;OAGG;IACH,KAAK,CAAC,uBAAuB,CACzB,OAAuB,EACvB,GAAmB,EACnB,KAAa;QAEb,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAW,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,4BAAmB,CAAC,kCAAkC,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;aAC5B,CAAC,CAAC;SACN;QACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CACzE,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CACnE,CAAC;QACF,IAAI,CAAC,aAAa,EAAE;YAChB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;SAC7D;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CACjD,GAAG,EACH,qBAAqB,aAAa,CAAC,EAAE,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,EACjE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAC1F,CAAC;QAEF,MAAM,EAAE,sCAAsC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;QACrF,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,sCAAsC,CAAC,SAAS,CAAC;YACvF,UAAU,EAAE,YAAY,CAAC,KAAK;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,aAAa;YACb,GAAG;SACN,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,OAAO,CAAC,oBAAoB,GAAG,gBAAgB,CAAC;QAChD,OAAO,CAAC,cAAc,GAAG,iBAAiB,CAAC;QAC3C,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ,CAAA;AApDY,sBAAsB;IADlC,mBAAU,EAAE;qCAGkB,8BAAa;QACZ,iCAAc;QACjB,0BAAW;QACV,0DAA0B;GAL3C,sBAAsB,CAoDlC;AApDY,wDAAsB"}
1
+ {"version":3,"file":"product-price-applicator.js","sourceRoot":"","sources":["../../../../src/service/helpers/product-price-applicator/product-price-applicator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAG5C,gGAA0F;AAC1F,yDAAmE;AACnE,iDAAoD;AACpD,mEAA+D;AAG/D,sEAAiE;AACjE,8DAA0D;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,IAAa,sBAAsB,GAAnC,MAAa,sBAAsB;IAC/B,YACY,aAA4B,EAC5B,cAA8B,EAC9B,WAAwB,EACxB,YAAwC;QAHxC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAA4B;IACjD,CAAC;IAEJ;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CACzB,OAAuB,EACvB,GAAmB,EACnB,KAAa;QAEb,MAAM,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAW,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,YAAY,EAAE;YACf,MAAM,IAAI,4BAAmB,CAAC,kCAAkC,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;aAC5B,CAAC,CAAC;SACN;QACD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,CACzE,eAAe,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CACnE,CAAC;QACF,IAAI,CAAC,aAAa,EAAE;YAChB,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;SAC7D;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CACjD,GAAG,EACH,qBAAqB,aAAa,CAAC,EAAE,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,EACjE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAC1F,CAAC;QAEF,MAAM,EAAE,sCAAsC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;QACrF,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,MAAM,sCAAsC,CAAC,SAAS,CAAC;YACvF,UAAU,EAAE,YAAY,CAAC,KAAK;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,aAAa;YACb,GAAG;SACN,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC;QAC1B,OAAO,CAAC,oBAAoB,GAAG,gBAAgB,CAAC;QAChD,OAAO,CAAC,cAAc,GAAG,iBAAiB,CAAC;QAC3C,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ,CAAA;AArDY,sBAAsB;IADlC,mBAAU,EAAE;qCAGkB,8BAAa;QACZ,iCAAc;QACjB,0BAAW;QACV,0DAA0B;GAL3C,sBAAsB,CAqDlC;AArDY,wDAAsB"}
@@ -3,6 +3,10 @@ import { ID, Type } from '@vendure/common/lib/shared-types';
3
3
  import { RequestContext } from '../../../api/common/request-context';
4
4
  import { TransactionalConnection } from '../../../connection/transactional-connection';
5
5
  import { VendureEntity } from '../../../entity/base/base.entity';
6
+ /**
7
+ * @docsCategory service-helpers
8
+ * @docsPage SlugValidator
9
+ */
6
10
  export declare type InputWithSlug = {
7
11
  id?: ID | null;
8
12
  translations?: Array<{
@@ -11,12 +15,24 @@ export declare type InputWithSlug = {
11
15
  slug?: string | null;
12
16
  }> | null;
13
17
  };
18
+ /**
19
+ * @docsCategory service-helpers
20
+ * @docsPage SlugValidator
21
+ */
14
22
  export declare type TranslationEntity = VendureEntity & {
15
23
  id: ID;
16
24
  languageCode: LanguageCode;
17
25
  slug: string;
18
26
  base: any;
19
27
  };
28
+ /**
29
+ * @description
30
+ * Used to validate slugs to ensure they are URL-safe and unique. Designed to be used with translatable
31
+ * entities such as {@link Product} and {@link Collection}.
32
+ *
33
+ * @docsCategory service-helpers
34
+ * @docsWeight 0
35
+ */
20
36
  export declare class SlugValidator {
21
37
  private connection;
22
38
  constructor(connection: TransactionalConnection);
@@ -13,6 +13,14 @@ exports.SlugValidator = void 0;
13
13
  const common_1 = require("@nestjs/common");
14
14
  const normalize_string_1 = require("@vendure/common/lib/normalize-string");
15
15
  const transactional_connection_1 = require("../../../connection/transactional-connection");
16
+ /**
17
+ * @description
18
+ * Used to validate slugs to ensure they are URL-safe and unique. Designed to be used with translatable
19
+ * entities such as {@link Product} and {@link Collection}.
20
+ *
21
+ * @docsCategory service-helpers
22
+ * @docsWeight 0
23
+ */
16
24
  let SlugValidator = class SlugValidator {
17
25
  constructor(connection) {
18
26
  this.connection = connection;
@@ -1 +1 @@
1
- {"version":3,"file":"slug-validator.js","sourceRoot":"","sources":["../../../../src/service/helpers/slug-validator/slug-validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,2EAAuE;AAIvE,2FAAuF;AAqBvF,IAAa,aAAa,GAA1B,MAAa,aAAa;IACtB,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,GAAmB,EACnB,KAAQ,EACR,iBAA0B;QAE1B,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE;gBAChC,IAAI,CAAC,CAAC,IAAI,EAAE;oBACR,CAAC,CAAC,IAAI,GAAG,kCAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACtC,IAAI,KAAoB,CAAC;oBACzB,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,MAAM,IAAI,GAAS,EAAE,CAAC;oBACtB,MAAM,eAAe,GAAG,OAAO,CAAC;oBAChC,GAAG;wBACC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU;6BACrB,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC;6BACrC,kBAAkB,CAAC,aAAa,CAAC;6BACjC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC;6BAC9C,KAAK,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;6BACnD,QAAQ,CAAC,0CAA0C,EAAE;4BAClD,YAAY,EAAE,CAAC,CAAC,YAAY;yBAC/B,CAAC,CAAA;wBACN,IAAI,KAAK,CAAC,EAAE,EAAE;4BACV,EAAE,CAAC,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;yBAC5D;wBACD,IAAI,IAAI,CAAC,MAAM,EAAE;4BACb,EAAE,CAAC,QAAQ,CAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC7D;wBACD,KAAK,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;wBAC1B,IAAI,KAAK,EAAE;4BACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;gCACvB,MAAM,EAAE,CAAC;gCACT,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oCAC9B,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;iCAC1D;qCAAM;oCACH,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;iCAClC;6BACJ;iCAAM;gCACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;6BACvB;yBACJ;qBACJ,QAAQ,KAAK,EAAE;iBACnB;aACJ;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAtDY,aAAa;IADzB,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,aAAa,CAsDzB;AAtDY,sCAAa"}
1
+ {"version":3,"file":"slug-validator.js","sourceRoot":"","sources":["../../../../src/service/helpers/slug-validator/slug-validator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAE5C,2EAAuE;AAIvE,2FAAuF;AA4BvF;;;;;;;GAOG;AAEH,IAAa,aAAa,GAA1B,MAAa,aAAa;IACtB,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,GAAmB,EACnB,KAAQ,EACR,iBAA0B;QAE1B,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE;gBAChC,IAAI,CAAC,CAAC,IAAI,EAAE;oBACR,CAAC,CAAC,IAAI,GAAG,kCAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACtC,IAAI,KAAoB,CAAC;oBACzB,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,MAAM,IAAI,GAAS,EAAE,CAAC;oBACtB,MAAM,eAAe,GAAG,OAAO,CAAC;oBAChC,GAAG;wBACC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU;6BACrB,aAAa,CAAC,GAAG,EAAE,iBAAiB,CAAC;6BACrC,kBAAkB,CAAC,aAAa,CAAC;6BACjC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC;6BAC9C,KAAK,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;6BACnD,QAAQ,CAAC,0CAA0C,EAAE;4BAClD,YAAY,EAAE,CAAC,CAAC,YAAY;yBAC/B,CAAC,CAAC;wBACP,IAAI,KAAK,CAAC,EAAE,EAAE;4BACV,EAAE,CAAC,QAAQ,CAAC,yBAAyB,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;yBAC5D;wBACD,IAAI,IAAI,CAAC,MAAM,EAAE;4BACb,EAAE,CAAC,QAAQ,CAAC,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC7D;wBACD,KAAK,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;wBAC1B,IAAI,KAAK,EAAE;4BACP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE;gCACvB,MAAM,EAAE,CAAC;gCACT,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oCAC9B,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,EAAE,CAAC,CAAC;iCAC1D;qCAAM;oCACH,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;iCAClC;6BACJ;iCAAM;gCACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;6BACvB;yBACJ;qBACJ,QAAQ,KAAK,EAAE;iBACnB;aACJ;SACJ;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ,CAAA;AAtDY,aAAa;IADzB,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,aAAa,CAsDzB;AAtDY,sCAAa"}
@@ -17,17 +17,44 @@ export interface UpdateTranslatableOptions<T extends Translatable> extends Creat
17
17
  };
18
18
  }
19
19
  /**
20
- * A helper which contains methods for creating and updating entities which implement the Translatable interface.
20
+ * @description
21
+ * A helper which contains methods for creating and updating entities which implement the {@link Translatable} interface.
22
+ *
23
+ * @example
24
+ * ```TypeScript
25
+ * export class MyService {
26
+ * constructor(private translatableSaver: TranslatableSaver) {}
27
+ *
28
+ * async create(ctx: RequestContext, input: CreateFacetInput): Promise<Translated<Facet>> {
29
+ * const facet = await this.translatableSaver.create({
30
+ * ctx,
31
+ * input,
32
+ * entityType: Facet,
33
+ * translationType: FacetTranslation,
34
+ * beforeSave: async f => {
35
+ * f.code = await this.ensureUniqueCode(ctx, f.code);
36
+ * },
37
+ * });
38
+ * return facet;
39
+ * }
40
+ *
41
+ * // ...
42
+ * }
43
+ * ```
44
+ *
45
+ * @docsCategory service-helpers
21
46
  */
22
47
  export declare class TranslatableSaver {
23
48
  private connection;
24
49
  constructor(connection: TransactionalConnection);
25
50
  /**
51
+ * @description
26
52
  * Create a translatable entity, including creating any translation entities according
27
53
  * to the `translations` array.
28
54
  */
29
55
  create<T extends Translatable & VendureEntity>(options: CreateTranslatableOptions<T>): Promise<T>;
30
56
  /**
57
+ * @description
31
58
  * Update a translatable entity. Performs a diff of the `translations` array in order to
32
59
  * perform the correct operation on the translations.
33
60
  */
@@ -16,13 +16,39 @@ const transactional_connection_1 = require("../../../connection/transactional-co
16
16
  const patch_entity_1 = require("../utils/patch-entity");
17
17
  const translation_differ_1 = require("./translation-differ");
18
18
  /**
19
- * A helper which contains methods for creating and updating entities which implement the Translatable interface.
19
+ * @description
20
+ * A helper which contains methods for creating and updating entities which implement the {@link Translatable} interface.
21
+ *
22
+ * @example
23
+ * ```TypeScript
24
+ * export class MyService {
25
+ * constructor(private translatableSaver: TranslatableSaver) {}
26
+ *
27
+ * async create(ctx: RequestContext, input: CreateFacetInput): Promise<Translated<Facet>> {
28
+ * const facet = await this.translatableSaver.create({
29
+ * ctx,
30
+ * input,
31
+ * entityType: Facet,
32
+ * translationType: FacetTranslation,
33
+ * beforeSave: async f => {
34
+ * f.code = await this.ensureUniqueCode(ctx, f.code);
35
+ * },
36
+ * });
37
+ * return facet;
38
+ * }
39
+ *
40
+ * // ...
41
+ * }
42
+ * ```
43
+ *
44
+ * @docsCategory service-helpers
20
45
  */
21
46
  let TranslatableSaver = class TranslatableSaver {
22
47
  constructor(connection) {
23
48
  this.connection = connection;
24
49
  }
25
50
  /**
51
+ * @description
26
52
  * Create a translatable entity, including creating any translation entities according
27
53
  * to the `translations` array.
28
54
  */
@@ -46,6 +72,7 @@ let TranslatableSaver = class TranslatableSaver {
46
72
  .save(entity, { data: typeOrmSubscriberData });
47
73
  }
48
74
  /**
75
+ * @description
49
76
  * Update a translatable entity. Performs a diff of the `translations` array in order to
50
77
  * perform the correct operation on the translations.
51
78
  */
@@ -1 +1 @@
1
- {"version":3,"file":"translatable-saver.js","sourceRoot":"","sources":["../../../../src/service/helpers/translatable-saver/translatable-saver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,mDAAgD;AAKhD,2FAAuF;AAGvF,wDAAoD;AAEpD,6DAAyD;AAezD;;GAEG;AAEH,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAC1B,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAyC,OAAqC;QACtF,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAE/F,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,YAAY,GAA0B,EAAE,CAAC;QAE/C,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,YAAY,EAAE;gBAC/C,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBAC1D,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC/B,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,WAAkB,CAAC,CAAC;aACtF;SACJ;QAED,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;QACnC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;YAClC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;SAC5B;QACD,OAAO,MAAM,IAAI,CAAC,UAAU;aACvB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC;aAC9B,IAAI,CAAC,MAAa,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAyC,OAAqC;QACtF,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAC/F,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC;YACxF,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;YACzB,SAAS,EAAE,CAAC,MAAM,CAAC;SACtB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,sCAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CACjC,GAAG,EACH,IAAI,UAAU,iCAAM,KAAK,KAAE,YAAY,EAAE,oBAAoB,IAAG,EAChE,IAAI,CACP,CAAC;QACF,MAAM,aAAa,GAAG,0BAAW,CAAC,MAAa,EAAE,WAAI,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;YAClC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;SAC5B;QACD,OAAO,IAAI,CAAC,UAAU;aACjB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC;aAC9B,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC9D,CAAC;CACJ,CAAA;AAxDY,iBAAiB;IAD7B,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,iBAAiB,CAwD7B;AAxDY,8CAAiB"}
1
+ {"version":3,"file":"translatable-saver.js","sourceRoot":"","sources":["../../../../src/service/helpers/translatable-saver/translatable-saver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,mDAAgD;AAKhD,2FAAuF;AAGvF,wDAAoD;AAEpD,6DAAyD;AAezD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,IAAa,iBAAiB,GAA9B,MAAa,iBAAiB;IAC1B,YAAoB,UAAmC;QAAnC,eAAU,GAAV,UAAU,CAAyB;IAAG,CAAC;IAE3D;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAyC,OAAqC;QACtF,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAE/F,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,YAAY,GAA0B,EAAE,CAAC;QAE/C,IAAI,KAAK,CAAC,YAAY,EAAE;YACpB,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,YAAY,EAAE;gBAC/C,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBAC1D,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC/B,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,WAAkB,CAAC,CAAC;aACtF;SACJ;QAED,MAAM,CAAC,YAAY,GAAG,YAAY,CAAC;QACnC,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;YAClC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;SAC5B;QACD,OAAO,MAAM,IAAI,CAAC,UAAU;aACvB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC;aAC9B,IAAI,CAAC,MAAa,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAyC,OAAqC;QACtF,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;QAC/F,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC;YACxF,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;YACzB,SAAS,EAAE,CAAC,MAAM,CAAC;SACtB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,sCAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CACjC,GAAG,EACH,IAAI,UAAU,iCAAM,KAAK,KAAE,YAAY,EAAE,oBAAoB,IAAG,EAChE,IAAI,CACP,CAAC;QACF,MAAM,aAAa,GAAG,0BAAW,CAAC,MAAa,EAAE,WAAI,CAAC,KAAK,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAChF,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;YAClC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;SAC5B;QACD,OAAO,IAAI,CAAC,UAAU;aACjB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC;aAC9B,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC9D,CAAC;CACJ,CAAA;AA1DY,iBAAiB;IAD7B,mBAAU,EAAE;qCAEuB,kDAAuB;GAD9C,iBAAiB,CA0D7B;AA1DY,8CAAiB"}
@@ -132,25 +132,28 @@ let ProductService = class ProductService {
132
132
  async findOneBySlug(ctx, slug, relations) {
133
133
  const qb = this.connection.getRepository(ctx, product_entity_1.Product).createQueryBuilder('product');
134
134
  typeorm_1.FindOptionsUtils.applyFindManyOptionsOrConditionsToQueryBuilder(qb, {
135
- relations: (relations && false) || this.relations,
135
+ relations: relations ? [...new Set(this.relations.concat(relations))] : this.relations,
136
136
  });
137
137
  // tslint:disable-next-line:no-non-null-assertion
138
138
  typeorm_1.FindOptionsUtils.joinEagerRelations(qb, qb.alias, qb.expressionMap.mainAlias.metadata);
139
139
  const translationQb = this.connection
140
140
  .getRepository(ctx, product_translation_entity_1.ProductTranslation)
141
- .createQueryBuilder('product_translation')
142
- .select('product_translation.baseId')
143
- .andWhere('product_translation.slug = :slug', { slug });
144
- return qb
145
- .leftJoin('product.channels', 'channel')
141
+ .createQueryBuilder('_product_translation')
142
+ .select('_product_translation.baseId')
143
+ .andWhere('_product_translation.slug = :slug', { slug });
144
+ const translationsAlias = (relations === null || relations === void 0 ? void 0 : relations.includes('translations'))
145
+ ? 'product__translations'
146
+ : 'product_translations';
147
+ qb.leftJoin('product.channels', 'channel')
146
148
  .andWhere('product.id IN (' + translationQb.getQuery() + ')')
147
149
  .setParameters(translationQb.getParameters())
148
150
  .andWhere('product.deletedAt IS NULL')
149
151
  .andWhere('channel.id = :channelId', { channelId: ctx.channelId })
150
152
  .addSelect(
151
153
  // tslint:disable-next-line:max-line-length
152
- `CASE product_translations.languageCode WHEN '${ctx.languageCode}' THEN 2 WHEN '${ctx.channel.defaultLanguageCode}' THEN 1 ELSE 0 END`, 'sort_order')
153
- .orderBy('sort_order', 'DESC')
154
+ `CASE ${translationsAlias}.languageCode WHEN '${ctx.languageCode}' THEN 2 WHEN '${ctx.channel.defaultLanguageCode}' THEN 1 ELSE 0 END`, 'sort_order')
155
+ .orderBy('sort_order', 'DESC');
156
+ return qb
154
157
  .getOne()
155
158
  .then(product => product
156
159
  ? translate_entity_1.translateDeep(product, ctx.languageCode, ['facetValues', ['facetValues', 'facet']])
@@ -1 +1 @@
1
- {"version":3,"file":"product.service.js","sourceRoot":"","sources":["../../../src/service/services/product.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"product.service.js","sourceRoot":"","sources":["../../../src/service/services/product.service.ts"],"names":[],"mappings":"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"}
@@ -161,8 +161,11 @@ let PromotionService = class PromotionService {
161
161
  enabled: true,
162
162
  deletedAt: null,
163
163
  },
164
+ relations: ['channels'],
164
165
  });
165
- if (!promotion || promotion.couponCode !== couponCode) {
166
+ if (!promotion ||
167
+ promotion.couponCode !== couponCode ||
168
+ !promotion.channels.find(c => utils_1.idsAreEqual(c.id, ctx.channelId))) {
166
169
  return new generated_graphql_shop_errors_1.CouponCodeInvalidError(couponCode);
167
170
  }
168
171
  if (promotion.endsAt && +promotion.endsAt < +new Date()) {