@message-queue-toolkit/sns 9.0.0 → 10.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.
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsPublisherMonoSchema = void 0;
4
- const client_sns_1 = require("@aws-sdk/client-sns");
5
4
  const AbstractSnsService_1 = require("./AbstractSnsService");
6
5
  class AbstractSnsPublisherMonoSchema extends AbstractSnsService_1.AbstractSnsService {
7
6
  messageSchema;
@@ -13,27 +12,8 @@ class AbstractSnsPublisherMonoSchema extends AbstractSnsService_1.AbstractSnsSer
13
12
  result: this.messageSchema,
14
13
  };
15
14
  }
16
- async publish(message, options = {}) {
17
- try {
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
- }
24
- const input = {
25
- Message: JSON.stringify(message),
26
- TopicArn: this.topicArn,
27
- ...options,
28
- };
29
- const command = new client_sns_1.PublishCommand(input);
30
- await this.snsClient.send(command);
31
- this.handleMessageProcessed(message, 'published');
32
- }
33
- catch (error) {
34
- this.handleError(error);
35
- throw error;
36
- }
15
+ publish(message, options = {}) {
16
+ return this.internalPublish(message, this.messageSchema, options);
37
17
  }
38
18
  /* c8 ignore start */
39
19
  resolveMessage() {
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsPublisherMonoSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsPublisherMonoSchema.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AAapD,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;QAC1C,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,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEjC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,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;YACrC,CAAC;YAED,MAAM,KAAK,GAAG;gBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,OAAO;aACmB,CAAA;YAC/B,MAAM,OAAO,GAAG,IAAI,2BAAc,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,qBAAqB;IACF,cAAc;QAI/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;CAEF;AAvDD,wEAuDC"}
1
+ {"version":3,"file":"AbstractSnsPublisherMonoSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsPublisherMonoSchema.ts"],"names":[],"mappings":";;;AAWA,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;QAC1C,IAAI,CAAC,YAAY,GAAG;YAClB,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAA2B,EAAE,UAA6B,EAAE;QAClE,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IACnE,CAAC;IAED,qBAAqB;IACF,cAAc;QAI/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;CAEF;AAnCD,wEAmCC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsPublisherMultiSchema = void 0;
4
- const client_sns_1 = require("@aws-sdk/client-sns");
5
4
  const core_1 = require("@message-queue-toolkit/core");
6
5
  const AbstractSnsService_1 = require("./AbstractSnsService");
7
6
  class AbstractSnsPublisherMultiSchema extends AbstractSnsService_1.AbstractSnsService {
@@ -15,30 +14,11 @@ class AbstractSnsPublisherMultiSchema extends AbstractSnsService_1.AbstractSnsSe
15
14
  });
16
15
  }
17
16
  async publish(message, options = {}) {
18
- try {
19
- const resolveSchemaResult = this.resolveSchema(message);
20
- if (resolveSchemaResult.error) {
21
- throw resolveSchemaResult.error;
22
- }
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
- }
29
- const input = {
30
- Message: JSON.stringify(message),
31
- TopicArn: this.topicArn,
32
- ...options,
33
- };
34
- const command = new client_sns_1.PublishCommand(input);
35
- await this.snsClient.send(command);
36
- this.handleMessageProcessed(message, 'published');
37
- }
38
- catch (error) {
39
- this.handleError(error);
40
- throw error;
17
+ const messageSchemaResult = this.resolveSchema(message);
18
+ if (messageSchemaResult.error) {
19
+ throw messageSchemaResult.error;
41
20
  }
21
+ return this.internalPublish(message, messageSchemaResult.result, options);
42
22
  }
43
23
  resolveMessage() {
44
24
  throw new Error('Not implemented for publisher');
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsPublisherMultiSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsPublisherMultiSchema.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AASpD,sDAAoE;AAIpE,6DAAyD;AAOzD,MAAsB,+BACpB,SAAQ,uCAA0D;IAGjD,sBAAsB,CAA4C;IAEnF,YACE,YAA6B,EAC7B,OAEC;QAED,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,CAAC;YACH,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACvD,IAAI,mBAAmB,CAAC,KAAK,EAAE,CAAC;gBAC9B,MAAM,mBAAmB,CAAC,KAAK,CAAA;YACjC,CAAC;YACD,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAEzC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,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;YACrC,CAAC;YAED,MAAM,KAAK,GAAG;gBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,OAAO;aACmB,CAAA;YAC/B,MAAM,OAAO,GAAG,IAAI,2BAAc,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAEkB,cAAc;QAI/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa,CAAC,OAA2B;QAC1D,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;CACF;AA3DD,0EA2DC"}
1
+ {"version":3,"file":"AbstractSnsPublisherMultiSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsPublisherMultiSchema.ts"],"names":[],"mappings":";;;AAOA,sDAAoE;AAIpE,6DAAyD;AAOzD,MAAsB,+BACpB,SAAQ,uCAA0D;IAGjD,sBAAsB,CAA4C;IAEnF,YACE,YAA6B,EAC7B,OAEC;QAED,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,MAAM,mBAAmB,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACvD,IAAI,mBAAmB,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,mBAAmB,CAAC,KAAK,CAAA;QACjC,CAAC;QAED,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3E,CAAC;IAEkB,cAAc;QAI/B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;IAClD,CAAC;IAEkB,aAAa,CAAC,OAA2B;QAC1D,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,CAAC;CACF;AAxCD,0EAwCC"}
@@ -1,7 +1,9 @@
1
1
  import type { SNSClient, CreateTopicCommandInput, Tag } from '@aws-sdk/client-sns';
