@restorecommerce/resource-base-interface 1.2.1 → 1.2.2

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/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ### 1.2.2 (July 13th, 2023)
2
+
3
+ - support nested buffer fields and also multiple bufferfields per entity, dateTime stamp field handlers
4
+ - updated depeendencies
5
+
1
6
  ### 1.2.1 (June 19th, 2023)
2
7
 
3
8
  - extended resource base to support for nested buffer fields
@@ -11,9 +11,9 @@ export declare class ResourcesAPIBase {
11
11
  private collectionName;
12
12
  private edgeCfg?;
13
13
  private graphName?;
14
- bufferField: string;
14
+ bufferFields: string[];
15
15
  requiredFields: any;
16
- dateTimeField: string[];
16
+ timeStampFields: string[];
17
17
  resourceName: string;
18
18
  logger: any;
19
19
  /**
@@ -69,7 +69,5 @@ export declare class ResourcesAPIBase {
69
69
  * A list of documents or partial documents. Each document must contain an id field.
70
70
  */
71
71
  update(documents: BaseDocument[]): Promise<BaseDocument[]>;
72
- private convertSecondsNanosToms;
73
- private convertmsToSecondsNanos;
74
- private updateJSON;
72
+ private encodeOrDecode;
75
73
  }
@@ -46,7 +46,6 @@ const setDefaults = async (obj, collectionName) => {
46
46
  if (_.isEmpty(o.meta)) {
47
47
  throw new chassis_srv_1.errors.InvalidArgument('Object does not contain ownership information');
48
48
  }
49
- const now = Date.now();
50
49
  if (redisClient) {
51
50
  const values = await redisClient.hGetAll(collectionName);
52
51
  if (values) {
@@ -72,9 +71,9 @@ const setDefaults = async (obj, collectionName) => {
72
71
  }
73
72
  }
74
73
  if (_.isNil(o.meta.created) || o.meta.created === 0) {
75
- o.meta.created = now;
74
+ o.meta.created = new Date();
76
75
  }
77
- o.meta.modified = now;
76
+ o.meta.modified = new Date();
78
77
  if (_.isNil(o.id) || o.id === 0 || isEmptyObject(o.id)) {
79
78
  o.id = uuidGen();
80
79
  }
@@ -90,7 +89,7 @@ const updateMetadata = (docMeta, newDoc) => {
90
89
  docMeta.owners = newDoc.meta.owners;
91
90
  }
92
91
  docMeta.modified_by = newDoc.meta.modified_by;
93
- docMeta.modified = Date.now();
92
+ docMeta.modified = new Date();
94
93
  newDoc.meta = docMeta;
95
94
  return newDoc;
96
95
  };
@@ -109,51 +108,6 @@ class ResourcesAPIBase {
109
108
  this.collectionName = collectionName;
110
109
  this.edgeCfg = edgeCfg;
111
110
  this.graphName = graphName;
112
- this.updateJSON = (path, obj, secondsNanoToms = true) => {
113
- let fields = path.split('.');
114
- let result = obj;
115
- let j = 0;
116
- for (let i = 0, n = fields.length; i < n && result !== undefined; i++) {
117
- let field = fields[i];
118
- if (i === n - 1) {
119
- // reset value finally after iterating to the position (only if value already exists)
120
- if (result[field]) {
121
- if (secondsNanoToms && result[field]?.seconds) {
122
- let millis = result[field].seconds * 1000;
123
- millis += result[field]?.nanos / 1000000;
124
- result[field] = millis;
125
- }
126
- else {
127
- const seconds = result[field] / 1000;
128
- const nanos = (result[field] % 1000) * 1000000;
129
- result[field] = { seconds, nanos };
130
- }
131
- }
132
- }
133
- else {
134
- if (_.isArray(result[field])) {
135
- // till i < n concat new fields
136
- let newField;
137
- for (let k = i + 1; k < n; k++) {
138
- if (newField) {
139
- newField = newField + '.' + fields[k];
140
- }
141
- else {
142
- newField = fields[k];
143
- }
144
- }
145
- for (; j < result[field].length; j++) {
146
- // recurisve call to update each element if its an array
147
- this.updateJSON(newField, result[field][j], secondsNanoToms);
148
- }
149
- }
150
- else {
151
- // update object till final path is reached
152
- result = result[field];
153
- }
154
- }
155
- }
156
- };
157
111
  this.resourceName = collectionName.substring(0, collectionName.length - 1);
158
112
  if (!fieldHandlerConf) {
159
113
  return;
@@ -162,12 +116,12 @@ class ResourcesAPIBase {
162
116
  if (!redisClient) {
163
117
  redisClient = fieldHandlerConf.redisClient;
164
118
  }
165
- if (fieldHandlerConf.bufferField) {
166
- this.bufferField = fieldHandlerConf.bufferField;
119
+ if (fieldHandlerConf.bufferFields) {
120
+ this.bufferFields = fieldHandlerConf.bufferFields;
167
121
  }
168
122
  // config fix to be removed after ts-proto is used
169
- if (fieldHandlerConf.dateTimeField) {
170
- this.dateTimeField = fieldHandlerConf.dateTimeField;
123
+ if (fieldHandlerConf.timeStampFields) {
124
+ this.timeStampFields = fieldHandlerConf.timeStampFields;
171
125
  }
172
126
  if (fieldHandlerConf.requiredFields) {
173
127
  this.requiredFields = fieldHandlerConf.requiredFields;
@@ -217,12 +171,14 @@ class ResourcesAPIBase {
217
171
  search
218
172
  };
219
173
  let entities = await this.db.find(this.collectionName, filter, options);
220
- if (this.bufferField && entities?.length > 0) {
174
+ if (this.bufferFields && entities?.length > 0) {
221
175
  // encode the msg obj back to buffer obj and send it back
222
- entities = entities?.map((obj) => (0, utils_1.encodeOrDecodeIfExists)(obj, this.bufferField, 'encode'));
176
+ entities = this.encodeOrDecode(entities, this.bufferFields, 'endcode');
177
+ }
178
+ if (this.timeStampFields && entities?.length > 0) {
179
+ // convert number to Date Object
180
+ entities = this.encodeOrDecode(entities, this.timeStampFields, 'convertMilisecToDateObj');
223
181
  }
224
- // config fix to be removed after ts-proto is used
225
- entities = this.convertmsToSecondsNanos(entities);
226
182
  return entities;
227
183
  }
228
184
  /**
@@ -232,7 +188,6 @@ class ResourcesAPIBase {
232
188
  */
233
189
  async create(documents) {
234
190
  const collection = this.collectionName;
235
- let toInsert = [];
236
191
  let result = [];
237
192
  try {
238
193
  let result = [];
@@ -245,15 +200,17 @@ class ResourcesAPIBase {
245
200
  documents = await Promise.all(documents.map(async (doc) => {
246
201
  return await setDefaults(doc, collection);
247
202
  }));
248
- if (this.bufferField && documents?.length > 0) {
249
- toInsert = documents.map((obj) => (0, utils_1.encodeOrDecodeIfExists)(obj, this.bufferField, 'decode'));
203
+ if (this.bufferFields && documents?.length > 0) {
204
+ documents = this.encodeOrDecode(documents, this.bufferFields, 'decode');
205
+ }
206
+ if (this.timeStampFields && documents?.length > 0) {
207
+ // convert Date Object to Number
208
+ documents = this.encodeOrDecode(documents, this.timeStampFields, 'convertDateObjToMilisec');
250
209
  }
251
- // config fix to be removed after ts-proto is used
252
- documents = this.convertSecondsNanosToms(documents);
253
210
  if (this.isGraphDB(this.db)) {
254
211
  await this.db.createGraphDB(this.graphName);
255
212
  await this.db.addVertexCollection(collection);
256
- let createVertexResp = await this.db.createVertex(collection, this.bufferField ? toInsert : documents);
213
+ let createVertexResp = await this.db.createVertex(collection, documents);
257
214
  for (let document of documents) {
258
215
  if (this.edgeCfg && _.isArray(this.edgeCfg) && this.edgeCfg.length > 0) {
259
216
  for (let eachEdgeCfg of this.edgeCfg) {
@@ -288,8 +245,10 @@ class ResourcesAPIBase {
288
245
  else {
289
246
  result.push(createVertexResp);
290
247
  }
291
- // config fix to be removed after ts-proto is used
292
- result = this.convertmsToSecondsNanos(result);
248
+ if (this.timeStampFields && result?.length > 0) {
249
+ // convert number to Date Object
250
+ result = this.encodeOrDecode(result, this.timeStampFields, 'convertMilisecToDateObj');
251
+ }
293
252
  return result;
294
253
  }
295
254
  else {
@@ -297,12 +256,14 @@ class ResourcesAPIBase {
297
256
  if (!_.isEmpty(result)) {
298
257
  checkReqFieldResult = result;
299
258
  }
300
- result = await this.db.insert(collection, this.bufferField ? toInsert : documents);
259
+ result = await this.db.insert(collection, documents);
301
260
  if (!_.isEmpty(checkReqFieldResult)) {
302
261
  checkReqFieldResult.forEach((reqFieldResult) => result.push(reqFieldResult));
303
262
  }
304
- // config fix to be removed after ts-proto is used
305
- result = this.convertmsToSecondsNanos(result);
263
+ if (this.timeStampFields && result?.length > 0) {
264
+ // convert number to Date Object
265
+ result = this.encodeOrDecode(result, this.timeStampFields, 'convertMilisecToDateObj');
266
+ }
306
267
  return result;
307
268
  }
308
269
  }
@@ -419,8 +380,8 @@ class ResourcesAPIBase {
419
380
  let updateDocuments = [];
420
381
  let dispatch = [];
421
382
  dispatch = await Promise.all(documents.map(async (doc) => {
422
- if (this.bufferField && doc) {
423
- doc = (0, utils_1.encodeOrDecodeIfExists)(doc, this.bufferField, 'decode');
383
+ if (this.bufferFields && doc) {
384
+ doc = this.encodeOrDecode([doc], this.bufferFields, 'decode')[0];
424
385
  }
425
386
  let foundDocs;
426
387
  if (doc && doc.id) {
@@ -438,6 +399,10 @@ class ResourcesAPIBase {
438
399
  eventName = 'Created';
439
400
  }
440
401
  else {
402
+ // convert dateTimeStamp fields
403
+ if (this.timeStampFields) {
404
+ foundDocs = this.encodeOrDecode(foundDocs, this.timeStampFields, 'convertMilisecToDateObj');
405
+ }
441
406
  // update
442
407
  const dbDoc = foundDocs[0];
443
408
  updateMetadata(dbDoc.meta, doc);
@@ -448,20 +413,20 @@ class ResourcesAPIBase {
448
413
  return events.emit(`${resourceName}${eventName}`, doc);
449
414
  }
450
415
  }));
451
- if (createDocuments.length > 0) {
452
- createDocuments = this.convertSecondsNanosToms(createDocuments);
416
+ if (createDocuments?.length > 0) {
453
417
  createDocsResult = await this.create(createDocuments);
454
418
  }
455
- if (updateDocuments.length > 0) {
456
- updateDocuments = this.convertSecondsNanosToms(updateDocuments);
419
+ if (updateDocuments?.length > 0) {
457
420
  updateDocsResult = await this.update(updateDocuments);
458
421
  }
459
422
  result = _.union(createDocuments, updateDocuments);
460
- // config fix to be removed after ts-proto is used
461
- result = this.convertmsToSecondsNanos(result);
423
+ if (this.timeStampFields && result?.length > 0) {
424
+ // convert number to Date Object
425
+ result = this.encodeOrDecode(result, this.timeStampFields, 'convertMilisecToDateObj');
426
+ }
462
427
  await Promise.all(dispatch);
463
- if (this.bufferField && result?.length > 0) {
464
- result = result?.map((obj) => (0, utils_1.encodeOrDecodeIfExists)(obj, this.bufferField, 'encode'));
428
+ if (this.bufferFields && result?.length > 0) {
429
+ result = this.encodeOrDecode(result, this.bufferFields, 'encode');
465
430
  }
466
431
  return result;
467
432
  }
@@ -486,10 +451,10 @@ class ResourcesAPIBase {
486
451
  try {
487
452
  const collectionName = this.collectionName;
488
453
  let docsWithUpMetadata = await Promise.all(documents.map(async (doc) => {
489
- if (this.bufferField && doc) {
490
- doc = (0, utils_1.encodeOrDecodeIfExists)(_.cloneDeep(doc), this.bufferField, 'decode');
454
+ if (this.bufferFields && doc) {
455
+ doc = this.encodeOrDecode([_.cloneDeep(doc)], this.bufferFields, 'decode')[0];
491
456
  }
492
- const foundDocs = await this.db.find(collectionName, { id: doc.id });
457
+ let foundDocs = await this.db.find(collectionName, { id: doc.id });
493
458
  let dbDoc;
494
459
  if (foundDocs && foundDocs.length === 1) {
495
460
  dbDoc = foundDocs[0];
@@ -545,12 +510,15 @@ class ResourcesAPIBase {
545
510
  }
546
511
  return doc;
547
512
  }));
548
- // config fix to be removed after ts-proto is used
549
- docsWithUpMetadata = this.convertSecondsNanosToms(docsWithUpMetadata);
513
+ if (this.timeStampFields && docsWithUpMetadata?.length > 0) {
514
+ docsWithUpMetadata = this.encodeOrDecode(docsWithUpMetadata, this.timeStampFields, 'convertDateObjToMilisec');
515
+ }
550
516
  updateResponse = await this.db.update(collectionName, docsWithUpMetadata);
551
- updateResponse = this.convertmsToSecondsNanos(updateResponse);
552
- if (this.bufferField && updateResponse?.length > 0) {
553
- updateResponse = updateResponse.map((obj) => (0, utils_1.encodeOrDecodeIfExists)(obj, this.bufferField, 'encode'));
517
+ if (this.timeStampFields && updateResponse?.length > 0) {
518
+ updateResponse = this.encodeOrDecode(updateResponse, this.timeStampFields, 'convertMilisecToDateObj');
519
+ }
520
+ if (this.bufferFields && updateResponse?.length > 0) {
521
+ updateResponse = this.encodeOrDecode(updateResponse, this.bufferFields, 'encode');
554
522
  }
555
523
  return updateResponse;
556
524
  }
@@ -564,35 +532,12 @@ class ResourcesAPIBase {
564
532
  return updateResponse;
565
533
  }
566
534
  }
567
- convertSecondsNanosToms(documents) {
568
- documents?.forEach(doc => {
569
- this.dateTimeField?.forEach((field) => {
570
- if (field.indexOf('.')) {
571
- this.updateJSON(field, doc, true);
572
- }
573
- else if (field && doc[field]?.seconds) {
574
- // convert seconds and nano seconds to unix epoch date time in mili seconds
575
- let millis = doc[field].seconds * 1000;
576
- millis += doc[field]?.nanos / 1000000;
577
- doc[field] = millis;
578
- }
579
- });
580
- });
581
- return documents;
582
- }
583
- convertmsToSecondsNanos(documents) {
584
- documents?.forEach(doc => {
585
- this.dateTimeField?.forEach(field => {
586
- if (field.indexOf('.')) {
587
- this.updateJSON(field, doc, false);
588
- }
589
- else if (doc && doc[field]) {
590
- const seconds = doc[field] / 1000;
591
- const nanos = (doc[field] % 1000) * 1000000;
592
- doc[field] = { seconds, nanos };
593
- }
594
- });
595
- });
535
+ encodeOrDecode(documents, fieldPaths, fieldHanlder) {
536
+ for (let doc of documents) {
537
+ for (let fieldPath of fieldPaths) {
538
+ doc = (0, utils_1.fieldHandler)(doc, fieldPath, fieldHanlder);
539
+ }
540
+ }
596
541
  return documents;
597
542
  }
598
543
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ResourcesAPI.js","sourceRoot":"","sources":["../../src/core/ResourcesAPI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourcesAPI.js","sourceRoot":"","sources":["../../src/core/ResourcesAPI.ts"],"names":[],"mappings":"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"}
@@ -37,14 +37,18 @@ export interface BaseDocument {
37
37
  [key: string]: any;
38
38
  }
39
39
  export interface DocumentMetadata {
40
- created?: number;
41
- modified?: number;
40
+ created?: any;
41
+ modified?: any;
42
42
  modified_by?: string;
43
43
  owners: {
44
44
  id?: string;
45
45
  value?: string;
46
46
  }[];
47
47
  }
48
+ export interface DateTimeConfig {
49
+ fields: string[];
50
+ entities: string[];
51
+ }
48
52
  export declare enum Direction {
49
53
  OUTBOUND = "OUTBOUND",
50
54
  INBOUND = "INBOUND"
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/core/interfaces.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAUX;AAVD,WAAY,eAAe;IACzB,iDAAM,CAAA;IACN,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,2DAAW,CAAA;IACX,uDAAS,CAAA;IACT,iDAAM,CAAA;IACN,mDAAO,CAAA;AACT,CAAC,EAVW,eAAe,+BAAf,eAAe,QAU1B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,yDAAU,CAAA;IACV,yDAAU,CAAA;IACV,2DAAW,CAAA;IACX,qDAAQ,CAAA;IACR,uDAAS,CAAA;AACX,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6CAAO,CAAA;IACP,2CAAM,CAAA;AACR,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AA4BD,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;AACrB,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/core/interfaces.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAUX;AAVD,WAAY,eAAe;IACzB,iDAAM,CAAA;IACN,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,2DAAW,CAAA;IACX,uDAAS,CAAA;IACT,iDAAM,CAAA;IACN,mDAAO,CAAA;AACT,CAAC,EAVW,eAAe,+BAAf,eAAe,QAU1B;AAED,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,yDAAU,CAAA;IACV,yDAAU,CAAA;IACV,2DAAW,CAAA;IACX,qDAAQ,CAAA;IACR,uDAAS,CAAA;AACX,CAAC,EANW,eAAe,+BAAf,eAAe,QAM1B;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6CAAO,CAAA;IACP,2CAAM,CAAA;AACR,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAiCD,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,gCAAmB,CAAA;AACrB,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB"}
@@ -1 +1 @@
1
- export declare const encodeOrDecodeIfExists: (obj: any, fieldPath: string, encodeOrDecode: string) => any;
1
+ export declare const fieldHandler: (obj: any, fieldPath: string, fieldHandlerType: string) => any;
package/lib/core/utils.js CHANGED
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.encodeOrDecodeIfExists = void 0;
26
+ exports.fieldHandler = void 0;
27
27
  const _ = __importStar(require("lodash"));
28
28
  const marshallObj = (val) => {
29
29
  try {
@@ -37,17 +37,29 @@ const marshallObj = (val) => {
37
37
  throw error;
38
38
  }
39
39
  };
40
- const updateObject = (obj, path, value, encodeOrDecode) => {
41
- if (value && encodeOrDecode === 'encode') {
42
- const marshalled = marshallObj(value);
43
- _.set(obj, path, marshalled);
40
+ const updateObject = (obj, path, value, fieldHandlerType) => {
41
+ try {
42
+ if (value && fieldHandlerType === 'encode') {
43
+ const marshalled = marshallObj(value);
44
+ _.set(obj, path, marshalled);
45
+ }
46
+ else if (value?.value && fieldHandlerType === 'decode') {
47
+ let unmarshalled = JSON.parse(value.value.toString());
48
+ _.set(obj, path, unmarshalled);
49
+ }
50
+ else if (value && fieldHandlerType == 'convertDateObjToMilisec' && value instanceof Date) {
51
+ _.set(obj, path, value.getTime());
52
+ }
53
+ else if (value && fieldHandlerType == 'convertMilisecToDateObj' && typeof (value) == 'number') {
54
+ _.set(obj, path, new Date(value));
55
+ }
44
56
  }
45
- else if (value?.value && encodeOrDecode === 'decode') {
46
- let unmarshalled = JSON.parse(value.value.toString());
47
- _.set(obj, path, unmarshalled);
57
+ catch (error) {
58
+ // rethrow the error, this is caught and logged in ResourceAPI
59
+ throw error;
48
60
  }
49
61
  };
50
- const setNestedPath = (object, fieldPath, encodeOrDecode) => {
62
+ const setNestedPath = (object, fieldPath, fieldHandlerType) => {
51
63
  const prefix = fieldPath?.substring(0, fieldPath.indexOf('.['));
52
64
  const suffix = fieldPath?.substring(fieldPath.indexOf('].') + 2);
53
65
  let setRecursive = false;
@@ -60,11 +72,11 @@ const setNestedPath = (object, fieldPath, encodeOrDecode) => {
60
72
  array.forEach((obj) => {
61
73
  let fieldExists = _.get(obj, suffix);
62
74
  if (fieldExists) {
63
- updateObject(obj, suffix, fieldExists, encodeOrDecode);
75
+ updateObject(obj, suffix, fieldExists, fieldHandlerType);
64
76
  }
65
77
  // recursive call
66
78
  if (fieldExists && setRecursive) {
67
- setNestedPath(obj, suffix, encodeOrDecode);
79
+ setNestedPath(obj, suffix, fieldHandlerType);
68
80
  }
69
81
  });
70
82
  }
@@ -77,7 +89,7 @@ const baseGet = (object, path) => {
77
89
  }
78
90
  return (index && index == length) ? object : undefined;
79
91
  };
80
- const encodeOrDecodeIfExists = (obj, fieldPath, encodeOrDecode) => {
92
+ const fieldHandler = (obj, fieldPath, fieldHandlerType) => {
81
93
  // fieldList contains the split Path to individual fields for fieldPath
82
94
  // and the baseGet breaks when the first field do not exist
83
95
  // ex: if fieldPath is `a.[0].b.c` then dotFieldPath is `a.0.b.c`
@@ -89,13 +101,13 @@ const encodeOrDecodeIfExists = (obj, fieldPath, encodeOrDecode) => {
89
101
  // only if the configured field exist check recursively for all entries in object
90
102
  if (fieldExists && array) {
91
103
  // use setNestedPath
92
- setNestedPath(obj, fieldPath, encodeOrDecode);
104
+ setNestedPath(obj, fieldPath, fieldHandlerType);
93
105
  }
94
106
  else if (fieldExists) {
95
107
  // use normal set and return
96
- updateObject(obj, fieldPath, fieldExists, encodeOrDecode);
108
+ updateObject(obj, fieldPath, fieldExists, fieldHandlerType);
97
109
  }
98
110
  return obj;
99
111
  };
100
- exports.encodeOrDecodeIfExists = encodeOrDecodeIfExists;
112
+ exports.fieldHandler = fieldHandler;
101
113
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/core/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/core/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@restorecommerce/resource-base-interface",
3
- "version": "1.2.1",
3
+ "version": "1.2.2",
4
4
  "description": "Restorecommerce Resource Base Interface",
5
5
  "main": "lib/index.js",
6
6
  "author": "n-fuse GmbH",
@@ -17,11 +17,11 @@
17
17
  "interface"
18
18
  ],
19
19
  "dependencies": {
20
- "@restorecommerce/chassis-srv": "^1.2.2",
21
- "@restorecommerce/grpc-client": "^2.0.1",
22
- "@restorecommerce/kafka-client": "^1.0.10",
23
- "@restorecommerce/rc-grpc-clients": "^3.1.2",
24
- "@restorecommerce/service-config": "^1.0.5",
20
+ "@restorecommerce/chassis-srv": "^1.2.4",
21
+ "@restorecommerce/grpc-client": "^2.0.2",
22
+ "@restorecommerce/kafka-client": "^1.0.14",
23
+ "@restorecommerce/rc-grpc-clients": "^4.1.1",
24
+ "@restorecommerce/service-config": "^1.0.6",
25
25
  "lodash": "^4.17.21",
26
26
  "redis": "^4.6.7"
27
27
  },
@@ -29,12 +29,12 @@
29
29
  "@types/lodash": "^4.14.195",
30
30
  "@types/mocha": "^10.0.1",
31
31
  "@types/redis": "^4.0.11",
32
- "@typescript-eslint/eslint-plugin": "^5.59.11",
33
- "@typescript-eslint/eslint-plugin-tslint": "^5.59.11",
34
- "@typescript-eslint/parser": "^5.59.11",
35
- "arangojs": "^8.3.0",
32
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
33
+ "@typescript-eslint/eslint-plugin-tslint": "^6.0.0",
34
+ "@typescript-eslint/parser": "^6.0.0",
35
+ "arangojs": "^8.4.0",
36
36
  "cross-env": "^7.0.3",
37
- "eslint": "^8.43.0",
37
+ "eslint": "^8.44.0",
38
38
  "eslint-plugin-prefer-arrow-functions": "^3.1.4",
39
39
  "mocha": "^10.2.0",
40
40
  "npm-run-all": "^4.1.5",
@@ -44,7 +44,7 @@
44
44
  "sleep": "^6.3.0",
45
45
  "ts-node": "^10.9.1",
46
46
  "tslint": "^6.1.3",
47
- "typescript": "^5.1.3"
47
+ "typescript": "^5.1.6"
48
48
  },
49
49
  "scripts": {
50
50
  "test": "npm run lint && nyc npm run mocha",