@message-queue-toolkit/sqs 3.4.0 → 3.5.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.
@@ -75,6 +75,10 @@ class AbstractSqsConsumer extends AbstractSqsService_1.AbstractSqsService {
75
75
  const messageType = deserializedMessage.result[this.messageTypeField];
76
76
  const transactionSpanId = `queue_${this.queueName}:${messageType}`;
77
77
  this.transactionObservabilityManager?.start(transactionSpanId);
78
+ if (this.logMessages) {
79
+ const resolvedLogMessage = this.resolveMessageLog(deserializedMessage.result, messageType);
80
+ this.logMessage(resolvedLogMessage);
81
+ }
78
82
  const result = await this.processMessage(deserializedMessage.result, messageType)
79
83
  .catch((err) => {
80
84
  // ToDo we need sanity check to stop trying at some point, perhaps some kind of Redis counter
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":"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"}
@@ -17,4 +17,5 @@ export declare abstract class AbstractSqsConsumerMultiSchema<MessagePayloadType
17
17
  constructor(dependencies: SQSConsumerDependencies, options: ConsumerOptionsType);
18
18
  protected resolveSchema(message: MessagePayloadType): Either<Error, import("zod").ZodType<MessagePayloadType, import("zod").ZodTypeDef, MessagePayloadType>>;
19
19
  processMessage(message: MessagePayloadType, messageType: string): Promise<Either<'retryLater', 'success'>>;
20
+ protected resolveMessageLog(message: MessagePayloadType, messageType: string): unknown;
20
21
  }
@@ -24,7 +24,11 @@ class AbstractSqsConsumerMultiSchema extends AbstractSqsConsumer_1.AbstractSqsCo
24
24
  async processMessage(message, messageType) {
25
25
  const handler = this.handlerContainer.resolveHandler(messageType);
26
26
  // @ts-ignore
27
- return handler(message, this);
27
+ return handler.handler(message, this);
28
+ }
29
+ resolveMessageLog(message, messageType) {
30
+ const handler = this.handlerContainer.resolveHandler(messageType);
31
+ return handler.messageLogFormatter(message);
28
32
  }
29
33
  }
30
34
  exports.AbstractSqsConsumerMultiSchema = AbstractSqsConsumerMultiSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSqsConsumerMultiSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumerMultiSchema.ts"],"names":[],"mappings":";;;AAKA,sDAAsF;AAItF,+DAA2D;AAmB3D,MAAsB,8BAcpB,SAAQ,yCAKT;IACC,sBAAsB,CAA4C;IAClE,gBAAgB,CAAwD;IAExE,YAAY,YAAqC,EAAE,OAA4B;QAC7E,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEpE,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAAsB,CAAqB;YAC3E,cAAc;YACd,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,uBAAgB,CAAuC;YACjF,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,eAAe,EAAE,OAAO,CAAC,QAAQ;SAClC,CAAC,CAAA;IACJ,CAAC;IAEkB,aAAa,CAAC,OAA2B;QAC1D,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;IAEe,KAAK,CAAC,cAAc,CAClC,OAA2B,EAC3B,WAAmB;QAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QACjE,aAAa;QACb,OAAO,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC;CACF;AAlDD,wEAkDC"}
1
+ {"version":3,"file":"AbstractSqsConsumerMultiSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumerMultiSchema.ts"],"names":[],"mappings":";;;AAKA,sDAAsF;AAItF,+DAA2D;AAmB3D,MAAsB,8BAcpB,SAAQ,yCAKT;IACC,sBAAsB,CAA4C;IAClE,gBAAgB,CAAwD;IAExE,YAAY,YAAqC,EAAE,OAA4B;QAC7E,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAEpE,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAAsB,CAAqB;YAC3E,cAAc;YACd,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,uBAAgB,CAAuC;YACjF,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,eAAe,EAAE,OAAO,CAAC,QAAQ;SAClC,CAAC,CAAA;IACJ,CAAC;IAEkB,aAAa,CAAC,OAA2B;QAC1D,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;IAEe,KAAK,CAAC,cAAc,CAClC,OAA2B,EAC3B,WAAmB;QAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QACjE,aAAa;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACvC,CAAC;IAEkB,iBAAiB,CAAC,OAA2B,EAAE,WAAmB;QACnF,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QACjE,OAAO,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC7C,CAAC;CACF;AAvDD,wEAuDC"}
@@ -10,10 +10,9 @@ export type SQSMessageOptions = {
10
10
  };