2
2
  import type { QueueConsumerDependencies, QueueDependencies, NewQueueOptions, ExistingQueueOptions, NewQueueOptionsMultiSchema, ExistingQueueOptionsMultiSchema } from '@message-queue-toolkit/core';
3
3
  import { AbstractQueueService } from '@message-queue-toolkit/core';
4
+ import type { ZodSchema } from 'zod';
4
5
  import type { SNS_MESSAGE_BODY_TYPE } from '../types/MessageTypes';
6
+ import type { SNSMessageOptions } from './AbstractSnsPublisherMonoSchema';
5
7
  export type SNSDependencies = QueueDependencies & {
6
8
  snsClient: SNSClient;
7
9
  };
@@ -40,4 +42,5 @@ export declare abstract class AbstractSnsService<MessagePayloadType extends obje
40
42
  constructor(dependencies: DependenciesType, options: SNSOptionsType);
41
43
  init(): Promise<void>;
42
44
  close(): Promise<void>;
45
+ protected internalPublish(message: MessagePayloadType, messageSchema: ZodSchema<MessagePayloadType>, options?: SNSMessageOptions): Promise<void>;
43
46
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsService = void 0;
4
+ const client_sns_1 = require("@aws-sdk/client-sns");
4
5
  const core_1 = require("@message-queue-toolkit/core");
5
6
  const snsInitter_1 = require("../utils/snsInitter");
6
7
  class AbstractSnsService extends core_1.AbstractQueueService {
@@ -20,6 +21,32 @@ class AbstractSnsService extends core_1.AbstractQueueService {
20
21
  }
21
22
  // eslint-disable-next-line @typescript-eslint/require-await
22
23
  async close() { }
24
+ async internalPublish(message, messageSchema, options = {}) {
25
+ if (this.topicArn === undefined) {
26
+ // Lazy loading
27
+ await this.init();
28
+ }
29
+ try {
30
+ messageSchema.parse(message);
31
+ if (this.logMessages) {
32
+ // @ts-ignore
33
+ const resolvedLogMessage = this.resolveMessageLog(message, message[this.messageTypeField]);
34
+ this.logMessage(resolvedLogMessage);
35
+ }
36
+ const input = {
37
+ Message: JSON.stringify(message),
38
+ TopicArn: this.topicArn,
39
+ ...options,
40
+ };
41
+ const command = new client_sns_1.PublishCommand(input);
42
+ await this.snsClient.send(command);
43
+ this.handleMessageProcessed(message, 'published');
44
+ }
45
+ catch (error) {
46
+ this.handleError(error);
47
+ throw error;
48
+ }
49
+ }
23
50
  }
24
51
  exports.AbstractSnsService = AbstractSnsService;
25
52
  //# sourceMappingURL=AbstractSnsService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsService.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsService.ts"],"names":[],"mappings":";;;AASA,sDAAkE;AAGlE,oDAAwD;AAmDxD,MAAsB,kBAOpB,SAAQ,2BAOT;IACoB,SAAS,CAAW;IACvC,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,CAAC;YAC/C,MAAM,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC3E,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAA,oBAAO,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QACzF,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;IACrC,CAAC;IAED,4DAA4D;IAC5C,KAAK,CAAC,KAAK,KAAmB,CAAC;CAChD;AApCD,gDAoCC"}
1
+ {"version":3,"file":"AbstractSnsService.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsService.ts"],"names":[],"mappings":";;;AACA,oDAAoD;AAUpD,sDAAkE;AAIlE,oDAAwD;AAqDxD,MAAsB,kBAOpB,SAAQ,2BAOT;IACoB,SAAS,CAAW;IACvC,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,CAAC;YAC/C,MAAM,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC3E,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAA,oBAAO,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QACzF,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAA;IACrC,CAAC;IAED,4DAA4D;IAC5C,KAAK,CAAC,KAAK,KAAmB,CAAC;IAErC,KAAK,CAAC,eAAe,CAC7B,OAA2B,EAC3B,aAA4C,EAC5C,UAA6B,EAAE;QAE/B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,eAAe;YACf,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACnB,CAAC;QAED,IAAI,CAAC;YACH,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAE5B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,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;YACrC,CAAC;YAED,MAAM,KAAK,GAAG;gBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,GAAG,OAAO;aACmB,CAAA;YAC/B,MAAM,OAAO,GAAG,IAAI,2BAAc,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF;AArED,gDAqEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@message-queue-toolkit/sns",
3
- "version": "9.0.0",
3
+ "version": "10.0.0",
4
4
  "private": false,
5
5
  "license": "MIT",
6
6
  "description": "SNS adapter for message-queue-toolkit",
@@ -33,8 +33,8 @@
33
33
  "peerDependencies": {
34
34
  "@aws-sdk/client-sns": "^3.476.0",
35
35
  "@aws-sdk/client-sqs": "^3.476.0",
36
- "@message-queue-toolkit/core": "^7.0.0",
37
- "@message-queue-toolkit/sqs": "^9.0.0"
36
+ "@message-queue-toolkit/core": "^8.0.0",
37
+ "@message-queue-toolkit/sqs": "^10.0.0"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@aws-sdk/client-sns": "^3.476.0",