@labdigital/commercetools-mock 2.19.0 → 2.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -47,7 +47,7 @@ declare abstract class AbstractRepository<R extends BaseResource | Project> {
47
47
  constructor(storage: AbstractStorage);
48
48
  abstract saveNew({ projectKey }: RepositoryContext, resource: R): void;
49
49
  abstract saveUpdate({ projectKey }: RepositoryContext, version: number, resource: R): void;
50
- abstract postProcessResource(resource: any): any;
50
+ abstract postProcessResource(context: RepositoryContext, resource: any): any;
51
51
  processUpdateActions(context: RepositoryContext, resource: R, version: number, actions: UpdateAction[]): R;
52
52
  }
53
53
  declare abstract class AbstractResourceRepository<T extends ResourceType> extends AbstractRepository<ResourceMap[T]> {
@@ -58,8 +58,10 @@ declare abstract class AbstractResourceRepository<T extends ResourceType> extend
58
58
  delete(context: RepositoryContext, id: string, params?: GetParams$1): ResourceMap[T] | null;
59
59
  get(context: RepositoryContext, id: string, params?: GetParams$1): ResourceMap[T] | null;
60
60
  getByKey(context: RepositoryContext, key: string, params?: GetParams$1): ResourceMap[T] | null;
61
- postProcessResource(resource: ResourceMap[T]): ResourceMap[T];
62
- query(context: RepositoryContext, params?: QueryParams$1): PagedQueryResponseMap[T];
61
+ postProcessResource(context: RepositoryContext, resource: ResourceMap[T]): ResourceMap[T];
62
+ query(context: RepositoryContext, params?: QueryParams$1): PagedQueryResponseMap[T] & {
63
+ results: ResourceMap[T][];
64
+ };
63
65
  saveNew(context: RepositoryContext, resource: ShallowWritable<ResourceMap[T]>): ResourceMap[T];
64
66
  saveUpdate(context: RepositoryContext, version: number, resource: ShallowWritable<ResourceMap[T]>): ShallowWritable<ResourceMap[T]>;
65
67
  }
@@ -215,6 +217,7 @@ declare class CartDiscountRepository extends AbstractResourceRepository<"cart-di
215
217
  declare class CategoryRepository extends AbstractResourceRepository<"category"> {
216
218
  constructor(storage: AbstractStorage);
217
219
  create(context: RepositoryContext, draft: CategoryDraft): Category;
220
+ postProcessResource(context: RepositoryContext, resource: Writable<Category>): Category;
218
221
  }
219
222
 