11
11
  export declare abstract class AbstractSqsPublisherMonoSchema<MessagePayloadType extends object> extends AbstractSqsService<MessagePayloadType> implements AsyncPublisher<MessagePayloadType, SQSMessageOptions> {
12
12
  private readonly messageSchema;
13
+ private readonly schemaEither;
13
14
  constructor(dependencies: SQSDependencies, options: (NewQueueOptions<SQSCreationConfig> | ExistingQueueOptions<SQSQueueLocatorType>) & MonoSchemaQueueOptions<MessagePayloadType>);
14
15
  publish(message: MessagePayloadType, options?: SQSMessageOptions): Promise<void>;
15
16
  protected resolveMessage(): Either<MessageInvalidFormatError | MessageValidationError, unknown>;
16
- protected resolveSchema(): {
17
- result: ZodSchema<MessagePayloadType, import("zod").ZodTypeDef, MessagePayloadType>;
18
- };
17
+ protected resolveSchema(): Either<Error, ZodSchema<MessagePayloadType, import("zod").ZodTypeDef, MessagePayloadType>>;
19
18
  }
@@ -5,13 +5,22 @@ const client_sqs_1 = require("@aws-sdk/client-sqs");
5
5
  const AbstractSqsService_1 = require("./AbstractSqsService");
6
6
  class AbstractSqsPublisherMonoSchema extends AbstractSqsService_1.AbstractSqsService {
7
7
  messageSchema;
8
+ schemaEither;
8
9
  constructor(dependencies, options) {
9
10
  super(dependencies, options);
10
11
  this.messageSchema = options.messageSchema;
12
+ this.schemaEither = {
13
+ result: this.messageSchema,
14
+ };
11
15
  }
12
16
  async publish(message, options = {}) {
13
17
  try {
14
18
  this.messageSchema.parse(message);
19
+ if (this.logMessages) {
20
+ // @ts-ignore
21
+ const resolvedLogMessage = this.resolveMessageLog(message, message[this.messageTypeField]);
22
+ this.logMessage(resolvedLogMessage);
23
+ }
15
24
  const input = {
16
25
  // SendMessageRequest
17
26
  QueueUrl: this.queueUrl,
@@ -31,9 +40,7 @@ class AbstractSqsPublisherMonoSchema extends AbstractSqsService_1.AbstractSqsSer
31
40
  throw new Error('Not implemented for publisher');
32
41
  }
33
42
  resolveSchema() {
34
- return {
35
- result: this.messageSchema,
36
- };
43
+ return this.schemaEither;
37
44
  }
38
45
  }
39
46
  exports.AbstractSqsPublisherMonoSchema = AbstractSqsPublisherMonoSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSqsPublisherMonoSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisherMonoSchema.ts"],"names":[],"mappings":";;;AACA,oDAAwD;AAcxD,6DAAyD;AAOzD,MAAsB,8BACpB,SAAQ,uCAAsC;IAG7B,aAAa,CAA+B;IAE7D,YACE,YAA6B,EAC7B,OAC4C;QAE5C,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC5B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA2B,EAAE,UAA6B,EAAE;QACxE,IAAI;YACF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACjC,MAAM,KAAK,GAAG;gBACZ,qBAAqB;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACpC,GAAG,OAAO;aACuB,CAAA;YACnC,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC,KAAK,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,qBAAqB;IACX,cAAc;QACtB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa;QAC9B,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAA;IACH,CAAC;CAEF;AA3CD,wEA2CC"}
1
+ {"version":3,"file":"AbstractSqsPublisherMonoSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisherMonoSchema.ts"],"names":[],"mappings":";;;AACA,oDAAwD;AAcxD,6DAAyD;AAOzD,MAAsB,8BACpB,SAAQ,uCAAsC;IAG7B,aAAa,CAA+B;IAC5C,YAAY,CAA8C;IAE3E,YACE,YAA6B,EAC7B,OAC4C;QAE5C,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC5B,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;QAE1C,IAAI,CAAC,YAAY,GAAG;YAClB,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAA;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA2B,EAAE,UAA6B,EAAE;QACxE,IAAI;YACF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEjC,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,aAAa;gBACb,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;gBAC1F,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;aACpC;YAED,MAAM,KAAK,GAAG;gBACZ,qBAAqB;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACpC,GAAG,OAAO;aACuB,CAAA;YACnC,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC,KAAK,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,qBAAqB;IACX,cAAc;QACtB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;CAEF;AArDD,wEAqDC"}
@@ -21,6 +21,11 @@ class AbstractSqsPublisherMultiSchema extends AbstractSqsService_1.AbstractSqsSe
21
21
  throw resolveSchemaResult.error;
22
22
  }
