@message-queue-toolkit/core 23.2.0 → 24.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 (40) hide show
  1. package/dist/events/DomainEventEmitter.d.ts +1 -1
  2. package/dist/events/DomainEventEmitter.js +4 -5
  3. package/dist/events/DomainEventEmitter.js.map +1 -1
  4. package/dist/events/EventRegistry.js +1 -1
  5. package/dist/events/EventRegistry.js.map +1 -1
  6. package/dist/events/baseEventSchemas.d.ts +1 -1
  7. package/dist/events/baseEventSchemas.js +1 -1
  8. package/dist/events/baseEventSchemas.js.map +1 -1
  9. package/dist/events/eventTypes.d.ts +1 -1
  10. package/dist/index.d.ts +24 -23
  11. package/dist/index.js +20 -19
  12. package/dist/index.js.map +1 -1
  13. package/dist/message-deduplication/messageDeduplicationTypes.d.ts +1 -1
  14. package/dist/messages/baseMessageSchemas.d.ts +1 -1
  15. package/dist/messages/baseMessageSchemas.js +1 -1
  16. package/dist/messages/baseMessageSchemas.js.map +1 -1
  17. package/dist/payload-store/offloadedPayloadMessageSchemas.d.ts +24 -3
  18. package/dist/payload-store/offloadedPayloadMessageSchemas.js +39 -5
  19. package/dist/payload-store/offloadedPayloadMessageSchemas.js.map +1 -1
  20. package/dist/payload-store/payloadStoreTypes.d.ts +63 -3
  21. package/dist/payload-store/payloadStoreTypes.js +27 -0
  22. package/dist/payload-store/payloadStoreTypes.js.map +1 -1
  23. package/dist/queues/AbstractPublisherManager.d.ts +1 -1
  24. package/dist/queues/AbstractPublisherManager.js +4 -4
  25. package/dist/queues/AbstractPublisherManager.js.map +1 -1
  26. package/dist/queues/AbstractQueueService.d.ts +33 -3
  27. package/dist/queues/AbstractQueueService.js +137 -28
  28. package/dist/queues/AbstractQueueService.js.map +1 -1
  29. package/dist/queues/HandlerContainer.d.ts +37 -0
  30. package/dist/queues/HandlerContainer.js +42 -8
  31. package/dist/queues/HandlerContainer.js.map +1 -1
  32. package/dist/queues/HandlerSpy.js +3 -5
  33. package/dist/queues/HandlerSpy.js.map +1 -1
  34. package/dist/queues/MessageSchemaContainer.js.map +1 -1
  35. package/dist/types/queueOptionsTypes.d.ts +1 -1
  36. package/dist/utils/matchUtils.js +5 -5
  37. package/dist/utils/matchUtils.js.map +1 -1
  38. package/dist/utils/waitUtils.js +1 -1
  39. package/dist/utils/waitUtils.js.map +1 -1
  40. package/package.json +14 -6
@@ -1,7 +1,7 @@
1
1
  import { type CommonLogger, type ErrorReporter, type TransactionObservabilityManager } from '@lokalise/node-core';
2
+ import type { ConsumerMessageMetadataType } from '@message-queue-toolkit/schemas';
2
3
  import type { MetadataFiller } from '../messages/MetadataFiller.ts';
3
4
  import type { HandlerSpy, HandlerSpyParams, PublicHandlerSpy } from '../queues/HandlerSpy.ts';
4
- import type { ConsumerMessageMetadataType } from '@message-queue-toolkit/schemas';
5
5
  import type { EventRegistry } from './EventRegistry.ts';
6
6
  import type { AnyEventHandler, CommonEventDefinition, CommonEventDefinitionConsumerSchemaType, CommonEventDefinitionPublisherSchemaType, EventTypeNames, SingleEventHandler } from './eventTypes.ts';
