@restorecommerce/resource-base-interface 1.4.8 → 1.6.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/CHANGELOG.md CHANGED
@@ -1,4 +1,12 @@
1
1
 
2
+ ### 1.6.0 (April 20th, 2024)
3
+
4
+ - up custom arguments prefix (so that array can be supported for bind vars)
5
+
6
+ ### 1.5.0 (April 15th, 2024)
7
+
8
+ - up deps
9
+
2
10
  ### 1.4.8 (March 19th, 2024)
3
11
 
4
12
  - up deps
@@ -1,4 +1,5 @@
1
1
  import { ResourcesAPIBase } from './ResourcesAPI';
2
+ import { Topic } from '@restorecommerce/kafka-client';
2
3
  import { Logger } from 'winston';
3
4
  import { DeepPartial, DeleteRequest, DeleteResponse, ReadRequest, ResourceList, ResourceListResponse, ServiceImplementation } from '@restorecommerce/rc-grpc-clients/dist/generated-server/io/restorecommerce/resource_base';
4
5
  /**
@@ -6,20 +7,20 @@ import { DeepPartial, DeleteRequest, DeleteResponse, ReadRequest, ResourceList,
6
7
  * CRUD resource operations.
7
8
  */
8
9
  export declare class ServiceBase<T extends ResourceListResponse, M extends ResourceList> implements ServiceImplementation {
9
- logger: Logger;
10
- name: string;
11
- events: any;
12
- resourceapi: ResourcesAPIBase;
13
- isEventsEnabled: boolean;
10
+ readonly name: string;
11
+ readonly events: Topic;
12
+ readonly logger: Logger;
13
+ readonly resourceapi: ResourcesAPIBase;
14
+ isEventsEnabled?: boolean;
14
15
  /**
15
16
  * @constructor
16
- * @param entityName entityName Name of the resource.
17
- * @param entityEvents entityEvents Event topic for the resource.
17
+ * @param name entityName Name of the resource.
18
+ * @param events entityEvents Event topic for the resource.
18
19
  * @param logger logger Chassis logger.
19
20
  * @param resourceapi resourceapi ResourceAPI object.
20
21
  * @param isEventsEnabled.
21
22
  */
22
- constructor(entityName: string, entityEvents: any, logger: Logger, resourceapi: ResourcesAPIBase, isEventsEnabled?: boolean);
23
+ constructor(name: string, events: Topic, logger: Logger, resourceapi: ResourcesAPIBase, isEventsEnabled?: boolean);
23
24
  /**
24
25
  * Endpoint read.
25
26
  * Return resources based on provided filter and options.
@@ -46,20 +46,17 @@ const arangoHttpErrCodeMap = new Map([
46
46
  class ServiceBase {
47
47
  /**
48
48
  * @constructor
49
- * @param entityName entityName Name of the resource.
50
- * @param entityEvents entityEvents Event topic for the resource.
49
+ * @param name entityName Name of the resource.
50
+ * @param events entityEvents Event topic for the resource.
51
51
  * @param logger logger Chassis logger.
52
52
  * @param resourceapi resourceapi ResourceAPI object.
53
53
  * @param isEventsEnabled.
54
54
  */
55
- constructor(entityName, entityEvents, logger, resourceapi, isEventsEnabled) {
55
+ constructor(name, events, logger, resourceapi, isEventsEnabled) {
56
+ this.name = name;
57
+ this.events = events;
56
58
  this.logger = logger;
57
- this.name = entityName;
58
- this.events = {
59
- entity: entityEvents
60
- };
61
59
  this.resourceapi = resourceapi;
62
- this.resourceapi.logger = logger;
63
60
  this.isEventsEnabled = isEventsEnabled;
64
61
  }
65
62
  /**
@@ -236,7 +233,7 @@ class ServiceBase {
236
233
  const createDocs = _.cloneDeep(request.items);
237
234
  let createResponse = await this.resourceapi.create(createDocs, request.subject);
238
235
  const dispatch = [];
239
- const events = this.events.entity;
236
+ const events = this.events;
240
237
  if (this.isEventsEnabled) {
241
238
  _.forEach(createResponse, (item) => {
242
239
  if (!item.error) {
@@ -272,7 +269,7 @@ class ServiceBase {
272
269
  async delete(request, context) {
273
270
  let deleteResponse = { status: [], operation_status: {} };
274
271
  try {
275
- const events = this.events.entity;
272
+ const events = this.events;
276
273
  let docs;
277
274
  if (request.collection) {
278
275
  docs = await this.resourceapi.deleteCollection();
@@ -338,7 +335,7 @@ class ServiceBase {
338
335
  let updateResponse = await this.resourceapi.update(updateDocs, request.subject);
339
336
  if (this.isEventsEnabled) {
340
337
  const dispatch = [];
341
- const events = this.events.entity;
338
+ const events = this.events;
342
339
  _.forEach(updateResponse, (update) => {
343
340
  if (!update.error) {
344
341
  dispatch.push(events.emit(`${this.name}Modified`, update));
@@ -374,7 +371,7 @@ class ServiceBase {
374
371
  let docs = {};
375
372
  try {
376
373
  let upsertDocs = _.cloneDeep(request.items);
377
- let upsertResponse = await this.resourceapi.upsert(upsertDocs, this.events.entity, this.name, request.subject);
374
+ let upsertResponse = await this.resourceapi.upsert(upsertDocs, this.events, this.name, request.subject);
378
375
  let responseWithStatus = this.generateResponseWithStatus(upsertResponse, upsertDocs);
379
376
  const operation_status = {
380
377
  code: 200,
@@ -1 +1 @@
1
- {"version":3,"file":"ServiceBase.js","sourceRoot":"","sources":["../../src/core/ServiceBase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA4B;AAC5B,oCAAoC;AAIpC,2HASiG;AAEjG,+DAA+D;AAC/D,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACnC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,0CAA0C;IACvD,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,wBAAwB;IACrC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,+BAA+B;IAC5C,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,kCAAkC;IAC/C,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,qCAAqC;IAClD,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,4CAA4C;IACzD,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,mCAAmC;IAChD,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,8BAA8B;IAC3C,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,kCAAkC;CAChD,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAa,WAAW;IAMtB;;;;;;;OAOG;IACH,YAAY,UAAkB,EAAE,YAAiB,EAAE,MAAc,EAC/D,WAA6B,EAAE,eAAyB;QACxD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,YAAY;SACrB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,OAAoB,EAAE,OAAO;QACtC,IAAI,IAAI,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,cAAc,GAAG,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC;YACT,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,IAAI,GAAG,EAAE,CAAC;gBACV,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;oBAC7B,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;wBAChB,KAAK,8BAAc,CAAC,SAAS;4BAC3B,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;4BACtB,MAAM;wBACR,KAAK,8BAAc,CAAC,UAAU;4BAC5B,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;4BACvB,MAAM;oBACV,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC1B,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBACvB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YAC9B,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,2GAA2G;YAC3G,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,MAAM,GAAG,IAAA,gBAAQ,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;YACD,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;gBAC9B,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;oBACd,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAClB,OAAO;gBACT,CAAC;gBACD,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,MAAM,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;YAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;YAE/B,cAAc,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAC3C,MAAM,EACN,KAAK,EACL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,aAAa,EACb,UAAU,EACV,MAAM,CACP,CAAC,IAAI,EAAE,CAAC;YAET,IAAI,sBAAsB,GAAG,EAAE,CAAC;YAChC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBACzD,OAAO,EAAE,MAAM;gBACf,MAAM,EAAE;oBACN,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,SAAS;iBACnB;aACF,CAAC,CAAC,CAAC;YAEJ,OAAO;gBACL,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EAAE,cAAc,CAAC,MAAM;gBAClC,gBAAgB,EAAE;oBAChB,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,SAAS;iBACnB;aACgB,CAAC;QACtB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACtH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,MAAM,GAAG;gBACZ,EAAE,EAAE,EAAE;gBACN,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;aAC3C,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,aAAoB,EAAE,UAAiB,EAAE,SAAmB;QACzF,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,aAAa,GAAG,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC;gBACT,IAAI,EAAE,CAAC;gBACP,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,sDAAsD;gBAC5E,CAAC;gBACD,2CAA2C;gBAC3C,oBAAoB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;oBAC1C,IAAI,GAAG,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC1B,IAAI,GAAG,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,WAAW,CAAC,IAAI,CAAC;oBACf,EAAE;oBACF,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;oBACjC,OAAO,EAAE,IAAI,CAAC,YAAY;iBAC3B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,IAAI,CAAC;oBACf,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,SAAS;iBACnB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,0BAA0B,CAAC,aAAoB,EAAE,UAAiB,EAAE,SAAmB;QAC7F,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,uBAAuB,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9B,aAAa,GAAG,CAAC,aAAa,CAAC,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC;gBACT,IAAI,EAAE,CAAC;gBACP,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,CAAC;qBAAM,CAAC;oBACN,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,sDAAsD;gBAC5E,CAAC;gBACD,2CAA2C;gBAC3C,oBAAoB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;oBAC1C,IAAI,GAAG,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC1B,IAAI,GAAG,KAAK,CAAC;oBACf,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,uBAAuB,CAAC,IAAI,CAAC;oBAC3B,OAAO,EAAE,SAAS;oBAClB,MAAM,EAAE;wBACN,EAAE;wBACF,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ;wBACjC,OAAO,EAAE,IAAI,CAAC,YAAY;qBAC3B;iBACF,CAAC,CAAC;gBACH,WAAW,CAAC,IAAI,EAAE,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,uBAAuB,CAAC,IAAI,CAAC;oBAC3B,OAAO,EAAE,IAAI;oBACb,MAAM,EACN;wBACE,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,GAAG;wBACT,OAAO,EAAE,SAAS;qBACnB;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAU,EAAE,OAAO;QAC9B,IAAI,IAAI,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG,EAAE,CAAC;YACpB,MAAM,MAAM,GAAU,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACzC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE;oBACjC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;oBAC1D,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,wBAAwB,GAAG,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YAC3F,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,SAAS;aACnB,CAAC;YACF,IAAI,GAAG,EAAE,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;YAC3G,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,kBAAkB,EAAE,IAAI,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACxH,OAAO;gBACL,GAAG,IAAI;gBACP,gBAAgB,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;iBAC3C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAsB,EAAE,OAAO;QAC1C,IAAI,cAAc,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAClC,IAAI,IAAS,CAAC;YACd,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpD,CAAC;YAED,oCAAoC;YACpC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACf,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;oBACpC,OAAO,GAAG,CAAC,GAAG,CAAC;oBACf,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;oBAAA,CAAC;oBACnB,OAAO,GAAG,CAAC,IAAI,CAAC;oBAChB,OAAO,GAAG,CAAC,IAAI,CAAC;gBAClB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,EAAE,CAAC;gBACpB,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;oBACrB,IAAI,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC;wBAC1B,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;oBACd,CAAC;oBACD,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;wBACd,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;oBACxD,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;YAED,0EAA0E;YAC1E,+CAA+C;YAC/C,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC3E,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;gBACjB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9C,CAAC;YACD,IAAI,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACvE,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,SAAS;aACnB,CAAC;YACF,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACxH,OAAO;gBACL,GAAG,cAAc;gBACjB,gBAAgB,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;iBAC3C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAU,EAAE,OAAO;QAC9B,IAAI,IAAI,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAChF,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE;oBACnC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;wBAClB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,kBAAkB,GAAG,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,SAAS;aACnB,CAAC;YACF,IAAI,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;YAC/F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,kBAAkB,EAAE,IAAI,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACxH,OAAO;gBACL,GAAG,IAAI;gBACP,gBAAgB,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;iBAC3C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAU,EAAE,OAAO;QAC9B,IAAI,IAAI,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5C,IAAI,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,EAC3D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,kBAAkB,GAAG,IAAI,CAAC,0BAA0B,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG;gBACvB,IAAI,EAAE,GAAG;gBACT,OAAO,EAAE,SAAS;aACnB,CAAC;YACF,IAAI,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,kBAAkB,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC;YAC/F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,kBAAkB,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC5E,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACxH,OAAO;gBACL,GAAG,IAAI;gBACP,gBAAgB,EAAE;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;iBAC3C;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AApXD,kCAoXC"}
1
+ {"version":3,"file":"ServiceBase.js","sourceRoot":"","sources":["../../src/core/ServiceBase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { Provider } from 'nconf';
2
+ import type { ServiceImplementation } from 'nice-grpc';
3
+ import type { CompatServiceDefinition } from 'nice-grpc/lib/service-definitions';
4
+ import { RedisClientType as RedisClient } from 'redis';
5
+ import { Logger } from 'winston';
6
+ import { Server, OffsetStore, DatabaseProvider, CommandInterface } from '@restorecommerce/chassis-srv';
7
+ import { Events, Topic } from '@restorecommerce/kafka-client';
8
+ import { BindConfig } from '@restorecommerce/chassis-srv/lib/microservice/transport/provider/grpc/index.js';
9
+ import { ProtoMetadata } from '@restorecommerce/rc-grpc-clients/dist/generated-server/io/restorecommerce/commandinterface.js';
10
+ import { ServiceBase } from './ServiceBase';
11
+ export type ServiceConfig = Provider;
12
+ export type ReflectionService = ServiceImplementation<any>;
13
+ export interface ServiceBindConfig<T extends CompatServiceDefinition> extends BindConfig<T> {
14
+ name: string;
15
+ meta: ProtoMetadata;
16
+ }
17
+ export declare abstract class WorkerBase {
18
+ private _cfg;
19
+ private _logger;
20
+ private _server;
21
+ private _db;
22
+ private _events;
23
+ private _redisClient;
24
+ private _offsetStore;
25
+ private _reflectionService;
26
+ private _commandInterface;
27
+ get cfg(): ServiceConfig;
28
+ protected set cfg(value: ServiceConfig);
29
+ get logger(): Logger;
30
+ protected set logger(value: Logger);
31
+ get server(): Server;
32
+ protected set server(value: Server);
33
+ get db(): DatabaseProvider;
34
+ protected set db(value: DatabaseProvider);
35
+ get offsetStore(): OffsetStore;
36
+ protected set offsetStore(value: OffsetStore);
37
+ get events(): Events;
38
+ protected set events(value: Events);
39
+ get redisClient(): RedisClient;
40
+ protected set redisClient(value: RedisClient);
41
+ get commandInterface(): CommandInterface;
42
+ protected set commandInterface(value: CommandInterface);
43
+ get reflectionService(): ReflectionService;
44
+ protected set reflectionService(value: ReflectionService);
45
+ protected readonly services: Map<string, CommandInterface | import("nice-grpc").RawServiceImplementation<any, {}> | ServiceBase<any, any>>;
46
+ protected readonly topics: Map<string, Topic>;
47
+ protected readonly serviceActions: Map<string, (msg: any, context: any, config: any, eventName: string) => Promise<void>>;
48
+ protected readonly jobService: {
49
+ handleQueuedJob: (msg: any, context: any, config: any, eventName: string) => Promise<Logger>;
50
+ };
51
+ /**
52
+ * Override this factory function and return a list of ServiceBindConfig[].
53
+ * Each ServiceBindConfig expects a ServiceBase implementation,
54
+ * a ServiceDefinition and a ProtoMetadata.
55
+ * Worker.start() binds all configured services to the server instance.
56
+ */
57
+ protected abstract initServices(): Promise<ServiceBindConfig<any>[]>;
58
+ protected bindServices(configs: ServiceBindConfig<any>[]): Promise<void>;
59
+ protected bindCommandInterface(configs: ServiceBindConfig<any>[]): Promise<void>;
60
+ protected bindRefelctions(configs: ServiceBindConfig<any>[]): Promise<void>;
61
+ protected bindHealthCheck(): Promise<void>;
62
+ protected bindHandler(serviceName: string, functionName: string): (msg: any, context: any, config: any, eventName: string) => Promise<any>;
63
+ protected bindEvents(): Promise<void>;
64
+ start(cfg?: ServiceConfig, logger?: Logger): Promise<any>;
65
+ stop(): Promise<any>;
66
+ }
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WorkerBase = void 0;
4
+ const redis_1 = require("redis");
5
+ const chassis_srv_1 = require("@restorecommerce/chassis-srv");
6
+ const kafka_client_1 = require("@restorecommerce/kafka-client");
7
+ const logger_1 = require("@restorecommerce/logger");
8
+ const commandinterface_js_1 = require("@restorecommerce/rc-grpc-clients/dist/generated-server/io/restorecommerce/commandinterface.js");
9
+ const health_js_1 = require("@restorecommerce/rc-grpc-clients/dist/generated-server/grpc/health/v1/health.js");
10
+ const nice_grpc_server_reflection_1 = require("nice-grpc-server-reflection");
11
+ const service_config_1 = require("@restorecommerce/service-config");
12
+ class WorkerBase {
13
+ constructor() {
14
+ this.services = new Map();
15
+ this.topics = new Map();
16
+ this.serviceActions = new Map();
17
+ this.jobService = {
18
+ handleQueuedJob: (msg, context, config, eventName) => {
19
+ return this.serviceActions.get(msg?.type)(msg?.data?.payload, context, config, msg?.type).then(() => this.logger?.info(`Job ${msg?.type} done.`), (err) => this.logger?.error(`Job ${msg?.type} failed: ${err}`));
20
+ }
21
+ };
22
+ }
23
+ get cfg() {
24
+ return this._cfg;
25
+ }
26
+ set cfg(value) {
27
+ this._cfg = value;
28
+ }
29
+ get logger() {
30
+ return this._logger;
31
+ }
32
+ set logger(value) {
33
+ this._logger = value;
34
+ }
35
+ get server() {
36
+ return this._server;
37
+ }
38
+ set server(value) {
39
+ this._server = value;
40
+ }
41
+ get db() {
42
+ return this._db;
43
+ }
44
+ set db(value) {
45
+ this._db = value;
46
+ }
47
+ get offsetStore() {
48
+ return this._offsetStore;
49
+ }
50
+ set offsetStore(value) {
51
+ this._offsetStore = value;
52
+ }
53
+ get events() {
54
+ return this._events;
55
+ }
56
+ set events(value) {
57
+ this._events = value;
58
+ }
59
+ get redisClient() {
60
+ return this._redisClient;
61
+ }
62
+ set redisClient(value) {
63
+ this._redisClient = value;
64
+ }
65
+ get commandInterface() {
66
+ return this._commandInterface;
67
+ }
68
+ set commandInterface(value) {
69
+ this._commandInterface = value;
70
+ }
71
+ get reflectionService() {
72
+ return this._reflectionService;
73
+ }
74
+ set reflectionService(value) {
75
+ this._reflectionService = value;
76
+ }
77
+ async bindServices(configs) {
78
+ this.logger?.debug('bind Services', configs);
79
+ const serviceNames = this.cfg.get('serviceNames');
80
+ configs.map(config => {
81
+ this.services.set(serviceNames?.[config.name] ?? config.name, config.implementation);
82
+ });
83
+ await Promise.all(configs.map(config => this.server.bind(serviceNames?.[config.name] ?? config.name, config)));
84
+ }
85
+ async bindCommandInterface(configs) {
86
+ this.logger?.debug('bind CommandInterface');
87
+ this.commandInterface = [...this.services.values()].find(service => service instanceof chassis_srv_1.CommandInterface);
88
+ if (this.commandInterface) {
89
+ return;
90
+ }
91
+ const serviceName = this.cfg.get('serviceNames:cis');
92
+ if (!serviceName) {
93
+ this.logger?.warn('CommandInterface not initialized', 'serviceNames:cis for CommandInterface not set!');
94
+ return;
95
+ }
96
+ this.commandInterface = new chassis_srv_1.CommandInterface(this.server, this.cfg, this.logger, this.events, this.redisClient);
97
+ this.services.set(serviceName, this.commandInterface);
98
+ configs.push({
99
+ name: serviceName,
100
+ service: commandinterface_js_1.CommandInterfaceServiceDefinition,
101
+ implementation: this.commandInterface,
102
+ meta: commandinterface_js_1.protoMetadata,
103
+ });
104
+ await this.server.bind(serviceName, {
105
+ service: commandinterface_js_1.CommandInterfaceServiceDefinition,
106
+ implementation: this.commandInterface,
107
+ });
108
+ }
109
+ bindRefelctions(configs) {
110
+ this.logger?.debug('bind ReflectionService');
111
+ const serviceName = this.cfg.get('serviceNames:reflection');
112
+ if (!serviceName) {
113
+ this.logger?.warn('ReflectionService not initialized', 'serviceNames:reflection for ReflectionService not set!');
114
+ return;
115
+ }
116
+ const metas = configs.map(config => config.meta);
117
+ (0, kafka_client_1.registerProtoMeta)(...metas);
118
+ this.reflectionService = (0, chassis_srv_1.buildReflectionService)(metas.map(meta => ({
119
+ descriptor: meta.fileDescriptor
120
+ })));
121
+ this.services.set(serviceName, this.reflectionService);
122
+ return this.server.bind(serviceName, {
123
+ service: nice_grpc_server_reflection_1.ServerReflectionService,
124
+ implementation: this.reflectionService,
125
+ });
126
+ }
127
+ async bindHealthCheck() {
128
+ this.logger?.debug('bind HealthCheckService');
129
+ const name = this.cfg.get('serviceNames:health');
130
+ if (!name) {
131
+ this.logger?.warn('HealthCheckService not initialized', 'serviceNames:health for HealthCheckService not set!');
132
+ return;
133
+ }
134
+ if (!this.commandInterface) {
135
+ this.logger?.warn('HealthCheckService not initialized', 'CommandInterface missing!');
136
+ return;
137
+ }
138
+ await this.server.bind(name, {
139
+ service: health_js_1.HealthDefinition,
140
+ implementation: new chassis_srv_1.Health(this.commandInterface, {
141
+ logger: this.logger,
142
+ cfg: this.cfg,
143
+ dependencies: [],
144
+ readiness: async () => !!await this.db.db.version()
145
+ })
146
+ });
147
+ }
148
+ bindHandler(serviceName, functionName) {
149
+ serviceName = this.cfg.get(`serviceNames:${serviceName}`) ?? serviceName;
150
+ this.logger?.debug(`Bind event to handler: ${serviceName}.${functionName}`);
151
+ return (msg, context, config, eventName) => {
152
+ return this.services.get(serviceName)?.[functionName]?.(msg, context).then(() => this.logger?.debug(`Event ${eventName} handled.`), (err) => this.logger?.error(`Error while handling event ${eventName}: ${err}`)) ?? this.logger?.warn(`Event ${eventName} was not bound to handler: ${serviceName}.${functionName} does not exist!.`);
153
+ };
154
+ }
155
+ async bindEvents() {
156
+ this.logger?.debug('bind Events');
157
+ const serviceNames = this.cfg.get('serviceNames');
158
+ const kafkaCfg = this.cfg.get('events:kafka');
159
+ this.events = new kafka_client_1.Events(kafkaCfg, this.logger);
160
+ await this.events.start();
161
+ this.offsetStore = new chassis_srv_1.OffsetStore(this.events, this.cfg, this.logger);
162
+ await Promise.all(Object.entries(kafkaCfg.topics).map(async ([key, value]) => {
163
+ const topicName = value.topic;
164
+ const topic = await this.events.topic(topicName);
165
+ const offsetValue = await this.offsetStore.getOffset(topicName);
166
+ this.logger?.info('subscribing to topic with offset value', topicName, offsetValue);
167
+ Object.entries(value.events ?? {}).forEach(([eventName, handler]) => {
168
+ const i = handler.lastIndexOf('.');
169
+ const name = handler.slice(0, i);
170
+ const serviceName = serviceNames?.[name] ?? name;
171
+ const functionName = handler.slice(i + 1);
172
+ this.serviceActions.set(eventName, this.bindHandler(serviceName, functionName));
173
+ topic.on(eventName, this.serviceActions.get(eventName), { startingOffset: offsetValue });
174
+ });
175
+ this.topics.set(key, topic);
176
+ }));
177
+ }
178
+ async start(cfg, logger) {
179
+ this.cfg = cfg = cfg ?? (0, service_config_1.createServiceConfig)(process.cwd());
180
+ const logger_cfg = cfg.get('logger');
181
+ if (logger) {
182
+ this.logger = logger;
183
+ }
184
+ else if (logger_cfg) {
185
+ logger_cfg.esTransformer = (msg) => {
186
+ msg.fields = JSON.stringify(msg.fields);
187
+ return msg;
188
+ };
189
+ this.logger = logger = (0, logger_1.createLogger)(logger_cfg);
190
+ }
191
+ this.server = new chassis_srv_1.Server(this.cfg.get('server'), this.logger);
192
+ this.db = await chassis_srv_1.database.get(this.cfg.get('database:main'), this.logger);
193
+ const redisConfig = this.cfg.get('redis');
194
+ redisConfig.db = this.cfg.get('redis:db-indexes:db-subject');
195
+ this.redisClient = (0, redis_1.createClient)(redisConfig);
196
+ await this.bindEvents();
197
+ const serviceConfigs = await this.initServices();
198
+ await this.bindServices(serviceConfigs);
199
+ await this.bindCommandInterface(serviceConfigs);
200
+ await this.bindHealthCheck();
201
+ await this.bindRefelctions(serviceConfigs);
202
+ // start server
203
+ await this.server.start();
204
+ this.logger?.info('Server started successfully');
205
+ }
206
+ async stop() {
207
+ this.logger?.info('Shutting down');
208
+ await Promise.allSettled([
209
+ this.server?.stop(),
210
+ this.events?.stop(),
211
+ this.offsetStore?.stop(),
212
+ ]);
213
+ }
214
+ }
215
+ exports.WorkerBase = WorkerBase;
216
+ //# sourceMappingURL=WorkerBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerBase.js","sourceRoot":"","sources":["../../src/core/WorkerBase.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.4.8",
3
+ "version": "1.6.0",
4
4
  "description": "Restorecommerce Resource Base Interface",
5
5
  "main": "lib/index.js",
6
6
  "author": "n-fuse GmbH",
@@ -17,33 +17,38 @@
17
17
  "interface"
18
18
  ],
