@signageos/lib 23.8.2-master.4407 → 23.9.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.
@@ -17,6 +17,10 @@ export interface LockedBindOptions {
17
17
  * You can scale the number of consumers that multiply the total number of possibly concurrently processed events.
18
18
  */
19
19
  distributedPrefetchCount?: number;
20
+ /**
21
+ * Maximum time to wait before flushing the batch even if maxBatchSize is not reached.
22
+ */
23
+ flushBatchDelayMs?: number;
20
24
  /**
21
25
  * Delay in milliseconds before redelivering the event in case of error.
22
26
  * It's dead-lettered on the first error and redirected to the event_rejected queue for the specified delay.
@@ -56,8 +60,11 @@ export declare class LockedEventConsumer {
56
60
  private withLock;
57
61
  constructor(amqpConnection: IAMQPConnection);
58
62
  bind<TPayload extends IEventPayload>(eventTypes: string[], domainName: string, consumerType: string, onEvent: (event: IEvent<TPayload>) => Promise<void>, bindOptions?: LockedBindOptions): Promise<() => Promise<() => Promise<void>>>;
63
+ bindBatch<TPayload extends IEventPayload>(eventTypes: string[], domainName: string, consumerType: string, onEventsBatch: (events: IEvent<TPayload>[]) => Promise<void>, bindOptions?: LockedBindOptions): Promise<() => Promise<() => Promise<void>>>;
59
64
  private createMainBindOptions;
60
65
  private createConsumeEvent;
66
+ private createConsumeEventsBatch;
61
67
  private createDistributedBindOptions;
62
68
  private createDistributeEvent;
69
+ private createDistributeEventsBatch;
63
70
  }
@@ -64,6 +64,7 @@ var debug = (0, debug_1.default)('@signageos/lib:AMQP:EventSourcing:Locked:Locke
64
64
  var DEFAULT_BIND_OPTIONS = {
65
65
  mainPrefetchCount: 1,
66
66
  distributedPrefetchCount: 0,
67
+ flushBatchDelayMs: 50,
67
68
  redeliverDelayMs: 30e3,
68
69
  legacyNotification: false,
69
70
  };
@@ -78,6 +79,32 @@ var distributedEventQueueBindOptions = {
78
79
  durable: false,
79
80
  };
80
81
  var DEFAULT_LOCK_KEY = '$default';
82
+ function getEventsType(events) {
83
+ if (events.length === 0) {
84
+ throw new Error('No events to get type from');
85
+ }
86
+ var eventType = events[0].payload.type;
87
+ for (var _i = 0, events_1 = events; _i < events_1.length; _i++) {
88
+ var event_1 = events_1[_i];
89
+ if (event_1.payload.type !== eventType) {
90
+ throw new Error('Events have different types');
91
+ }
92
+ }
93
+ return eventType;
94
+ }
95
+ function getLockKeys(events) {
96
+ var _a;
97
+ var lockKeysSet = new Set();
98
+ for (var _i = 0, events_2 = events; _i < events_2.length; _i++) {
99
+ var event_2 = events_2[_i];
100
+ var lockKeys = (_a = event_2.lockKeys) !== null && _a !== void 0 ? _a : [DEFAULT_LOCK_KEY]; // TODO default lock could be removed one day in future when all events are migrated
101
+ for (var _b = 0, lockKeys_1 = lockKeys; _b < lockKeys_1.length; _b++) {
102
+ var lockKey = lockKeys_1[_b];
103
+ lockKeysSet.add(lockKey);
104
+ }
105
+ }
106
+ return Array.from(lockKeysSet);
107
+ }
81
108
  /**
82
109
  * Event consumer that consumes events in a locked manner with timestamp-based ordering.
83
110
  *
@@ -166,6 +193,69 @@ var LockedEventConsumer = /** @class */ (function () {
166
193
  });
167
194
  });
168
195
  };