7
7
  export type DomainEventEmitterDependencies<SupportedEvents extends CommonEventDefinition[]> = {
@@ -1,6 +1,6 @@
1
+ import { randomUUID } from 'node:crypto';
1
2
  import { InternalError, resolveGlobalErrorLogObject, } from '@lokalise/node-core';
2
3
  import { resolveHandlerSpy } from "../queues/HandlerSpy.js";
3
- import { randomUUID } from 'node:crypto';
4
4
  export class DomainEventEmitter {
5
5
  eventRegistry;
6
6
  metadataFiller;
@@ -47,7 +47,7 @@ export class DomainEventEmitter {
47
47
  data.id = this.metadataFiller.produceId();
48
48
  if (!data.metadata) {
49
49
  data.metadata = this.metadataFiller.produceMetadata(
50
- // @ts-ignore
50
+ // @ts-expect-error
51
51
  data, supportedEvent, precedingMessageMetadata ?? {});
52
52
  }
53
53
  if (!data.metadata.correlationId)
@@ -55,9 +55,9 @@ export class DomainEventEmitter {
55
55
  const validatedEvent = this.eventRegistry
56
56
  .getEventDefinitionByTypeName(eventTypeName)
57
57
  .publisherSchema.parse({ type: eventTypeName, ...data });
58
- // @ts-ignore
58
+ // @ts-expect-error
59
59
  await this.handleEvent(validatedEvent);
60
- // @ts-ignore
60
+ // @ts-expect-error
61
61
  return validatedEvent;
62
62
  }
63
63
  /**
@@ -98,7 +98,6 @@ export class DomainEventEmitter {
98
98
  if (!this._handlerSpy)
99
99
  return;
100
100
  this._handlerSpy.addProcessedMessage({
101
- // @ts-ignore
102
101
  message: event,
103
102
  processingResult: { status: 'consumed' },
104
103
  }, event.id);
@@ -1 +1 @@
1
- {"version":3,"file":"DomainEventEmitter.js","sourceRoot":"","sources":["../../lib/events/DomainEventEmitter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DomainEventEmitter.js","sourceRoot":"","sources":["../../lib/events/DomainEventEmitter.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export class EventRegistry {
11
11
  }
12
12
  }
13
13
  getEventDefinitionByTypeName = (eventTypeName) => {
14
- // biome-ignore lint/style/noNonNullAssertion: <explanation>
14
+ // biome-ignore lint/style/noNonNullAssertion: It's ok
15
15
  return this.supportedEventMap[eventTypeName];
16
16
  };
17
17
  isSupportedEvent(eventTypeName) {
@@ -1 +1 @@
1
- {"version":3,"file":"EventRegistry.js","sourceRoot":"","sources":["../../lib/events/EventRegistry.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,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,4DAA4D;QAC5D,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAE,CAAA;IAC/C,CAAC,CAAA;IAEM,gBAAgB,CAAC,aAAqB;QAC3C,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"EventRegistry.js","sourceRoot":"","sources":["../../lib/events/EventRegistry.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,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,sDAAsD;QACtD,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAE,CAAA;IAC/C,CAAC,CAAA;IAEM,gBAAgB,CAAC,aAAqB;QAC3C,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;CACF"}
@@ -1 +1 @@
1
- export { GENERATED_BASE_EVENT_SCHEMA, OPTIONAL_GENERATED_BASE_EVENT_SCHEMA, CORE_EVENT_SCHEMA, CONSUMER_BASE_EVENT_SCHEMA, PUBLISHER_BASE_EVENT_SCHEMA, type ConsumerBaseEventType, type PublisherBaseEventType, type CoreEventType, type GeneratedBaseEventType, type enrichEventSchemaWithBase, } from '@message-queue-toolkit/schemas';
1
+ export { CONSUMER_BASE_EVENT_SCHEMA, CORE_EVENT_SCHEMA, type ConsumerBaseEventType, type CoreEventType, type enrichEventSchemaWithBase, GENERATED_BASE_EVENT_SCHEMA, type GeneratedBaseEventType, OPTIONAL_GENERATED_BASE_EVENT_SCHEMA, PUBLISHER_BASE_EVENT_SCHEMA, type PublisherBaseEventType, } from '@message-queue-toolkit/schemas';
@@ -1,2 +1,2 @@
1
- export { GENERATED_BASE_EVENT_SCHEMA, OPTIONAL_GENERATED_BASE_EVENT_SCHEMA, CORE_EVENT_SCHEMA, CONSUMER_BASE_EVENT_SCHEMA, PUBLISHER_BASE_EVENT_SCHEMA, } from '@message-queue-toolkit/schemas';
1
+ export { CONSUMER_BASE_EVENT_SCHEMA, CORE_EVENT_SCHEMA, GENERATED_BASE_EVENT_SCHEMA, OPTIONAL_GENERATED_BASE_EVENT_SCHEMA, PUBLISHER_BASE_EVENT_SCHEMA, } from '@message-queue-toolkit/schemas';
2
2
  //# sourceMappingURL=baseEventSchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseEventSchemas.js","sourceRoot":"","sources":["../../lib/events/baseEventSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,oCAAoC,EACpC,iBAAiB,EACjB,0BAA0B,EAC1B,2BAA2B,GAM5B,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"baseEventSchemas.js","sourceRoot":"","sources":["../../lib/events/baseEventSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EAIjB,2BAA2B,EAE3B,oCAAoC,EACpC,2BAA2B,GAE5B,MAAM,gCAAgC,CAAA"}
@@ -1 +1 @@
1
- export type { EventTypeNames, CommonEventDefinition, CommonEventDefinitionConsumerSchemaType, CommonEventDefinitionPublisherSchemaType, EventHandler, AnyEventHandler, SingleEventHandler, } from '@message-queue-toolkit/schemas';
1
+ export type { AnyEventHandler, CommonEventDefinition, CommonEventDefinitionConsumerSchemaType, CommonEventDefinitionPublisherSchemaType, EventHandler, EventTypeNames, SingleEventHandler, } from '@message-queue-toolkit/schemas';
package/dist/index.d.ts CHANGED
@@ -1,30 +1,31 @@
1
- export type { QueueConsumer, AsyncPublisher, SyncPublisher, TransactionObservabilityManager, SchemaMap, ExtraParams, MessageProcessingResult, } from './types/MessageQueueTypes.ts';
2
- export { AbstractQueueService, type Deserializer, type ResolvedMessage, } from './queues/AbstractQueueService.ts';
3
- export * from './types/queueOptionsTypes.ts';
4
- export { isMessageError, MessageValidationError, MessageInvalidFormatError, } from './errors/Errors.ts';
5
- export { isShallowSubset, objectMatches } from './utils/matchUtils.ts';
6
- export { RetryMessageLaterError } from './errors/RetryMessageLaterError.ts';
7
1
  export { DoNotProcessMessageError } from './errors/DoNotProcessError.ts';
8
- export { type PrehandlerResult, HandlerContainer, MessageHandlerConfig, MessageHandlerConfigBuilder, } from './queues/HandlerContainer.ts';
9
- export type { BarrierCallback, BarrierResult, BarrierResultPositive, BarrierResultNegative, HandlerContainerOptions, Handler, Prehandler, PreHandlingOutputs, } from './queues/HandlerContainer.ts';
10
- export { HandlerSpy, resolveHandlerSpy, type SpyResultInput, type HandlerSpyParams, type PublicHandlerSpy, } from './queues/HandlerSpy.ts';
11
- export { MessageSchemaContainer } from './queues/MessageSchemaContainer.ts';
12
- export type { MessageSchemaContainerOptions } from './queues/MessageSchemaContainer.ts';
13
- export { objectToBuffer } from './utils/queueUtils.ts';
14
- export { waitAndRetry } from './utils/waitUtils.ts';
15
- export { type ParseMessageResult, parseMessage } from './utils/parseUtils.ts';
16
- export { isRetryDateExceeded } from './utils/dateUtils.ts';
17
- export { toDatePreprocessor } from './utils/toDateProcessor.ts';
18
- export { reloadConfig, isProduction } from './utils/envUtils.ts';
2
+ export { isMessageError, MessageInvalidFormatError, MessageValidationError, } from './errors/Errors.ts';
3
+ export { RetryMessageLaterError } from './errors/RetryMessageLaterError.ts';
4
+ export * from './events/baseEventSchemas.ts';
19
5
  export { DomainEventEmitter } from './events/DomainEventEmitter.ts';
20
6
  export { EventRegistry } from './events/EventRegistry.ts';
21
- export { FakeListener } from './events/fakes/FakeListener.ts';
22
7
  export * from './events/eventTypes.ts';
23
- export * from './events/baseEventSchemas.ts';
8
+ export { FakeListener } from './events/fakes/FakeListener.ts';
9
+ export * from './message-deduplication/AcquireLockTimeoutError.ts';
10
+ export { type AcquireLockOptions, type DeduplicationRequester, DeduplicationRequesterEnum, type MessageDeduplicationConfig, type MessageDeduplicationStore, noopReleasableLock, type ReleasableLock, } from './message-deduplication/messageDeduplicationTypes.ts';
24
11
  export * from './messages/baseMessageSchemas.ts';
25
12
  export * from './messages/MetadataFiller.ts';
13
+ export { isOffloadedPayloadPointerPayload, OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA, type OffloadedPayloadPointerPayload, PAYLOAD_REF_SCHEMA, type PayloadRef, } from './payload-store/offloadedPayloadMessageSchemas.ts';
14
+ export type { MultiPayloadStoreConfig, PayloadSerializer, PayloadStore, PayloadStoreConfig, SerializedPayload, SinglePayloadStoreConfig, } from './payload-store/payloadStoreTypes.ts';
15
+ export { createMultiStoreConfig, isMultiPayloadStoreConfig, } from './payload-store/payloadStoreTypes.ts';
26
16
  export * from './queues/AbstractPublisherManager.ts';
27
- export type { PayloadStoreTypes, PayloadStoreConfig, SerializedPayload, PayloadSerializer, } from './payload-store/payloadStoreTypes.ts';
28
- export { type OffloadedPayloadPointerPayload, OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA, isOffloadedPayloadPointerPayload, } from './payload-store/offloadedPayloadMessageSchemas.ts';
29
- export { type MessageDeduplicationStore, type MessageDeduplicationConfig, type ReleasableLock, type AcquireLockOptions, type DeduplicationRequester, DeduplicationRequesterEnum, noopReleasableLock, } from './message-deduplication/messageDeduplicationTypes.ts';
30
- export * from './message-deduplication/AcquireLockTimeoutError.ts';
17
+ export { AbstractQueueService, type Deserializer, type ResolvedMessage, } from './queues/AbstractQueueService.ts';
18
+ export type { BarrierCallback, BarrierResult, BarrierResultNegative, BarrierResultPositive, Handler, HandlerContainerOptions, PreHandlingOutputs, Prehandler, } from './queues/HandlerContainer.ts';
19
+ export { HandlerContainer, MessageHandlerConfig, MessageHandlerConfigBuilder, type PrehandlerResult, } from './queues/HandlerContainer.ts';
20
+ export { HandlerSpy, type HandlerSpyParams, type PublicHandlerSpy, resolveHandlerSpy, type SpyResultInput, } from './queues/HandlerSpy.ts';
21
+ export type { MessageSchemaContainerOptions } from './queues/MessageSchemaContainer.ts';
22
+ export { MessageSchemaContainer } from './queues/MessageSchemaContainer.ts';
23
+ export type { AsyncPublisher, ExtraParams, MessageProcessingResult, QueueConsumer, SchemaMap, SyncPublisher, TransactionObservabilityManager, } from './types/MessageQueueTypes.ts';
24
+ export * from './types/queueOptionsTypes.ts';
25
+ export { isRetryDateExceeded } from './utils/dateUtils.ts';
26
+ export { isProduction, reloadConfig } from './utils/envUtils.ts';
27
+ export { isShallowSubset, objectMatches } from './utils/matchUtils.ts';
28
+ export { type ParseMessageResult, parseMessage } from './utils/parseUtils.ts';
29
+ export { objectToBuffer } from './utils/queueUtils.ts';
30
+ export { toDatePreprocessor } from './utils/toDateProcessor.ts';
31
+ export { waitAndRetry } from './utils/waitUtils.ts';
package/dist/index.js CHANGED
@@ -1,27 +1,28 @@
1
- export { AbstractQueueService, } from "./queues/AbstractQueueService.js";
2
- export * from "./types/queueOptionsTypes.js";
3
- export { isMessageError, MessageValidationError, MessageInvalidFormatError, } from "./errors/Errors.js";
4
- export { isShallowSubset, objectMatches } from "./utils/matchUtils.js";
5
- export { RetryMessageLaterError } from "./errors/RetryMessageLaterError.js";
6
1
  export { DoNotProcessMessageError } from "./errors/DoNotProcessError.js";
7
- export { HandlerContainer, MessageHandlerConfig, MessageHandlerConfigBuilder, } from "./queues/HandlerContainer.js";
8
- export { HandlerSpy, resolveHandlerSpy, } from "./queues/HandlerSpy.js";
9
- export { MessageSchemaContainer } from "./queues/MessageSchemaContainer.js";
10
- export { objectToBuffer } from "./utils/queueUtils.js";
11
- export { waitAndRetry } from "./utils/waitUtils.js";
12
- export { parseMessage } from "./utils/parseUtils.js";
13
- export { isRetryDateExceeded } from "./utils/dateUtils.js";
14
- export { toDatePreprocessor } from "./utils/toDateProcessor.js";
15
- export { reloadConfig, isProduction } from "./utils/envUtils.js";
2
+ export { isMessageError, MessageInvalidFormatError, MessageValidationError, } from "./errors/Errors.js";
3
+ export { RetryMessageLaterError } from "./errors/RetryMessageLaterError.js";
4
+ export * from "./events/baseEventSchemas.js";
16
5
  export { DomainEventEmitter } from "./events/DomainEventEmitter.js";
17
6
  export { EventRegistry } from "./events/EventRegistry.js";
18
- export { FakeListener } from "./events/fakes/FakeListener.js";
19
7
  export * from "./events/eventTypes.js";
20
- export * from "./events/baseEventSchemas.js";
8
+ export { FakeListener } from "./events/fakes/FakeListener.js";
9
+ export * from "./message-deduplication/AcquireLockTimeoutError.js";
10
+ export { DeduplicationRequesterEnum, noopReleasableLock, } from "./message-deduplication/messageDeduplicationTypes.js";
21
11
  export * from "./messages/baseMessageSchemas.js";
22
12
  export * from "./messages/MetadataFiller.js";
13
+ export { isOffloadedPayloadPointerPayload, OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA, PAYLOAD_REF_SCHEMA, } from "./payload-store/offloadedPayloadMessageSchemas.js";
14
+ export { createMultiStoreConfig, isMultiPayloadStoreConfig, } from "./payload-store/payloadStoreTypes.js";
23
15
  export * from "./queues/AbstractPublisherManager.js";
24
- export { OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA, isOffloadedPayloadPointerPayload, } from "./payload-store/offloadedPayloadMessageSchemas.js";
25
- export { DeduplicationRequesterEnum, noopReleasableLock, } from "./message-deduplication/messageDeduplicationTypes.js";
26
- export * from "./message-deduplication/AcquireLockTimeoutError.js";
16
+ export { AbstractQueueService, } from "./queues/AbstractQueueService.js";
17
+ export { HandlerContainer, MessageHandlerConfig, MessageHandlerConfigBuilder, } from "./queues/HandlerContainer.js";
18
+ export { HandlerSpy, resolveHandlerSpy, } from "./queues/HandlerSpy.js";
19
+ export { MessageSchemaContainer } from "./queues/MessageSchemaContainer.js";
20
+ export * from "./types/queueOptionsTypes.js";
21
+ export { isRetryDateExceeded } from "./utils/dateUtils.js";
22
+ export { isProduction, reloadConfig } from "./utils/envUtils.js";
23
+ export { isShallowSubset, objectMatches } from "./utils/matchUtils.js";
24
+ export { parseMessage } from "./utils/parseUtils.js";
25
+ export { objectToBuffer } from "./utils/queueUtils.js";
26
+ export { toDatePreprocessor } from "./utils/toDateProcessor.js";
27
+ export { waitAndRetry } from "./utils/waitUtils.js";
27
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,oBAAoB,GAGrB,MAAM,kCAAkC,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAE5C,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAA;AAE3B,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAEtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAExE,OAAO,EAEL,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,8BAA8B,CAAA;AAWrC,OAAO,EACL,UAAU,EACV,iBAAiB,GAIlB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAA2B,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAE/D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAE7D,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kCAAkC,CAAA;AAEhD,cAAc,8BAA8B,CAAA;AAE5C,cAAc,sCAAsC,CAAA;AAOpD,OAAO,EAEL,wCAAwC,EACxC,gCAAgC,GACjC,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAML,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,sDAAsD,CAAA;AAC7D,cAAc,oDAAoD,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAC3E,cAAc,8BAA8B,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,cAAc,oDAAoD,CAAA;AAClE,OAAO,EAGL,0BAA0B,EAG1B,kBAAkB,GAEnB,MAAM,sDAAsD,CAAA;AAC7D,cAAc,kCAAkC,CAAA;AAChD,cAAc,8BAA8B,CAAA;AAC5C,OAAO,EACL,gCAAgC,EAChC,wCAAwC,EAExC,kBAAkB,GAEnB,MAAM,mDAAmD,CAAA;AAS1D,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,sCAAsC,CAAA;AAC7C,cAAc,sCAAsC,CAAA;AACpD,OAAO,EACL,oBAAoB,GAGrB,MAAM,kCAAkC,CAAA;AAWzC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAE5B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,UAAU,EAGV,iBAAiB,GAElB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAA;AAU3E,cAAc,8BAA8B,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAA2B,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import type { Either } from '@lokalise/node-core';
2
2
  import type { MessageDeduplicationOptions } from '@message-queue-toolkit/schemas';
3
- import type { AcquireLockTimeoutError } from './AcquireLockTimeoutError.js';
3
+ import type { AcquireLockTimeoutError } from './AcquireLockTimeoutError.ts';
4
4
  export interface ReleasableLock {
5
5
  release(): Promise<void>;
6
6
  }
@@ -1 +1 @@
1
- export { PUBLISHER_MESSAGE_METADATA_SCHEMA, CONSUMER_MESSAGE_METADATA_SCHEMA, PUBLISHER_BASE_MESSAGE_SCHEMA, CONSUMER_BASE_MESSAGE_SCHEMA, type ConsumerBaseMessageType, type PublisherBaseMessageType, type PublisherMessageMetadataType, type ConsumerMessageMetadataType, type CommonMessageDefinitionSchemaType, enrichMessageSchemaWithBase, } from '@message-queue-toolkit/schemas';
1
+ export { CONSUMER_BASE_MESSAGE_SCHEMA, CONSUMER_MESSAGE_METADATA_SCHEMA, type CommonMessageDefinitionSchemaType, type ConsumerBaseMessageType, type ConsumerMessageMetadataType, enrichMessageSchemaWithBase, PUBLISHER_BASE_MESSAGE_SCHEMA, PUBLISHER_MESSAGE_METADATA_SCHEMA, type PublisherBaseMessageType, type PublisherMessageMetadataType, } from '@message-queue-toolkit/schemas';
@@ -1,2 +1,2 @@
1
- export { PUBLISHER_MESSAGE_METADATA_SCHEMA, CONSUMER_MESSAGE_METADATA_SCHEMA, PUBLISHER_BASE_MESSAGE_SCHEMA, CONSUMER_BASE_MESSAGE_SCHEMA, enrichMessageSchemaWithBase, } from '@message-queue-toolkit/schemas';
1
+ export { CONSUMER_BASE_MESSAGE_SCHEMA, CONSUMER_MESSAGE_METADATA_SCHEMA, enrichMessageSchemaWithBase, PUBLISHER_BASE_MESSAGE_SCHEMA, PUBLISHER_MESSAGE_METADATA_SCHEMA, } from '@message-queue-toolkit/schemas';
2
2
  //# sourceMappingURL=baseMessageSchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseMessageSchemas.js","sourceRoot":"","sources":["../../lib/messages/baseMessageSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,gCAAgC,EAChC,6BAA6B,EAC7B,4BAA4B,EAM5B,2BAA2B,GAC5B,MAAM,gCAAgC,CAAA"}
1
+ {"version":3,"file":"baseMessageSchemas.js","sourceRoot":"","sources":["../../lib/messages/baseMessageSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAIhC,2BAA2B,EAC3B,6BAA6B,EAC7B,iCAAiC,GAGlC,MAAM,gCAAgC,CAAA"}
@@ -1,11 +1,32 @@
1
1
  import { z } from 'zod/v4';
2
+ /**
3
+ * Multi-store payload reference schema.
4
+ * Contains information about where and how the payload was stored.
5
+ */
6
+ export declare const PAYLOAD_REF_SCHEMA: z.ZodObject<{
7
+ id: z.ZodString;
8
+ store: z.ZodString;
9
+ size: z.ZodNumber;
10
+ }, z.core.$strip>;
11
+ export type PayloadRef = z.output<typeof PAYLOAD_REF_SCHEMA>;
2
12
  /**
3
13
  * When the payload is too large to be sent in a single message, it is offloaded to a storage service and a pointer to the offloaded payload is sent instead.
4
- * This schema represents the payload that is sent in place of the original payload.
14
+ * This schema represents the reference to the payload that is sent in place of the original payload.
15
+ *
16
+ * The schema supports two formats:
17
+ * 1. New format, payloadRef object with id, store, and size
18
+ * 2. Old format, offloadedPayloadPointer and offloadedPayloadSize (for backward compatibility)
19
+ *
20
+ * At least one format must be present in the message.
5
21
  */
6
22
  export declare const OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA: z.ZodObject<{
7
- offloadedPayloadPointer: z.ZodString;
8
- offloadedPayloadSize: z.ZodNumber;
23
+ payloadRef: z.ZodOptional<z.ZodObject<{
24
+ id: z.ZodString;
25
+ store: z.ZodString;
26
+ size: z.ZodNumber;
27
+ }, z.core.$strip>>;
28
+ offloadedPayloadPointer: z.ZodOptional<z.ZodString>;
29
+ offloadedPayloadSize: z.ZodOptional<z.ZodNumber>;
9
30
  }, z.core.$loose>;
10
31
  export type OffloadedPayloadPointerPayload = z.output<typeof OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA>;
11
32
  export declare function isOffloadedPayloadPointerPayload(value: unknown): value is OffloadedPayloadPointerPayload;
@@ -1,16 +1,50 @@
1
1
  import { z } from 'zod/v4';
2
+ /**
3
+ * Multi-store payload reference schema.
4
+ * Contains information about where and how the payload was stored.
5
+ */
6
+ export const PAYLOAD_REF_SCHEMA = z.object({
7
+ /** Unique identifier for the stored payload */
8
+ id: z.string().min(1),
9
+ /** Name/identifier of the store where the payload is stored */
10
+ store: z.string().min(1),
11
+ /** Size of the payload in bytes */
12
+ size: z.number().int().positive(),
13
+ });
2
14
  /**
3
15
  * When the payload is too large to be sent in a single message, it is offloaded to a storage service and a pointer to the offloaded payload is sent instead.
4
- * This schema represents the payload that is sent in place of the original payload.
16
+ * This schema represents the reference to the payload that is sent in place of the original payload.
17
+ *
18
+ * The schema supports two formats:
19
+ * 1. New format, payloadRef object with id, store, and size
20
+ * 2. Old format, offloadedPayloadPointer and offloadedPayloadSize (for backward compatibility)
21
+ *
22
+ * At least one format must be present in the message.
5
23
  */
6
24
  export const OFFLOADED_PAYLOAD_POINTER_PAYLOAD_SCHEMA = z
7
25
  .object({
8
- offloadedPayloadPointer: z.string().min(1),
9
- offloadedPayloadSize: z.number().int().positive(),
26
+ // New, extended payload reference (supports multi-store functionality).
27
+ payloadRef: PAYLOAD_REF_SCHEMA.optional(),
28
+ // Legacy payload reference, preserved for backward compatibility.
29
+ offloadedPayloadPointer: z.string().min(1).optional(),
30
+ offloadedPayloadSize: z.number().int().positive().optional(),
10
31
  })
11
32
  // Pass-through allows to pass message ID, type, timestamp and message-deduplication-related fields that are using dynamic keys.
12
- .passthrough();
33
+ .passthrough()
34
+ .refine((data) => {
35
+ // At least one format must be present
36
+ // For the legacy format, both offloadedPayloadPointer and offloadedPayloadSize are required
37
+ return (data.payloadRef !== undefined ||
38
+ (data.offloadedPayloadPointer !== undefined && data.offloadedPayloadSize !== undefined));
39
+ }, {
40
+ message: 'Either payloadRef or both offloadedPayloadPointer and offloadedPayloadSize must be present',
41
+ });
13
42
  export function isOffloadedPayloadPointerPayload(value) {
14
- return value.offloadedPayloadPointer !== undefined;
43
+ if (typeof value !== 'object' || value === null) {
44
+ return false;
45
+ }
46
+ const payload = value;
47
+ return (payload.payloadRef !== undefined ||
48
+ (payload.offloadedPayloadPointer !== undefined && payload.offloadedPayloadSize !== undefined));
15
49
  }
16
50
  //# sourceMappingURL=offloadedPayloadMessageSchemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"offloadedPayloadMessageSchemas.js","sourceRoot":"","sources":["../../lib/payload-store/offloadedPayloadMessageSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B;;;GAGG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC;KACtD,MAAM,CAAC;IACN,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1C,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC;IACF,gIAAgI;KAC/H,WAAW,EAAE,CAAA;AAMhB,MAAM,UAAU,gCAAgC,CAC9C,KAAc;IAEd,OAAQ,KAAwC,CAAC,uBAAuB,KAAK,SAAS,CAAA;AACxF,CAAC"}
1
+ {"version":3,"file":"offloadedPayloadMessageSchemas.js","sourceRoot":"","sources":["../../lib/payload-store/offloadedPayloadMessageSchemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,+CAA+C;IAC/C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,+DAA+D;IAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,mCAAmC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAA;AAIF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC;KACtD,MAAM,CAAC;IACN,wEAAwE;IACxE,UAAU,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACzC,kEAAkE;IAClE,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACrD,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7D,CAAC;IACF,gIAAgI;KAC/H,WAAW,EAAE;KACb,MAAM,CACL,CAAC,IAAI,EAAE,EAAE;IACP,sCAAsC;IACtC,4FAA4F;IAC5F,OAAO,CACL,IAAI,CAAC,UAAU,KAAK,SAAS;QAC7B,CAAC,IAAI,CAAC,uBAAuB,KAAK,SAAS,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,CAAC,CACxF,CAAA;AACH,CAAC,EACD;IACE,OAAO,EACL,4FAA4F;CAC/F,CACF,CAAA;AAMH,MAAM,UAAU,gCAAgC,CAC9C,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAuC,CAAA;IACvD,OAAO,CACL,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,CAAC,OAAO,CAAC,uBAAuB,KAAK,SAAS,IAAI,OAAO,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAC9F,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { Readable } from 'node:stream';
2
- export interface PayloadStoreTypes {
2
+ export interface PayloadStore {
3
3
  /** Store the payload and return a key that can be used to retrieve it later. */
4
4
  storePayload(payload: SerializedPayload): Promise<string>;
5
5
  /** Retrieve the previously stored payload. */
@@ -16,11 +16,71 @@ export declare function isDestroyable(value: unknown): value is Destroyable<unkn
16
16
  export interface PayloadSerializer {
17
17
  serialize(payload: unknown): Promise<SerializedPayload | Destroyable<SerializedPayload>>;
18
18
  }
19
- export type PayloadStoreConfig = {
19
+ /**
20
+ * Single-store configuration (simple mode).
21
+ * Use this when you have only one payload store.
22
+ */
23
+ export type SinglePayloadStoreConfig = {
20
24
  /** Threshold in bytes after which the payload should be stored in the store. */
21
25
  messageSizeThreshold: number;
22
26
  /** The store to use for storing the payload. */
23
- store: PayloadStoreTypes;
27
+ store: PayloadStore;
28
+ /**
29
+ * Identifier for this store (used in offloaded payload messages).
30
+ * This name is embedded in the message payload to identify which store holds the data.
31
+ */
32
+ storeName: string;
24
33
  /** The serializer to use for serializing the payload. */
25
34
  serializer?: PayloadSerializer;
26
35
  };
36
+ /**
37
+ * Multi-store configuration (advanced mode).
38
+ * Use this when you need to support multiple payload stores (e.g., for migration).
39
+ */
40
+ export type MultiPayloadStoreConfig<StoreNames extends string = string> = {
41
+ /** Threshold in bytes after which the payload should be stored in the store. */
42
+ messageSizeThreshold: number;
43
+ /** Map of store identifiers to store instances. */
44
+ stores: Record<StoreNames, PayloadStore>;
45
+ /**
46
+ * Store identifier to use for outgoing messages.
47
+ * Must be a key from the stores map (enforced at compile time).
48
+ */
49
+ outgoingStore: NoInfer<StoreNames>;
50
+ /**
51
+ * Optional: Default store identifier to use when retrieving messages that only have
52
+ * the legacy offloadedPayloadPointer field (without payloadRef).
53
+ * If not specified, will throw an error when encountering legacy format.
54
+ * Must be a key from the stores map if provided (enforced at compile time).
55
+ */
56
+ defaultIncomingStore?: NoInfer<StoreNames>;
57
+ /** The serializer to use for serializing the payload. */
58
+ serializer?: PayloadSerializer;
59
+ };
60
+ /**
61
+ * Payload store configuration - supports both single-store and multi-store modes.
62
+ */
63
+ export type PayloadStoreConfig = SinglePayloadStoreConfig | MultiPayloadStoreConfig;
64
+ /**
65
+ * Type guard to check if config is multi-store configuration.
66
+ */
67
+ export declare function isMultiPayloadStoreConfig(config: PayloadStoreConfig): config is MultiPayloadStoreConfig<string>;
68
+ /**
69
+ * Helper function to create a multi-store config with compile-time validation.
70
+ * TypeScript will infer store names from the `stores` object and ensure
71
+ * `outgoingStore` and `defaultIncomingStore` are valid keys.
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * const config = createMultiStoreConfig({
76
+ * messageSizeThreshold: 256 * 1024,
77
+ * stores: {
78
+ * 'store-a': storeA,
79
+ * 'store-b': storeB,
80
+ * },
81
+ * outgoingStore: 'store-a', // Valid
82
+ * // outgoingStore: 'store-c', // Compile error
83
+ * })
84
+ * ```
85
+ */
86
+ export declare function createMultiStoreConfig<StoreNames extends string>(config: MultiPayloadStoreConfig<StoreNames>): MultiPayloadStoreConfig<StoreNames>;
@@ -1,4 +1,31 @@
1
1
  export function isDestroyable(value) {
2
2
  return typeof value === 'object' && value !== null && 'destroy' in value;
3
3
  }
4
+ /**
5
+ * Type guard to check if config is multi-store configuration.
6
+ */
7
+ export function isMultiPayloadStoreConfig(config) {
8
+ return 'stores' in config && 'outgoingStore' in config;
9
+ }
10
+ /**
11
+ * Helper function to create a multi-store config with compile-time validation.
12
+ * TypeScript will infer store names from the `stores` object and ensure
13
+ * `outgoingStore` and `defaultIncomingStore` are valid keys.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const config = createMultiStoreConfig({
18
+ * messageSizeThreshold: 256 * 1024,
19
+ * stores: {
20
+ * 'store-a': storeA,
21
+ * 'store-b': storeB,
22
+ * },
23
+ * outgoingStore: 'store-a', // Valid
24
+ * // outgoingStore: 'store-c', // Compile error
25
+ * })
26
+ * ```
27
+ */
28
+ export function createMultiStoreConfig(config) {
29
+ return config;
30
+ }
4
31
  //# sourceMappingURL=payloadStoreTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payloadStoreTypes.js","sourceRoot":"","sources":["../../lib/payload-store/payloadStoreTypes.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AAC1E,CAAC"}
1
+ {"version":3,"file":"payloadStoreTypes.js","sourceRoot":"","sources":["../../lib/payload-store/payloadStoreTypes.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,CAAA;AAC1E,CAAC;AA6DD;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,MAA0B;IAE1B,OAAO,QAAQ,IAAI,MAAM,IAAI,eAAe,IAAI,MAAM,CAAA;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAA2C;IAE3C,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import type { z } from 'zod/v4';
2
- import type { EventRegistry } from '../events/EventRegistry.ts';
3
2
  import type { PublisherBaseEventType } from '../events/baseEventSchemas.ts';
3
+ import type { EventRegistry } from '../events/EventRegistry.ts';
4
4
  import type { CommonEventDefinition } from '../events/eventTypes.ts';
5
5
  import type { MetadataFiller } from '../messages/MetadataFiller.ts';
6
6
  import type { AsyncPublisher, SyncPublisher } from '../types/MessageQueueTypes.ts';
@@ -103,18 +103,18 @@ export class AbstractPublisherManager {
103
103
  }
104
104
  resolveMessage(messageDefinition, message, precedingEventMetadata) {
105
105
  const producedMetadata = this.metadataFiller.produceMetadata(message,
106
- // @ts-ignore
106
+ // @ts-expect-error
107
107
  messageDefinition, precedingEventMetadata);
108
- // @ts-ignore
108
+ // @ts-expect-error
109
109
  const resolvedMetadata = message[this.metadataField]
110
110
  ? {
111
111
  ...producedMetadata,
112
- // @ts-ignore
112
+ // @ts-expect-error
113
113
  ...message[this.metadataField],
114
114
  }
115
115
  : // @ts-ignore
116
116
  producedMetadata;
117
- // @ts-ignore
117
+ // @ts-expect-error
118
118
  return {
119
119
  id: this.metadataFiller.produceId(),
120
120
  timestamp: this.metadataFiller.produceTimestamp(),
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractPublisherManager.js","sourceRoot":"","sources":["../../lib/queues/AbstractPublisherManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractPublisherManager.js","sourceRoot":"","sources":["../../lib/queues/AbstractPublisherManager.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { type CommonLogger, type Either, type ErrorReporter, type ErrorResolver } from '@lokalise/node-core';
2
+ import type { MakeRequired } from '@lokalise/universal-ts-utils/node';
2
3
  import type { ZodSchema, ZodType } from 'zod/v4';
3
4
  import type { MessageInvalidFormatError, MessageValidationError } from '../errors/Errors.ts';
4
- import { type AcquireLockTimeoutError } from '../message-deduplication/AcquireLockTimeoutError.js';
5
+ import { type AcquireLockTimeoutError } from '../message-deduplication/AcquireLockTimeoutError.ts';
5
6
  import { type DeduplicationRequester, type MessageDeduplicationConfig, type ReleasableLock } from '../message-deduplication/messageDeduplicationTypes.ts';
6
7
  import { type OffloadedPayloadPointerPayload } from '../payload-store/offloadedPayloadMessageSchemas.ts';
7
- import type { PayloadStoreConfig } from '../payload-store/payloadStoreTypes.ts';
8
+ import type { MultiPayloadStoreConfig, SinglePayloadStoreConfig } from '../payload-store/payloadStoreTypes.ts';
8
9
  import type { MessageProcessingResult } from '../types/MessageQueueTypes.ts';
9
10
  import type { DeletionConfig, MessageMetricsManager, QueueDependencies, QueueOptions } from '../types/queueOptionsTypes.ts';
10
11
  import type { BarrierCallback, BarrierResult, MessageHandlerConfig, PreHandlingOutputs, Prehandler, PrehandlerResult } from './HandlerContainer.ts';
@@ -45,7 +46,7 @@ export declare abstract class AbstractQueueService<MessagePayloadSchemas extends
45
46
  protected readonly creationConfig?: QueueConfiguration;
46
47
  protected readonly locatorConfig?: QueueLocatorType;
47
48
  protected readonly deletionConfig?: DeletionConfig;
48
- protected readonly payloadStoreConfig?: Omit<PayloadStoreConfig, 'serializer'> & Required<Pick<PayloadStoreConfig, 'serializer'>>;
49
+ protected readonly payloadStoreConfig?: MakeRequired<SinglePayloadStoreConfig, 'serializer'> | MakeRequired<MultiPayloadStoreConfig, 'serializer'>;
49
50
  protected readonly messageDeduplicationConfig?: MessageDeduplicationConfig;
50
51
  protected readonly messageMetricsManager?: MessageMetricsManager<MessagePayloadSchemas>;
51
52
  protected readonly _handlerSpy?: HandlerSpy<MessagePayloadSchemas>;
@@ -92,15 +93,44 @@ export declare abstract class AbstractQueueService<MessagePayloadSchemas extends
92
93
  protected abstract preHandlerBarrier<BarrierOutput>(message: MessagePayloadSchemas, messageType: string, preHandlerOutput: PrehandlerOutput): Promise<BarrierResult<BarrierOutput>>;
93
94
  protected abstract processMessage(message: MessagePayloadSchemas, messageType: string, preHandlingOutputs: PreHandlingOutputs<PrehandlerOutput, any>): Promise<Either<'retryLater', 'success'>>;
94
95
  abstract close(): Promise<unknown>;
96
+ /**
97
+ * Resolves the store and store name for outgoing (publishing) messages.
98
+ * For multi-store: uses outgoingStore from config.
99
+ * For single-store: uses the configured store and storeName.
100
+ * @throws Error if payloadStoreConfig is not configured or the named store is not found.
101
+ */
102
+ private resolveOutgoingStore;
103
+ /**
104
+ * Resolves store from payloadRef (new format).
105
+ */
106
+ private resolveStoreFromPayloadRef;
107
+ /**
108
+ * Resolves store from legacy pointer (old format).
109
+ */
110
+ private resolveStoreFromLegacyPointer;
111
+ /**
112
+ * Resolves the store for incoming (consuming) messages based on payload reference.
113
+ * For multi-store with payloadRef: uses the store specified in payloadRef.
114
+ * For multi-store with legacy format: uses defaultIncomingStore.
115
+ * For single-store: always uses the configured store.
116
+ */
117
+ private resolveIncomingStore;
95
118
  /**
96
119
  * Offload message payload to an external store if it exceeds the threshold.
97
120
  * Returns a special type that contains a pointer to the offloaded payload or the original payload if it was not offloaded.
98
121
  * Requires message size as only the implementation knows how to calculate it.
122
+ *
123
+ * For multi-store configuration, uses the configured outgoingStore.
124
+ * For single-store configuration, uses the single store.
125
+ *
126
+ * The returned payload includes both the new payloadRef format and legacy fields for backward compatibility.
99
127
  */
100
128
  protected offloadMessagePayloadIfNeeded(message: MessagePayloadSchemas, messageSizeFn: () => number): Promise<MessagePayloadSchemas | OffloadedPayloadPointerPayload>;
101
129
  /**
102
130
  * Retrieve previously offloaded message payload using provided pointer payload.
103
131
  * Returns the original payload or an error if the payload was not found or could not be parsed.
132
+ *
133
+ * Supports both new multi-store format (payloadRef) and legacy format (offloadedPayloadPointer).
104
134
  */
105
135
  protected retrieveOffloadedMessagePayload(maybeOffloadedPayloadPointerPayload: unknown): Promise<Either<Error, unknown>>;
106
136
  /**