@labdigital/commercetools-mock 2.10.0 → 2.11.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.
package/dist/index.cjs CHANGED
@@ -1287,6 +1287,7 @@ var import_express = __toESM(require("express"), 1);
1287
1287
 
1288
1288
  // src/oauth/store.ts
1289
1289
  var import_crypto = require("crypto");
1290
+ var import_uuid2 = require("uuid");
1290
1291
  var OAuth2Store = class {
1291
1292
  tokens = [];
1292
1293
  validate = true;
@@ -1303,12 +1304,25 @@ var OAuth2Store = class {
1303
1304
  this.tokens.push(token);
1304
1305
  return token;
1305
1306
  }
1307
+ getAnonymousToken(scope, anonymousId) {
1308
+ if (!anonymousId) {
1309
+ anonymousId = (0, import_uuid2.v4)();
1310
+ }
1311
+ const token = {
1312
+ access_token: (0, import_crypto.randomBytes)(16).toString("base64"),
1313
+ token_type: "Bearer",
1314
+ expires_in: 172800,
1315
+ scope: scope ? `${scope} anonymous_id:${anonymousId}` : `anonymous_id:${anonymousId}`
1316
+ };
1317
+ this.tokens.push(token);
1318
+ return token;
1319
+ }
1306
1320
  getCustomerToken(scope, customerId) {
1307
1321
  const token = {
1308
1322
  access_token: (0, import_crypto.randomBytes)(16).toString("base64"),
1309
1323
  token_type: "Bearer",
1310
1324
  expires_in: 172800,
1311
- scope: scope ? `${scope} custome_id:${customerId}` : `customer_id: ${customerId}`
1325
+ scope: scope ? `${scope} customer_id:${customerId}` : `customer_id:${customerId}`
1312
1326
  };
1313
1327
  this.tokens.push(token);
1314
1328
  return token;
@@ -1523,15 +1537,24 @@ var OAuth2Server = class {
1523
1537
  );
1524
1538
  }
1525
1539
  async anonymousTokenHandler(request, response, next) {
1526
- return next(
1527
- new CommercetoolsError(
1528
- {
1529
- code: "invalid_client",
1530
- message: "Not implemented yet in commercetools-mock"
1531
- },
1532
- 401
1533
- )
1534
- );
1540
+ const grantType = request.query.grant_type || request.body.grant_type;
1541
+ if (!grantType) {
1542
+ return next(
1543
+ new CommercetoolsError(
1544
+ {
1545
+ code: "invalid_request",
1546
+ message: "Missing required parameter: grant_type."
1547
+ },
1548
+ 400
1549
+ )
1550
+ );
1551
+ }
1552
+ if (grantType === "client_credentials") {
1553
+ const scope = request.query.scope?.toString() || request.body.scope?.toString();
1554
+ const anonymous_id = void 0;
1555
+ const token = this.store.getAnonymousToken(scope, anonymous_id);
1556
+ return response.status(200).send(token);
1557
+ }
1535
1558
  }
1536
1559
  };
1537
1560
 
@@ -1591,7 +1614,7 @@ var DEFAULT_API_HOSTNAME = "https://api.*.commercetools.com";
1591
1614
  var DEFAULT_AUTH_HOSTNAME = "https://auth.*.commercetools.com";
1592
1615
 
1593
1616
  // src/repositories/helpers.ts
1594
- var import_uuid2 = require("uuid");
1617
+ var import_uuid3 = require("uuid");
1595
1618
  var createAddress = (base, projectKey, storage) => {
1596
1619
  if (!base)
1597
1620
  return void 0;
@@ -1629,7 +1652,7 @@ var createCustomFields = (draft, projectKey, storage) => {
1629
1652
  };
1630
1653
  };
1631
1654
  var createPrice = (draft) => ({
1632
- id: (0, import_uuid2.v4)(),
1655
+ id: (0, import_uuid3.v4)(),
1633
1656
  value: createTypedMoney(draft.value)
1634
1657
  });