19
19
  "dependencies": {
20
- "@restorecommerce/chassis-srv": "^1.4.9",
21
- "@restorecommerce/grpc-client": "^2.2.0",
22
- "@restorecommerce/kafka-client": "^1.1.22",
23
- "@restorecommerce/rc-grpc-clients": "^5.1.22",
20
+ "@restorecommerce/chassis-srv": "^1.6.0",
21
+ "@restorecommerce/grpc-client": "^2.2.1",
22
+ "@restorecommerce/kafka-client": "^1.2.1",
23
+ "@restorecommerce/rc-grpc-clients": "^5.1.23",
24
24
  "@restorecommerce/service-config": "^1.0.12",
25
25
  "lodash": "^4.17.21",
26
+ "nice-grpc": "^2.1.8",
26
27
  "redis": "^4.6.13"
27
28
  },
29
+ "overrides": {
30
+ "@grpc/grpc-js": "^1.10.6"
31
+ },
28
32
  "devDependencies": {
29
33
  "@types/lodash": "^4.17.0",
30
34
  "@types/mocha": "^10.0.6",
35
+ "@types/nconf": "^0.10.6",
31
36
  "@types/redis": "^4.0.11",
32
- "@typescript-eslint/eslint-plugin": "^7.3.1",
37
+ "@typescript-eslint/eslint-plugin": "^7.7.0",
33
38
  "@typescript-eslint/eslint-plugin-tslint": "^7.0.2",
34
- "@typescript-eslint/parser": "^7.3.1",
39
+ "@typescript-eslint/parser": "^7.7.0",
35
40
  "arangojs": "^8.7.0",
36
41
  "cross-env": "^7.0.3",
37
42
  "eslint": "^8.57.0",
38
43
  "eslint-plugin-prefer-arrow-functions": "^3.3.2",
39
- "mocha": "^10.3.0",
44
+ "mocha": "^10.4.0",
40
45
  "npm-run-all": "^4.1.5",
41
46
  "nyc": "^15.1.0",
42
47
  "rimraf": "^5.0.5",
43
48
  "should": "^13.2.3",
44
49
  "ts-node": "^10.9.2",
45
50
  "tslint": "^6.1.3",
46
- "typescript": "^5.4.2"
51
+ "typescript": "^5.4.5"
47
52
  },
48
53
  "scripts": {
49
54
  "test": "npm run lint && nyc npm run mocha",
@@ -60,6 +65,6 @@
60
65
  "build": "npm-run-all lint build:clean build:tsc"
61
66
  },
62
67
  "engines": {
63
- "node": ">= 18.8.0"
68
+ "node": ">= 20.0.0"
64
69
  }
65
70
  }