196
+ LockedEventConsumer.prototype.bindBatch = function (eventTypes_1, domainName_1, consumerType_1, onEventsBatch_1) {
197
+ return __awaiter(this, arguments, void 0, function (eventTypes, domainName, consumerType, onEventsBatch, bindOptions) {
198
+ var mainBindOptions, distributedBindOptions, consumeEventsBatch, cancelConsumptions, cancelMain, distributeEventsBatch, cancelDistributed, cancelMain;
199
+ var _this = this;
200
+ var _a;
201
+ if (bindOptions === void 0) { bindOptions = DEFAULT_BIND_OPTIONS; }
202
+ return __generator(this, function (_b) {
203
+ switch (_b.label) {
204
+ case 0:
205
+ bindOptions = __assign(__assign({}, DEFAULT_BIND_OPTIONS), bindOptions);
206
+ return [4 /*yield*/, (0, eventQueueDomain_1.prepareRejectedDomain)(this.amqpConnection, domainName, consumerType, {
207
+ redeliverDelayMs: (_a = bindOptions.redeliverDelayMs) !== null && _a !== void 0 ? _a : DEFAULT_BIND_OPTIONS.redeliverDelayMs,
208
+ })];
209
+ case 1:
210
+ _b.sent();
211
+ mainBindOptions = this.createMainBindOptions(bindOptions);
212
+ distributedBindOptions = this.createDistributedBindOptions(bindOptions);
213
+ consumeEventsBatch = this.createConsumeEventsBatch(domainName, consumerType, mainBindOptions, onEventsBatch);
214
+ cancelConsumptions = [];
215
+ if (!(bindOptions.distributedPrefetchCount === 0)) return [3 /*break*/, 3];
216
+ return [4 /*yield*/, (0, eventQueueDomain_1.bindDomainBatch)(this.amqpConnection, eventTypes, domainName, consumerType, consumeEventsBatch, mainBindOptions, {
217
+ flushBatchDelayMs: 100,
218
+ })];
219
+ case 2:
220
+ cancelMain = _b.sent();
221
+ cancelConsumptions.push(cancelMain);
222
+ return [3 /*break*/, 6];
223
+ case 3:
224
+ distributeEventsBatch = this.createDistributeEventsBatch(domainName, consumerType, distributedBindOptions);
225
+ return [4 /*yield*/, (0, eventQueueDomain_1.bindRPCDomainBatch)(this.amqpConnection, domainName, consumerType, consumeEventsBatch, distributedBindOptions)];
226
+ case 4:
227
+ cancelDistributed = _b.sent();
228
+ return [4 /*yield*/, (0, eventQueueDomain_1.bindDomainBatch)(this.amqpConnection, eventTypes, domainName, consumerType, distributeEventsBatch, mainBindOptions)];
229
+ case 5:
230
+ cancelMain = _b.sent();
231
+ cancelConsumptions.push(cancelDistributed);
232
+ cancelConsumptions.push(cancelMain);
233
+ _b.label = 6;
234
+ case 6: return [2 /*return*/, function () { return __awaiter(_this, void 0, void 0, function () {
235
+ var closeChannels;
236
+ var _this = this;
237
+ return __generator(this, function (_a) {
238
+ switch (_a.label) {
239
+ case 0: return [4 /*yield*/, Promise.all(cancelConsumptions.map(function (cancel) { return cancel(); }))];
240
+ case 1:
241
+ closeChannels = _a.sent();
242
+ return [2 /*return*/, function () { return __awaiter(_this, void 0, void 0, function () {
243
+ return __generator(this, function (_a) {
244
+ switch (_a.label) {
245
+ case 0: return [4 /*yield*/, Promise.all(closeChannels.map(function (close) { return close(); }))];
246
+ case 1:
247
+ _a.sent();
248
+ return [2 /*return*/];
249
+ }
250
+ });
251
+ }); }];
252
+ }
253
+ });
254
+ }); }];
255
+ }
256
+ });
257
+ });
258
+ };
169
259
  LockedEventConsumer.prototype.createMainBindOptions = function (bindOptions) {
170
260
  var _a;
171
261
  return __assign(__assign({}, mainEventQueueBindOptions), { prefetchCount: bindOptions.mainPrefetchCount, notification: (_a = bindOptions.legacyNotification) !== null && _a !== void 0 ? _a : false });
@@ -213,6 +303,51 @@ var LockedEventConsumer = /** @class */ (function () {
213
303
  });
214
304
  }); };
215
305
  };
306
+ LockedEventConsumer.prototype.createConsumeEventsBatch = function (domainName, consumerType, bindOptions, onEventsBatch) {
307
+ var _this = this;
308
+ return function (events) { return __awaiter(_this, void 0, void 0, function () {
309
+ var eventType, firstEvent, start, commandStart, logMetadata, e_2;
310
+ return __generator(this, function (_a) {
311
+ switch (_a.label) {
312
+ case 0:
313
+ eventType = getEventsType(events);
314
+ firstEvent = events[0];
315
+ start = new Date().getTime();
316
+ eventConsumerMetrics_1.metrics.emit('events_total', { eventType: eventType }, events.length);
317
+ eventConsumerMetrics_1.metrics.emit('event_duration_seconds_total', { eventType: eventType, phase: 'eventStart' }, start - firstEvent.receivedAt.getTime());
318
+ commandStart = firstEvent.receivedAt.getTime() - firstEvent.dispatchedAt.getTime();
319
+ if (commandStart !== 0) {
320
+ eventConsumerMetrics_1.metrics.emit('event_duration_seconds_total', { eventType: eventType, phase: 'commandStart' }, firstEvent.receivedAt.getTime() - firstEvent.dispatchedAt.getTime());
321
+ }
322
+ logMetadata = {
323
+ domainName: domainName,
324
+ consumerType: consumerType,
325
+ bindOptions: bindOptions,
326
+ events: events,
327
+ };
328
+ debug("Consuming events batch ".concat(eventType, " from ").concat(domainName, ".").concat(consumerType), logMetadata);
329
+ _a.label = 1;
330
+ case 1:
331
+ _a.trys.push([1, 3, 4, 5]);
332
+ return [4 /*yield*/, onEventsBatch(events)];
333
+ case 2:
334
+ _a.sent();
335
+ eventConsumerMetrics_1.metrics.emit('event_success_total', { eventType: eventType }, events.length);
336
+ return [3 /*break*/, 5];
337
+ case 3:
338
+ e_2 = _a.sent();
339
+ eventConsumerMetrics_1.metrics.emit('event_error_total', { eventType: eventType }, events.length);
340
+ debug("Error consuming events batch ".concat(eventType, " from ").concat(domainName, ".").concat(consumerType), logMetadata);
341
+ throw e_2;
342
+ case 4:
343
+ eventConsumerMetrics_1.metrics.emit('event_duration_seconds_total', { eventType: eventType, phase: 'processing' }, (new Date().getTime() - start) / events.length);
344
+ eventConsumerMetrics_1.metrics.emit('event_duration_seconds', { eventType: eventType }, (new Date().getTime() - start) / events.length);
345
+ return [7 /*endfinally*/];
346
+ case 5: return [2 /*return*/];
347
+ }
348
+ });
349
+ }); };
350
+ };
216
351
  LockedEventConsumer.prototype.createDistributedBindOptions = function (bindOptions) {
217
352
  return __assign(__assign({}, distributedEventQueueBindOptions), { prefetchCount: bindOptions.distributedPrefetchCount });
218
353
  };
@@ -255,6 +390,46 @@ var LockedEventConsumer = /** @class */ (function () {
255
390
  });
256
391
  }); };
257
392
  };
