@message-queue-toolkit/sns 3.0.0 → 3.2.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 (36) hide show
  1. package/dist/index.d.ts +7 -5
  2. package/dist/index.js +12 -8
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/sns/AbstractSnsPublisherMonoSchema.js +1 -0
  5. package/dist/lib/sns/AbstractSnsPublisherMonoSchema.js.map +1 -1
  6. package/dist/lib/sns/AbstractSnsPublisherMultiSchema.js +5 -0
  7. package/dist/lib/sns/AbstractSnsPublisherMultiSchema.js.map +1 -1
  8. package/dist/lib/sns/AbstractSnsService.js +5 -2
  9. package/dist/lib/sns/AbstractSnsService.js.map +1 -1
  10. package/dist/lib/sns/AbstractSnsSqsConsumerMonoSchema.d.ts +1 -1
  11. package/dist/lib/sns/AbstractSnsSqsConsumerMonoSchema.js +11 -6
  12. package/dist/lib/sns/AbstractSnsSqsConsumerMonoSchema.js.map +1 -1
  13. package/dist/lib/sns/AbstractSnsSqsConsumerMultiSchema.js +11 -6
  14. package/dist/lib/sns/AbstractSnsSqsConsumerMultiSchema.js.map +1 -1
  15. package/dist/lib/utils/snsAttributeUtils.d.ts +5 -0
  16. package/dist/lib/utils/snsAttributeUtils.js +20 -0
  17. package/dist/lib/utils/snsAttributeUtils.js.map +1 -0
  18. package/dist/lib/utils/snsInitter.d.ts +17 -0
  19. package/dist/lib/utils/snsInitter.js +96 -0
  20. package/dist/lib/utils/snsInitter.js.map +1 -0
  21. package/dist/lib/utils/snsMessageDeserializer.js.map +1 -0
  22. package/dist/lib/utils/snsMessageReader.js.map +1 -0
  23. package/dist/lib/{sns/SnsSubscriber.d.ts → utils/snsSubscriber.d.ts} +2 -0
  24. package/dist/lib/{sns/SnsSubscriber.js → utils/snsSubscriber.js} +4 -2
  25. package/dist/lib/utils/snsSubscriber.js.map +1 -0
  26. package/package.json +3 -3
  27. package/dist/lib/sns/SnsInitter.d.ts +0 -12
  28. package/dist/lib/sns/SnsInitter.js +0 -50
  29. package/dist/lib/sns/SnsInitter.js.map +0 -1
  30. package/dist/lib/sns/SnsSubscriber.js.map +0 -1
  31. package/dist/lib/sns/snsMessageDeserializer.js.map +0 -1
  32. package/dist/lib/sns/snsMessageReader.js.map +0 -1
  33. /package/dist/lib/{sns → utils}/snsMessageDeserializer.d.ts +0 -0
  34. /package/dist/lib/{sns → utils}/snsMessageDeserializer.js +0 -0
  35. /package/dist/lib/{sns → utils}/snsMessageReader.d.ts +0 -0
  36. /package/dist/lib/{sns → utils}/snsMessageReader.js +0 -0
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- export type { SNSTopicAWSConfig, SNSTopicConfig, SNSConsumerDependencies, SNSQueueLocatorType, } from './lib/sns/AbstractSnsService';
1
+ export type { SNSTopicAWSConfig, SNSTopicConfig, SNSConsumerDependencies, SNSQueueLocatorType, SNSCreationConfig, SNSDependencies, NewSNSOptions, ExistingSNSOptions, ExistingSNSOptionsMultiSchema, NewSNSOptionsMultiSchema, } from './lib/sns/AbstractSnsService';
2
+ export { AbstractSnsService } from './lib/sns/AbstractSnsService';
2
3
  export { SnsConsumerErrorResolver } from './lib/errors/SnsConsumerErrorResolver';
3
4
  export { AbstractSnsPublisherMonoSchema } from './lib/sns/AbstractSnsPublisherMonoSchema';
4
5
  export { AbstractSnsPublisherMultiSchema } from './lib/sns/AbstractSnsPublisherMultiSchema';