23
23
  resolveSchemaResult.result.parse(message);
24
+ if (this.logMessages) {
25
+ // @ts-ignore
26
+ const resolvedLogMessage = this.resolveMessageLog(message, message[this.messageTypeField]);
27
+ this.logMessage(resolvedLogMessage);
28
+ }
24
29
  const input = {
25
30
  // SendMessageRequest
26
31
  QueueUrl: this.queueUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSqsPublisherMultiSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisherMultiSchema.ts"],"names":[],"mappings":";;;AACA,oDAAwD;AAUxD,sDAAoE;AAMpE,6DAAyD;AAQzD,MAAsB,+BACpB,SAAQ,uCAAsC;IAG7B,sBAAsB,CAA4C;IAEnF,YACE,YAA6B,EAC7B,OACiD;QAEjD,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;QAC7C,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAAsB,CAAqB;YAC3E,cAAc;YACd,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA2B,EAAE,UAA6B,EAAE;QACxE,IAAI;YACF,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACvD,IAAI,mBAAmB,CAAC,KAAK,EAAE;gBAC7B,MAAM,mBAAmB,CAAC,KAAK,CAAA;aAChC;YACD,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEzC,MAAM,KAAK,GAAG;gBACZ,qBAAqB;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACpC,GAAG,OAAO;aACuB,CAAA;YACnC,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC,KAAK,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,qBAAqB;IACX,cAAc,CACtB,QAAoB;QAEpB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IACD,oBAAoB;IAED,aAAa,CAC9B,OAA2B;QAE3B,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;CACF;AAvDD,0EAuDC"}
1
+ {"version":3,"file":"AbstractSqsPublisherMultiSchema.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisherMultiSchema.ts"],"names":[],"mappings":";;;AACA,oDAAwD;AAUxD,sDAAoE;AAMpE,6DAAyD;AAQzD,MAAsB,+BACpB,SAAQ,uCAAsC;IAG7B,sBAAsB,CAA4C;IAEnF,YACE,YAA6B,EAC7B,OACiD;QAEjD,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;QAC7C,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAAsB,CAAqB;YAC3E,cAAc;YACd,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA2B,EAAE,UAA6B,EAAE;QACxE,IAAI;YACF,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACvD,IAAI,mBAAmB,CAAC,KAAK,EAAE;gBAC7B,MAAM,mBAAmB,CAAC,KAAK,CAAA;aAChC;YACD,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEzC,IAAI,IAAI,CAAC,WAAW,EAAE;gBACpB,aAAa;gBACb,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;gBAC1F,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAA;aACpC;YAED,MAAM,KAAK,GAAG;gBACZ,qBAAqB;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACpC,GAAG,OAAO;aACuB,CAAA;YACnC,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC,KAAK,CAAC,CAAA;YAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,qBAAqB;IACX,cAAc,CACtB,QAAoB;QAEpB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IACD,oBAAoB;IAED,aAAa,CAC9B,OAA2B;QAE3B,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;CACF;AA7DD,0EA6DC"}
@@ -29,6 +29,7 @@ export declare abstract class AbstractSqsService<MessagePayloadType extends obje
29
29
  protected readonly sqsClient: SQSClient;
