@unchainedshop/utils 2.0.0-beta7 → 2.0.0-beta9

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 (31) hide show
  1. package/jest.config.js +9 -0
  2. package/lib/db/build-db-indexes.js +1 -1
  3. package/lib/db/build-db-indexes.js.map +1 -1
  4. package/lib/db/generate-db-mutations.js +4 -7
  5. package/lib/db/generate-db-mutations.js.map +1 -1
  6. package/lib/director/BaseDiscountDirector.js +2 -2
  7. package/lib/director/BaseDiscountDirector.js.map +1 -1
  8. package/lib/director/BasePricingDirector.js +2 -2
  9. package/lib/director/BasePricingDirector.js.map +1 -1
  10. package/lib/schemas/AddressSchema.d.ts +2 -2
  11. package/lib/schemas/AddressSchema.js.map +1 -1
  12. package/lib/schemas/ContactSchema.d.ts +2 -2
  13. package/lib/schemas/ContactSchema.js.map +1 -1
  14. package/lib/schemas/UsersSchema.d.ts +4 -4
  15. package/lib/schemas/UsersSchema.js.map +1 -1
  16. package/lib/schemas/commonSchemaFields.d.ts +20 -36
  17. package/lib/schemas/commonSchemaFields.js +0 -3
  18. package/lib/schemas/commonSchemaFields.js.map +1 -1
  19. package/lib/utils-index.d.ts +0 -9
  20. package/package.json +8 -7
  21. package/src/db/build-db-indexes.ts +1 -1
  22. package/src/db/generate-db-mutations.ts +4 -7
  23. package/src/director/BaseDiscountDirector.ts +2 -2
  24. package/src/director/BasePricingDirector.ts +2 -2
  25. package/src/schemas/{AddressSchema.js → AddressSchema.ts} +0 -0
  26. package/src/schemas/{ContactSchema.js → ContactSchema.ts} +0 -0
  27. package/src/schemas/{UsersSchema.js → UsersSchema.ts} +0 -0
  28. package/src/schemas/{commonSchemaFields.js → commonSchemaFields.ts} +0 -3
  29. package/tests/utils-index.test.ts +153 -0
  30. package/tests/generate-db-mutations.test.js +0 -69
  31. package/tests/utils-index.test.js +0 -44
package/jest.config.js CHANGED
@@ -2,4 +2,13 @@
2
2
  export default {
3
3
  preset: 'ts-jest',
4
4
  testEnvironment: 'node',
5
+ extensionsToTreatAsEsm: ['.ts'],
6
+ transform: {
7
+ '^.+\\.tsx?$': [
8
+ 'ts-jest',
9
+ {
10
+ useESM: true,
11
+ },
12
+ ],
13
+ },
5
14
  };
