@message-queue-toolkit/core 19.0.0 → 21.0.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.
Files changed (136) hide show
  1. package/dist/errors/DoNotProcessError.js +11 -0
  2. package/dist/errors/DoNotProcessError.js.map +1 -0
  3. package/dist/{lib/errors → errors}/Errors.js +4 -10
  4. package/dist/errors/Errors.js.map +1 -0
  5. package/dist/errors/RetryMessageLaterError.js +11 -0
  6. package/dist/errors/RetryMessageLaterError.js.map +1 -0
  7. package/dist/{lib/events → events}/DomainEventEmitter.d.ts +4 -4
  8. package/dist/{lib/events → events}/DomainEventEmitter.js +9 -13
  9. package/dist/events/DomainEventEmitter.js.map +1 -0
  10. package/dist/{lib/events → events}/EventRegistry.d.ts +1 -1
  11. package/dist/{lib/events → events}/EventRegistry.js +2 -5
  12. package/dist/events/EventRegistry.js.map +1 -0
  13. package/dist/events/baseEventSchemas.d.ts +1 -0
  14. package/dist/events/baseEventSchemas.js +2 -0
  15. package/dist/events/baseEventSchemas.js.map +1 -0
  16. package/dist/events/eventTypes.d.ts +1 -0
  17. package/dist/events/eventTypes.js +2 -0
  18. package/dist/{lib/events → events}/eventTypes.js.map +1 -1
  19. package/dist/{lib/events → events}/fakes/FakeListener.d.ts +1 -1
  20. package/dist/events/fakes/FakeListener.js +16 -0
  21. package/dist/events/fakes/FakeListener.js.map +1 -0
  22. package/dist/index.d.ts +30 -29
  23. package/dist/index.js +25 -53
  24. package/dist/index.js.map +1 -1
  25. package/dist/message-deduplication/messageDeduplicationTypes.d.ts +42 -0
  26. package/dist/message-deduplication/messageDeduplicationTypes.js +16 -0
  27. package/dist/message-deduplication/messageDeduplicationTypes.js.map +1 -0
  28. package/dist/{lib/messages → messages}/MetadataFiller.d.ts +3 -3
  29. package/dist/{lib/messages → messages}/MetadataFiller.js +3 -7
  30. package/dist/messages/MetadataFiller.js.map +1 -0
  31. package/dist/messages/baseMessageSchemas.d.ts +1 -0
  32. package/dist/messages/baseMessageSchemas.js +2 -0
  33. package/dist/messages/baseMessageSchemas.js.map +1 -0
  34. package/dist/{lib/payload-store → payload-store}/JsonStreamStringifySerializer.d.ts +1 -1
  35. package/dist/payload-store/JsonStreamStringifySerializer.js +25 -0
  36. package/dist/payload-store/JsonStreamStringifySerializer.js.map +1 -0
  37. package/dist/payload-store/offloadedPayloadMessageSchemas.js +16 -0
  38. package/dist/payload-store/offloadedPayloadMessageSchemas.js.map +1 -0
  39. package/dist/payload-store/payloadStoreTypes.js +4 -0
  40. package/dist/payload-store/payloadStoreTypes.js.map +1 -0
  41. package/dist/{lib/queues → queues}/AbstractPublisherManager.d.ts +7 -7
  42. package/dist/{lib/queues → queues}/AbstractPublisherManager.js +1 -5
  43. package/dist/queues/AbstractPublisherManager.js.map +1 -0
  44. package/dist/{lib/queues → queues}/AbstractQueueService.d.ts +45 -10
  45. package/dist/{lib/queues → queues}/AbstractQueueService.js +141 -42
  46. package/dist/queues/AbstractQueueService.js.map +1 -0
  47. package/dist/{lib/queues → queues}/HandlerContainer.d.ts +2 -2
  48. package/dist/{lib/queues → queues}/HandlerContainer.js +8 -16
  49. package/dist/queues/HandlerContainer.js.map +1 -0
  50. package/dist/{lib/queues → queues}/HandlerSpy.d.ts +4 -4
  51. package/dist/{lib/queues → queues}/HandlerSpy.js +22 -31
  52. package/dist/queues/HandlerSpy.js.map +1 -0
  53. package/dist/{lib/queues → queues}/MessageSchemaContainer.js +1 -5
  54. package/dist/queues/MessageSchemaContainer.js.map +1 -0
  55. package/dist/{lib/types → types}/MessageQueueTypes.d.ts +11 -2
  56. package/dist/types/MessageQueueTypes.js +2 -0
  57. package/dist/types/MessageQueueTypes.js.map +1 -0
  58. package/dist/{lib/types → types}/queueOptionsTypes.d.ts +14 -4
  59. package/dist/types/queueOptionsTypes.js +2 -0
  60. package/dist/types/queueOptionsTypes.js.map +1 -0
  61. package/dist/utils/dateUtils.js +11 -0
  62. package/dist/utils/dateUtils.js.map +1 -0
  63. package/dist/utils/envUtils.js +9 -0
  64. package/dist/utils/envUtils.js.map +1 -0
  65. package/dist/{lib/utils → utils}/matchUtils.js +6 -13
  66. package/dist/utils/matchUtils.js.map +1 -0
  67. package/dist/{lib/utils → utils}/parseUtils.d.ts +1 -1
  68. package/dist/{lib/utils → utils}/parseUtils.js +1 -4
  69. package/dist/utils/parseUtils.js.map +1 -0
  70. package/dist/utils/queueUtils.js +4 -0
  71. package/dist/utils/queueUtils.js.map +1 -0
  72. package/dist/{lib/utils → utils}/streamUtils.js +1 -4
  73. package/dist/utils/streamUtils.js.map +1 -0
  74. package/dist/utils/toDateProcessor.js +2 -0
  75. package/dist/utils/toDateProcessor.js.map +1 -0
  76. package/dist/{lib/utils → utils}/waitUtils.js +1 -5
  77. package/dist/utils/waitUtils.js.map +1 -0
  78. package/package.json +69 -64
  79. package/dist/lib/errors/DoNotProcessError.js +0 -15
  80. package/dist/lib/errors/DoNotProcessError.js.map +0 -1
  81. package/dist/lib/errors/Errors.js.map +0 -1
  82. package/dist/lib/errors/RetryMessageLaterError.js +0 -15
  83. package/dist/lib/errors/RetryMessageLaterError.js.map +0 -1
  84. package/dist/lib/events/DomainEventEmitter.js.map +0 -1
  85. package/dist/lib/events/EventRegistry.js.map +0 -1
  86. package/dist/lib/events/baseEventSchemas.d.ts +0 -1
  87. package/dist/lib/events/baseEventSchemas.js +0 -11
  88. package/dist/lib/events/baseEventSchemas.js.map +0 -1
  89. package/dist/lib/events/eventTypes.d.ts +0 -1
  90. package/dist/lib/events/eventTypes.js +0 -3
  91. package/dist/lib/events/fakes/FakeListener.js +0 -20
  92. package/dist/lib/events/fakes/FakeListener.js.map +0 -1
  93. package/dist/lib/messages/MetadataFiller.js.map +0 -1
  94. package/dist/lib/messages/baseMessageSchemas.d.ts +0 -1
  95. package/dist/lib/messages/baseMessageSchemas.js +0 -10
  96. package/dist/lib/messages/baseMessageSchemas.js.map +0 -1
  97. package/dist/lib/payload-store/JsonStreamStringifySerializer.js +0 -30
  98. package/dist/lib/payload-store/JsonStreamStringifySerializer.js.map +0 -1
  99. package/dist/lib/payload-store/offloadedPayloadMessageSchemas.js +0 -20
  100. package/dist/lib/payload-store/offloadedPayloadMessageSchemas.js.map +0 -1
  101. package/dist/lib/payload-store/payloadStoreTypes.js +0 -7
  102. package/dist/lib/payload-store/payloadStoreTypes.js.map +0 -1
  103. package/dist/lib/queues/AbstractPublisherManager.js.map +0 -1
  104. package/dist/lib/queues/AbstractQueueService.js.map +0 -1
  105. package/dist/lib/queues/HandlerContainer.js.map +0 -1
  106. package/dist/lib/queues/HandlerSpy.js.map +0 -1
  107. package/dist/lib/queues/MessageSchemaContainer.js.map +0 -1
  108. package/dist/lib/types/MessageQueueTypes.js +0 -3
  109. package/dist/lib/types/MessageQueueTypes.js.map +0 -1
  110. package/dist/lib/types/queueOptionsTypes.js +0 -3
  111. package/dist/lib/types/queueOptionsTypes.js.map +0 -1
  112. package/dist/lib/utils/dateUtils.js +0 -15
  113. package/dist/lib/utils/dateUtils.js.map +0 -1
  114. package/dist/lib/utils/envUtils.js +0 -13
  115. package/dist/lib/utils/envUtils.js.map +0 -1
  116. package/dist/lib/utils/matchUtils.js.map +0 -1
  117. package/dist/lib/utils/parseUtils.js.map +0 -1
  118. package/dist/lib/utils/queueUtils.js +0 -8
  119. package/dist/lib/utils/queueUtils.js.map +0 -1
  120. package/dist/lib/utils/streamUtils.js.map +0 -1
  121. package/dist/lib/utils/toDateProcessor.js +0 -6
  122. package/dist/lib/utils/toDateProcessor.js.map +0 -1
  123. package/dist/lib/utils/waitUtils.js.map +0 -1
  124. /package/dist/{lib/errors → errors}/DoNotProcessError.d.ts +0 -0
  125. /package/dist/{lib/errors → errors}/Errors.d.ts +0 -0
  126. /package/dist/{lib/errors → errors}/RetryMessageLaterError.d.ts +0 -0
  127. /package/dist/{lib/payload-store → payload-store}/offloadedPayloadMessageSchemas.d.ts +0 -0
  128. /package/dist/{lib/payload-store → payload-store}/payloadStoreTypes.d.ts +0 -0
  129. /package/dist/{lib/queues → queues}/MessageSchemaContainer.d.ts +0 -0
  130. /package/dist/{lib/utils → utils}/dateUtils.d.ts +0 -0
  131. /package/dist/{lib/utils → utils}/envUtils.d.ts +0 -0
  132. /package/dist/{lib/utils → utils}/matchUtils.d.ts +0 -0
  133. /package/dist/{lib/utils → utils}/queueUtils.d.ts +0 -0
  134. /package/dist/{lib/utils → utils}/streamUtils.d.ts +0 -0
  135. /package/dist/{lib/utils → utils}/toDateProcessor.d.ts +0 -0
  136. /package/dist/{lib/utils → utils}/waitUtils.d.ts +0 -0