@@ -8,8 +9,9 @@ export type { ExistingSnsSqsConsumerOptions, NewSnsSqsConsumerOptions, SNSSQSCon
8
9
  export type { NewSnsSqsConsumerOptionsMulti, ExistingSnsSqsConsumerOptionsMulti, } from './lib/sns/AbstractSnsSqsConsumerMultiSchema';
9
10
  export type { SNSMessageOptions } from './lib/sns/AbstractSnsPublisherMonoSchema';
10
11
  export type { CommonMessage } from './lib/types/MessageTypes';
11
- export { deserializeSNSMessage } from './lib/sns/snsMessageDeserializer';
12
+ export { deserializeSNSMessage } from './lib/utils/snsMessageDeserializer';
12
13
  export { assertTopic, deleteTopic, getTopicAttributes, deleteSubscription, } from './lib/utils/snsUtils';
13
- export { subscribeToTopic } from './lib/sns/SnsSubscriber';
14
- export { initSns, initSnsSqs } from './lib/sns/SnsInitter';
15
- export { readSnsMessage } from './lib/sns/snsMessageReader';
14
+ export { subscribeToTopic } from './lib/utils/snsSubscriber';
15
+ export { initSns, initSnsSqs } from './lib/utils/snsInitter';
16
+ export { readSnsMessage } from './lib/utils/snsMessageReader';
17
+ export { generateFilterAttributes } from './lib/utils/snsAttributeUtils';
package/dist/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readSnsMessage = exports.initSnsSqs = exports.initSns = exports.subscribeToTopic = exports.deleteSubscription = exports.getTopicAttributes = exports.deleteTopic = exports.assertTopic = exports.deserializeSNSMessage = exports.AbstractSnsSqsConsumerMultiSchema = exports.AbstractSnsSqsConsumerMonoSchema = exports.AbstractSnsPublisherMultiSchema = exports.AbstractSnsPublisherMonoSchema = exports.SnsConsumerErrorResolver = void 0;
3
+ exports.generateFilterAttributes = exports.readSnsMessage = exports.initSnsSqs = exports.initSns = exports.subscribeToTopic = exports.deleteSubscription = exports.getTopicAttributes = exports.deleteTopic = exports.assertTopic = exports.deserializeSNSMessage = exports.AbstractSnsSqsConsumerMultiSchema = exports.AbstractSnsSqsConsumerMonoSchema = exports.AbstractSnsPublisherMultiSchema = exports.AbstractSnsPublisherMonoSchema = exports.SnsConsumerErrorResolver = exports.AbstractSnsService = void 0;
4
+ var AbstractSnsService_1 = require("./lib/sns/AbstractSnsService");
5
+ Object.defineProperty(exports, "AbstractSnsService", { enumerable: true, get: function () { return AbstractSnsService_1.AbstractSnsService; } });
4
6
  var SnsConsumerErrorResolver_1 = require("./lib/errors/SnsConsumerErrorResolver");
5
7
  Object.defineProperty(exports, "SnsConsumerErrorResolver", { enumerable: true, get: function () { return SnsConsumerErrorResolver_1.SnsConsumerErrorResolver; } });
6
8
  var AbstractSnsPublisherMonoSchema_1 = require("./lib/sns/AbstractSnsPublisherMonoSchema");
@@ -11,18 +13,20 @@ var AbstractSnsSqsConsumerMonoSchema_1 = require("./lib/sns/AbstractSnsSqsConsum
11
13
  Object.defineProperty(exports, "AbstractSnsSqsConsumerMonoSchema", { enumerable: true, get: function () { return AbstractSnsSqsConsumerMonoSchema_1.AbstractSnsSqsConsumerMonoSchema; } });
12
14
  var AbstractSnsSqsConsumerMultiSchema_1 = require("./lib/sns/AbstractSnsSqsConsumerMultiSchema");
13
15
  Object.defineProperty(exports, "AbstractSnsSqsConsumerMultiSchema", { enumerable: true, get: function () { return AbstractSnsSqsConsumerMultiSchema_1.AbstractSnsSqsConsumerMultiSchema; } });
14
- var snsMessageDeserializer_1 = require("./lib/sns/snsMessageDeserializer");
16
+ var snsMessageDeserializer_1 = require("./lib/utils/snsMessageDeserializer");
15
17
  Object.defineProperty(exports, "deserializeSNSMessage", { enumerable: true, get: function () { return snsMessageDeserializer_1.deserializeSNSMessage; } });
16
18
  var snsUtils_1 = require("./lib/utils/snsUtils");
17
19
  Object.defineProperty(exports, "assertTopic", { enumerable: true, get: function () { return snsUtils_1.assertTopic; } });
18
20
  Object.defineProperty(exports, "deleteTopic", { enumerable: true, get: function () { return snsUtils_1.deleteTopic; } });
19
21
  Object.defineProperty(exports, "getTopicAttributes", { enumerable: true, get: function () { return snsUtils_1.getTopicAttributes; } });
20
22
  Object.defineProperty(exports, "deleteSubscription", { enumerable: true, get: function () { return snsUtils_1.deleteSubscription; } });
21
- var SnsSubscriber_1 = require("./lib/sns/SnsSubscriber");
22
- Object.defineProperty(exports, "subscribeToTopic", { enumerable: true, get: function () { return SnsSubscriber_1.subscribeToTopic; } });
23
- var SnsInitter_1 = require("./lib/sns/SnsInitter");
24
- Object.defineProperty(exports, "initSns", { enumerable: true, get: function () { return SnsInitter_1.initSns; } });
25
- Object.defineProperty(exports, "initSnsSqs", { enumerable: true, get: function () { return SnsInitter_1.initSnsSqs; } });
26
- var snsMessageReader_1 = require("./lib/sns/snsMessageReader");
23
+ var snsSubscriber_1 = require("./lib/utils/snsSubscriber");
24
+ Object.defineProperty(exports, "subscribeToTopic", { enumerable: true, get: function () { return snsSubscriber_1.subscribeToTopic; } });
25
+ var snsInitter_1 = require("./lib/utils/snsInitter");
26
+ Object.defineProperty(exports, "initSns", { enumerable: true, get: function () { return snsInitter_1.initSns; } });
27
+ Object.defineProperty(exports, "initSnsSqs", { enumerable: true, get: function () { return snsInitter_1.initSnsSqs; } });
28
+ var snsMessageReader_1 = require("./lib/utils/snsMessageReader");
27
29
  Object.defineProperty(exports, "readSnsMessage", { enumerable: true, get: function () { return snsMessageReader_1.readSnsMessage; } });
30
+ var snsAttributeUtils_1 = require("./lib/utils/snsAttributeUtils");
31
+ Object.defineProperty(exports, "generateFilterAttributes", { enumerable: true, get: function () { return snsAttributeUtils_1.generateFilterAttributes; } });
28
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAOA,kFAAgF;AAAvE,oIAAA,wBAAwB,OAAA;AAEjC,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,6FAA2F;AAAlF,kJAAA,+BAA+B,OAAA;AAExC,+FAA6F;AAApF,oJAAA,gCAAgC,OAAA;AACzC,iGAA+F;AAAtF,sJAAA,iCAAiC,OAAA;AAkB1C,2EAAwE;AAA/D,+HAAA,qBAAqB,OAAA;AAE9B,iDAK6B;AAJ3B,uGAAA,WAAW,OAAA;AACX,uGAAA,WAAW,OAAA;AACX,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAGpB,yDAA0D;AAAjD,iHAAA,gBAAgB,OAAA;AACzB,mDAA0D;AAAjD,qGAAA,OAAO,OAAA;AAAE,wGAAA,UAAU,OAAA;AAC5B,+DAA2D;AAAlD,kHAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAaA,mEAAiE;AAAxD,wHAAA,kBAAkB,OAAA;AAE3B,kFAAgF;AAAvE,oIAAA,wBAAwB,OAAA;AAEjC,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,6FAA2F;AAAlF,kJAAA,+BAA+B,OAAA;AAExC,+FAA6F;AAApF,oJAAA,gCAAgC,OAAA;AACzC,iGAA+F;AAAtF,sJAAA,iCAAiC,OAAA;AAkB1C,6EAA0E;AAAjE,+HAAA,qBAAqB,OAAA;AAE9B,iDAK6B;AAJ3B,uGAAA,WAAW,OAAA;AACX,uGAAA,WAAW,OAAA;AACX,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAGpB,2DAA4D;AAAnD,iHAAA,gBAAgB,OAAA;AACzB,qDAA4D;AAAnD,qGAAA,OAAO,OAAA;AAAE,wGAAA,UAAU,OAAA;AAC5B,iEAA6D;AAApD,kHAAA,cAAc,OAAA;AACvB,mEAAwE;AAA/D,6HAAA,wBAAwB,OAAA"}
@@ -15,6 +15,7 @@ class AbstractSnsPublisherMonoSchema extends AbstractSnsService_1.AbstractSnsSer
15
15
  }
16
16
  async publish(message, options = {}) {
17
17
  try {
18
+ this.messageSchema.parse(message);
18
19
  const input = {
19
20
  Message: JSON.stringify(message),
20
21
  TopicArn: this.topicArn,
@@ -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;YACF,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;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;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;AA9CD,wEA8CC"}
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;YACF,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACjC,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;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;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;AA/CD,wEA+CC"}
@@ -16,6 +16,11 @@ class AbstractSnsPublisherMultiSchema extends AbstractSnsService_1.AbstractSnsSe
16
16
  }
17
17
  async publish(message, options = {}) {
18
18
  try {
19
+ const resolveSchemaResult = this.resolveSchema(message);
20
+ if (resolveSchemaResult.error) {
21
+ throw resolveSchemaResult.error;
22
+ }
23
+ resolveSchemaResult.result.parse(message);
19
24
  const input = {
20
25
  Message: JSON.stringify(message),
21
26
  TopicArn: this.topicArn,
@@ -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;YACF,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;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;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;AA9CD,0EA8CC"}
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;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,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;SACnC;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,KAAK,CAAA;SACZ;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;AApDD,0EAoDC"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsService = void 0;
4
4
  const core_1 = require("@message-queue-toolkit/core");
5
- const SnsInitter_1 = require("./SnsInitter");
5
+ const snsInitter_1 = require("../utils/snsInitter");
6
6
  class AbstractSnsService extends core_1.AbstractQueueService {
7
7
  snsClient;
8
8
  // @ts-ignore
@@ -12,7 +12,10 @@ class AbstractSnsService extends core_1.AbstractQueueService {
12
12
  this.snsClient = dependencies.snsClient;
13
13
  }
14
14
  async init() {
15
- const initResult = await (0, SnsInitter_1.initSns)(this.snsClient, this.locatorConfig, this.creationConfig);
15
+ if (this.deletionConfig && this.creationConfig) {
16
+ await (0, snsInitter_1.deleteSns)(this.snsClient, this.deletionConfig, this.creationConfig);
17
+ }
18
+ const initResult = await (0, snsInitter_1.initSns)(this.snsClient, this.locatorConfig, this.creationConfig);
16
19
  this.topicArn = initResult.topicArn;
17
20
  }
18
21
  // eslint-disable-next-line @typescript-eslint/require-await
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsService.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsService.ts"],"names":[],"mappings":";;;AASA,sDAAkE;AAIlE,6CAAsC;AA8CtC,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,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;AAhCD,gDAgCC"}
1
+ {"version":3,"file":"AbstractSnsService.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsService.ts"],"names":[],"mappings":";;;AASA,sDAAkE;AAGlE,oDAAwD;AA8CxD,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;YAC9C,MAAM,IAAA,sBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;SAC1E;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"}
@@ -4,8 +4,8 @@ import type { MonoSchemaQueueOptions } from '@message-queue-toolkit/core';
4
4
  import type { SQSConsumerDependencies, NewSQSConsumerOptions, ExistingSQSConsumerOptions, SQSQueueLocatorType, SQSCreationConfig, SQSMessage } from '@message-queue-toolkit/sqs';
5
5
  import { AbstractSqsConsumer } from '@message-queue-toolkit/sqs';
6
6
  import type { ZodSchema } from 'zod';
7
+ import type { SNSSubscriptionOptions } from '../utils/snsSubscriber';
7
8
  import type { ExistingSNSOptions, NewSNSOptions, SNSCreationConfig, SNSQueueLocatorType } from './AbstractSnsService';
8
- import type { SNSSubscriptionOptions } from './SnsSubscriber';
9
9
  export type NewSnsSqsConsumerOptions = NewSQSConsumerOptions<SQSCreationConfig & SNSCreationConfig> & NewSNSOptions & {
10
10
  subscriptionConfig?: SNSSubscriptionOptions;
11
11
  };
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsSqsConsumerMonoSchema = void 0;
4
4
  const sqs_1 = require("@message-queue-toolkit/sqs");
5
- const SnsInitter_1 = require("./SnsInitter");
6
- const snsMessageReader_1 = require("./snsMessageReader");
5
+ const snsInitter_1 = require("../utils/snsInitter");
6
+ const snsMessageReader_1 = require("../utils/snsMessageReader");
7
7
  class AbstractSnsSqsConsumerMonoSchema extends sqs_1.AbstractSqsConsumer {
8
8
  subscriptionConfig;
9
9
  snsClient;
@@ -31,10 +31,15 @@ class AbstractSnsSqsConsumerMonoSchema extends sqs_1.AbstractSqsConsumer {
31
31
  return (0, snsMessageReader_1.readSnsMessage)(message, this.errorResolver);
32
32
  }
33
33
  async init() {
34
- await super.init();
35
- const initSnsResult = await (0, SnsInitter_1.initSns)(this.snsClient, this.locatorConfig, this.creationConfig);
36
- this.topicArn = initSnsResult.topicArn;
37
- const initSnsSqsResult = await (0, SnsInitter_1.initSnsSqs)(this.sqsClient, this.snsClient, this.locatorConfig, this.creationConfig, this.subscriptionConfig);
34
+ if (this.deletionConfig && this.creationConfig && this.subscriptionConfig) {
35
+ await (0, snsInitter_1.deleteSnsSqs)(this.sqsClient, this.snsClient, this.deletionConfig, this.creationConfig.queue, this.creationConfig.topic, this.subscriptionConfig);
36
+ }
37
+ else if (this.deletionConfig && this.creationConfig) {
38
+ await (0, sqs_1.deleteSqs)(this.sqsClient, this.deletionConfig, this.creationConfig);
39
+ }
40
+ const initSnsSqsResult = await (0, snsInitter_1.initSnsSqs)(this.sqsClient, this.snsClient, this.locatorConfig, this.creationConfig, this.subscriptionConfig);
41
+ this.queueUrl = initSnsSqsResult.queueUrl;
42
+ this.topicArn = initSnsSqsResult.topicArn;
38
43
  this.subscriptionArn = initSnsSqsResult.subscriptionArn;
39
44
  }
40
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsSqsConsumerMonoSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsSqsConsumerMonoSchema.ts"],"names":[],"mappings":";;;AAWA,oDAAgE;AAShE,6CAAkD;AAElD,yDAAmD;AA6BnD,MAAsB,gCAEpB,SAAQ,yBAKT;IACkB,kBAAkB,CAAyB;IAC3C,SAAS,CAAW;IACpB,aAAa,CAA+B;IAC5C,YAAY,CAA8C;IAC3E,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,eAAe,CAAQ;IAE9B,YACE,YAAwC,EACxC,OAEyD;QAEzD,KAAK,CAAC,YAAY,EAAE;YAClB,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;QACpD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;QAC1C,IAAI,CAAC,YAAY,GAAG;YAClB,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAA;IACH,CAAC;IAEkB,aAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEkB,cAAc,CAAC,OAAmB;QACnD,OAAO,IAAA,iCAAc,EAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAO,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5F,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QAEtC,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAU,EACvC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,kBAAkB,CACxB,CAAA;QACD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAA;IACzD,CAAC;CACF;AA1DD,4EA0DC"}
1
+ {"version":3,"file":"AbstractSnsSqsConsumerMonoSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsSqsConsumerMonoSchema.ts"],"names":[],"mappings":";;;AAWA,oDAA2E;AAG3E,oDAA8D;AAC9D,gEAA0D;AAqC1D,MAAsB,gCAEpB,SAAQ,yBAKT;IACkB,kBAAkB,CAAyB;IAC3C,SAAS,CAAW;IACpB,aAAa,CAA+B;IAC5C,YAAY,CAA8C;IAC3E,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,eAAe,CAAQ;IAE9B,YACE,YAAwC,EACxC,OAEyD;QAEzD,KAAK,CAAC,YAAY,EAAE;YAClB,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;QACpD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;QAC1C,IAAI,CAAC,YAAY,GAAG;YAClB,MAAM,EAAE,IAAI,CAAC,aAAa;SAC3B,CAAA;IACH,CAAC;IAEkB,aAAa;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAEkB,cAAc,CAAC,OAAmB;QACnD,OAAO,IAAA,iCAAc,EAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IAEQ,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACzE,MAAM,IAAA,yBAAY,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,cAAc,CAAC,KAAK,EACzB,IAAI,CAAC,cAAc,CAAC,KAAK,EACzB,IAAI,CAAC,kBAAkB,CACxB,CAAA;SACF;aAAM,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,EAAE;YACrD,MAAM,IAAA,eAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;SAC1E;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAU,EACvC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,kBAAkB,CACxB,CAAA;QACD,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAA;QACzC,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAA;IACzD,CAAC;CACF;AApED,4EAoEC"}
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AbstractSnsSqsConsumerMultiSchema = void 0;
4
4
  const sqs_1 = require("@message-queue-toolkit/sqs");
5
- const SnsInitter_1 = require("./SnsInitter");
6
- const snsMessageReader_1 = require("./snsMessageReader");
5
+ const snsInitter_1 = require("../utils/snsInitter");
6
+ const snsMessageReader_1 = require("../utils/snsMessageReader");
7
7
  class AbstractSnsSqsConsumerMultiSchema extends sqs_1.AbstractSqsConsumerMultiSchema {
8
8
  subscriptionConfig;
9
9
  snsClient;
@@ -19,10 +19,15 @@ class AbstractSnsSqsConsumerMultiSchema extends sqs_1.AbstractSqsConsumerMultiSc
19
19
  this.snsClient = dependencies.snsClient;
20
20
  }
21
21
  async init() {
22
- await super.init();
23
- const initSnsResult = await (0, SnsInitter_1.initSns)(this.snsClient, this.locatorConfig, this.creationConfig);
24
- this.topicArn = initSnsResult.topicArn;
25
- const initSnsSqsResult = await (0, SnsInitter_1.initSnsSqs)(this.sqsClient, this.snsClient, this.locatorConfig, this.creationConfig, this.subscriptionConfig);
22
+ if (this.deletionConfig && this.creationConfig && this.subscriptionConfig) {
23
+ await (0, snsInitter_1.deleteSnsSqs)(this.sqsClient, this.snsClient, this.deletionConfig, this.creationConfig.queue, this.creationConfig.topic, this.subscriptionConfig);
24
+ }
25
+ else if (this.deletionConfig && this.creationConfig) {
26
+ await (0, sqs_1.deleteSqs)(this.sqsClient, this.deletionConfig, this.creationConfig);
27
+ }
28
+ const initSnsSqsResult = await (0, snsInitter_1.initSnsSqs)(this.sqsClient, this.snsClient, this.locatorConfig, this.creationConfig, this.subscriptionConfig);
29
+ this.queueUrl = initSnsSqsResult.queueUrl;
30
+ this.topicArn = initSnsSqsResult.topicArn;
26
31
  this.subscriptionArn = initSnsSqsResult.subscriptionArn;
27
32
  }
28
33
  resolveMessage(message) {
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSnsSqsConsumerMultiSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsSqsConsumerMultiSchema.ts"],"names":[],"mappings":";;;AAGA,oDAA2E;AAS3E,6CAAkD;AAElD,yDAAmD;AAYnD,MAAsB,iCAGpB,SAAQ,oCAOT;IACkB,kBAAkB,CAAyB;IAC3C,SAAS,CAAW;IACrC,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,eAAe,CAAQ;IAE9B,YACE,YAAwC,EACxC,OAE+E;QAE/E,KAAK,CAAC,YAAY,EAAE;YAClB,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;QACpD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,MAAM,aAAa,GAAG,MAAM,IAAA,oBAAO,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QAC5F,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAA;QAEtC,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAU,EACvC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,kBAAkB,CACxB,CAAA;QACD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAA;IACzD,CAAC;IAEkB,cAAc,CAAC,OAAmB;QACnD,OAAO,IAAA,iCAAc,EAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IAEkB,aAAa,CAAC,cAAqC;QACpE,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAClE,CAAC;CACF;AAvDD,8EAuDC"}
1
+ {"version":3,"file":"AbstractSnsSqsConsumerMultiSchema.js","sourceRoot":"","sources":["../../../lib/sns/AbstractSnsSqsConsumerMultiSchema.ts"],"names":[],"mappings":";;;AAGA,oDAAsF;AAEtF,oDAA8D;AAC9D,gEAA0D;AAqB1D,MAAsB,iCAGpB,SAAQ,oCAOT;IACkB,kBAAkB,CAAyB;IAC3C,SAAS,CAAW;IACrC,aAAa;IACN,QAAQ,CAAQ;IACvB,aAAa;IACN,eAAe,CAAQ;IAE9B,YACE,YAAwC,EACxC,OAE+E;QAE/E,KAAK,CAAC,YAAY,EAAE;YAClB,GAAG,OAAO;SACX,CAAC,CAAA;QAEF,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAA;QACpD,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,SAAS,CAAA;IACzC,CAAC;IAEQ,KAAK,CAAC,IAAI;QACjB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACzE,MAAM,IAAA,yBAAY,EAChB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,cAAc,CAAC,KAAK,EACzB,IAAI,CAAC,cAAc,CAAC,KAAK,EACzB,IAAI,CAAC,kBAAkB,CACxB,CAAA;SACF;aAAM,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,EAAE;YACrD,MAAM,IAAA,eAAS,EAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;SAC1E;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAA,uBAAU,EACvC,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,kBAAkB,CACxB,CAAA;QACD,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAA;QACzC,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAA;QACzC,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAA;IACzD,CAAC;IAEkB,cAAc,CAAC,OAAmB;QACnD,OAAO,IAAA,iCAAc,EAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IAEkB,aAAa,CAAC,cAAqC;QACpE,OAAO,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;IAClE,CAAC;CACF;AAjED,8EAiEC"}
@@ -0,0 +1,5 @@
1
+ import type { ZodSchema } from 'zod';
2
+ export declare function generateFilterAttributes(messageSchemas: ZodSchema<any>[], messageTypeField: string): {
3
+ FilterPolicy: string;
4
+ FilterPolicyScope: string;
5
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateFilterAttributes = void 0;
4
+ function generateFilterAttributes(
5
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
+ messageSchemas, messageTypeField) {
7
+ const messageTypes = messageSchemas.map((schema) => {
8
+ // @ts-ignore
9
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
10
+ return schema.shape[messageTypeField].value;
11
+ });
12
+ return {
13
+ FilterPolicy: JSON.stringify({
14
+ type: messageTypes,
15
+ }),
16
+ FilterPolicyScope: 'MessageBody',
17
+ };
18
+ }
19
+ exports.generateFilterAttributes = generateFilterAttributes;
20
+ //# sourceMappingURL=snsAttributeUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snsAttributeUtils.js","sourceRoot":"","sources":["../../../lib/utils/snsAttributeUtils.ts"],"names":[],"mappings":";;;AAEA,SAAgB,wBAAwB;AACtC,8DAA8D;AAC9D,cAAgC,EAChC,gBAAwB;IAExB,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACjD,aAAa;QACb,sEAAsE;QACtE,OAAO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,KAAe,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,OAAO;QACL,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;YAC3B,IAAI,EAAE,YAAY;SACnB,CAAC;QACF,iBAAiB,EAAE,aAAa;KACjC,CAAA;AACH,CAAC;AAjBD,4DAiBC"}
@@ -0,0 +1,17 @@
1
+ import type { SNSClient, CreateTopicCommandInput } from '@aws-sdk/client-sns';
2
+ import type { SQSClient, CreateQueueCommandInput } from '@aws-sdk/client-sqs';
3
+ import type { DeletionConfig } from '@message-queue-toolkit/core';
4
+ import type { SQSCreationConfig } from '@message-queue-toolkit/sqs';
5
+ import type { SNSCreationConfig, SNSQueueLocatorType } from '../sns/AbstractSnsService';
6
+ import type { SNSSQSQueueLocatorType } from '../sns/AbstractSnsSqsConsumerMonoSchema';
7
+ import type { SNSSubscriptionOptions } from './snsSubscriber';
8
+ export declare function initSnsSqs(sqsClient: SQSClient, snsClient: SNSClient, locatorConfig?: SNSSQSQueueLocatorType, creationConfig?: SNSCreationConfig & SQSCreationConfig, subscriptionConfig?: SNSSubscriptionOptions): Promise<{
9
+ subscriptionArn: string;
10
+ topicArn: string;
11
+ queueUrl: string;
12
+ }>;
13
+ export declare function deleteSnsSqs(sqsClient: SQSClient, snsClient: SNSClient, deletionConfig: DeletionConfig, queueConfiguration: CreateQueueCommandInput, topicConfiguration: CreateTopicCommandInput, subscriptionConfiguration: SNSSubscriptionOptions): Promise<void>;
14
+ export declare function deleteSns(snsClient: SNSClient, deletionConfig: DeletionConfig, creationConfig: SNSCreationConfig): Promise<void>;
15
+ export declare function initSns(snsClient: SNSClient, locatorConfig?: SNSQueueLocatorType, creationConfig?: SNSCreationConfig): Promise<{
16
+ topicArn: string;
17
+ }>;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.initSns = exports.deleteSns = exports.deleteSnsSqs = exports.initSnsSqs = void 0;
4
+ const core_1 = require("@message-queue-toolkit/core");
5
+ const sqs_1 = require("@message-queue-toolkit/sqs");
6
+ const snsSubscriber_1 = require("./snsSubscriber");
7
+ const snsUtils_1 = require("./snsUtils");
8
+ async function initSnsSqs(sqsClient, snsClient, locatorConfig, creationConfig, subscriptionConfig) {
9
+ if (!locatorConfig?.subscriptionArn) {
10
+ if (!creationConfig?.topic) {
11
+ throw new Error('If locatorConfig.subscriptionArn is not specified, creationConfig.topic parameter is mandatory, as there will be an attempt to create the missing topic');
12
+ }
13
+ if (!creationConfig?.queue) {
14
+ throw new Error('If locatorConfig.subscriptionArn is not specified, creationConfig.queue parameter is mandatory, as there will be an attempt to create the missing queue');
15
+ }
16
+ if (!subscriptionConfig) {
17
+ throw new Error('If locatorConfig.subscriptionArn is not specified, subscriptionConfig parameter is mandatory, as there will be an attempt to create the missing subscription');
18
+ }
19
+ const { subscriptionArn, topicArn, queueUrl } = await (0, snsSubscriber_1.subscribeToTopic)(sqsClient, snsClient, creationConfig.queue, creationConfig.topic, subscriptionConfig);
20
+ if (!subscriptionArn) {
21
+ throw new Error('Failed to subscribe');
22
+ }
23
+ return {
24
+ subscriptionArn,
25
+ topicArn,
26
+ queueUrl,
27
+ };
28
+ }
29
+ const queuePromise = (0, sqs_1.getQueueAttributes)(sqsClient, locatorConfig);
30
+ const topicPromise = (0, snsUtils_1.getTopicAttributes)(snsClient, locatorConfig.topicArn);
31
+ const [queueCheckResult, topicCheckResult] = await Promise.all([queuePromise, topicPromise]);
32
+ if (queueCheckResult.error === 'not_found') {
33
+ throw new Error(`Queue with queueUrl ${locatorConfig.queueUrl} does not exist.`);
34
+ }
35
+ if (topicCheckResult.error === 'not_found') {
36
+ throw new Error(`Topic with topicArn ${locatorConfig.topicArn} does not exist.`);
37
+ }
38
+ return {
39
+ subscriptionArn: locatorConfig.subscriptionArn,
40
+ topicArn: locatorConfig.topicArn,
41
+ queueUrl: locatorConfig.queueUrl,
42
+ };
43
+ }
44
+ exports.initSnsSqs = initSnsSqs;
45
+ async function deleteSnsSqs(sqsClient, snsClient, deletionConfig, queueConfiguration, topicConfiguration, subscriptionConfiguration) {
46
+ if (!deletionConfig.deleteIfExists) {
47
+ return;
48
+ }
49
+ if ((0, core_1.isProduction)() && !deletionConfig.forceDeleteInProduction) {
50
+ throw new Error('You are running autodeletion in production. This can and probably will cause a loss of data. If you are absolutely sure you want to do this, please set deletionConfig.forceDeleteInProduction to true');
51
+ }
52
+ const { subscriptionArn } = await (0, snsSubscriber_1.subscribeToTopic)(sqsClient, snsClient, queueConfiguration, topicConfiguration, subscriptionConfiguration);
53
+ if (!subscriptionArn) {
54
+ throw new Error('subscriptionArn must be set for automatic deletion');
55
+ }
56
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
57
+ await (0, sqs_1.deleteQueue)(sqsClient, queueConfiguration.QueueName);
58
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
59
+ await (0, snsUtils_1.deleteTopic)(snsClient, topicConfiguration.Name);
60
+ await (0, snsUtils_1.deleteSubscription)(snsClient, subscriptionArn);
61
+ }
62
+ exports.deleteSnsSqs = deleteSnsSqs;
63
+ async function deleteSns(snsClient, deletionConfig, creationConfig) {
64
+ if (!deletionConfig.deleteIfExists) {
65
+ return;
66
+ }
67
+ if ((0, core_1.isProduction)() && !deletionConfig.forceDeleteInProduction) {
68
+ throw new Error('You are running autodeletion in production. This can and probably will cause a loss of data. If you are absolutely sure you want to do this, please set deletionConfig.forceDeleteInProduction to true');
69
+ }
70
+ if (!creationConfig.topic.Name) {
71
+ throw new Error('topic.Name must be set for automatic deletion');
72
+ }
73
+ await (0, snsUtils_1.deleteTopic)(snsClient, creationConfig.topic.Name);
74
+ }
75
+ exports.deleteSns = deleteSns;
76
+ async function initSns(snsClient, locatorConfig, creationConfig) {
77
+ if (locatorConfig) {
78
+ const checkResult = await (0, snsUtils_1.getTopicAttributes)(snsClient, locatorConfig.topicArn);
79
+ if (checkResult.error === 'not_found') {
80
+ throw new Error(`Topic with topicArn ${locatorConfig.topicArn} does not exist.`);
81
+ }
82
+ return {
83
+ topicArn: locatorConfig.topicArn,
84
+ };
85
+ }
86
+ // create new topic if it does not exist
87
+ if (!creationConfig) {
88
+ throw new Error('When locatorConfig for the topic is not specified, creationConfig of the topic is mandatory');
89
+ }
90
+ const topicArn = await (0, snsUtils_1.assertTopic)(snsClient, creationConfig.topic);
91
+ return {
92
+ topicArn,
93
+ };
94
+ }
95
+ exports.initSns = initSns;
96
+ //# sourceMappingURL=snsInitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snsInitter.js","sourceRoot":"","sources":["../../../lib/utils/snsInitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snsMessageDeserializer.js","sourceRoot":"","sources":["../../../lib/utils/snsMessageDeserializer.ts"],"names":[],"mappings":";;;AAKA,wDAA+D;AAExD,MAAM,qBAAqB,GAAG,CACnC,OAAmB,EACnB,IAAgB,EAChB,cAA6B,EACkC,EAAE;IACjE,IAAI;QACF,MAAM,UAAU,GAAG,sCAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1E,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACnD,CAAA;KACF;IAAC,OAAO,SAAS,EAAE;QAClB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;KACF;AACH,CAAC,CAAA;AAfY,QAAA,qBAAqB,yBAejC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snsMessageReader.js","sourceRoot":"","sources":["../../../lib/utils/snsMessageReader.ts"],"names":[],"mappings":";;;AAMA,SAAgB,cAAc,CAC5B,OAAmB,EACnB,cAA6B;IAE7B,IAAI;QACF,MAAM,UAAU,GAA0B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClE,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAErD,OAAO;YACL,MAAM,EAAE,cAAc;SACvB,CAAA;KACF;IAAC,OAAO,SAAS,EAAE;QAClB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;KACF;AACH,CAAC;AAhBD,wCAgBC"}
@@ -4,4 +4,6 @@ import type { CreateQueueCommandInput, SQSClient } from '@aws-sdk/client-sqs';
4
4
  export type SNSSubscriptionOptions = Omit<SubscribeCommandInput, 'TopicArn' | 'Endpoint' | 'Protocol' | 'ReturnSubscriptionArn'>;
5
5
  export declare function subscribeToTopic(sqsClient: SQSClient, snsClient: SNSClient, queueConfiguration: CreateQueueCommandInput, topicConfiguration: CreateTopicCommandInput, subscriptionConfiguration: SNSSubscriptionOptions): Promise<{
6
6
  subscriptionArn: string | undefined;
7
+ topicArn: string;
8
+ queueUrl: string;
7
9
  }>;
@@ -4,7 +4,7 @@ exports.subscribeToTopic = void 0;
4
4
  const client_sns_1 = require("@aws-sdk/client-sns");
5
5
  const client_sqs_1 = require("@aws-sdk/client-sqs");
6
6
  const sqs_1 = require("@message-queue-toolkit/sqs");
7
- const snsUtils_1 = require("../utils/snsUtils");
7
+ const snsUtils_1 = require("./snsUtils");
8
8
  async function subscribeToTopic(sqsClient, snsClient, queueConfiguration, topicConfiguration, subscriptionConfiguration) {
9
9
  const topicArn = await (0, snsUtils_1.assertTopic)(snsClient, topicConfiguration);
10
10
  const queueUrl = await (0, sqs_1.assertQueue)(sqsClient, queueConfiguration);
@@ -27,7 +27,9 @@ async function subscribeToTopic(sqsClient, snsClient, queueConfiguration, topicC
27
27
  const subscriptionResult = await snsClient.send(subscribeCommand);
28
28
  return {
29
29
  subscriptionArn: subscriptionResult.SubscriptionArn,
30
+ topicArn,
31
+ queueUrl,
30
32
  };
31
33
  }
32
34
  exports.subscribeToTopic = subscribeToTopic;
33
- //# sourceMappingURL=SnsSubscriber.js.map
35
+ //# sourceMappingURL=snsSubscriber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snsSubscriber.js","sourceRoot":"","sources":["../../../lib/utils/snsSubscriber.ts"],"names":[],"mappings":";;;AACA,oDAAsD;AAGtD,oDAA+D;AAC/D,oDAAwD;AAExD,yCAAwC;AAOjC,KAAK,UAAU,gBAAgB,CACpC,SAAoB,EACpB,SAAoB,EACpB,kBAA2C,EAC3C,kBAA2C,EAC3C,yBAAiD;IAEjD,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;IACjE,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAW,EAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;IAEjE,MAAM,yBAAyB,GAAG,IAAI,sCAAyB,CAAC;QAC9D,QAAQ,EAAE,QAAQ;QAClB,cAAc,EAAE,CAAC,UAAU,CAAC;KAC7B,CAAC,CAAA;IACF,MAAM,uBAAuB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC/E,MAAM,MAAM,GAAG,uBAAuB,CAAC,UAAU,EAAE,QAAQ,CAAA;IAE3D,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,qBAAqB,CAAC,CAAA;KACxD;IAED,MAAM,gBAAgB,GAAG,IAAI,6BAAgB,CAAC;QAC5C,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,KAAK;QACf,qBAAqB,EAAE,IAAI;QAC3B,GAAG,yBAAyB;KAC7B,CAAC,CAAA;IAEF,MAAM,kBAAkB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACjE,OAAO;QACL,eAAe,EAAE,kBAAkB,CAAC,eAAe;QACnD,QAAQ;QACR,QAAQ;KACT,CAAA;AACH,CAAC;AAnCD,4CAmCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@message-queue-toolkit/sns",
3
- "version": "3.0.0",
3
+ "version": "3.2.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.382.0",
35
35
  "@aws-sdk/client-sqs": "^3.382.0",
36
- "@message-queue-toolkit/core": "^3.0.0",
37
- "@message-queue-toolkit/sqs": "^3.0.0"
36
+ "@message-queue-toolkit/core": "^3.1.0",
37
+ "@message-queue-toolkit/sqs": "^3.1.0"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@aws-sdk/client-sns": "^3.382.0",
@@ -1,12 +0,0 @@
1
- import type { SNSClient } from '@aws-sdk/client-sns';
2
- import type { SQSClient } from '@aws-sdk/client-sqs';
3
- import type { SQSCreationConfig } from '@message-queue-toolkit/sqs';
4
- import type { SNSCreationConfig, SNSQueueLocatorType } from './AbstractSnsService';
5
- import type { SNSSQSQueueLocatorType } from './AbstractSnsSqsConsumerMonoSchema';
6
- import type { SNSSubscriptionOptions } from './SnsSubscriber';
7
- export declare function initSnsSqs(sqsClient: SQSClient, snsClient: SNSClient, locatorConfig?: SNSSQSQueueLocatorType, creationConfig?: SNSCreationConfig & SQSCreationConfig, subscriptionConfig?: SNSSubscriptionOptions): Promise<{
8
- subscriptionArn: string;
9
- }>;
10
- export declare function initSns(snsClient: SNSClient, locatorConfig?: SNSQueueLocatorType, creationConfig?: SNSCreationConfig): Promise<{
11
- topicArn: string;
12
- }>;
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.initSns = exports.initSnsSqs = void 0;
4
- const snsUtils_1 = require("../utils/snsUtils");
5
- const SnsSubscriber_1 = require("./SnsSubscriber");
6
- async function initSnsSqs(sqsClient, snsClient, locatorConfig, creationConfig, subscriptionConfig) {
7
- if (!locatorConfig?.subscriptionArn) {
8
- if (!creationConfig?.topic) {
9
- throw new Error('If locatorConfig.subscriptionArn is not specified, creationConfig.topic parameter is mandatory, as there will be an attempt to create the missing topic');
10
- }
11
- if (!creationConfig?.queue) {
12
- throw new Error('If locatorConfig.subscriptionArn is not specified, creationConfig.queue parameter is mandatory, as there will be an attempt to create the missing queue');
13
- }
14
- if (!subscriptionConfig) {
15
- throw new Error('If locatorConfig.subscriptionArn is not specified, subscriptionConfig parameter is mandatory, as there will be an attempt to create the missing subscription');
16
- }
17
- const { subscriptionArn } = await (0, SnsSubscriber_1.subscribeToTopic)(sqsClient, snsClient, creationConfig.queue, creationConfig.topic, subscriptionConfig);
18
- if (!subscriptionArn) {
19
- throw new Error('Failed to subscribe');
20
- }
21
- return {
22
- subscriptionArn,
23
- };
24
- }
25
- return {
26
- subscriptionArn: locatorConfig.subscriptionArn,
27
- };
28
- }
29
- exports.initSnsSqs = initSnsSqs;
30
- async function initSns(snsClient, locatorConfig, creationConfig) {
31
- if (locatorConfig) {
32
- const checkResult = await (0, snsUtils_1.getTopicAttributes)(snsClient, locatorConfig.topicArn);
33
- if (checkResult.error === 'not_found') {
34
- throw new Error(`Topic with topicArn ${locatorConfig.topicArn} does not exist.`);
35
- }
36
- return {
37
- topicArn: locatorConfig.topicArn,
38
- };
39
- }
40
- // create new topic if it does not exist
41
- if (!creationConfig) {
42
- throw new Error('When locatorConfig for the topic is not specified, creationConfig of the topic is mandatory');
43
- }
44
- const topicArn = await (0, snsUtils_1.assertTopic)(snsClient, creationConfig.topic);
45
- return {
46
- topicArn,
47
- };
48
- }
49
- exports.initSns = initSns;
50
- //# sourceMappingURL=SnsInitter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SnsInitter.js","sourceRoot":"","sources":["../../../lib/sns/SnsInitter.ts"],"names":[],"mappings":";;;AAIA,gDAAmE;AAKnE,mDAAkD;AAE3C,KAAK,UAAU,UAAU,CAC9B,SAAoB,EACpB,SAAoB,EACpB,aAAsC,EACtC,cAAsD,EACtD,kBAA2C;IAE3C,IAAI,CAAC,aAAa,EAAE,eAAe,EAAE;QACnC,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,yJAAyJ,CAC1J,CAAA;SACF;QACD,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE;YAC1B,MAAM,IAAI,KAAK,CACb,yJAAyJ,CAC1J,CAAA;SACF;QACD,IAAI,CAAC,kBAAkB,EAAE;YACvB,MAAM,IAAI,KAAK,CACb,8JAA8J,CAC/J,CAAA;SACF;QAED,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,IAAA,gCAAgB,EAChD,SAAS,EACT,SAAS,EACT,cAAc,CAAC,KAAK,EACpB,cAAc,CAAC,KAAK,EACpB,kBAAkB,CACnB,CAAA;QACD,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACvC;QACD,OAAO;YACL,eAAe;SAChB,CAAA;KACF;IACD,OAAO;QACL,eAAe,EAAE,aAAa,CAAC,eAAe;KAC/C,CAAA;AACH,CAAC;AAzCD,gCAyCC;AAEM,KAAK,UAAU,OAAO,CAC3B,SAAoB,EACpB,aAAmC,EACnC,cAAkC;IAElC,IAAI,aAAa,EAAE;QACjB,MAAM,WAAW,GAAG,MAAM,IAAA,6BAAkB,EAAC,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;QAC/E,IAAI,WAAW,CAAC,KAAK,KAAK,WAAW,EAAE;YACrC,MAAM,IAAI,KAAK,CAAC,uBAAuB,aAAa,CAAC,QAAQ,kBAAkB,CAAC,CAAA;SACjF;QAED,OAAO;YACL,QAAQ,EAAE,aAAa,CAAC,QAAQ;SACjC,CAAA;KACF;IAED,wCAAwC;IACxC,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAA;KACF;IACD,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA;IACnE,OAAO;QACL,QAAQ;KACT,CAAA;AACH,CAAC;AA1BD,0BA0BC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SnsSubscriber.js","sourceRoot":"","sources":["../../../lib/sns/SnsSubscriber.ts"],"names":[],"mappings":";;;AACA,oDAAsD;AAGtD,oDAA+D;AAC/D,oDAAwD;AAExD,gDAA+C;AAOxC,KAAK,UAAU,gBAAgB,CACpC,SAAoB,EACpB,SAAoB,EACpB,kBAA2C,EAC3C,kBAA2C,EAC3C,yBAAiD;IAEjD,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAW,EAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;IACjE,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAW,EAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;IAEjE,MAAM,yBAAyB,GAAG,IAAI,sCAAyB,CAAC;QAC9D,QAAQ,EAAE,QAAQ;QAClB,cAAc,EAAE,CAAC,UAAU,CAAC;KAC7B,CAAC,CAAA;IACF,MAAM,uBAAuB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC/E,MAAM,MAAM,GAAG,uBAAuB,CAAC,UAAU,EAAE,QAAQ,CAAA;IAE3D,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,qBAAqB,CAAC,CAAA;KACxD;IAED,MAAM,gBAAgB,GAAG,IAAI,6BAAgB,CAAC;QAC5C,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,KAAK;QACf,qBAAqB,EAAE,IAAI;QAC3B,GAAG,yBAAyB;KAC7B,CAAC,CAAA;IAEF,MAAM,kBAAkB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IACjE,OAAO;QACL,eAAe,EAAE,kBAAkB,CAAC,eAAe;KACpD,CAAA;AACH,CAAC;AAjCD,4CAiCC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"snsMessageDeserializer.js","sourceRoot":"","sources":["../../../lib/sns/snsMessageDeserializer.ts"],"names":[],"mappings":";;;AAKA,wDAA+D;AAExD,MAAM,qBAAqB,GAAG,CACnC,OAAmB,EACnB,IAAgB,EAChB,cAA6B,EACkC,EAAE;IACjE,IAAI;QACF,MAAM,UAAU,GAAG,sCAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1E,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACnD,CAAA;KACF;IAAC,OAAO,SAAS,EAAE;QAClB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;KACF;AACH,CAAC,CAAA;AAfY,QAAA,qBAAqB,yBAejC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"snsMessageReader.js","sourceRoot":"","sources":["../../../lib/sns/snsMessageReader.ts"],"names":[],"mappings":";;;AAMA,SAAgB,cAAc,CAC5B,OAAmB,EACnB,cAA6B;IAE7B,IAAI;QACF,MAAM,UAAU,GAA0B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAClE,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAErD,OAAO;YACL,MAAM,EAAE,cAAc;SACvB,CAAA;KACF;IAAC,OAAO,SAAS,EAAE;QAClB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;KACF;AACH,CAAC;AAhBD,wCAgBC"}
File without changes
File without changes