1635
1658
  var createCentPrecisionMoney = (value) => {
@@ -2195,7 +2218,7 @@ var BusinessUnitRepository = class extends AbstractResourceRepository {
2195
2218
  };
2196
2219
 
2197
2220
  // src/repositories/cart.ts
2198
- var import_uuid3 = require("uuid");
2221
+ var import_uuid4 = require("uuid");
2199
2222
  var CartRepository = class extends AbstractResourceRepository {
2200
2223
  getTypeId() {
2201
2224
  return "cart";
@@ -2328,7 +2351,7 @@ var CartRepository = class extends AbstractResourceRepository {
2328
2351
  );
2329
2352
  }
2330
2353
  resource.lineItems.push({
2331
- id: (0, import_uuid3.v4)(),
2354
+ id: (0, import_uuid4.v4)(),
2332
2355
  productId: product.id,
2333
2356
  productKey: product.key,
2334
2357
  productSlug: product.masterData.current.slug,
@@ -2599,7 +2622,7 @@ var CartRepository = class extends AbstractResourceRepository {
2599
2622
  );
2600
2623
  }
2601
2624
  return {
2602
- id: (0, import_uuid3.v4)(),
2625
+ id: (0, import_uuid4.v4)(),
2603
2626
  productId: product.id,
2604
2627
  productKey: product.key,
2605
2628
  productSlug: product.masterData.current.slug,
@@ -2770,14 +2793,14 @@ var CartDiscountRepository = class extends AbstractResourceRepository {
2770
2793
  };
2771
2794
 
2772
2795
  // src/repositories/category.ts
2773
- var import_uuid4 = require("uuid");
2796
+ var import_uuid5 = require("uuid");
2774
2797
  var CategoryRepository = class extends AbstractResourceRepository {
2775
2798
  getTypeId() {
2776
2799
  return "category";
2777
2800
  }
2778
2801
  assetFromAssetDraft = (draft, context) => ({
2779
2802
  ...draft,
2780
- id: (0, import_uuid4.v4)(),
2803
+ id: (0, import_uuid5.v4)(),
2781
2804
  custom: createCustomFields(draft.custom, context.projectKey, this._storage)
2782
2805
  });
2783
2806
  create(context, draft) {
@@ -2792,7 +2815,7 @@ var CategoryRepository = class extends AbstractResourceRepository {
2792
2815
  ancestors: [],
2793
2816
  // TODO
2794
2817
  assets: draft.assets?.map((d) => ({
2795
- id: (0, import_uuid4.v4)(),
2818
+ id: (0, import_uuid5.v4)(),
2796
2819
  name: d.name,
2797
2820
  description: d.description,
2798
2821
  sources: d.sources,
@@ -3788,7 +3811,7 @@ var OrderEditRepository = class extends AbstractResourceRepository {
3788
3811
  };
3789
3812
 
3790
3813
  // src/repositories/payment.ts
3791
- var import_uuid5 = require("uuid");
3814
+ var import_uuid6 = require("uuid");
3792
3815
  var PaymentRepository = class extends AbstractResourceRepository {
3793
3816
  getTypeId() {
3794
3817
  return "payment";
@@ -3823,7 +3846,7 @@ var PaymentRepository = class extends AbstractResourceRepository {
3823
3846
  }
3824
3847
  transactionFromTransactionDraft = (draft, context) => ({
3825
3848
  ...draft,
3826
- id: (0, import_uuid5.v4)(),
3849
+ id: (0, import_uuid6.v4)(),
3827
3850
  amount: createCentPrecisionMoney(draft.amount),
3828
3851
  custom: createCustomFields(draft.custom, context.projectKey, this._storage),
3829
3852
  state: draft.state ?? "Initial"
@@ -3907,7 +3930,7 @@ var PaymentRepository = class extends AbstractResourceRepository {
3907
3930
  };
3908
3931
 
3909
3932
  // src/repositories/product.ts
3910
- var import_uuid6 = require("uuid");
3933
+ var import_uuid7 = require("uuid");
3911
3934
  var import_deep_equal2 = __toESM(require("deep-equal"), 1);
3912
3935
  var ProductRepository = class extends AbstractResourceRepository {
3913
3936
  getTypeId() {
@@ -4013,7 +4036,7 @@ var ProductRepository = class extends AbstractResourceRepository {
4013
4036
  }
4014
4037
  priceFromDraft(context, draft) {
4015
4038
  return {
4016
- id: (0, import_uuid6.v4)(),
4039
+ id: (0, import_uuid7.v4)(),
4017
4040
  key: draft.key,
4018
4041
  country: draft.country,
4019
4042
  value: createTypedMoney(draft.value),
@@ -6055,7 +6078,7 @@ var SubscriptionRepository = class extends AbstractResourceRepository {
6055
6078
  };
6056
6079
 
6057
6080
  // src/repositories/tax-category.ts
6058
- var import_uuid7 = require("uuid");
6081
+ var import_uuid8 = require("uuid");
6059
6082
  var TaxCategoryRepository = class extends AbstractResourceRepository {
6060
6083
  getTypeId() {
6061
6084
  return "tax-category";
@@ -6071,7 +6094,7 @@ var TaxCategoryRepository = class extends AbstractResourceRepository {
6071
6094
  }
6072
6095
  taxRateFromTaxRateDraft = (draft) => ({
6073
6096
  ...draft,
6074
- id: (0, import_uuid7.v4)(),
6097
+ id: (0, import_uuid8.v4)(),
6075
6098
  amount: draft.amount || 0
6076
6099
  });
6077
6100
  actions = {
@@ -6630,7 +6653,7 @@ var CustomerGroupService = class extends AbstractService {
6630
6653
  };
6631
6654
 
6632
6655
  // src/services/customer.ts
6633
- var import_uuid8 = require("uuid");
6656
+ var import_uuid9 = require("uuid");
6634
6657
  var CustomerService = class extends AbstractService {
6635
6658
  repository;
6636
6659
  constructor(parent, repository) {
@@ -6654,7 +6677,7 @@ var CustomerService = class extends AbstractService {
6654
6677
  ...rest,
6655
6678
  customerId: customer.results[0].id,
6656
6679
  expiresAt: new Date(Date.now() + ttlMinutes * 60).toISOString(),
6657
- value: (0, import_uuid8.v4)()
6680
+ value: (0, import_uuid9.v4)()
6658
6681
  });
6659
6682
  });
6660
6683
  }