30
30
  queueUrl: string;
31
31
  queueName: string;
32
+ queueArn: string;
32
33
  constructor(dependencies: DependenciesType, options: SQSOptionsType);
33
34
  init(): Promise<void>;
34
35
  close(): Promise<void>;
@@ -9,6 +9,8 @@ class AbstractSqsService extends core_1.AbstractQueueService {
9
9
  queueUrl;
10
10
  // @ts-ignore
11
11
  queueName;
12
+ // @ts-ignore
13
+ queueArn;
12
14
  constructor(dependencies, options) {
13
15
  super(dependencies, options);
14
16
  this.sqsClient = dependencies.sqsClient;
@@ -17,7 +19,8 @@ class AbstractSqsService extends core_1.AbstractQueueService {
17
19
  if (this.deletionConfig && this.creationConfig) {
18
20
  await (0, sqsInitter_1.deleteSqs)(this.sqsClient, this.deletionConfig, this.creationConfig);
19
21
  }
20
- const { queueUrl, queueName } = await (0, sqsInitter_1.initSqs)(this.sqsClient, this.locatorConfig, this.creationConfig);
22
+ const { queueUrl, queueName, queueArn } = await (0, sqsInitter_1.initSqs)(this.sqsClient, this.locatorConfig, this.creationConfig);
23
+ this.queueArn = queueArn;
21
24
  this.queueUrl = queueUrl;
22
25
  this.queueName = queueName;
23
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSqsService.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsService.ts"],"names":[],"mappings":";;;AAQA,sDAAkE;AAGlE,oDAAwD;AA8BxD,MAAsB,kBAUpB,SAAQ,2BAOT;IACoB,SAAS,CAAW;IACvC,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,SAAS,CAAQ;IAExB,YAAY,YAA8B,EAAE,OAAuB;QACjE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;IACzC,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,EAAE;YAC9C,MAAM,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;SAC1E;QACD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,oBAAO,EAC3C,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAA;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAED,4DAA4D;IAC5C,KAAK,CAAC,KAAK,KAAmB,CAAC;CAChD;AA9CD,gDA8CC"}
1
+ {"version":3,"file":"AbstractSqsService.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsService.ts"],"names":[],"mappings":";;;AAQA,sDAAkE;AAGlE,oDAAwD;AA8BxD,MAAsB,kBAUpB,SAAQ,2BAOT;IACoB,SAAS,CAAW;IACvC,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,SAAS,CAAQ;IACxB,aAAa;IACN,QAAQ,CAAQ;IAEvB,YAAY,YAA8B,EAAE,OAAuB;QACjE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAE5B,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;IACzC,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,EAAE;YAC9C,MAAM,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;SAC1E;QACD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,oBAAO,EACrD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAA;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;IAED,4DAA4D;IAC5C,KAAK,CAAC,KAAK,KAAmB,CAAC;CAChD;AAjDD,gDAiDC"}
@@ -1,3 +1,3 @@
1
- export declare function generateQueuePublishForTopicPolicy(queueUrl: string, supportedSnsTopicArnPrefix: string): string;
1
+ export declare function generateQueuePublishForTopicPolicy(queueArn: string, supportedSnsTopicArnPrefix: string): string;
2
2
  export declare function generateWildcardSqsArn(sqsQueueArnPrefix: string): string;
3
3
  export declare function generateWildcardSnsArn(snsTopicArnPrefix: string): string;
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateWildcardSnsArn = exports.generateWildcardSqsArn = exports.generateQueuePublishForTopicPolicy = void 0;
4
4
  // See https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_version.html
5
5
  const POLICY_VERSION = '2012-10-17';
6
- function generateQueuePublishForTopicPolicy(queueUrl, supportedSnsTopicArnPrefix) {
7
- return `{"Version":"${POLICY_VERSION}","Id":"__default_policy_ID","Statement":[{"Sid":"AllowSNSPublish","Effect":"Allow","Principal":{"AWS":"*"},"Action":"sqs:SendMessage","Resource":"${queueUrl}","Condition":{"ArnLike":{"aws:SourceArn":"${supportedSnsTopicArnPrefix}"}}}]}`;
6
+ function generateQueuePublishForTopicPolicy(queueArn, supportedSnsTopicArnPrefix) {
7
+ return `{"Version":"${POLICY_VERSION}","Id":"__default_policy_ID","Statement":[{"Sid":"AllowSNSPublish","Effect":"Allow","Principal":{"AWS":"*"},"Action":"sqs:SendMessage","Resource":"${queueArn}","Condition":{"ArnLike":{"aws:SourceArn":"${supportedSnsTopicArnPrefix}"}}}]}`;
8
8
  }
9
9
  exports.generateQueuePublishForTopicPolicy = generateQueuePublishForTopicPolicy;
10
10
  function generateWildcardSqsArn(sqsQueueArnPrefix) {
@@ -4,6 +4,7 @@ import type { SQSCreationConfig } from '../sqs/AbstractSqsConsumer';
4
4
  import type { SQSQueueLocatorType } from '../sqs/AbstractSqsService';
5
5
  export declare function deleteSqs(sqsClient: SQSClient, deletionConfig: DeletionConfig, creationConfig: SQSCreationConfig): Promise<void>;
6
6
  export declare function initSqs(sqsClient: SQSClient, locatorConfig?: SQSQueueLocatorType, creationConfig?: SQSCreationConfig): Promise<{
7
+ queueArn: string;
7
8
  queueUrl: string;
8
9
  queueName: string;
9
10
  }>;
@@ -19,14 +19,19 @@ exports.deleteSqs = deleteSqs;
19
19
  async function initSqs(sqsClient, locatorConfig, creationConfig) {
20
20
  // reuse existing queue only
21
21
  if (locatorConfig) {
22
- const checkResult = await (0, sqsUtils_1.getQueueAttributes)(sqsClient, locatorConfig);
22
+ const checkResult = await (0, sqsUtils_1.getQueueAttributes)(sqsClient, locatorConfig, ['QueueArn']);
23
23
  if (checkResult.error === 'not_found') {
24
24
  throw new Error(`Queue with queueUrl ${locatorConfig.queueUrl} does not exist.`);
25
25
  }
26
+ const queueArn = checkResult.result?.attributes?.QueueArn;
27
+ if (!queueArn) {
28
+ throw new Error('Queue ARN was not set');
29
+ }
26
30
  const queueUrl = locatorConfig.queueUrl;
27
31
  const splitUrl = queueUrl.split('/');
28
32
  const queueName = splitUrl[splitUrl.length - 1];
29
33
  return {
34
+ queueArn,
30
35
  queueUrl,
31
36
  queueName,
32
37
  };
@@ -35,12 +40,13 @@ async function initSqs(sqsClient, locatorConfig, creationConfig) {
35
40
  if (!creationConfig?.queue.QueueName) {
36
41
  throw new Error('queueConfig.QueueName is mandatory when locator is not provided');
37
42
  }
38
- const queueUrl = await (0, sqsUtils_1.assertQueue)(sqsClient, creationConfig.queue, {
43
+ const { queueUrl, queueArn } = await (0, sqsUtils_1.assertQueue)(sqsClient, creationConfig.queue, {
39
44
  topicArnsWithPublishPermissionsPrefix: creationConfig.topicArnsWithPublishPermissionsPrefix,
40
45
  });
41
46
  const queueName = creationConfig.queue.QueueName;
42
47
  return {
43
48
  queueUrl,
49
+ queueArn,
44
50
  queueName,
45
51
  };
46
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqsInitter.js","sourceRoot":"","sources":["../../../lib/utils/sqsInitter.ts"],"names":[],"mappings":";;;AAEA,sDAA0D;AAK1D,yCAAyE;AAElE,KAAK,UAAU,SAAS,CAC7B,SAAoB,EACpB,cAA8B,EAC9B,cAAiC;IAEjC,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE;QAClC,OAAM;KACP;IAED,IAAI,IAAA,mBAAY,GAAE,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE;QAC7D,MAAM,IAAI,KAAK,CACb,wMAAwM,CACzM,CAAA;KACF;IAED,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;KAChE;IAED,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;AAC9D,CAAC;AApBD,8BAoBC;AAEM,KAAK,UAAU,OAAO,CAC3B,SAAoB,EACpB,aAAmC,EACnC,cAAkC;IAElC,4BAA4B;IAC5B,IAAI,aAAa,EAAE;QACjB,MAAM,WAAW,GAAG,MAAM,IAAA,6BAAkB,EAAC,SAAS,EAAE,aAAa,CAAC,CAAA;QACtE,IAAI,WAAW,CAAC,KAAK,KAAK,WAAW,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,uBAAuB,aAAa,CAAC,QAAQ,kBAAkB,CAAC,CAAA;SACjF;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QAEvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC/C,OAAO;YACL,QAAQ;YACR,SAAS;SACV,CAAA;KACF;IAED,qCAAqC;IACrC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAA;KACnF;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,cAAc,CAAC,KAAK,EAAE;QAClE,qCAAqC,EAAE,cAAc,CAAC,qCAAqC;KAC5F,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAA;IAEhD,OAAO;QACL,QAAQ;QACR,SAAS;KACV,CAAA;AACH,CAAC;AApCD,0BAoCC"}
1
+ {"version":3,"file":"sqsInitter.js","sourceRoot":"","sources":["../../../lib/utils/sqsInitter.ts"],"names":[],"mappings":";;;AAEA,sDAA0D;AAK1D,yCAAyE;AAElE,KAAK,UAAU,SAAS,CAC7B,SAAoB,EACpB,cAA8B,EAC9B,cAAiC;IAEjC,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE;QAClC,OAAM;KACP;IAED,IAAI,IAAA,mBAAY,GAAE,IAAI,CAAC,cAAc,CAAC,uBAAuB,EAAE;QAC7D,MAAM,IAAI,KAAK,CACb,wMAAwM,CACzM,CAAA;KACF;IAED,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,EAAE;QACnC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;KAChE;IAED,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;AAC9D,CAAC;AApBD,8BAoBC;AAEM,KAAK,UAAU,OAAO,CAC3B,SAAoB,EACpB,aAAmC,EACnC,cAAkC;IAElC,4BAA4B;IAC5B,IAAI,aAAa,EAAE;QACjB,MAAM,WAAW,GAAG,MAAM,IAAA,6BAAkB,EAAC,SAAS,EAAE,aAAa,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;QACpF,IAAI,WAAW,CAAC,KAAK,KAAK,WAAW,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,uBAAuB,aAAa,CAAC,QAAQ,kBAAkB,CAAC,CAAA;SACjF;QAED,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAA;QACzD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;SACzC;QAED,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QAEvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC/C,OAAO;YACL,QAAQ;YACR,QAAQ;YACR,SAAS;SACV,CAAA;KACF;IAED,qCAAqC;IACrC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,SAAS,EAAE;QACpC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAA;KACnF;IAED,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,cAAc,CAAC,KAAK,EAAE;QAChF,qCAAqC,EAAE,cAAc,CAAC,qCAAqC;KAC5F,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAA;IAEhD,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,SAAS;KACV,CAAA;AACH,CAAC;AA3CD,0BA2CC"}
@@ -7,6 +7,9 @@ type QueueAttributesResult = {
7
7
  attributes?: Record<string, string>;
8
8
  };
9
9
  export declare function getQueueAttributes(sqsClient: SQSClient, queueLocator: SQSQueueLocatorType, attributeNames?: QueueAttributeName[]): Promise<Either<'not_found', QueueAttributesResult>>;
10
- export declare function assertQueue(sqsClient: SQSClient, queueConfig: CreateQueueCommandInput, extraParams?: ExtraSQSCreationParams): Promise<string>;
10
+ export declare function assertQueue(sqsClient: SQSClient, queueConfig: CreateQueueCommandInput, extraParams?: ExtraSQSCreationParams): Promise<{
11
+ queueArn: string;
12
+ queueUrl: string;
13
+ }>;
11
14
  export declare function deleteQueue(client: SQSClient, queueName: string): Promise<void>;
12
15
  export {};
@@ -38,16 +38,28 @@ async function assertQueue(sqsClient, queueConfig, extraParams) {
38
38
  if (!response.QueueUrl) {
39
39
  throw new Error(`Queue ${queueConfig.QueueName ?? ''} was not created`);
40
40
  }
41
+ const getQueueAttributesCommand = new client_sqs_1.GetQueueAttributesCommand({
42
+ QueueUrl: response.QueueUrl,
43
+ AttributeNames: ['QueueArn'],
44
+ });
45
+ const queueAttributesResponse = await sqsClient.send(getQueueAttributesCommand);
46
+ const queueArn = queueAttributesResponse.Attributes?.QueueArn;
47
+ if (!queueArn) {
48
+ throw new Error('Queue ARN was not set');
49
+ }
41
50
  if (extraParams?.topicArnsWithPublishPermissionsPrefix) {
42
51
  const setTopicAttributesCommand = new client_sqs_1.SetQueueAttributesCommand({
43
52
  QueueUrl: response.QueueUrl,
44
53
  Attributes: {
45
- Policy: (0, sqsAttributeUtils_1.generateQueuePublishForTopicPolicy)(response.QueueUrl, extraParams.topicArnsWithPublishPermissionsPrefix),
54
+ Policy: (0, sqsAttributeUtils_1.generateQueuePublishForTopicPolicy)(queueArn, extraParams.topicArnsWithPublishPermissionsPrefix),
46
55
  },
47
56
  });
48
57
  await sqsClient.send(setTopicAttributesCommand);
49
58
  }
50
- return response.QueueUrl;
59
+ return {
60
+ queueArn,
61
+ queueUrl: response.QueueUrl,
62
+ };
51
63
  }
52
64
  exports.assertQueue = assertQueue;
53
65
  async function deleteQueue(client, queueName) {
@@ -1 +1 @@
1
- {"version":3,"file":"sqsUtils.js","sourceRoot":"","sources":["../../../lib/utils/sqsUtils.ts"],"names":[],"mappings":";;;AACA,oDAM4B;AAO5B,2DAAwE;AAMjE,KAAK,UAAU,kBAAkB,CACtC,SAAoB,EACpB,YAAiC,EACjC,cAAqC;IAErC,MAAM,OAAO,GAAG,IAAI,sCAAyB,CAAC;QAC5C,QAAQ,EAAE,YAAY,CAAC,QAAQ;QAC/B,cAAc,EAAE,cAAc;KAC/B,CAAC,CAAA;IAEF,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9C,OAAO;YACL,MAAM,EAAE;gBACN,UAAU,EAAE,QAAQ,CAAC,UAAU;aAChC;SACF,CAAA;KACF;IAAC,OAAO,GAAG,EAAE;QACZ,aAAa;QACb,IAAI,GAAG,CAAC,IAAI,KAAK,yCAAyC,EAAE;YAC1D,OAAO;gBACL,aAAa;gBACb,KAAK,EAAE,WAAW;aACnB,CAAA;SACF;QACD,MAAM,GAAG,CAAA;KACV;AACH,CAAC;AA3BD,gDA2BC;AAEM,KAAK,UAAU,WAAW,CAC/B,SAAoB,EACpB,WAAoC,EACpC,WAAoC;IAEpC,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC,WAAW,CAAC,CAAA;IACnD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAE7B,MAAM,aAAa,GAAG,IAAI,+BAAkB,CAAC;QAC3C,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAEpD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,SAAS,WAAW,CAAC,SAAS,IAAI,EAAE,kBAAkB,CAAC,CAAA;KACxE;IAED,IAAI,WAAW,EAAE,qCAAqC,EAAE;QACtD,MAAM,yBAAyB,GAAG,IAAI,sCAAyB,CAAC;YAC9D,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,UAAU,EAAE;gBACV,MAAM,EAAE,IAAA,sDAAkC,EACxC,QAAQ,CAAC,QAAQ,EACjB,WAAW,CAAC,qCAAqC,CAClD;aACF;SACF,CAAC,CAAA;QACF,MAAM,SAAS,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;KAChD;IAED,OAAO,QAAQ,CAAC,QAAQ,CAAA;AAC1B,CAAC;AA/BD,kCA+BC;AAEM,KAAK,UAAU,WAAW,CAAC,MAAiB,EAAE,SAAiB;IACpE,IAAI;QACF,MAAM,eAAe,GAAG,IAAI,+BAAkB,CAAC;YAC7C,SAAS,EAAE,SAAS;SACrB,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QAEnD,MAAM,OAAO,GAAG,IAAI,+BAAkB,CAAC;YACrC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAC,CAAA;QAEF,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAC3B;IAAC,OAAO,GAAG,EAAE;QACZ,aAAa;QACb,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;KAChD;AACH,CAAC;AAhBD,kCAgBC"}
1
+ {"version":3,"file":"sqsUtils.js","sourceRoot":"","sources":["../../../lib/utils/sqsUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@message-queue-toolkit/sqs",
3
- "version": "3.4.0",
3
+ "version": "3.5.0",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "description": "SQS adapter for message-queue-toolkit",
@@ -32,19 +32,19 @@
32
32
  },
33
33
  "peerDependencies": {
34
34
  "@aws-sdk/client-sqs": "^3.385.0",
35
- "@message-queue-toolkit/core": "^3.3.0"
35
+ "@message-queue-toolkit/core": "^3.4.0"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@aws-sdk/client-sqs": "^3.385.0",
39
39
  "@message-queue-toolkit/core": "*",
40
- "@types/node": "^20.4.1",
41
- "@typescript-eslint/eslint-plugin": "^6.2.1",
42
- "@typescript-eslint/parser": "^6.2.1",
40
+ "@types/node": "^20.5.0",
41
+ "@typescript-eslint/eslint-plugin": "^6.4.0",
42
+ "@typescript-eslint/parser": "^6.4.0",
43
43
  "@vitest/coverage-v8": "^0.34.1",
44
44
  "awilix": "^8.0.1",
45
45
  "awilix-manager": "^2.0.0",
46
46
  "del-cli": "^5.0.0",
47
- "eslint": "^8.44.0",
47
+ "eslint": "^8.47.0",
48
48
  "eslint-config-prettier": "^8.8.0",
49
49
  "eslint-plugin-import": "^2.27.5",
50
50
  "eslint-plugin-prettier": "^5.0.0",