220
223
  declare class ChannelRepository extends AbstractResourceRepository<"channel"> {
@@ -248,7 +251,7 @@ declare class DiscountCodeRepository extends AbstractResourceRepository<"discoun
248
251
  declare class ExtensionRepository extends AbstractResourceRepository<"extension"> {
249
252
  constructor(storage: AbstractStorage);
250
253
  create(context: RepositoryContext, draft: ExtensionDraft): Extension;
251
- postProcessResource(resource: Extension): Extension;
254
+ postProcessResource(context: RepositoryContext, resource: Extension): Extension;
252
255
  }
253
256
 
254
257
  declare class InventoryEntryRepository extends AbstractResourceRepository<"inventory-entry"> {
@@ -394,7 +397,7 @@ declare class ProductTypeRepository extends AbstractResourceRepository<"product-
394
397
  declare class ProjectRepository extends AbstractRepository<Project> {
395
398
  constructor(storage: AbstractStorage);
396
399
  get(context: RepositoryContext): Project | null;
397
- postProcessResource(resource: Project): Project;
400
+ postProcessResource(context: RepositoryContext, resource: Project): Project;
398
401
  saveNew(context: RepositoryContext, resource: Writable<Project>): void;
399
402
  saveUpdate(context: RepositoryContext, version: number, resource: Project): void;
400
403
  }
package/dist/index.d.ts CHANGED
@@ -47,7 +47,7 @@ declare abstract class AbstractRepository<R extends BaseResource | Project> {
47
47
  constructor(storage: AbstractStorage);
48
48
  abstract saveNew({ projectKey }: RepositoryContext, resource: R): void;
49
49
  abstract saveUpdate({ projectKey }: RepositoryContext, version: number, resource: R): void;
50
- abstract postProcessResource(resource: any): any;
50
+ abstract postProcessResource(context: RepositoryContext, resource: any): any;
51
51
  processUpdateActions(context: RepositoryContext, resource: R, version: number, actions: UpdateAction[]): R;
52
52
  }
53
53
  declare abstract class AbstractResourceRepository<T extends ResourceType> extends AbstractRepository<ResourceMap[T]> {
@@ -58,8 +58,10 @@ declare abstract class AbstractResourceRepository<T extends ResourceType> extend
58
58
  delete(context: RepositoryContext, id: string, params?: GetParams$1): ResourceMap[T] | null;
59
59
  get(context: RepositoryContext, id: string, params?: GetParams$1): ResourceMap[T] | null;
60
60
  getByKey(context: RepositoryContext, key: string, params?: GetParams$1): ResourceMap[T] | null;
61
- postProcessResource(resource: ResourceMap[T]): ResourceMap[T];
62
- query(context: RepositoryContext, params?: QueryParams$1): PagedQueryResponseMap[T];
61
+ postProcessResource(context: RepositoryContext, resource: ResourceMap[T]): ResourceMap[T];
62
+ query(context: RepositoryContext, params?: QueryParams$1): PagedQueryResponseMap[T] & {
63
+ results: ResourceMap[T][];
64
+ };
63
65
  saveNew(context: RepositoryContext, resource: ShallowWritable<ResourceMap[T]>): ResourceMap[T];
64
66
  saveUpdate(context: RepositoryContext, version: number, resource: ShallowWritable<ResourceMap[T]>): ShallowWritable<ResourceMap[T]>;
65
67
  }
@@ -215,6 +217,7 @@ declare class CartDiscountRepository extends AbstractResourceRepository<"cart-di
215
217
  declare class CategoryRepository extends AbstractResourceRepository<"category"> {
216
218
  constructor(storage: AbstractStorage);
217
219
  create(context: RepositoryContext, draft: CategoryDraft): Category;
220
+ postProcessResource(context: RepositoryContext, resource: Writable<Category>): Category;
218
221
  }
219
222
 
220
223
  declare class ChannelRepository extends AbstractResourceRepository<"channel"> {
@@ -248,7 +251,7 @@ declare class DiscountCodeRepository extends AbstractResourceRepository<"discoun
248
251
  declare class ExtensionRepository extends AbstractResourceRepository<"extension"> {
249
252
  constructor(storage: AbstractStorage);
250
253
  create(context: RepositoryContext, draft: ExtensionDraft): Extension;
251
- postProcessResource(resource: Extension): Extension;
254
+ postProcessResource(context: RepositoryContext, resource: Extension): Extension;
252
255
  }
253
256
 
254
257
  declare class InventoryEntryRepository extends AbstractResourceRepository<"inventory-entry"> {
@@ -394,7 +397,7 @@ declare class ProductTypeRepository extends AbstractResourceRepository<"product-
394
397
  declare class ProjectRepository extends AbstractRepository<Project> {
395
398
  constructor(storage: AbstractStorage);
396
399
  get(context: RepositoryContext): Project | null;
397
- postProcessResource(resource: Project): Project;
400
+ postProcessResource(context: RepositoryContext, resource: Project): Project;
398
401
  saveNew(context: RepositoryContext, resource: Writable<Project>): void;
399
402
  saveUpdate(context: RepositoryContext, version: number, resource: Project): void;
400
403
  }
package/dist/index.js CHANGED
@@ -1738,7 +1738,7 @@ var AbstractRepository = class {
1738
1738
  if (resource.version != updatedResource.version) {
1739
1739
  this.saveUpdate(context, version, updatedResource);
1740
1740
  }
1741
- const result = this.postProcessResource(updatedResource);
1741
+ const result = this.postProcessResource(context, updatedResource);
1742
1742
  if (!result) {
1743
1743
  throw new Error("invalid post process action");
1744
1744
  }
@@ -1761,7 +1761,7 @@ var AbstractResourceRepository = class extends AbstractRepository {
1761
1761
  id,
1762
1762
  params
1763
1763
  );
1764
- return resource ? this.postProcessResource(resource) : null;
1764
+ return resource ? this.postProcessResource(context, resource) : null;
1765
1765
  }
1766
1766
  get(context, id, params = {}) {
1767
1767
  const resource = this._storage.get(
@@ -1770,7 +1770,7 @@ var AbstractResourceRepository = class extends AbstractRepository {
1770
1770
  id,
1771
1771
  params
1772
1772
  );
1773
- return resource ? this.postProcessResource(resource) : null;
1773
+ return resource ? this.postProcessResource(context, resource) : null;
1774
1774
  }
1775
1775
  getByKey(context, key, params = {}) {
1776
1776
  const resource = this._storage.getByKey(
@@ -1779,17 +1779,22 @@ var AbstractResourceRepository = class extends AbstractRepository {
1779
1779
  key,
1780
1780
  params
1781
1781
  );
1782
- return resource ? this.postProcessResource(resource) : null;
1782
+ return resource ? this.postProcessResource(context, resource) : null;
1783
1783
  }
1784
- postProcessResource(resource) {
1784
+ postProcessResource(context, resource) {
1785
1785
  return resource;
1786
1786
  }
1787
1787
  query(context, params = {}) {
1788
1788
  const result = this._storage.query(context.projectKey, this.getTypeId(), {
1789
1789
  ...params
1790
1790
  });
1791
- result.results = result.results.map(this.postProcessResource);
1792
- return result;
1791
+ const data = result.results.map(
1792
+ (r) => this.postProcessResource(context, r)
1793
+ );
1794
+ return {
1795
+ ...result,
1796
+ results: data
1797
+ };
1793
1798
  }
1794
1799
  saveNew(context, resource) {
1795
1800
  resource.version = 1;
@@ -3026,7 +3031,7 @@ var CategoryRepository = class extends AbstractResourceRepository {
3026
3031
  externalId: draft.externalId || "",
3027
3032
  parent: draft.parent ? { typeId: "category", id: draft.parent.id } : void 0,
3028
3033
  ancestors: [],
3029
- // TODO
3034
+ // Resolved at runtime
3030
3035
  assets: draft.assets?.map((d) => ({
3031
3036
  id: uuidv48(),
3032
3037
  name: d.name,
@@ -3048,6 +3053,19 @@ var CategoryRepository = class extends AbstractResourceRepository {
3048
3053
  };
3049
3054
  return this.saveNew(context, resource);
3050
3055
  }
3056
+ postProcessResource(context, resource) {
3057
+ let node = resource;
3058
+ const ancestors = [];
3059
+ while (node.parent) {
3060
+ node = this._storage.getByResourceIdentifier(
3061
+ context.projectKey,
3062
+ node.parent
3063
+ );
3064
+ ancestors.push({ typeId: "category", id: node.id });
3065
+ }
3066
+ resource.ancestors = ancestors;
3067
+ return resource;
3068
+ }
3051
3069
  };
3052
3070
 
3053
3071
  // src/repositories/channel.ts
@@ -3520,7 +3538,7 @@ var ExtensionRepository = class extends AbstractResourceRepository {
3520
3538
  };
3521
3539
  return this.saveNew(context, resource);
3522
3540
  }
3523
- postProcessResource(resource) {
3541
+ postProcessResource(context, resource) {
3524
3542
  if (resource) {
3525
3543
  const extension = resource;
3526
3544
  if (extension.destination.type === "HTTP" && extension.destination.authentication?.type === "AuthorizationHeader") {
@@ -3767,6 +3785,9 @@ var OrderUpdateHandler = class extends AbstractUpdateHandler {
3767
3785
  setCustomerEmail(context, resource, { email }) {
3768
3786
  resource.customerEmail = email;
3769
3787
  }
3788
+ setCustomerId(context, resource, { customerId }) {
3789
+ resource.customerId = customerId;
3790
+ }
3770
3791
  setCustomField(context, resource, { name, value }) {
3771
3792
  if (!resource.custom) {
3772
3793
  throw new Error("Resource has no custom field");
@@ -5844,9 +5865,9 @@ var ProjectRepository = class extends AbstractRepository {
5844
5865
  }
5845
5866
  get(context) {
5846
5867
  const resource = this._storage.getProject(context.projectKey);
5847
- return this.postProcessResource(resource);
5868
+ return this.postProcessResource(context, resource);
5848
5869
  }
5849
- postProcessResource(resource) {
5870
+ postProcessResource(context, resource) {
5850
5871
  if (resource) {
5851
5872
  return maskSecretValue(resource, "externalOAuth.authorizationHeader");
5852
5873
  }