393
+ LockedEventConsumer.prototype.createDistributeEventsBatch = function (domainName, consumerType, bindOptions) {
394
+ var _this = this;
395
+ return function (events) { return __awaiter(_this, void 0, void 0, function () {
396
+ var eventType, firstEvent, logMetadata, lockKeys;
397
+ var _this = this;
398
+ return __generator(this, function (_a) {
399
+ switch (_a.label) {
400
+ case 0:
401
+ eventType = getEventsType(events);
402
+ firstEvent = events[0];
403
+ logMetadata = {
404
+ domainName: domainName,
405
+ consumerType: consumerType,
406
+ bindOptions: bindOptions,
407
+ events: events,
408
+ };
409
+ debug("Received events batch ".concat(eventType, " to ").concat(domainName, ".").concat(consumerType), logMetadata);
410
+ lockKeys = getLockKeys(events);
411
+ return [4 /*yield*/, this.withLock(lockKeys, firstEvent, function () { return __awaiter(_this, void 0, void 0, function () {
412
+ return __generator(this, function (_a) {
413
+ switch (_a.label) {
414
+ case 0:
415
+ debug("Distributing events batch ".concat(eventType, " to ").concat(domainName, ".").concat(consumerType), logMetadata);
416
+ // TODO Add timeout for processing event, because it can be stucked until the instance is restarted
417
+ return [4 /*yield*/, (0, eventQueueDomain_1.processRPCDomainBatch)(this.amqpConnection, domainName, consumerType, events, { persistent: false })];
418
+ case 1:
419
+ // TODO Add timeout for processing event, because it can be stucked until the instance is restarted
420
+ _a.sent();
421
+ return [2 /*return*/];
422
+ }
423
+ });
424
+ }); })];
425
+ case 1:
426
+ _a.sent();
427
+ debug("Distributed events batch consumed ".concat(eventType, " to ").concat(domainName, ".").concat(consumerType), logMetadata);
428
+ return [2 /*return*/];
429
+ }
430
+ });
431
+ }); };
432
+ };
258
433
  return LockedEventConsumer;
259
434
  }());
260
435
  exports.LockedEventConsumer = LockedEventConsumer;
@@ -1 +1 @@
1
- {"version":3,"file":"lockedEventConsumer.js","sourceRoot":"","sources":["../../../../src/AMQP/EventSourcing/Locked/lockedEventConsumer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lockedEventConsumer.js","sourceRoot":"","sources":["../../../../src/AMQP/EventSourcing/Locked/lockedEventConsumer.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { enqueue, enqueueBatch, enqueueNotification, enqueueToConsumer } from '.
10
10
  * It automatically asserts exchanges and queues that is non-standard.
11
11
  * The fetched message is automatically acked.
12
12
  * This function is meant mostly for testing purposes.
13
- * @deprecated TODO Use fetchDomain or fetchDetached instead
13
+ * @deprecated Use fetchDomain or fetchDetached instead
14
14
  */
15
15
  export declare function fetchNext<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, eventType: string, consumerType: string, bindOptions?: IBindOptions, queueOptions?: IQueueOptions, domainName?: string): Promise<IEvent<TPayload> | null>;
16
16
  export {
@@ -70,7 +70,7 @@ Object.defineProperty(exports, "enqueueToConsumer", { enumerable: true, get: fun
70
70
  * It automatically asserts exchanges and queues that is non-standard.
71
71
  * The fetched message is automatically acked.
72
72
  * This function is meant mostly for testing purposes.
73
- * @deprecated TODO Use fetchDomain or fetchDetached instead
73
+ * @deprecated Use fetchDomain or fetchDetached instead
74
74
  */
75
75
  function fetchNext(amqpConnection_1, eventType_1, consumerType_1) {
76
76
  return __awaiter(this, arguments, void 0, function (amqpConnection, eventType, consumerType, bindOptions, queueOptions, domainName) {
@@ -23,12 +23,25 @@ export type RPCDomainResponse = RPCDomainResponseFailed | RPCDomainResponseSucce
23
23
  */
24
24
  export declare function getDomainConsumeOptions(options: IBindOptions, consumerType: string, domainName: string): IConsumeOptions;
25
25
  export declare function processRPCDomain(amqpConnection: IAMQPConnection, domainName: string, consumerType: string, event: IEvent<IEventPayload>, messageOptions?: IMessageOptions, headers?: Record<string, string>): Promise<void>;
26
+ export declare function processRPCDomainBatch(amqpConnection: IAMQPConnection, domainName: string, consumerType: string, events: IEvent<IEventPayload>[], messageOptions?: IMessageOptions, headers?: Record<string, string>): Promise<void>;
26
27
  export declare function bindRPCDomain<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, domainName: string, consumerType: string, onEvent: (event: IEvent<TPayload>, headers: object) => Promise<void>, options?: IBindOptions): Promise<import("../QueueSubscriber").ICancelConsumption>;
28
+ export declare function bindRPCDomainBatch<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, domainName: string, consumerType: string, onEvents: (events: IEvent<TPayload>[]) => Promise<void>, options?: IBindOptions): Promise<import("../QueueSubscriber").ICancelConsumption>;
29
+ export declare function fetchDomain<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, domainName: string, consumerType: string, options?: IBindOptions, maxMessages?: number, breakCondition?: (nextEvent: IEvent<TPayload>) => boolean): Promise<IEventDomainMessage<TPayload>[]>;
27
30
  /**
28
31
  * Bind more event types into one single queue.
29
32
  * This queue name contains specified domainName and is prefixed by consumerType.
30
33
  */
31
34
  export declare function bindDomain<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, eventTypes: string[], domainName: string, consumerType: string, onEvent: (event: IEvent<TPayload>, headers: object) => Promise<void>, options?: IBindOptions): Promise<import("../QueueSubscriber").ICancelConsumption>;
35
+ /**
36
+ * Bind more event types into one single queue and consume them in batches.
37
+ * This queue name contains specified domainName and is prefixed by consumerType.
38
+ * One batch contains up to prefetchCount events and currently it has to be all of the same type.
39
+ * All events in the batch are in the same order as they were in the queue.
40
+ */
41
+ export declare function bindDomainBatch<TPayload extends IEventPayload>(amqpConnection: IAMQPConnection, eventTypes: string[], domainName: string, consumerType: string, onEvents: (events: IEvent<TPayload>[]) => Promise<void>, options?: IBindOptions, batchOptions?: {
42
+ /** Maximum time to wait before flushing the batch even if maxBatchSize is not reached */
43
+ flushBatchDelayMs?: number;
44
+ }): Promise<() => Promise<import("../QueueSubscriber").ICloseChannel>>;
32
45
  /**
33
46
  * Bind all events which were rejected with enqueue=false by bindMany function (the domain type only).
34
47
  */
@@ -46,19 +46,31 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
46
46
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
47
  }
48
48
  };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
49
52
  Object.defineProperty(exports, "__esModule", { value: true });
50
53
  exports.getDomainConsumeOptions = getDomainConsumeOptions;
51
54
  exports.processRPCDomain = processRPCDomain;
55
+ exports.processRPCDomainBatch = processRPCDomainBatch;
52
56
  exports.bindRPCDomain = bindRPCDomain;
57
+ exports.bindRPCDomainBatch = bindRPCDomainBatch;
58
+ exports.fetchDomain = fetchDomain;
53
59
  exports.bindDomain = bindDomain;
60
+ exports.bindDomainBatch = bindDomainBatch;
54
61
  exports.bindRejectedDomain = bindRejectedDomain;
55
62
  exports.fetchRejectedDomain = fetchRejectedDomain;
56
63
  exports.prepareDomain = prepareDomain;
57
64
  exports.prepareRejectedDomain = prepareRejectedDomain;
58
65
  var eventQueue_utils_1 = require("./eventQueue.utils");
66
+ var debug_1 = __importDefault(require("debug"));
67
+ var debug = (0, debug_1.default)('@signageos/lib:AMQP:eventQueueDomain');
59
68
  function getRPCDomainQueueName(consumerType, domainName) {
60
69
  return consumerType + '_' + domainName + '.rpc_v2';
61
70
  }
71
+ function getRPCDomainBatchQueueName(consumerType, domainName) {
72
+ return consumerType + '_' + domainName + '.rpc_batch';
73
+ }
62
74
  function getRejectedDomainQueueName(consumerType, domainName) {
63
75
  return 'events_rejected.' + (0, eventQueue_utils_1.getQueueName)(consumerType, domainName);
64
76
  }
@@ -89,11 +101,17 @@ var createRPCDomainChannel = function (amqpConnection, domainName, options) {
89
101
  });
90
102
  }); };