@@ -5,7 +5,7 @@ const buildIndexes = (collection, indexes) => Promise.all(indexes.map(async ({ i
5
5
  return false;
6
6
  }
7
7
  catch (e) {
8
- console.error(e);
8
+ log(e, { level: LogLevel.Error });
9
9
  return e;
10
10
  }
11
11
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"build-db-indexes.js","sourceRoot":"","sources":["../../src/db/build-db-indexes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,YAAY,GAAG,CACnB,UAAyB,EACzB,OAAmB,EACY,EAAE,CACjC,OAAO,CAAC,GAAG,CACT,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IACvC,IAAI;QACF,MAAM,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC;KACd;IAAC,OAAO,CAAM,EAAE;QACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAU,CAAC;KACnB;AACH,CAAC,CAAC,CACH,CAAC;AAEJ,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,UAAyB,EACzB,OAAmB,EACnB,EAAE;IACF,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,WAAW,GAAG,CAAC,MAAM,YAAY,CAAI,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjF,IAAI,WAAW,CAAC,MAAM,EAAE;QACtB,QAAQ;QACR,sDAAsD;QACtD,gBAAgB;QAChB,UAAU;QACV,IAAI;QAEJ,oBAAoB;QACpB,MAAM,aAAa,GAAG,CAAC,MAAM,YAAY,CAAI,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnF,IAAI,aAAa,CAAC,MAAM,EAAE;YACxB,GAAG,CAAC,mCAAmC,UAAU,CAAC,cAAc,EAAE,EAAE;gBAClE,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,GAAG,aAAa;aACjB,CAAC,CAAC;YACH,OAAO,GAAG,KAAK,CAAC;SACjB;QACD,IAAI;KACL;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"build-db-indexes.js","sourceRoot":"","sources":["../../src/db/build-db-indexes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,YAAY,GAAG,CACnB,UAAyB,EACzB,OAAmB,EACY,EAAE,CACjC,OAAO,CAAC,GAAG,CACT,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IACvC,IAAI;QACF,MAAM,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC;KACd;IAAC,OAAO,CAAM,EAAE;QACf,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAClC,OAAO,CAAU,CAAC;KACnB;AACH,CAAC,CAAC,CACH,CAAC;AAEJ,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,UAAyB,EACzB,OAAmB,EACnB,EAAE;IACF,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,WAAW,GAAG,CAAC,MAAM,YAAY,CAAI,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjF,IAAI,WAAW,CAAC,MAAM,EAAE;QACtB,QAAQ;QACR,sDAAsD;QACtD,gBAAgB;QAChB,UAAU;QACV,IAAI;QAEJ,oBAAoB;QACpB,MAAM,aAAa,GAAG,CAAC,MAAM,YAAY,CAAI,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnF,IAAI,aAAa,CAAC,MAAM,EAAE;YACxB,GAAG,CAAC,mCAAmC,UAAU,CAAC,cAAc,EAAE,EAAE;gBAClE,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,GAAG,aAAa;aACjB,CAAC,CAAC;YACH,OAAO,GAAG,KAAK,CAAC;SACjB;QACD,IAAI;KACL;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
@@ -17,10 +17,9 @@ export const generateDbMutations = (collection, schema, options) => {
17
17
  return result.deletedCount;
18
18
  };
19
19
  return {
20
- create: async (doc, userId) => {
20
+ create: async (doc) => {
21
21
  const values = schema.clean(doc);
22
22
  values.created = new Date();
23
- values.createdBy = userId;
24
23
  schema.validate(values);
25
24
  values._id = doc._id || generateDbObjectId();
26
25
  const result = await collection.insertOne(values);
@@ -28,7 +27,7 @@ export const generateDbMutations = (collection, schema, options) => {
28
27
  },
29
28
  update: hasCreateOnly
30
29
  ? undefined
31
- : async (_id, doc, userId) => {
30
+ : async (_id, doc) => {
32
31
  checkId(_id);
33
32
  let modifier;
34
33
  if (doc?.$set) {
@@ -38,7 +37,6 @@ export const generateDbMutations = (collection, schema, options) => {
38
37
  $set: {
39
38
  ...(values.$set || {}),
40
39
  updated: new Date(),
41
- updatedBy: userId,
42
40
  },
43
41
  };
44
42
  }
@@ -48,7 +46,6 @@ export const generateDbMutations = (collection, schema, options) => {
48
46
  $set: {
49
47
  ...values,
50
48
  updated: new Date(),
51
- updatedBy: userId,
52
49
  },
53
50
  };
54
51
  }
@@ -60,13 +57,13 @@ export const generateDbMutations = (collection, schema, options) => {
60
57
  deletePermanently: hasCreateOnly ? undefined : deletePermanently,
61
58
  delete: hasCreateOnly
62
59
  ? undefined
63
- : async (_id, userId) => {
60
+ : async (_id) => {
64
61
  if (permanentlyDeleteByDefault) {
65
62
  return deletePermanently(_id);
66
63
  }
67
64
  checkId(_id);
68
65
  const filter = generateDbFilterById(_id, { deleted: null });
69
- const modifier = { $set: { deleted: new Date(), deletedBy: userId } };
66
+ const modifier = { $set: { deleted: new Date() } };
70
67
  const values = schema.clean(modifier, { isModifier: true });
71
68
  const result = await collection.updateOne(filter, values);
72
69
  return result.modifiedCount;
@@ -1 +1 @@
1
- {"version":3,"file":"generate-db-mutations.js","sourceRoot":"","sources":["../../src/db/generate-db-mutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-db-mutations.js","sourceRoot":"","sources":["../../src/db/generate-db-mutations.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,UAAyB,EACzB,MAAoB,EACpB,OAGC,EAC6C,EAAE;IAChD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAElD,MAAM,EAAE,aAAa,EAAE,0BAA0B,EAAE,GAAG,OAAO,IAAI;QAC/D,aAAa,EAAE,KAAK;QACpB,0BAA0B,EAAE,KAAK;KAClC,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE;QACtC,OAAO,CAAC,GAAG,CAAC,CAAC;QACb,MAAM,MAAM,GAAG,oBAAoB,CAAI,GAAG,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,YAAY,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACpB,MAAM,MAAM,GAAQ,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxB,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,kBAAkB,EAAE,CAAC;YAE7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC,UAAoB,CAAC;QACrC,CAAC;QAED,MAAM,EAAE,aAAa;YACnB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBACjB,OAAO,CAAC,GAAG,CAAC,CAAC;gBAEb,IAAI,QAAmB,CAAC;gBAExB,IAAK,GAAiB,EAAE,IAAI,EAAE;oBAC5B,MAAM,MAAM,GAAQ,MAAM,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;oBACnE,QAAQ,GAAG;wBACT,GAAG,MAAM;wBACT,IAAI,EAAE;4BACJ,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;4BACtB,OAAO,EAAE,IAAI,IAAI,EAAE;yBACpB;qBACF,CAAC;iBACH;qBAAM;oBACL,MAAM,MAAM,GAAQ,MAAM,CAAC,KAAK,CAAC,GAAU,CAAC,CAAC;oBAC7C,QAAQ,GAAG;wBACT,IAAI,EAAE;4BACJ,GAAG,MAAM;4BACT,OAAO,EAAE,IAAI,IAAI,EAAE;yBACpB;qBACF,CAAC;iBACH;gBAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9C,MAAM,MAAM,GAAG,oBAAoB,CAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/D,MAAM,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAE7C,OAAO,GAAG,CAAC;YACb,CAAC;QAEL,iBAAiB,EAAE,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB;QAEhE,MAAM,EAAE,aAAa;YACnB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACZ,IAAI,0BAA0B,EAAE;oBAC9B,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC;iBAC/B;gBACD,OAAO,CAAC,GAAG,CAAC,CAAC;gBACb,MAAM,MAAM,GAAG,oBAAoB,CAAI,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/D,MAAM,QAAQ,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;gBACnD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAE1D,OAAO,MAAM,CAAC,aAAa,CAAC;YAC9B,CAAC;KACN,CAAC;AACJ,CAAC,CAAC"}
@@ -6,8 +6,8 @@ export const BaseDiscountDirector = (directorName) => {
6
6
  });
7
7
  return {
8
8
  ...baseDirector,
9
- actions: async (discountContext, requestContext) => {
10
- const context = { ...discountContext, ...requestContext };
9
+ actions: async (discountContext, unchainedAPI) => {
10
+ const context = { ...discountContext, ...unchainedAPI };
11
11
  return {
12
12
  resolveDiscountKeyFromStaticCode: async (options) => {
13
13
  if (!context.order)
@@ -1 +1 @@
1
- {"version":3,"file":"BaseDiscountDirector.js","sourceRoot":"","sources":["../../src/director/BaseDiscountDirector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAAoB,EAAqB,EAAE;IAC9E,MAAM,YAAY,GAAG,YAAY,CAAmB,YAAY,EAAE;QAChE,cAAc,EAAE,YAAY;KAC7B,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,YAAY;QAEf,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE;YACjD,MAAM,OAAO,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,cAAc,EAAE,CAAC;YAE1D,OAAO;gBACL,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAClD,IAAI,CAAC,OAAO,CAAC,KAAK;wBAAE,OAAO,IAAI,CAAC;oBAEhC,GAAG,CAAC,0DAA0D,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE/E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,YAAY;yBACT,WAAW,EAAE;yBACb,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;yBACnE,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBACrB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBACnD,OAAO;4BACL,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,OAAO,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC;yBACzD,CAAC;oBACJ,CAAC,CAAC,CACL,CAAC;oBAEF,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC;gBAChE,CAAC;gBAED,KAAK,CAAC,mBAAmB;oBACvB,IAAI,CAAC,OAAO,CAAC,KAAK;wBAAE,OAAO,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,YAAY,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAC/C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBACnD,OAAO;4BACL,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,OAAO,EAAE,MAAM,OAAO,CAAC,0BAA0B,EAAE;yBACpD,CAAC;oBACJ,CAAC,CAAC,CACH,CAAC;oBAEF,MAAM,cAAc,GAAG,SAAS;yBAC7B,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC;yBACzC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;oBAEzB,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC7B,GAAG,CAAC,6BAA6B,cAAc,CAAC,MAAM,mBAAmB,CAAC,CAAC;qBAC5E;oBACD,OAAO,cAAc,CAAC;gBACxB,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"BaseDiscountDirector.js","sourceRoot":"","sources":["../../src/director/BaseDiscountDirector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAAoB,EAAqB,EAAE;IAC9E,MAAM,YAAY,GAAG,YAAY,CAAmB,YAAY,EAAE;QAChE,cAAc,EAAE,YAAY;KAC7B,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,YAAY;QAEf,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,EAAE;YAC/C,MAAM,OAAO,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,YAAY,EAAE,CAAC;YAExD,OAAO;gBACL,gCAAgC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAClD,IAAI,CAAC,OAAO,CAAC,KAAK;wBAAE,OAAO,IAAI,CAAC;oBAEhC,GAAG,CAAC,0DAA0D,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE/E,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,YAAY;yBACT,WAAW,EAAE;yBACb,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;yBACnE,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBACrB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBACnD,OAAO;4BACL,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,OAAO,EAAE,MAAM,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC;yBACzD,CAAC;oBACJ,CAAC,CAAC,CACL,CAAC;oBAEF,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC;gBAChE,CAAC;gBAED,KAAK,CAAC,mBAAmB;oBACvB,IAAI,CAAC,OAAO,CAAC,KAAK;wBAAE,OAAO,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,YAAY,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAC/C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;wBACnD,OAAO;4BACL,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,OAAO,EAAE,MAAM,OAAO,CAAC,0BAA0B,EAAE;yBACpD,CAAC;oBACJ,CAAC,CAAC,CACH,CAAC;oBAEF,MAAM,cAAc,GAAG,SAAS;yBAC7B,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC;yBACzC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;oBAEzB,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC7B,GAAG,CAAC,6BAA6B,cAAc,CAAC,MAAM,mBAAmB,CAAC,CAAC;qBAC5E;oBACD,OAAO,cAAc,CAAC;gBACxB,CAAC;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -9,8 +9,8 @@ export const BasePricingDirector = (directorName) => {
9
9
  buildPricingContext: async () => {
10
10
  return {};
11
11
  },
12
- actions: async (pricingContext, requestContext, buildPricingContext) => {
13
- const context = await buildPricingContext(pricingContext, requestContext);
12
+ actions: async (pricingContext, unchainedAPI, buildPricingContext) => {
13
+ const context = await buildPricingContext(pricingContext, unchainedAPI);
14
14
  let calculation = [];
15
15
  const actions = {
16
16
  async calculate() {
@@ -1 +1 @@
1
- {"version":3,"file":"BasePricingDirector.js","sourceRoot":"","sources":["../../src/director/BasePricingDirector.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAMjC,YAAoB,EAOpB,EAAE;IACF,MAAM,YAAY,GAAG,YAAY,CAAiB,YAAY,EAAE;QAC9D,cAAc,EAAE,YAAY;KAC7B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAMV;QACF,GAAG,YAAY;QACf,mBAAmB,EAAE,KAAK,IAAI,EAAE;YAC9B,OAAO,EAAoB,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,EAAE;YACrE,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAE1E,IAAI,WAAW,GAAuB,EAAE,CAAC;YAEzC,MAAM,OAAO,GAAwD;gBACnE,KAAK,CAAC,SAAS;oBACb,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC;wBACxC,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE;4BACzB,OAAO,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBACzC,CAAC;qBACF,CAAC,CAAC;oBAEH,WAAW,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE;wBACrE,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC;wBAClD,IAAI,CAAC,mBAAmB;4BAAE,OAAO,IAAI,CAAC;wBAEtC,MAAM,SAAS,GAAoB,MAAM,OAAO,CAAC,GAAG,CAClD,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;4BACzC,UAAU,EAAE,QAAQ,CAAC,GAAG;4BACxB,aAAa,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,iCAAiC,CACrF,QAAQ,EACR,OAAO,CAAC,GAAG,EACX,IAAI,CAAC,gBAAgB,EAAE,EACvB,OAAO,CACR;yBACF,CAAC,CAAC,CACJ,CAAC;wBAEF,IAAI;4BACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gCAC9B,OAAO;gCACP,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;gCACzC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC;6BAC3E,CAAC,CAAC;4BAEH,MAAM,qBAAqB,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;4BACxD,IAAI,CAAC,qBAAqB;gCAAE,OAAO,IAAI,CAAC;4BACxC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;4BAChE,OAAO,WAAW,CAAC;yBACpB;wBAAC,OAAO,KAAK,EAAE;4BACd,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;yBACvC;wBACD,OAAO,mBAAmB,CAAC;oBAC7B,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;oBAExB,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,cAAc;oBACZ,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,UAAU;oBACR,OAAO,OAAO,CAAC;gBACjB,CAAC;aACF,CAAC;YAEF,OAAO,OAEN,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"BasePricingDirector.js","sourceRoot":"","sources":["../../src/director/BasePricingDirector.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAMjC,YAAoB,EAOpB,EAAE;IACF,MAAM,YAAY,GAAG,YAAY,CAAiB,YAAY,EAAE;QAC9D,cAAc,EAAE,YAAY;KAC7B,CAAC,CAAC;IAEH,MAAM,QAAQ,GAMV;QACF,GAAG,YAAY;QACf,mBAAmB,EAAE,KAAK,IAAI,EAAE;YAC9B,OAAO,EAAoB,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,mBAAmB,EAAE,EAAE;YACnE,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;YAExE,IAAI,WAAW,GAAuB,EAAE,CAAC;YAEzC,MAAM,OAAO,GAAwD;gBACnE,KAAK,CAAC,SAAS;oBACb,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC;wBACxC,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE;4BACzB,OAAO,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBACzC,CAAC;qBACF,CAAC,CAAC;oBAEH,WAAW,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE;wBACrE,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC;wBAClD,IAAI,CAAC,mBAAmB;4BAAE,OAAO,IAAI,CAAC;wBAEtC,MAAM,SAAS,GAAoB,MAAM,OAAO,CAAC,GAAG,CAClD,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;4BACzC,UAAU,EAAE,QAAQ,CAAC,GAAG;4BACxB,aAAa,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,iCAAiC,CACrF,QAAQ,EACR,OAAO,CAAC,GAAG,EACX,IAAI,CAAC,gBAAgB,EAAE,EACvB,OAAO,CACR;yBACF,CAAC,CAAC,CACJ,CAAC;wBAEF,IAAI;4BACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gCAC9B,OAAO;gCACP,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;gCACzC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC;6BAC3E,CAAC,CAAC;4BAEH,MAAM,qBAAqB,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;4BACxD,IAAI,CAAC,qBAAqB;gCAAE,OAAO,IAAI,CAAC;4BACxC,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;4BAChE,OAAO,WAAW,CAAC;yBACpB;wBAAC,OAAO,KAAK,EAAE;4BACd,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;yBACvC;wBACD,OAAO,mBAAmB,CAAC;oBAC7B,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;oBAExB,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,cAAc;oBACZ,OAAO,WAAW,CAAC;gBACrB,CAAC;gBACD,UAAU;oBACR,OAAO,OAAO,CAAC;gBACjB,CAAC;aACF,CAAC;YAEF,OAAO,OAEN,CAAC;QACJ,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export const AddressSchema: SimpleSchema;
2
- import SimpleSchema from "simpl-schema";
1
+ import SimpleSchema from 'simpl-schema';
2
+ export declare const AddressSchema: SimpleSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"AddressSchema.js","sourceRoot":"","sources":["../../src/schemas/AddressSchema.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,YAAY,CAC3C;IACE,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,MAAM;IACnB,YAAY,EAAE,MAAM;IACpB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,MAAM;CACpB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
1
+ {"version":3,"file":"AddressSchema.js","sourceRoot":"","sources":["../../src/schemas/AddressSchema.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,YAAY,CAC3C;IACE,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,MAAM;IACnB,YAAY,EAAE,MAAM;IACpB,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE,MAAM;IAClB,WAAW,EAAE,MAAM;CACpB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
@@ -1,2 +1,2 @@
1
- export const ContactSchema: SimpleSchema;
2
- import SimpleSchema from "simpl-schema";
1
+ import SimpleSchema from 'simpl-schema';
2
+ export declare const ContactSchema: SimpleSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"ContactSchema.js","sourceRoot":"","sources":["../../src/schemas/ContactSchema.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,YAAY,CAC3C;IACE,SAAS,EAAE,MAAM;IACjB,YAAY,EAAE,MAAM;CACrB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
1
+ {"version":3,"file":"ContactSchema.js","sourceRoot":"","sources":["../../src/schemas/ContactSchema.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,YAAY,CAC3C;IACE,SAAS,EAAE,MAAM;IACjB,YAAY,EAAE,MAAM;CACrB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
@@ -1,4 +1,4 @@
1
- export const LastLoginSchema: SimpleSchema;
2
- export const LastContactSchema: SimpleSchema;
3
- export const UserSchema: SimpleSchema;
4
- import SimpleSchema from "simpl-schema";
1
+ import SimpleSchema from 'simpl-schema';
2
+ export declare const LastLoginSchema: SimpleSchema;
3
+ export declare const LastContactSchema: SimpleSchema;
4
+ export declare const UserSchema: SimpleSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"UsersSchema.js","sourceRoot":"","sources":["../../src/schemas/UsersSchema.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,aAAa,GAAG,IAAI,YAAY,CACpC;IACE,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,MAAM;IACnB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,aAAa;CACvB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,YAAY,CAC7C;IACE,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,MAAM;IACd,cAAc,EAAE,MAAM;IACtB,aAAa,EAAE,MAAM;IACrB,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE,MAAM;CAClB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,YAAY,CAC/C;IACE,SAAS,EAAE,MAAM;IACjB,YAAY,EAAE,MAAM;CACrB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,YAAY,CACxC;IACE,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,MAAM;IAClB,kBAAkB,EAAE,MAAM;IAC1B,mBAAmB,EAAE,OAAO;IAC5B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,eAAe;IAC1B,OAAO,EAAE,aAAa;IACtB,kBAAkB,EAAE,aAAa;IACjC,WAAW,EAAE,iBAAiB;IAC9B,KAAK,EAAE,OAAO;IACd,eAAe,EAAE,OAAO;IACxB,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;IACD,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,MAAM;IACjB,GAAG,eAAe;CACnB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
1
+ {"version":3,"file":"UsersSchema.js","sourceRoot":"","sources":["../../src/schemas/UsersSchema.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,aAAa,GAAG,IAAI,YAAY,CACpC;IACE,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,MAAM;IACnB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,aAAa;CACvB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,YAAY,CAC7C;IACE,SAAS,EAAE,IAAI;IACf,MAAM,EAAE,MAAM;IACd,cAAc,EAAE,MAAM;IACtB,aAAa,EAAE,MAAM;IACrB,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE,MAAM;CAClB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,YAAY,CAC/C;IACE,SAAS,EAAE,MAAM;IACjB,YAAY,EAAE,MAAM;CACrB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,YAAY,CACxC;IACE,MAAM,EAAE,KAAK;IACb,UAAU,EAAE,MAAM;IAClB,kBAAkB,EAAE,MAAM;IAC1B,mBAAmB,EAAE,OAAO;IAC5B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,eAAe;IAC1B,OAAO,EAAE,aAAa;IACtB,kBAAkB,EAAE,aAAa;IACjC,WAAW,EAAE,iBAAiB;IAC9B,KAAK,EAAE,OAAO;IACd,eAAe,EAAE,OAAO;IACxB,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,IAAI;KACf;IACD,KAAK,EAAE,KAAK;IACZ,SAAS,EAAE,MAAM;IACjB,GAAG,eAAe;CACnB,EACD,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CAAC"}
@@ -1,11 +1,11 @@
1
- export namespace contextFields {
2
- namespace context {
3
- const type: ObjectConstructor;
4
- const blackbox: boolean;
5
- const required: boolean;
6
- }
7
- }
8
- export const logFields: {
1
+ export declare const contextFields: {
2
+ context: {
3
+ type: ObjectConstructor;
4
+ blackbox: boolean;
5
+ required: boolean;
6
+ };
7
+ };
8
+ export declare const logFields: {
9
9
  log: ArrayConstructor;
10
10
  'log.$': {
11
11
  type: ObjectConstructor;
@@ -20,31 +20,15 @@ export const logFields: {
20
20
  type: StringConstructor;
21
21
  };
22
22
  };
23
- export namespace timestampFields {
24
- namespace created {
25
- const type_1: DateConstructor;
26
- export { type_1 as type };
27
- const required_1: boolean;
28
- export { required_1 as required };
29
- }
30
- namespace createdBy {
31
- const type_2: StringConstructor;
32
- export { type_2 as type };
33
- }
34
- namespace updated {
35
- const type_3: DateConstructor;
36
- export { type_3 as type };
37
- }
38
- namespace updatedBy {
39
- const type_4: StringConstructor;
40
- export { type_4 as type };
41
- }
42
- namespace deleted {
43
- const type_5: DateConstructor;
44
- export { type_5 as type };
45
- }
46
- namespace deletedBy {
47
- const type_6: StringConstructor;
48
- export { type_6 as type };
49
- }
50
- }
23
+ export declare const timestampFields: {
24
+ created: {
25
+ type: DateConstructor;
26
+ required: boolean;
27
+ };
28
+ updated: {
29
+ type: DateConstructor;
30
+ };
31
+ deleted: {
32
+ type: DateConstructor;
33
+ };
34
+ };
@@ -22,10 +22,7 @@ export const logFields = {
22
22
  };
23
23
  export const timestampFields = {
24
24
  created: { type: Date, required: true },
25
- createdBy: { type: String },
26
25
  updated: { type: Date },
27
- updatedBy: { type: String },
28
26
  deleted: { type: Date },
29
- deletedBy: { type: String },
30
27
  };
31
28
  //# sourceMappingURL=commonSchemaFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"commonSchemaFields.js","sourceRoot":"","sources":["../../src/schemas/commonSchemaFields.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;KACb;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,IAAI;KACX;IACD,cAAc,EAAE;QACd,IAAI,EAAE,MAAM;KACb;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM;KACb;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACvC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC3B,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IACvB,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;IAC3B,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IACvB,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;CAC5B,CAAC"}
1
+ {"version":3,"file":"commonSchemaFields.js","sourceRoot":"","sources":["../../src/schemas/commonSchemaFields.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,GAAG,EAAE,KAAK;IACV,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;KACb;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,IAAI;KACX;IACD,cAAc,EAAE;QACd,IAAI,EAAE,MAAM;KACb;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,MAAM;KACb;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;IACvC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IACvB,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;CACxB,CAAC"}
@@ -19,21 +19,12 @@ declare const Schemas: {
19
19
  type: DateConstructor;
20
20
  required: boolean;
21
21
  };
22
- createdBy: {
23
- type: StringConstructor;
24
- };
25
22
  updated: {
26
23
  type: DateConstructor;
27
24
  };
28
- updatedBy: {
29
- type: StringConstructor;
30
- };
31
25
  deleted: {
32
26
  type: DateConstructor;
33
27
  };
34
- deletedBy: {
35
- type: StringConstructor;
36
- };
37
28
  };
38
29
  contextFields: {
39
30
  context: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/utils",
3
- "version": "2.0.0-beta7",
3
+ "version": "2.0.0-beta9",
4
4
  "main": "lib/utils-index.js",
5
5
  "exports": {
6
6
  ".": "./lib/utils-index.js",
@@ -12,7 +12,8 @@
12
12
  "clean": "rm -rf lib",
13
13
  "build": "npm run clean && tsc",
14
14
  "watch": "tsc -w",
15
- "test": "jest --watch"
15
+ "test": "NODE_OPTIONS=--experimental-vm-modules jest --detectOpenHandles --forceExit",
16
+ "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch --detectOpenHandles --forceExit"
16
17
  },
17
18
  "repository": {
18
19
  "type": "git",
@@ -29,18 +30,18 @@
29
30
  },
30
31
  "homepage": "https://github.com/unchainedshop/unchained#readme",
31
32
  "dependencies": {
32
- "@unchainedshop/logger": "^2.0.0-beta7",
33
+ "@unchainedshop/logger": "^2.0.0-beta9",
33
34
  "abort-controller": "3.0.0",
34
35
  "bson": "^4.7.0",
35
36
  "hashids": "^2.2.10",
36
37
  "jest": "^29.3.1",
37
38
  "locale": "0.1.0",
38
39
  "lru-cache": "^7.14.1",
39
- "simpl-schema": "^3.0.1"
40
+ "simpl-schema": "^3.2.0"
40
41
  },
41
42
  "devDependencies": {
42
- "@types/node": "^18.11.9",
43
- "@unchainedshop/types": "^2.0.0-beta7",
44
- "typescript": "^4.8.4"
43
+ "@types/node": "^18.11.12",
44
+ "@unchainedshop/types": "^2.0.0-beta9",
45
+ "typescript": "^4.9.4"
45
46
  }
46
47
  }
@@ -11,7 +11,7 @@ const buildIndexes = <T>(
11
11
  await collection.createIndex(index, options);
12
12
  return false;
13
13
  } catch (e: any) {
14
- console.error(e);
14
+ log(e, { level: LogLevel.Error });
15
15
  return e as Error;
16
16
  }
17
17
  }),
@@ -30,10 +30,9 @@ export const generateDbMutations = <T extends TimestampFields & { _id?: _ID }>(
30
30
  };
31
31
 
32
32
  return {
33
- create: async (doc, userId) => {
33
+ create: async (doc) => {
34
34
  const values: any = schema.clean(doc);
35
35
  values.created = new Date();
36
- values.createdBy = userId;
37
36
  schema.validate(values);
38
37
  values._id = doc._id || generateDbObjectId();
39
38
 
@@ -43,7 +42,7 @@ export const generateDbMutations = <T extends TimestampFields & { _id?: _ID }>(
43
42
 
44
43
  update: hasCreateOnly
45
44
  ? undefined
46
- : async (_id, doc, userId) => {
45
+ : async (_id, doc) => {
47
46
  checkId(_id);
48
47
 
49
48
  let modifier: Update<T>;
@@ -55,7 +54,6 @@ export const generateDbMutations = <T extends TimestampFields & { _id?: _ID }>(
55
54
  $set: {
56
55
  ...(values.$set || {}),
57
56
  updated: new Date(),
58
- updatedBy: userId,
59
57
  },
60
58
  };
61
59
  } else {
@@ -64,7 +62,6 @@ export const generateDbMutations = <T extends TimestampFields & { _id?: _ID }>(
64
62
  $set: {
65
63
  ...values,
66
64
  updated: new Date(),
67
- updatedBy: userId,
68
65
  },
69
66
  };
70
67
  }
@@ -80,13 +77,13 @@ export const generateDbMutations = <T extends TimestampFields & { _id?: _ID }>(
80
77
 
81
78
  delete: hasCreateOnly
82
79
  ? undefined
83
- : async (_id, userId) => {
80
+ : async (_id) => {
84
81
  if (permanentlyDeleteByDefault) {
85
82
  return deletePermanently(_id);
86
83
  }
87
84
  checkId(_id);
88
85
  const filter = generateDbFilterById<T>(_id, { deleted: null });
89
- const modifier = { $set: { deleted: new Date(), deletedBy: userId } };
86
+ const modifier = { $set: { deleted: new Date() } };
90
87
  const values = schema.clean(modifier, { isModifier: true });
91
88
  const result = await collection.updateOne(filter, values);
92
89
 
@@ -10,8 +10,8 @@ export const BaseDiscountDirector = (directorName: string): IDiscountDirector =>
10
10
  return {
11
11
  ...baseDirector,
12
12
 
13
- actions: async (discountContext, requestContext) => {
14
- const context = { ...discountContext, ...requestContext };
13
+ actions: async (discountContext, unchainedAPI) => {
14
+ const context = { ...discountContext, ...unchainedAPI };
15
15
 
16
16
  return {
17
17
  resolveDiscountKeyFromStaticCode: async (options) => {
@@ -40,8 +40,8 @@ export const BasePricingDirector = <
40
40
  buildPricingContext: async () => {
41
41
  return {} as AdapterContext;
42
42
  },
43
- actions: async (pricingContext, requestContext, buildPricingContext) => {
44
- const context = await buildPricingContext(pricingContext, requestContext);
43
+ actions: async (pricingContext, unchainedAPI, buildPricingContext) => {
44
+ const context = await buildPricingContext(pricingContext, unchainedAPI);
45
45
 
46
46
  let calculation: Array<Calculation> = [];
47
47
 
File without changes
@@ -24,9 +24,6 @@ export const logFields = {
24
24
 
25
25
  export const timestampFields = {
26
26
  created: { type: Date, required: true },
27
- createdBy: { type: String }, // Logically it is required but for backwards compatibility it's set to optional
28
27
  updated: { type: Date },
29
- updatedBy: { type: String },
30
28
  deleted: { type: Date },
31
- deletedBy: { type: String },
32
29
  };
@@ -0,0 +1,153 @@
1
+
2
+ import { SortDirection } from '@unchainedshop/types/api';
3
+ import {
4
+ buildSortOptions,
5
+ checkId,
6
+ findLocalizedText,
7
+ findPreservingIds,
8
+ findUnusedSlug,
9
+ generateDbFilterById,
10
+ generateDbMutations,
11
+ generateDbObjectId,
12
+ generateRandomHash,
13
+ objectInvert,
14
+ pipePromises,
15
+ resolveBestCountry,
16
+ resolveBestSupported,
17
+ resolveUserRemoteAddress,
18
+
19
+ slugify,
20
+ systemLocale,
21
+ } from '@unchainedshop/utils';
22
+ import generateHashId from '../src/generate-random-hash'
23
+
24
+ describe('Utils', () => {
25
+
26
+ it('Locale', () => {
27
+ expect(systemLocale).toBeDefined();
28
+ expect(resolveBestCountry).toBeInstanceOf(Function)
29
+ expect(resolveBestSupported).toBeInstanceOf(Function)
30
+ expect(resolveUserRemoteAddress).toBeInstanceOf(Function)
31
+ });
32
+ it('functions', () => {
33
+
34
+ expect(findLocalizedText).toBeInstanceOf(Function)
35
+ expect(objectInvert).toBeInstanceOf(Function)
36
+ expect(findPreservingIds).toBeInstanceOf(Function)
37
+ expect(findUnusedSlug).toBeInstanceOf(Function)
38
+ expect(slugify).toBeInstanceOf(Function)
39
+ expect(pipePromises).toBeInstanceOf(Function)
40
+ expect(generateDbFilterById).toBeInstanceOf(Function)
41
+ expect(generateRandomHash).toBeInstanceOf(Function)
42
+ expect(generateDbMutations).toBeInstanceOf(Function)
43
+ });
44
+
45
+ describe('buildSortOptions', () => {
46
+ it('should return the correct db sort format', () => {
47
+ const sort = [ { key: 'name', value: SortDirection.ASC }, { key: 'age', value: SortDirection.DESC }, ];
48
+ expect(buildSortOptions(sort)).toEqual({ name: 1, age: -1 });
49
+ })
50
+
51
+ });
52
+
53
+ describe('checkId', () => {
54
+ it('with a string value', () => {
55
+ const value = '12345';
56
+ const error = { message: 'Invalid id' };
57
+
58
+ expect(() => checkId(value, error)).not.toThrow();
59
+ });
60
+
61
+ it('with a non-string value', () => {
62
+ const value: any = 12345;
63
+ const error = { message: 'Invalid id' };
64
+
65
+ expect(() => checkId(value, error)).toThrow('Invalid id');
66
+ });
67
+
68
+ it('with a different error object', () => {
69
+ const value:any = 12345;
70
+ const error = { message: 'Invalid id', path: 'name' };
71
+
72
+ expect(() => checkId(value, error)).toThrow('Invalid id');
73
+ });
74
+
75
+ it('without an error object', () => {
76
+ const value: any = 12345;
77
+
78
+ expect(() => checkId(value)).toThrow();
79
+ });
80
+
81
+ });
82
+ describe('generateDbObjectId', () => {
83
+ it('generateDbObjectId with default digits', () => {
84
+ const result = generateDbObjectId();
85
+ expect(typeof result).toBe('string');
86
+ expect(result.length).toBe(24);
87
+ });
88
+
89
+ it('generateDbObjectId with odd digits', () => {
90
+ const result = generateDbObjectId(23);
91
+ expect(typeof result).toBe('string');
92
+ expect(result.length).toBe(23);
93
+ });
94
+
95
+ it('generateDbObjectId with even digits', () => {
96
+ const result = generateDbObjectId(24);
97
+ expect(typeof result).toBe('string');
98
+ expect(result.length).toBe(24);
99
+ });
100
+
101
+ })
102
+
103
+ describe('generateHashId', () => {
104
+ it('should create a random hash ', () => {
105
+ const result = generateHashId();
106
+
107
+ expect(typeof result).toBe('string');
108
+ expect(result).toMatch(/^[A-Z0-9]+$/);
109
+ })
110
+ });
111
+
112
+ describe('slugify', () => {
113
+ it('with a normal string', () => {
114
+ const text = 'The Quick Brown Fox Jumps Over The Lazy Dog';
115
+ const expected = 'the-quick-brown-fox-jumps-over-the-lazy-dog';
116
+
117
+ const result = slugify(text);
118
+
119
+ expect(result).toEqual(expected);
120
+ });
121
+
122
+ it('with a string containing special characters', () => {
123
+ const text = 'The Quick Brown Fox! Jumps Over The Lazy Dog?';
124
+ const expected = 'the-quick-brown-fox-jumps-over-the-lazy-dog';
125
+
126
+ const result = slugify(text);
127
+
128
+ expect(result).toEqual(expected);
129
+ });
130
+
131
+ it('with a string containing multiple spaces', () => {
132
+ const text = 'The Quick Brown Fox Jumps Over The Lazy Dog';
133
+ const expected = 'the-quick-brown-fox-jumps-over-the-lazy-dog';
134
+
135
+ const result = slugify(text);
136
+
137
+ expect(result).toEqual(expected);
138
+ });
139
+
140
+ it('with a string containing only special characters (leave underscore)', () => {
141
+ const text = '!@#$%^&*()_+';
142
+ const expected = '_';
143
+
144
+ const result = slugify(text);
145
+
146
+ expect(result).toEqual(expected);
147
+ });
148
+
149
+ })
150
+
151
+ });
152
+
153
+
@@ -1,69 +0,0 @@
1
- import { assert } from 'chai';
2
- import { generateDbMutations, Schemas } from '@unchainedshop/utils';
3
- import SimpleSchema from 'simpl-schema';
4
- import { ObjectId } from 'bson';
5
-
6
- const testUserId = 'user-1234';
7
-
8
- const testSchema = new SimpleSchema({
9
- name: String,
10
- email: { type: String, optional: true },
11
- users: { type: Array, defaultValue: [] },
12
- 'users.$': String,
13
- ...Schemas.timestampFields,
14
- }, { requiredByDefault: false });
15
-
16
- const testCollection = {
17
- insertOne: () =>
18
- new Promise((resolve) =>
19
- resolve({ insertedId: new ObjectId('qwerASFF1234') })
20
- ),
21
- updateOne: () => new Promise((resolve) => resolve(null)),
22
- deleteOne: () => new Promise((resolve) => resolve({ deletedCount: 1 })),
23
- };
24
-
25
- describe('Test generate DB mutations', () => {
26
- let mutations;
27
- let docId;
28
-
29
- it('Create mutations', () => {
30
- mutations = generateDbMutations(testCollection, testSchema);
31
-
32
- assert.ok(mutations);
33
- assert.isDefined(mutations.create);
34
- assert.isDefined(mutations.update);
35
- assert.isDefined(mutations.delete);
36
- });
37
- it('Run insert mutation', async () => {
38
- docId = await mutations.create({ name: 'Test name' }, testUserId);
39
- assert.isDefined(docId);
40
-
41
- await mutations
42
- .create({ email: 'test.email@unchained.shop' }, testUserId)
43
- .catch((error) => {
44
- const errorDetails = error.details[0];
45
- assert.equal(error.error, 'validation-error');
46
- assert.equal(errorDetails.name, 'name');
47
- assert.equal(errorDetails.message, 'Name is required');
48
- });
49
- });
50
- it('Run update mutation', async () => {
51
- let result = await mutations.update(
52
- docId,
53
- { $set: { email: 'test.email@unchained.shop' } },
54
- testUserId
55
- );
56
- assert.isUndefined(result);
57
-
58
- result = await mutations.update(
59
- docId,
60
- { $push: { users: 'Abc-123' } },
61
- testUserId
62
- );
63
- assert.isUndefined(result);
64
- });
65
- it('Run delete mutation', async () => {
66
- const deletedDocs = await mutations.delete(docId, testUserId);
67
- assert.equal(deletedDocs, 1);
68
- });
69
- });
@@ -1,44 +0,0 @@
1
- import { assert } from 'chai';
2
- import {
3
- findLocalizedText,
4
- findPreservingIds,
5
- findUnusedSlug,
6
- generateDbFilterById,
7
- generateDbMutations,
8
- generateRandomHash,
9
- objectInvert,
10
- pipePromises,
11
- resolveBestCountry,
12
- resolveBestSupported,
13
- resolveUserRemoteAddress,
14
- Schemas,
15
- slugify,
16
- systemLocale,
17
- } from '@unchainedshop/utils';
18
- import './generate-db-mutations.test';
19
-
20
- describe('Test exports', () => {
21
- it('Schemas', () => {
22
- assert.isDefined(Schemas);
23
-
24
- assert.isDefined(Schemas.Address);
25
- assert.isDefined(Schemas.Contact);
26
- });
27
- it('Locale', () => {
28
- assert.isDefined(systemLocale);
29
- assert.isFunction(resolveBestCountry);
30
- assert.isFunction(resolveBestSupported);
31
- assert.isFunction(resolveUserRemoteAddress);
32
- });
33
- it('Utils', () => {
34
- assert.isFunction(findLocalizedText);
35
- assert.isFunction(objectInvert);
36
- assert.isFunction(findPreservingIds);
37
- assert.isFunction(findUnusedSlug);
38
- assert.isFunction(slugify);
39
- assert.isFunction(pipePromises);
40
- assert.isFunction(generateDbFilterById);
41
- assert.isFunction(generateRandomHash);
42
- assert.isFunction(generateDbMutations);
43
- });
44
- });