@@ -1,17 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HandlerSpy = void 0;
4
- exports.isHandlerSpy = isHandlerSpy;
5
- exports.resolveHandlerSpy = resolveHandlerSpy;
6
- const node_crypto_1 = require("node:crypto");
7
- const node_core_1 = require("@lokalise/node-core");
8
- const toad_cache_1 = require("toad-cache");
9
- const matchUtils_1 = require("../utils/matchUtils");
10
- function isHandlerSpy(value) {
11
- return ((0, node_core_1.isObject)(value) &&
1
+ import { randomUUID } from 'node:crypto';
2
+ import { isObject } from '@lokalise/node-core';
3
+ import { Fifo } from 'toad-cache';
4
+ import { objectMatches } from "../utils/matchUtils.js";
5
+ export function isHandlerSpy(value) {
6
+ return (isObject(value) &&
12
7
  (value instanceof HandlerSpy || value.name === 'HandlerSpy'));
13
8
  }
14
- class HandlerSpy {
9
+ export class HandlerSpy {
15
10
  name = 'HandlerSpy';
16
11
  // biome-ignore lint/suspicious/noExplicitAny: This is expected
17
12
  messageBuffer;
@@ -19,31 +14,29 @@ class HandlerSpy {
19
14
  messageTypeField;
20
15
  spyPromises;
21
16
  constructor(params = {}) {
22
- this.messageBuffer = new toad_cache_1.Fifo(params.bufferSize ?? 100);
17
+ this.messageBuffer = new Fifo(params.bufferSize ?? 100);
23
18
  // @ts-ignore
24
19
  this.messageIdField = params.messageIdField ?? 'id';
25
20
  // @ts-ignore
26
21
  this.messageTypeField = params.messageTypeField ?? 'type';
27
22
  this.spyPromises = [];
28
23
  }
29
- messageMatchesFilter(spyResult, fields, processingResult) {
30
- return ((0, matchUtils_1.objectMatches)(fields, spyResult.message) &&
31
- (!processingResult || spyResult.processingResult === processingResult));
24
+ messageMatchesFilter(spyResult, fields, status) {
25
+ return (objectMatches(fields, spyResult.message) &&
26
+ (!status || spyResult.processingResult.status === status));
32
27
  }
33
- waitForMessageWithId(id, processingResult) {
28
+ waitForMessageWithId(id, status) {
34
29
  return this.waitForMessage(
35
- // @ts-ignore
36
- {
37
- [this.messageIdField]: id,
38
- }, processingResult);
30
+ // @ts-expect-error
31
+ { [this.messageIdField]: id }, status);
39
32
  }
40
- checkForMessage(expectedFields, expectedProcessingResult) {
33
+ checkForMessage(expectedFields, status) {
41
34
  return Object.values(this.messageBuffer.items).find((spyResult) => {
42
- return this.messageMatchesFilter(spyResult.value, expectedFields, expectedProcessingResult);
35
+ return this.messageMatchesFilter(spyResult.value, expectedFields, status);
43
36
  })?.value;
44
37
  }
45
- waitForMessage(expectedFields, expectedProcessingResult) {
46
- const processedMessageEntry = this.checkForMessage(expectedFields, expectedProcessingResult);
38
+ waitForMessage(expectedFields, status) {
39
+ const processedMessageEntry = this.checkForMessage(expectedFields, status);
47
40
  if (processedMessageEntry) {
48
41
  return Promise.resolve(processedMessageEntry);
49
42
  }
@@ -53,7 +46,7 @@ class HandlerSpy {
53
46
  });
54
47
  this.spyPromises.push({
55
48
  promise: spyPromise,
56
- processingResult: expectedProcessingResult,
49
+ status,
57
50
  fields: expectedFields,
58
51
  // @ts-ignore
59
52
  resolve,
@@ -65,7 +58,7 @@ class HandlerSpy {
65
58
  this.messageBuffer.clear();
66
59
  }
67
60
  addProcessedMessage(processingResult, messageId) {
68
- const resolvedMessageId = processingResult.message?.[this.messageIdField] ?? messageId ?? (0, node_crypto_1.randomUUID)();
61
+ const resolvedMessageId = processingResult.message?.[this.messageIdField] ?? messageId ?? randomUUID();
69
62
  const resolvedMessageType = processingResult.message?.[this.messageTypeField] ?? 'FAILED_TO_RESOLVE';
70
63
  // If we failed to parse message, let's store id and type at least
71
64
  const resolvedProcessingResult = processingResult.message
@@ -83,10 +76,9 @@ class HandlerSpy {
83
76
  .substring(7)}`;
84
77
  this.messageBuffer.set(cacheId, resolvedProcessingResult);
85
78
  const foundPromise = this.spyPromises.find((spyPromise) => {
86
- return this.messageMatchesFilter(resolvedProcessingResult, spyPromise.fields, spyPromise.processingResult);
79
+ return this.messageMatchesFilter(resolvedProcessingResult, spyPromise.fields, spyPromise.status);
87
80
  });
88
81
  if (foundPromise) {
89
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call
90
82
  foundPromise.resolve(processingResult);
91
83
  const index = this.spyPromises.indexOf(foundPromise);
92
84
  if (index > -1) {
@@ -96,8 +88,7 @@ class HandlerSpy {
96
88
  }
97
89
  }
98
90
  }
99
- exports.HandlerSpy = HandlerSpy;
100
- function resolveHandlerSpy(queueOptions) {
91
+ export function resolveHandlerSpy(queueOptions) {
101
92
  if (isHandlerSpy(queueOptions.handlerSpy)) {
102
93
  return queueOptions.handlerSpy;
103
94
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HandlerSpy.js","sourceRoot":"","sources":["../../lib/queues/HandlerSpy.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MessageSchemaContainer = void 0;
4
- class MessageSchemaContainer {
1
+ export class MessageSchemaContainer {
5
2
  messageDefinitions;
6
3
  messageSchemas;
7
4
  messageTypeField;
@@ -38,5 +35,4 @@ class MessageSchemaContainer {
38
35
  }, {});
39
36
  }
40
37
  }
41
- exports.MessageSchemaContainer = MessageSchemaContainer;
42
38
  //# sourceMappingURL=MessageSchemaContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageSchemaContainer.js","sourceRoot":"","sources":["../../lib/queues/MessageSchemaContainer.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,sBAAsB;IACjB,kBAAkB,CAAuC;IACxD,cAAc,CAAkD;IAChE,gBAAgB,CAAQ;IAEzC,YAAY,OAA6D;QACvE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;QAChD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACnE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAA;IACxF,CAAC;IAEM,aAAa;IAClB,+DAA+D;IAC/D,OAA4B;QAE5B,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QAClE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,KAAK,EAAE,IAAI,KAAK,CAAC,6BAA6B,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;aAChF,CAAA;QACH,CAAC;QACD,OAAO;YACL,MAAM,EAAE,MAAM;SACf,CAAA;IACH,CAAC;IAEO,gBAAgB,CACtB,gBAA6D;QAE7D,OAAO,gBAAgB,CAAC,MAAM,CAC5B,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,aAAa;YACb,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAA;YACvD,OAAO,GAAG,CAAA;QACZ,CAAC,EACD,EAAsD,CACvD,CAAA;IACH,CAAC;IAEO,qBAAqB,CAC3B,oBAAsD;QAEtD,OAAO,oBAAoB,CAAC,MAAM,CAChC,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE;YAClB,aAAa;YACb,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,UAAU,CAAA;YAC/E,OAAO,GAAG,CAAA;QACZ,CAAC,EACD,EAA2C,CAC5C,CAAA;IACH,CAAC;CACF"}
@@ -1,11 +1,20 @@
1
1
  import type { CommonLogger, TransactionObservabilityManager } from '@lokalise/node-core';
2
2
  import type { ZodSchema } from 'zod';
3
- import type { PublicHandlerSpy } from '../queues/HandlerSpy';
3
+ import type { PublicHandlerSpy } from '../queues/HandlerSpy.ts';
4
4
  export interface QueueConsumer {
5
5
  start(): Promise<unknown>;
6
6
  close(): Promise<unknown>;
7
7
  }
8
- export type MessageProcessingResult = 'retryLater' | 'consumed' | 'published' | 'error' | 'invalid_message';
8
+ export type MessageProcessingResult = {
9
+ status: 'retryLater';
10
+ } | {
11
+ status: 'consumed' | 'published';
12
+ skippedAsDuplicate?: boolean;
13
+ } | {
14
+ status: 'error';
15
+ errorReason: 'invalidMessage' | 'handlerError' | 'retryLaterExceeded';
16
+ };
17
+ export type MessageProcessingResultStatus = MessageProcessingResult['status'];
9
18
  export interface SyncPublisher<MessagePayloadType extends object, MessageOptions> {
10
19
  handlerSpy: PublicHandlerSpy<MessagePayloadType>;
11
20
  publish(message: MessagePayloadType, options: MessageOptions): void;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=MessageQueueTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageQueueTypes.js","sourceRoot":"","sources":["../../lib/types/MessageQueueTypes.ts"],"names":[],"mappings":""}
@@ -1,9 +1,10 @@
1
1
  import type { CommonLogger, ErrorReporter, ErrorResolver } from '@lokalise/node-core';
2
2
  import type { ZodSchema } from 'zod';
3
- import type { PayloadStoreConfig } from '../payload-store/payloadStoreTypes';
4
- import type { MessageHandlerConfig } from '../queues/HandlerContainer';
5
- import type { HandlerSpy, HandlerSpyParams } from '../queues/HandlerSpy';
6
- import type { MessageProcessingResult, TransactionObservabilityManager } from './MessageQueueTypes';
3
+ import type { PayloadStoreConfig } from '../payload-store/payloadStoreTypes.ts';
4
+ import type { MessageHandlerConfig } from '../queues/HandlerContainer.ts';
5
+ import type { HandlerSpy, HandlerSpyParams } from '../queues/HandlerSpy.ts';
6
+ import type { MessageDeduplicationConfig } from '../message-deduplication/messageDeduplicationTypes.ts';
7
+ import type { MessageProcessingResult, TransactionObservabilityManager } from './MessageQueueTypes.ts';
7
8
  export type QueueDependencies = {
8
9
  errorReporter: ErrorReporter;
9
10
  logger: CommonLogger;
@@ -43,6 +44,10 @@ export type ProcessedMessageMetadata<MessagePayloadSchemas extends object = obje
43
44
  * The timestamp when the processing of the message ended, in milliseconds since the epoch
44
45
  */
45
46
  messageProcessingEndTimestamp: number;
47
+ /**
48
+ * ID used for the message deduplication, in case it's enabled
49
+ */
50
+ messageDeduplicationId?: string;
46
51
  };
47
52
  export interface MessageMetricsManager<MessagePayloadSchemas extends object = object> {
48
53
  /**
@@ -59,10 +64,13 @@ export type CommonQueueOptions = {
59
64
  messageTypeField: string;
60
65
  messageIdField?: string;
61
66
  messageTimestampField?: string;
67
+ messageDeduplicationIdField?: string;
68
+ messageDeduplicationOptionsField?: string;
62
69
  handlerSpy?: HandlerSpy<object> | HandlerSpyParams | boolean;
63
70
  logMessages?: boolean;
64
71
  deletionConfig?: DeletionConfig;
65
72
  payloadStoreConfig?: PayloadStoreConfig;
73
+ messageDeduplicationConfig?: MessageDeduplicationConfig;
66
74
  };
67
75
  export type CommonCreationConfigType = {
68
76
  updateAttributesIfExists?: boolean;
@@ -81,6 +89,7 @@ type ExistingQueueOptions<QueueLocatorType extends object> = {
81
89
  export type QueueOptions<CreationConfigType extends CommonCreationConfigType, QueueLocatorType extends object> = CommonQueueOptions & (NewQueueOptions<CreationConfigType> & ExistingQueueOptions<QueueLocatorType>);
82
90
  export type QueuePublisherOptions<CreationConfigType extends CommonCreationConfigType, QueueLocatorType extends object, MessagePayloadSchemas extends object> = QueueOptions<CreationConfigType, QueueLocatorType> & {
83
91
  messageSchemas: readonly ZodSchema<MessagePayloadSchemas>[];
92
+ enablePublisherDeduplication?: boolean;
84
93
  };
85
94
  export type DeadLetterQueueOptions<CreationConfigType extends object, QueueLocatorType extends object, DeadLetterQueueIntegrationOptions extends object> = {
86
95
  deletionConfig?: DeletionConfig;
@@ -89,5 +98,6 @@ export type QueueConsumerOptions<CreationConfigType extends object, QueueLocator
89
98
  handlers: MessageHandlerConfig<MessagePayloadSchemas, ExecutionContext, PrehandlerOutput>[];
90
99
  deadLetterQueue?: DeadLetterQueueOptions<DeadLetterQueueCreationConfigType, DeadLetterQueueQueueLocatorType, DeadLetterQueueIntegrationOptions>;
91
100
  maxRetryDuration?: number;
101
+ enableConsumerDeduplication?: boolean;
92
102
  };
93
103
  export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=queueOptionsTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueOptionsTypes.js","sourceRoot":"","sources":["../../lib/types/queueOptionsTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Check if the retry date is exceeded
3
+ *
4
+ * @param timestamp
5
+ * @param maxRetryDuration max retry duration in seconds
6
+ */
7
+ export const isRetryDateExceeded = (timestamp, maxRetryDuration) => {
8
+ const lastRetryDate = new Date(timestamp.getTime() + maxRetryDuration * 1000);
9
+ return new Date() > lastRetryDate;
10
+ };
11
+ //# sourceMappingURL=dateUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dateUtils.js","sourceRoot":"","sources":["../../lib/utils/dateUtils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAAe,EAAE,gBAAwB,EAAW,EAAE;IACxF,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,gBAAgB,GAAG,IAAI,CAAC,CAAA;IAC7E,OAAO,IAAI,IAAI,EAAE,GAAG,aAAa,CAAA;AACnC,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { ConfigScope } from '@lokalise/node-core';
2
+ const configScope = new ConfigScope();
3
+ export function reloadConfig() {
4
+ configScope.updateEnv();
5
+ }
6
+ export function isProduction() {
7
+ return configScope.isProduction();
8
+ }
9
+ //# sourceMappingURL=envUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envUtils.js","sourceRoot":"","sources":["../../lib/utils/envUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAEjD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;AAErC,MAAM,UAAU,YAAY;IAC1B,WAAW,CAAC,SAAS,EAAE,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,OAAO,WAAW,CAAC,YAAY,EAAE,CAAA;AACnC,CAAC"}
@@ -1,17 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isShallowSubset = isShallowSubset;
4
- exports.objectMatches = objectMatches;
5
- const fast_equals_1 = require("fast-equals");
1
+ import { deepEqual } from 'fast-equals';
6
2
  /**
7
3
  * Returns true if `maybeSubset` does not contain any fields in addition to the fields that `maybeSuperset` contain, and all of the overlapping fields are equal on a shallow level.
8
4
  */
9
- function isShallowSubset(maybeSubset, maybeSuperset) {
5
+ export function isShallowSubset(maybeSubset, maybeSuperset) {
10
6
  if (!maybeSubset) {
11
7
  return true;
12
8
  }
13
9
  const keysSubset = Object.keys(maybeSubset);
14
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
10
+ // biome-ignore lint/style/noNonNullAssertion: <explanation>
15
11
  const keysSuperset = Object.keys(maybeSuperset);
16
12
  if (keysSubset.length === 0) {
17
13
  return true;
@@ -19,9 +15,8 @@ function isShallowSubset(maybeSubset, maybeSuperset) {
19
15
  if (keysSubset.length > keysSuperset.length) {
20
16
  return false;
21
17
  }
22
- // eslint-disable-next-line prefer-const
23
18
  for (const key of keysSubset) {
24
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
19
+ // biome-ignore lint/style/noNonNullAssertion: <explanation>
25
20
  if (maybeSubset[key] !== maybeSuperset[key]) {
26
21
  return false;
27
22
  }
@@ -32,7 +27,7 @@ function isShallowSubset(maybeSubset, maybeSuperset) {
32
27
  * Returns true if `validatedObject` contains all of the fields included on `matcher`, and their values are deeply equal
33
28
  */
34
29
  // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: <explanation>
35
- function objectMatches(
30
+ export function objectMatches(
36
31
  // biome-ignore lint/suspicious/noExplicitAny: This is expected
37
32
  matcher,
38
33
  // biome-ignore lint/suspicious/noExplicitAny: This is expected
@@ -47,13 +42,11 @@ validatedObject) {
47
42
  if (typeof validatedObject[key] !== 'object' || validatedObject[key] === null) {
48
43
  return false;
49
44
  }
50
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
51
45
  if (!objectMatches(matcher[key], validatedObject[key])) {
52
46
  return false;
53
47
  }
54
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
55
48
  }
56
- else if (!(0, fast_equals_1.deepEqual)(matcher[key], validatedObject[key])) {
49
+ else if (!deepEqual(matcher[key], validatedObject[key])) {
57
50
  return false;
58
51
  }
59
52
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matchUtils.js","sourceRoot":"","sources":["../../lib/utils/matchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,WAAqC,EACrC,aAAuC;IAEvC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC3C,4DAA4D;IAC5D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,aAAc,CAAC,CAAA;IAEhD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,4DAA4D;QAC5D,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,aAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,6EAA6E;AAC7E,MAAM,UAAU,aAAa;AAC3B,+DAA+D;AAC/D,OAA4B;AAC5B,+DAA+D;AAC/D,eAAoC;IAEpC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;YAAE,SAAQ;QAEjE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,GAAG,CAAC,EAAE,CAAC;YAChE,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAC9D,IAAI,OAAO,eAAe,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9E,OAAO,KAAK,CAAA;YACd,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACvD,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC1D,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { Either, ErrorResolver } from '@lokalise/node-core';
2
2
  import type { ZodSchema } from 'zod';
3
- import type { MessageInvalidFormatError, MessageValidationError } from '../errors/Errors';
3
+ import type { MessageInvalidFormatError, MessageValidationError } from '../errors/Errors.ts';
4
4
  export type ParseMessageResult<T> = {
5
5
  originalMessage: T;
6
6
  parsedMessage: T;
@@ -1,6 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseMessage = parseMessage;
4
1
  /**
5
2
  * Parses a message payload using the provided schema and error processor to handle validation.
6
3
  * The function attempts to parse the message payload based on the provided schema.
@@ -17,7 +14,7 @@ exports.parseMessage = parseMessage;
17
14
  *
18
15
  * @returns Either an object indicating a successful parsing result or an error encountered during parsing.
19
16
  */
20
- function parseMessage(messagePayload, schema, errorProcessor) {
17
+ export function parseMessage(messagePayload, schema, errorProcessor) {
21
18
  try {
22
19
  const parsedMessage = schema.parse(messagePayload);
23
20
  return { result: { parsedMessage, originalMessage: messagePayload } };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseUtils.js","sourceRoot":"","sources":["../../lib/utils/parseUtils.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,YAAY,CAC1B,cAAuB,EACvB,MAAoB,EACpB,cAA6B;IAE7B,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAElD,OAAO,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,eAAe,EAAE,cAAmB,EAAE,EAAE,CAAA;IAC5E,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const objectToBuffer = (object) => {
2
+ return Buffer.from(JSON.stringify(object));
3
+ };
4
+ //# sourceMappingURL=queueUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueUtils.js","sourceRoot":"","sources":["../../lib/utils/queueUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAmB,MAAS,EAAU,EAAE;IACpE,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AAC5C,CAAC,CAAA"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.streamWithKnownSizeToString = streamWithKnownSizeToString;
4
- async function streamWithKnownSizeToString(stream, size) {
1
+ export async function streamWithKnownSizeToString(stream, size) {
5
2
  const buffer = Buffer.alloc(size);
6
3
  let offset = 0;
7
4
  for await (const chunk of stream) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streamUtils.js","sourceRoot":"","sources":["../../lib/utils/streamUtils.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,MAAgB,EAAE,IAAY;IAC9E,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,MAAM,GAAG,CAAC,CAAA;IAEd,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,SAAQ;QACV,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAChF,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChC,MAAM,IAAI,WAAW,CAAC,MAAM,CAAA;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;AAC3C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { toDatePreprocessor } from '@message-queue-toolkit/schemas';
2
+ //# sourceMappingURL=toDateProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toDateProcessor.js","sourceRoot":"","sources":["../../lib/utils/toDateProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.waitAndRetry = void 0;
4
- const waitAndRetry = async (predicateFn, sleepTime = 20, maxRetryCount = 15) => {
1
+ export const waitAndRetry = async (predicateFn, sleepTime = 20, maxRetryCount = 15) => {
5
2
  return new Promise((resolve, reject) => {
6
3
  let retryCount = 0;
7
4
  function performCheck() {
@@ -28,5 +25,4 @@ const waitAndRetry = async (predicateFn, sleepTime = 20, maxRetryCount = 15) =>
28
25
  performCheck();
29
26
  });
30
27
  };
31
- exports.waitAndRetry = waitAndRetry;
32
28
  //# sourceMappingURL=waitUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitUtils.js","sourceRoot":"","sources":["../../lib/utils/waitUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,WAAoB,EACpB,SAAS,GAAG,EAAE,EACd,aAAa,GAAG,EAAE,EACN,EAAE;IACd,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,SAAS,YAAY;YACnB,IAAI,aAAa,KAAK,CAAC,IAAI,UAAU,GAAG,aAAa,EAAE,CAAC;gBACtD,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;YACxB,CAAC;YACD,OAAO,CAAC,OAAO,EAAE;iBACd,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,WAAW,EAAE,CAAA;YACtB,CAAC,CAAC;iBACD,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,CAAC,MAAM,CAAC,CAAA;gBACjB,CAAC;qBAAM,CAAC;oBACN,UAAU,EAAE,CAAA;oBACZ,UAAU,CAAC,YAAY,EAAE,SAAS,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,GAAG,CAAC,CAAA;YACb,CAAC,CAAC,CAAA;QACN,CAAC;QAED,YAAY,EAAE,CAAA;IAChB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,66 +1,71 @@
1
1
  {
2
- "name": "@message-queue-toolkit/core",
3
- "version": "19.0.0",
4
- "private": false,
5
- "license": "MIT",
6
- "description": "Useful utilities, interfaces and base classes for message queue handling. Supports AMQP and SQS with a common abstraction on top currently",
7
- "maintainers": [
8
- {
9
- "name": "Igor Savin",
10
- "email": "kibertoad@gmail.com"
11
- }
12
- ],
13
- "main": "dist/index.js",
14
- "types": "dist/index.d.ts",
15
- "scripts": {
16
- "build": "del-cli dist && del-cli coverage && tsc",
17
- "build:release": "del-cli dist && del-cli coverage && npm run lint && tsc --project tsconfig.release.json",
18
- "lint": "biome check . && tsc --project tsconfig.json --noEmit",
19
- "lint:fix": "biome check --write .",
20
- "test": "vitest",
21
- "test:coverage": "npm test -- --coverage",
22
- "test:ci": "npm run docker:start:dev && npm run test:coverage && npm run docker:stop:dev",
23
- "docker:start:dev": "",
24
- "docker:stop:dev": "",
25
- "prepublishOnly": "npm run build:release"
26
- },
27
- "dependencies": {
28
- "@lokalise/node-core": "^13.3.0",
29
- "@message-queue-toolkit/schemas": "^4.0.0",
30
- "fast-equals": "^5.0.1",
31
- "json-stream-stringify": "^3.1.6",
32
- "tmp": "^0.2.3",
33
- "toad-cache": "^3.7.0",
34
- "zod": "^3.23.8"
35
- },
36
- "devDependencies": {
37
- "@biomejs/biome": "1.9.4",
38
- "@kibertoad/biome-config": "^1.2.1",
39
- "@types/node": "^22.7.5",
40
- "@types/tmp": "^0.2.6",
41
- "@vitest/coverage-v8": "^2.1.5",
42
- "awilix": "^12.0.1",
43
- "awilix-manager": "^6.0.0",
44
- "del-cli": "^6.0.0",
45
- "typescript": "^5.7.2",
46
- "vitest": "^2.1.5"
47
- },
48
- "homepage": "https://github.com/kibertoad/message-queue-toolkit",
49
- "repository": {
50
- "type": "git",
51
- "url": "git://github.com/kibertoad/message-queue-toolkit.git"
52
- },
53
- "keywords": [
54
- "message",
55
- "queue",
56
- "queues",
57
- "abstract",
58
- "common",
59
- "utils",
60
- "sqs",
61
- "amqp",
62
- "rabbitmq",
63
- "rabbit"
64
- ],
65
- "files": ["README.md", "LICENSE", "dist/*"]
2
+ "name": "@message-queue-toolkit/core",
3
+ "version": "21.0.0",
4
+ "private": false,
5
+ "license": "MIT",
6
+ "description": "Useful utilities, interfaces and base classes for message queue handling. Supports AMQP and SQS with a common abstraction on top currently",
7
+ "maintainers": [
8
+ {
9
+ "name": "Igor Savin",
10
+ "email": "kibertoad@gmail.com"
11
+ }
12
+ ],
13
+ "type": "module",
14
+ "main": "./dist/index.js",
15
+ "exports": {
16
+ ".": "./dist/index.js",
17
+ "./package.json": "./package.json"
18
+ },
19
+ "scripts": {
20
+ "build": "npm run clean && tsc --project tsconfig.build.json",
21
+ "clean": "rimraf dist",
22
+ "lint": "biome check . && tsc",
23
+ "lint:fix": "biome check --write .",
24
+ "test": "vitest",
25
+ "test:coverage": "npm test -- --coverage",
26
+ "test:ci": "npm run docker:start:dev && npm run test:coverage && npm run docker:stop:dev",
27
+ "docker:start:dev": "",
28
+ "docker:stop:dev": "",
29
+ "prepublishOnly": "npm run lint && npm run build"
30
+ },
31
+ "dependencies": {
32
+ "@lokalise/node-core": "^13.3.0",
33
+ "@message-queue-toolkit/schemas": "^6.0.0",
34
+ "fast-equals": "^5.0.1",
35
+ "json-stream-stringify": "^3.1.6",
36
+ "tmp": "^0.2.3",
37
+ "toad-cache": "^3.7.0",
38
+ "zod": "^3.23.8"
39
+ },
40
+ "devDependencies": {
41
+ "@biomejs/biome": "1.9.4",
42
+ "@lokalise/biome-config": "^2.0.0",
43
+ "@lokalise/tsconfig": "^1.3.0",
44
+ "@types/node": "^22.7.5",
45
+ "@types/tmp": "^0.2.6",
46
+ "@vitest/coverage-v8": "^3.0.7",
47
+ "awilix": "^12.0.1",
48
+ "awilix-manager": "^6.0.0",
49
+ "rimraf": "^6.0.1",
50
+ "typescript": "^5.7.2",
51
+ "vitest": "^3.0.7"
52
+ },
53
+ "homepage": "https://github.com/kibertoad/message-queue-toolkit",
54
+ "repository": {
55
+ "type": "git",
56
+ "url": "git://github.com/kibertoad/message-queue-toolkit.git"
57
+ },
58
+ "keywords": [
59
+ "message",
60
+ "queue",
61
+ "queues",
62
+ "abstract",
63
+ "common",
64
+ "utils",
65
+ "sqs",
66
+ "amqp",
67
+ "rabbitmq",
68
+ "rabbit"
69
+ ],
70
+ "files": ["README.md", "LICENSE", "dist/*"]
66
71
  }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DoNotProcessMessageError = void 0;
4
- const node_core_1 = require("@lokalise/node-core");
5
- class DoNotProcessMessageError extends node_core_1.InternalError {
6
- constructor(message, errorCode, details) {
7
- super({
8
- message,
9
- errorCode,
10
- details,
11
- });
12
- }
13
- }
14
- exports.DoNotProcessMessageError = DoNotProcessMessageError;
15
- //# sourceMappingURL=DoNotProcessError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DoNotProcessError.js","sourceRoot":"","sources":["../../../lib/errors/DoNotProcessError.ts"],"names":[],"mappings":";;;AAAA,mDAAmD;AAEnD,MAAa,wBAAyB,SAAQ,yBAAa;IACzD,YAAY,OAAe,EAAE,SAAiB,EAAE,OAAiC;QAC/E,KAAK,CAAC;YACJ,OAAO;YACP,SAAS;YACT,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;CACF;AARD,4DAQC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Errors.js","sourceRoot":"","sources":["../../../lib/errors/Errors.ts"],"names":[],"mappings":";;;AAgCA,wCAMC;AAtCD,mDAAmD;AAUnD,MAAa,yBAA0B,SAAQ,yBAAa;IAC1D,YAAY,MAAyB;QACnC,KAAK,CAAC;YACJ,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,wBAAwB;YACnC,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAA;IACpC,CAAC;CACF;AATD,8DASC;AAED,MAAa,sBAAuB,SAAQ,yBAAa;IACvD,YAAY,MAAyB;QACnC,KAAK,CAAC;YACJ,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC,CAAA;QACF,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;IACtC,CAAC;CACF;AATD,wDASC;AAED,SAAgB,cAAc,CAC5B,GAAsB;IAEtB,OAAO,CACL,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,wBAAwB,IAAI,GAAG,CAAC,IAAI,KAAK,sBAAsB,CAAC,CAAC,IAAI,KAAK,CACjG,CAAA;AACH,CAAC"}
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RetryMessageLaterError = void 0;
4
- const node_core_1 = require("@lokalise/node-core");
5
- class RetryMessageLaterError extends node_core_1.InternalError {
6
- constructor(message, errorCode, details) {
7
- super({
8
- message,
9
- errorCode,
10
- details,
11
- });
12
- }
13
- }
14
- exports.RetryMessageLaterError = RetryMessageLaterError;
15
- //# sourceMappingURL=RetryMessageLaterError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RetryMessageLaterError.js","sourceRoot":"","sources":["../../../lib/errors/RetryMessageLaterError.ts"],"names":[],"mappings":";;;AAAA,mDAAmD;AAEnD,MAAa,sBAAuB,SAAQ,yBAAa;IACvD,YAAY,OAAe,EAAE,SAAiB,EAAE,OAAiC;QAC/E,KAAK,CAAC;YACJ,OAAO;YACP,SAAS;YACT,OAAO;SACR,CAAC,CAAA;IACJ,CAAC;CACF;AARD,wDAQC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DomainEventEmitter.js","sourceRoot":"","sources":["../../../lib/events/DomainEventEmitter.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventRegistry.js","sourceRoot":"","sources":["../../../lib/events/EventRegistry.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACR,eAAe,CAAiB;IAChC,mBAAmB,CAAa;IAC/B,iBAAiB,GAA0C,EAAE,CAAA;IAE9E,YAAY,eAAgC;QAC1C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAA;QAE5C,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,cAAc,CAAA;YACvF,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;IAEM,4BAA4B,GAAG,CAGpC,aAA4B,EACL,EAAE;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC,CAAA;IAEM,gBAAgB,CAAC,aAAqB;QAC3C,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;CACF;AA1BD,sCA0BC"}
@@ -1 +0,0 @@
1
- export { GENERATED_BASE_EVENT_SCHEMA, OPTIONAL_GENERATED_BASE_EVENT_SCHEMA, CORE_EVENT_SCHEMA, CONSUMER_BASE_EVENT_SCHEMA, PUBLISHER_BASE_EVENT_SCHEMA, ConsumerBaseEventType, PublisherBaseEventType, CoreEventType, GeneratedBaseEventType, enrichEventSchemaWithBase, } from '@message-queue-toolkit/schemas';