91
103
  };
92
- var createBindDomainChannel = function (amqpConnection, eventTypes, domainName, options) { return function () { return __awaiter(void 0, void 0, void 0, function () {
104
+ var createBindDomainChannel = function (amqpConnection, eventTypes, domainName, options) {
105
+ return createGenericBindDomainChannel(amqpConnection, eventTypes, 'single.' + domainName, options);
106
+ };
107
+ var createBindDomainBatchChannel = function (amqpConnection, eventTypes, domainName, options) {
108
+ return createGenericBindDomainChannel(amqpConnection, eventTypes, 'batch.' + domainName, options);
109
+ };
110
+ var createGenericBindDomainChannel = function (amqpConnection, eventTypes, namespace, options) { return function () { return __awaiter(void 0, void 0, void 0, function () {
93
111
  var channel, _i, eventTypes_1, eventType, exchangeName;
94
112
  return __generator(this, function (_a) {
95
113
  switch (_a.label) {
96
- case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(domainName, __assign(__assign({}, eventQueue_utils_1.OPTIONS), { prefetchCount: options.prefetchCount || eventQueue_utils_1.OPTIONS.prefetchCount }))];
114
+ case 0: return [4 /*yield*/, amqpConnection.channelProvider.getChannel(namespace, __assign(__assign({}, eventQueue_utils_1.OPTIONS), { prefetchCount: options.prefetchCount || eventQueue_utils_1.OPTIONS.prefetchCount }))];
97
115
  case 1:
98
116
  channel = _a.sent();
99
117
  return [4 /*yield*/, channel.assertExchange(eventQueue_utils_1.FAILED_EXCHANGE_NAME, 'direct')];
@@ -151,6 +169,27 @@ function processRPCDomain(amqpConnection_1, domainName_1, consumerType_1, event_
151
169
  });
152
170
  });
153
171
  }
172
+ function processRPCDomainBatch(amqpConnection_1, domainName_1, consumerType_1, events_1) {
173
+ return __awaiter(this, arguments, void 0, function (amqpConnection, domainName, consumerType, events, messageOptions, headers) {
174
+ var queueName, response;
175
+ if (messageOptions === void 0) { messageOptions = {}; }
176
+ if (headers === void 0) { headers = {}; }
177
+ return __generator(this, function (_a) {
178
+ switch (_a.label) {
179
+ case 0:
180
+ queueName = getRPCDomainBatchQueueName(consumerType, domainName);
181
+ return [4 /*yield*/, amqpConnection.queuePublisher.enqueueExpectingResponse(createRPCDomainChannel(amqpConnection, domainName), events, headers, '', // Default exchange and routingKey=queueName is used
182
+ queueName, messageOptions)];
183
+ case 1:
184
+ response = _a.sent();
185
+ if (response.status === 'error') {
186
+ throw new Error("Events batch RPC processing failed: ".concat(response.error));
187
+ }
188
+ return [2 /*return*/];
189
+ }
190
+ });
191
+ });
192
+ }
154
193
  function bindRPCDomain(amqpConnection_1, domainName_1, consumerType_1, onEvent_1) {
155
194
  return __awaiter(this, arguments, void 0, function (amqpConnection, domainName, consumerType, onEvent, options) {
156
195
  var queueName, consumeOptions;
@@ -187,6 +226,149 @@ function bindRPCDomain(amqpConnection_1, domainName_1, consumerType_1, onEvent_1
187
226
  });
188
227
  });
189
228
  }
229
+ function bindRPCDomainBatch(amqpConnection_1, domainName_1, consumerType_1, onEvents_1) {
230
+ return __awaiter(this, arguments, void 0, function (amqpConnection, domainName, consumerType, onEvents, options) {
231
+ var queueName, consumeOptions;
232
+ var _this = this;
233
+ if (options === void 0) { options = {}; }
234
+ return __generator(this, function (_a) {
235
+ switch (_a.label) {
236
+ case 0:
237
+ queueName = getRPCDomainBatchQueueName(consumerType, domainName);
238
+ consumeOptions = (0, eventQueue_utils_1.getConsumeOptionsByBindOptions)(options);
239
+ return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeRepeatable(createRPCDomainChannel(amqpConnection, domainName, options), queueName, [], // Default exchange and routingKey=queueName is used
240
+ function (events) { return __awaiter(_this, void 0, void 0, function () {
241
+ var error_2;
242
+ return __generator(this, function (_a) {
243
+ switch (_a.label) {
244
+ case 0:
245
+ _a.trys.push([0, 2, , 3]);
246
+ return [4 /*yield*/, onEvents(events)];
247
+ case 1:
248
+ _a.sent();
249
+ return [2 /*return*/, { status: 'success' }];
250
+ case 2:
251
+ error_2 = _a.sent();
252
+ return [2 /*return*/, {
253
+ status: 'error',
254
+ error: error_2.message,
255
+ }];
256
+ case 3: return [2 /*return*/];
257
+ }
258
+ });
259
+ }); }, __assign(__assign({}, consumeOptions), { respond: true }))];
260
+ case 1: return [2 /*return*/, _a.sent()];
261
+ }
262
+ });
263
+ });
264
+ }
265
+ function fetchDomain(amqpConnection_1, domainName_1, consumerType_1) {
266
+ return __awaiter(this, arguments, void 0, function (amqpConnection, domainName, consumerType, options, maxMessages, breakCondition) {
267
+ var queueName, channel, gotMessages, i, gotMessage, error_3, unacknowledgedMessagesCount, finishMessage, eventMessages;
268
+ var _this = this;
269
+ if (options === void 0) { options = {}; }
270
+ if (maxMessages === void 0) { maxMessages = 1; }
271
+ return __generator(this, function (_a) {
272
+ switch (_a.label) {
273
+ case 0:
274
+ if (maxMessages <= 0) {
275
+ return [2 /*return*/, []];
276
+ }
277
+ queueName = (0, eventQueue_utils_1.getQueueName)(consumerType, domainName);
278
+ return [4 /*yield*/, createBindDomainBatchChannel(amqpConnection, [], domainName, options)()];
279
+ case 1:
280
+ channel = _a.sent();
281
+ gotMessages = [];
282
+ _a.label = 2;
283
+ case 2:
284
+ _a.trys.push([2, 7, , 9]);
285
+ i = 0;
286
+ _a.label = 3;
287
+ case 3:
288
+ if (!(i < maxMessages)) return [3 /*break*/, 6];
289
+ return [4 /*yield*/, channel.get(queueName)];
290
+ case 4:
291
+ gotMessage = _a.sent();
292
+ if (!gotMessage) {
293
+ return [3 /*break*/, 6]; // no more messages in the queue
294
+ }
295
+ if (breakCondition === null || breakCondition === void 0 ? void 0 : breakCondition(gotMessage.message)) {
296
+ gotMessage.nack({ requeue: true });
297
+ return [3 /*break*/, 6]; // break condition met, stop fetching more messages
298
+ }
299
+ gotMessages.push(gotMessage);
300
+ _a.label = 5;
301
+ case 5:
302
+ i++;
303
+ return [3 /*break*/, 3];
304
+ case 6: return [3 /*break*/, 9];
305
+ case 7:
306
+ error_3 = _a.sent();
307
+ return [4 /*yield*/, channel.close()];
308
+ case 8:
309
+ _a.sent();
310
+ throw error_3;
311
+ case 9:
312
+ if (!(gotMessages.length === 0)) return [3 /*break*/, 11];
313
+ return [4 /*yield*/, channel.close()];
314
+ case 10:
315
+ _a.sent();
316
+ return [2 /*return*/, []];
317
+ case 11:
318
+ unacknowledgedMessagesCount = gotMessages.length;
319
+ finishMessage = function () { return __awaiter(_this, void 0, void 0, function () {
320
+ return __generator(this, function (_a) {
321
+ switch (_a.label) {
322
+ case 0:
323
+ unacknowledgedMessagesCount--;
324
+ if (!(unacknowledgedMessagesCount === 0)) return [3 /*break*/, 2];
325
+ return [4 /*yield*/, channel.close()];
326
+ case 1:
327
+ _a.sent();
328
+ _a.label = 2;
329
+ case 2: return [2 /*return*/];
330
+ }
331
+ });
332
+ }); };
333
+ eventMessages = gotMessages.map(function (gotMessage) {
334
+ return {
335
+ domain: domainName,
336
+ event: gotMessage.message,
337
+ ack: function () {
338
+ return __awaiter(this, void 0, void 0, function () {
339
+ return __generator(this, function (_a) {
340
+ switch (_a.label) {
341
+ case 0:
342
+ gotMessage.ack();
343
+ return [4 /*yield*/, finishMessage()];
344
+ case 1:
345
+ _a.sent();
346
+ return [2 /*return*/];
347
+ }
348
+ });
349
+ });
350
+ },
351
+ nack: function (nackOptions) {
352
+ return __awaiter(this, void 0, void 0, function () {
353
+ return __generator(this, function (_a) {
354
+ switch (_a.label) {
355
+ case 0:
356
+ gotMessage.nack(nackOptions);
357
+ return [4 /*yield*/, finishMessage()];
358
+ case 1:
359
+ _a.sent();
360
+ return [2 /*return*/];
361
+ }
362
+ });
363
+ });
364
+ },
365
+ };
366
+ });
367
+ return [2 /*return*/, eventMessages];
368
+ }
369
+ });
370
+ });
371
+ }
190
372
  /**
191
373
  * Bind more event types into one single queue.
192
374
  * This queue name contains specified domainName and is prefixed by consumerType.
@@ -210,6 +392,71 @@ function bindDomain(amqpConnection_1, eventTypes_2, domainName_1, consumerType_1
210
392
  });
211
393
  });
212
394
  }
395
+ /**
396
+ * Bind more event types into one single queue and consume them in batches.
397
+ * This queue name contains specified domainName and is prefixed by consumerType.
398
+ * One batch contains up to prefetchCount events and currently it has to be all of the same type.
399
+ * All events in the batch are in the same order as they were in the queue.
400
+ */
401
+ function bindDomainBatch(amqpConnection_1, eventTypes_2, domainName_1, consumerType_1, onEvents_1) {
402
+ return __awaiter(this, arguments, void 0, function (amqpConnection, eventTypes, domainName, consumerType, onEvents, options, batchOptions) {
403
+ var queueName, bindings, consumeOptions;
404
+ var _this = this;
405
+ var _a, _b;
406
+ if (options === void 0) { options = {}; }
407
+ return __generator(this, function (_c) {
408
+ switch (_c.label) {
409
+ case 0:
410
+ queueName = (0, eventQueue_utils_1.getQueueName)(consumerType, domainName);
411
+ bindings = eventTypes.map(function (eventType) {
412
+ var exchangeName = (0, eventQueue_utils_1.getExchangeName)(options, eventType);
413
+ return { exchangeName: exchangeName, routingKey: (0, eventQueue_utils_1.getBasicEventRoutingKey)(eventType), persistent: true };
414
+ });
415
+ consumeOptions = getDomainConsumeOptions(options, consumerType, domainName);
416
+ return [4 /*yield*/, amqpConnection.queueSubscriber.subscribeBatchExpectingConfirmationRepeatable({
417
+ createChannel: createBindDomainBatchChannel(amqpConnection, eventTypes, domainName, options),
418
+ queueName: queueName,
419
+ bindings: bindings,
420
+ onMessagesBatch: function (eventMessages) { return __awaiter(_this, void 0, void 0, function () {
421
+ var _i, eventMessages_1, msg, error_4, requeue, _a, eventMessages_2, msg;
422
+ return __generator(this, function (_b) {
423
+ switch (_b.label) {
424
+ case 0:
425
+ _b.trys.push([0, 2, , 3]);
426
+ return [4 /*yield*/, onEvents(eventMessages.map(function (msg) { return msg.message; }))];
427
+ case 1:
428
+ _b.sent();
429
+ for (_i = 0, eventMessages_1 = eventMessages; _i < eventMessages_1.length; _i++) {
430
+ msg = eventMessages_1[_i];
431
+ msg.ack();
432
+ }
433
+ return [3 /*break*/, 3];
434
+ case 2:
435
+ error_4 = _b.sent();
436
+ debug('Error processing event batch in domain %s: %O', domainName, error_4);
437
+ requeue = !options.deadLetterIfErred;
438
+ for (_a = 0, eventMessages_2 = eventMessages; _a < eventMessages_2.length; _a++) {
439
+ msg = eventMessages_2[_a];
440
+ msg.nack({ requeue: requeue }); // all messages are nacked
441
+ }
442
+ throw error_4;
443
+ case 3: return [2 /*return*/];
444
+ }
445
+ });
446
+ }); },
447
+ consumeOptions: consumeOptions,
448
+ maxBatchSize: (_a = options.prefetchCount) !== null && _a !== void 0 ? _a : 1,
449
+ flushBatchDelayMs: (_b = batchOptions === null || batchOptions === void 0 ? void 0 : batchOptions.flushBatchDelayMs) !== null && _b !== void 0 ? _b : 50,
450
+ shouldBreakBatch: function (currentMessages, nextMessage) {
451
+ var firstMessage = currentMessages.at(0);
452
+ return Boolean(firstMessage && firstMessage.message.type !== nextMessage.message.type); // only same event types are allowed in one batch
453
+ },
454
+ })];
455
+ case 1: return [2 /*return*/, _c.sent()];
456
+ }
457
+ });
458
+ });
459
+ }
213
460
  /**
214
461
  * Bind all events which were rejected with enqueue=false by bindMany function (the domain type only).
215
462
  */
@@ -246,7 +493,7 @@ function fetchRejectedDomain(amqpConnection, domainName, consumerType) {
246
493
  case 2:
247
494
  channel = _a.sent();
248
495
  finish = function () { return __awaiter(_this, void 0, void 0, function () {
249
- var error_2;
496
+ var error_5;
250
497
  return __generator(this, function (_a) {
251
498
  switch (_a.label) {
252
499
  case 0:
@@ -259,11 +506,11 @@ function fetchRejectedDomain(amqpConnection, domainName, consumerType) {
259
506
  _a.sent();
260
507
  return [3 /*break*/, 5];
261
508
  case 3:
262
- error_2 = _a.sent();
509
+ error_5 = _a.sent();
263
510
  return [4 /*yield*/, amqpConnection.pool.destroy(connection)];
264
511
  case 4:
265
512
  _a.sent();
266
- throw error_2;
513
+ throw error_5;
267
514
  case 5: return [2 /*return*/];
268
515
  }
269
516
  });
@@ -1 +1 @@
1
- {"version":3,"file":"eventQueueDomain.js","sourceRoot":"","sources":["../../../src/AMQP/EventSourcing/eventQueueDomain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eventQueueDomain.js","sourceRoot":"","sources":["../../../src/AMQP/EventSourcing/eventQueueDomain.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,27 @@
1
1
  import IConsumeOptions from './IConsumeOptions';
2
- import IChannel, { IBinding } from './IChannel';
2
+ import IChannel, { IBinding, IGotMessage } from './IChannel';
3
3
  import INackOptions from './INackOptions';
4
4
  export type ICloseChannel = () => Promise<void>;
5
5
  export type ICancelConsumption = () => Promise<ICloseChannel>;
6
+ type CreateBatchCallbackArgs<TMessage> = {
7
+ onMessagesBatch: (messages: IGotMessage<TMessage>[]) => Promise<void>;
8
+ maxBatchSize: number;
9
+ flushBatchDelayMs: number;
10
+ shouldBreakBatch?: (currentMessages: IGotMessage<TMessage>[], nextMessage: IGotMessage<TMessage>) => boolean;
11
+ };
12
+ type SubscribeBatchExpectingConfirmationArgs<TMessage> = {
13
+ createChannel: () => Promise<IChannel<TMessage>>;
14
+ queueName: string;
15
+ bindings: IBinding[];
16
+ consumeOptions?: IConsumeOptions;
17
+ onEnded?: () => void;
18
+ } & CreateBatchCallbackArgs<TMessage>;
6
19
  export default class QueueSubscriber {
7
20
  subscribe<TMessage, TResponseMessage>(createChannel: () => Promise<IChannel<TMessage>>, queueName: string, bindings: IBinding[], onMessage: (message: TMessage, headers: object) => Promise<TResponseMessage>, consumeOptions?: IConsumeOptions, onEnded?: () => void): Promise<ICancelConsumption>;
8
21
  subscribeRepeatable<TMessage, TResponseMessage>(createChannel: () => Promise<IChannel<TMessage>>, queueName: string, bindings: IBinding[], onMessage: (message: TMessage, headers: object) => Promise<TResponseMessage>, consumeOptions?: IConsumeOptions): Promise<ICancelConsumption>;
9
22
  subscribeExpectingConfirmation<TMessage, TResponseMessage>(createChannel: () => Promise<IChannel<TMessage>>, queueName: string, bindings: IBinding[], onMessage: (message: TMessage, headers: object, ack: () => void, nack: (options?: INackOptions) => void) => Promise<TResponseMessage>, consumeOptions?: IConsumeOptions, onEnded?: () => void): Promise<ICancelConsumption>;
10
23
  subscribeExpectingConfirmationRepeatable<TMessage, TResponseMessage>(createChannel: () => Promise<IChannel<TMessage>>, queueName: string, bindings: IBinding[], onMessage: (message: TMessage, headers: object, ack: () => void, nack: (options?: INackOptions) => void) => Promise<TResponseMessage>, consumeOptions?: IConsumeOptions): Promise<ICancelConsumption>;
24
+ subscribeBatchExpectingConfirmationRepeatable<TMessage>(args: SubscribeBatchExpectingConfirmationArgs<TMessage>): Promise<() => Promise<ICloseChannel>>;
25
+ subscribeBatchExpectingConfirmation<TMessage>({ createChannel, queueName, bindings, onMessagesBatch, consumeOptions, onEnded, maxBatchSize, flushBatchDelayMs, shouldBreakBatch, }: SubscribeBatchExpectingConfirmationArgs<TMessage>): Promise<() => Promise<ICloseChannel>>;
11
26
  }
27
+ export {};
@@ -1,4 +1,38 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
2
36
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
37
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
38
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -39,8 +73,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
73
  return (mod && mod.__esModule) ? mod : { "default": mod };
40
74
  };
41
75
  Object.defineProperty(exports, "__esModule", { value: true });
76
+ var _ = __importStar(require("lodash"));
42
77
  var QueueRepeatableSubscription_1 = __importDefault(require("./QueueRepeatableSubscription"));
43
78
  var debug_1 = __importDefault(require("debug"));
79
+ var deferredStream_1 = require("../Promise/deferredStream");
44
80
  var debug = (0, debug_1.default)('@signageos/lib:AMQP:QueueSubscriber');
45
81
  var QueueSubscriber = /** @class */ (function () {
46
82
  function QueueSubscriber() {
@@ -157,7 +193,129 @@ var QueueSubscriber = /** @class */ (function () {
157
193
  });
158
194
  });
159
195
  };
196
+ QueueSubscriber.prototype.subscribeBatchExpectingConfirmationRepeatable = function (args) {
197
+ return __awaiter(this, void 0, void 0, function () {
198
+ var repeatableSubscription;
199
+ var _this = this;
200
+ return __generator(this, function (_a) {
201
+ switch (_a.label) {
202
+ case 0:
203
+ repeatableSubscription = new QueueRepeatableSubscription_1.default(function (onEnded) {
204
+ return _this.subscribeBatchExpectingConfirmation(__assign(__assign({}, args), { onEnded: onEnded }));
205
+ });
206
+ return [4 /*yield*/, repeatableSubscription.subscribe()];
207
+ case 1:
208
+ _a.sent();
209
+ debug('Messages subscribed expecting confirmation in batch: %s', args.queueName, args.bindings);
210
+ return [2 /*return*/, function () { return repeatableSubscription.cancel(); }];
211
+ }
212
+ });
213
+ });
214
+ };
215
+ QueueSubscriber.prototype.subscribeBatchExpectingConfirmation = function (_a) {
216
+ return __awaiter(this, arguments, void 0, function (_b) {
217
+ var channel, cancelConsumption;
218
+ var _this = this;
219
+ var createChannel = _b.createChannel, queueName = _b.queueName, bindings = _b.bindings, onMessagesBatch = _b.onMessagesBatch, consumeOptions = _b.consumeOptions, onEnded = _b.onEnded, maxBatchSize = _b.maxBatchSize, flushBatchDelayMs = _b.flushBatchDelayMs, shouldBreakBatch = _b.shouldBreakBatch;
220
+ return __generator(this, function (_c) {
221
+ switch (_c.label) {
222
+ case 0: return [4 /*yield*/, createChannel()];
223
+ case 1:
224
+ channel = _c.sent();
225
+ return [4 /*yield*/, channel.consume(queueName, bindings, wrapCallbackLegacyArgsToGotMessage(createBatchedCallback({ onMessagesBatch: onMessagesBatch, maxBatchSize: maxBatchSize, flushBatchDelayMs: flushBatchDelayMs, shouldBreakBatch: shouldBreakBatch })), consumeOptions, onEnded)];
226
+ case 2:
227
+ cancelConsumption = _c.sent();
228
+ debug('Messages subscribed expecting confirmation in batch: %s', queueName, bindings);
229
+ return [2 /*return*/, function () { return __awaiter(_this, void 0, void 0, function () {
230
+ var error_3;
231
+ return __generator(this, function (_a) {
232
+ switch (_a.label) {
233
+ case 0:
234
+ _a.trys.push([0, 2, , 3]);
235
+ return [4 /*yield*/, cancelConsumption()];
236
+ case 1:
237
+ _a.sent();
238
+ return [3 /*break*/, 3];
239
+ case 2:
240
+ error_3 = _a.sent();
241
+ console.error("Could not cancel consumption in QueueSubscriber:subscribeBatchExpectingConfirmation method", queueName, error_3);
242
+ return [3 /*break*/, 3];
243
+ case 3: return [2 /*return*/, function () { return channel.close(); }];
244
+ }
245
+ });
246
+ }); }];
247
+ }
248
+ });
249
+ });
250
+ };
160
251
  return QueueSubscriber;
161
252
  }());
162
253
  exports.default = QueueSubscriber;
254
+ function wrapCallbackLegacyArgsToGotMessage(callback) {
255
+ var _this = this;
256
+ return function (message, headers, ack, nack, fields) { return __awaiter(_this, void 0, void 0, function () {
257
+ return __generator(this, function (_a) {
258
+ switch (_a.label) {
259
+ case 0: return [4 /*yield*/, callback({ message: message, headers: headers, fields: fields, ack: ack, nack: nack })];
260
+ case 1:
261
+ _a.sent();
262
+ return [2 /*return*/];
263
+ }
264
+ });
265
+ }); };
266
+ }
267
+ function createBatchedCallback(_a) {
268
+ var _this = this;
269
+ var onMessagesBatch = _a.onMessagesBatch, maxBatchSize = _a.maxBatchSize, flushBatchDelayMs = _a.flushBatchDelayMs, shouldBreakBatch = _a.shouldBreakBatch;
270
+ debug('batchCallback', { maxBatchSize: maxBatchSize });
271
+ var currentBatch = [];
272
+ var deferredStream = (0, deferredStream_1.createDeferredStream)();
273
+ function processMessagesBatch() {
274
+ return __awaiter(this, void 0, void 0, function () {
275
+ var batchToSend;
276
+ return __generator(this, function (_a) {
277
+ switch (_a.label) {
278
+ case 0:
279
+ debug('processMessagesBatch', { currentBatchLength: currentBatch.length });
280
+ // Nothing to send
281
+ if (currentBatch.length === 0) {
282
+ return [2 /*return*/];
283
+ }
284
+ batchToSend = currentBatch;
285
+ currentBatch = [];
286
+ return [4 /*yield*/, onMessagesBatch(batchToSend)];
287
+ case 1:
288
+ _a.sent();
289
+ deferredStream.resolve();
290
+ return [2 /*return*/];
291
+ }
292
+ });
293
+ });
294
+ }
295
+ var debouncedProcessMessagesBatch = _.debounce(processMessagesBatch, flushBatchDelayMs);
296
+ return function (message) { return __awaiter(_this, void 0, void 0, function () {
297
+ return __generator(this, function (_a) {
298
+ switch (_a.label) {
299
+ case 0:
300
+ debug('batchCallback message', { message: message });
301
+ if (shouldBreakBatch === null || shouldBreakBatch === void 0 ? void 0 : shouldBreakBatch(currentBatch, message)) {
302
+ debug('batchCallback breaking batch', { message: message });
303
+ debouncedProcessMessagesBatch.flush();
304
+ }
305
+ debug('batchCallback adding to batch', { currentBatchLength: currentBatch.length });
306
+ currentBatch.push(message);
307
+ debouncedProcessMessagesBatch();
308
+ if (currentBatch.length >= maxBatchSize) {
309
+ debug('batchCallback max batch size reached', { currentBatchLength: currentBatch.length });
310
+ debouncedProcessMessagesBatch.flush();
311
+ }
312
+ return [4 /*yield*/, deferredStream.promise];
313
+ case 1:
314
+ _a.sent();
315
+ debug('batchCallback message processed', { message: message });
316
+ return [2 /*return*/];
317
+ }
318
+ });
319
+ }); };
320
+ }
163
321
  //# sourceMappingURL=QueueSubscriber.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueueSubscriber.js","sourceRoot":"","sources":["../../src/AMQP/QueueSubscriber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueueSubscriber.js","sourceRoot":"","sources":["../../src/AMQP/QueueSubscriber.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signageos/lib",
3
- "version": "23.8.2-master.4407",
3
+ "version": "23.9.0",
4
4
  "main": "./dist",
5
5
  "type": "commonjs",
6
6
  "files": [
@@ -39,7 +39,7 @@
39
39
  "author": "Michael Zabka <zabka.michael@gmail.com>",
40
40
  "license": "MIT",
41
41
  "dependencies": {
42
- "@signageos/lib-ci": "23.8.2-master.4407",
42
+ "@signageos/lib-ci": "23.9.0",
43
43
  "async-lock": "1.4.0",
44
44
  "auth0": "4.4.1",
45
45
  "basic-auth": "2.0.1",