@message-queue-toolkit/sqs 3.2.0 → 3.4.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.
- package/dist/index.d.ts +2 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/sqs/AbstractSqsConsumer.d.ts +4 -1
- package/dist/lib/sqs/AbstractSqsConsumer.js.map +1 -1
- package/dist/lib/utils/sqsAttributeUtils.d.ts +3 -0
- package/dist/lib/utils/sqsAttributeUtils.js +18 -0
- package/dist/lib/utils/sqsAttributeUtils.js.map +1 -0
- package/dist/lib/utils/sqsInitter.js +3 -1
- package/dist/lib/utils/sqsInitter.js.map +1 -1
- package/dist/lib/utils/sqsUtils.d.ts +4 -2
- package/dist/lib/utils/sqsUtils.js +13 -2
- package/dist/lib/utils/sqsUtils.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export type { SQSQueueAWSConfig, SQSQueueConfig, SQSConsumerDependencies, SQSQueueLocatorType, SQSDependencies, } from './lib/sqs/AbstractSqsService';
|
|
2
2
|
export { AbstractSqsConsumer } from './lib/sqs/AbstractSqsConsumer';
|
|
3
|
-
export type { SQSCreationConfig } from './lib/sqs/AbstractSqsConsumer';
|
|
3
|
+
export type { SQSCreationConfig, ExtraSQSCreationParams } from './lib/sqs/AbstractSqsConsumer';
|
|
4
4
|
export { AbstractSqsConsumerMultiSchema } from './lib/sqs/AbstractSqsConsumerMultiSchema';
|
|
5
5
|
export { AbstractSqsConsumerMonoSchema } from './lib/sqs/AbstractSqsConsumerMonoSchema';
|
|
6
6
|
export type { NewSQSConsumerOptions, ExistingSQSConsumerOptions, } from './lib/sqs/AbstractSqsConsumer';
|
|
@@ -11,4 +11,5 @@ export type { SQSMessageOptions } from './lib/sqs/AbstractSqsPublisherMonoSchema
|
|
|
11
11
|
export { assertQueue, deleteQueue, getQueueAttributes } from './lib/utils/sqsUtils';
|
|
12
12
|
export { deleteSqs } from './lib/utils/sqsInitter';
|
|
13
13
|
export { deserializeSQSMessage } from './lib/utils/sqsMessageDeserializer';
|
|
14
|
+
export { generateQueuePublishForTopicPolicy, generateWildcardSqsArn, generateWildcardSnsArn, } from './lib/utils/sqsAttributeUtils';
|
|
14
15
|
export type { CommonMessage, SQSMessage } from './lib/types/MessageTypes';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.deserializeSQSMessage = exports.deleteSqs = exports.getQueueAttributes = exports.deleteQueue = exports.assertQueue = exports.AbstractSqsPublisherMultiSchema = exports.AbstractSqsPublisherMonoSchema = exports.SqsConsumerErrorResolver = exports.AbstractSqsConsumerMonoSchema = exports.AbstractSqsConsumerMultiSchema = exports.AbstractSqsConsumer = void 0;
|
|
3
|
+
exports.generateWildcardSnsArn = exports.generateWildcardSqsArn = exports.generateQueuePublishForTopicPolicy = exports.deserializeSQSMessage = exports.deleteSqs = exports.getQueueAttributes = exports.deleteQueue = exports.assertQueue = exports.AbstractSqsPublisherMultiSchema = exports.AbstractSqsPublisherMonoSchema = exports.SqsConsumerErrorResolver = exports.AbstractSqsConsumerMonoSchema = exports.AbstractSqsConsumerMultiSchema = exports.AbstractSqsConsumer = void 0;
|
|
4
4
|
var AbstractSqsConsumer_1 = require("./lib/sqs/AbstractSqsConsumer");
|
|
5
5
|
Object.defineProperty(exports, "AbstractSqsConsumer", { enumerable: true, get: function () { return AbstractSqsConsumer_1.AbstractSqsConsumer; } });
|
|
6
6
|
var AbstractSqsConsumerMultiSchema_1 = require("./lib/sqs/AbstractSqsConsumerMultiSchema");
|
|
@@ -21,4 +21,8 @@ var sqsInitter_1 = require("./lib/utils/sqsInitter");
|
|
|
21
21
|
Object.defineProperty(exports, "deleteSqs", { enumerable: true, get: function () { return sqsInitter_1.deleteSqs; } });
|
|
22
22
|
var sqsMessageDeserializer_1 = require("./lib/utils/sqsMessageDeserializer");
|
|
23
23
|
Object.defineProperty(exports, "deserializeSQSMessage", { enumerable: true, get: function () { return sqsMessageDeserializer_1.deserializeSQSMessage; } });
|
|
24
|
+
var sqsAttributeUtils_1 = require("./lib/utils/sqsAttributeUtils");
|
|
25
|
+
Object.defineProperty(exports, "generateQueuePublishForTopicPolicy", { enumerable: true, get: function () { return sqsAttributeUtils_1.generateQueuePublishForTopicPolicy; } });
|
|
26
|
+
Object.defineProperty(exports, "generateWildcardSqsArn", { enumerable: true, get: function () { return sqsAttributeUtils_1.generateWildcardSqsArn; } });
|
|
27
|
+
Object.defineProperty(exports, "generateWildcardSnsArn", { enumerable: true, get: function () { return sqsAttributeUtils_1.generateWildcardSnsArn; } });
|
|
24
28
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAQA,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAE5B,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,yFAAuF;AAA9E,8IAAA,6BAA6B,OAAA;AAMtC,kFAAgF;AAAvE,oIAAA,wBAAwB,OAAA;AAEjC,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,6FAA2F;AAAlF,kJAAA,+BAA+B,OAAA;AAGxC,iDAAmF;AAA1E,uGAAA,WAAW,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,8GAAA,kBAAkB,OAAA;AACrD,qDAAkD;AAAzC,uGAAA,SAAS,OAAA;AAClB,6EAA0E;AAAjE,+HAAA,qBAAqB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAQA,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAE5B,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,yFAAuF;AAA9E,8IAAA,6BAA6B,OAAA;AAMtC,kFAAgF;AAAvE,oIAAA,wBAAwB,OAAA;AAEjC,2FAAyF;AAAhF,gJAAA,8BAA8B,OAAA;AACvC,6FAA2F;AAAlF,kJAAA,+BAA+B,OAAA;AAGxC,iDAAmF;AAA1E,uGAAA,WAAW,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,8GAAA,kBAAkB,OAAA;AACrD,qDAAkD;AAAzC,uGAAA,SAAS,OAAA;AAClB,6EAA0E;AAAjE,+HAAA,qBAAqB,OAAA;AAC9B,mEAIsC;AAHpC,uIAAA,kCAAkC,OAAA;AAClC,2HAAA,sBAAsB,OAAA;AACtB,2HAAA,sBAAsB,OAAA"}
|
|
@@ -5,9 +5,12 @@ import type { ConsumerOptions } from 'sqs-consumer/src/types';
|
|
|
5
5
|
import type { SQSMessage } from '../types/MessageTypes';
|
|
6
6
|
import type { SQSConsumerDependencies, SQSQueueAWSConfig, SQSQueueLocatorType } from './AbstractSqsService';
|
|
7
7
|
import { AbstractSqsService } from './AbstractSqsService';
|
|
8
|
+
export type ExtraSQSCreationParams = {
|
|
9
|
+
topicArnsWithPublishPermissionsPrefix?: string;
|
|
10
|
+
};
|
|
8
11
|
export type SQSCreationConfig = {
|
|
9
12
|
queue: SQSQueueAWSConfig;
|
|
10
|
-
};
|
|
13
|
+
} & ExtraSQSCreationParams;
|
|
11
14
|
export type NewSQSConsumerOptions<CreationConfigType extends SQSCreationConfig> = NewQueueOptions<CreationConfigType> & {
|
|
12
15
|
consumerOverrides?: Partial<ConsumerOptions>;
|
|
13
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":";;;AAOA,sDAA0E;AAC1E,+CAAuC;AAIvC,gEAA0D;AAO1D,6DAAyD;AAEzD,MAAM,kBAAkB,GAA2B;IACjD,KAAK,EAAE,OAAO;CACf,CAAA;
|
|
1
|
+
{"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function generateQueuePublishForTopicPolicy(queueUrl: string, supportedSnsTopicArnPrefix: string): string;
|
|
2
|
+
export declare function generateWildcardSqsArn(sqsQueueArnPrefix: string): string;
|
|
3
|
+
export declare function generateWildcardSnsArn(snsTopicArnPrefix: string): string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateWildcardSnsArn = exports.generateWildcardSqsArn = exports.generateQueuePublishForTopicPolicy = void 0;
|
|
4
|
+
// See https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_version.html
|
|
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}"}}}]}`;
|
|
8
|
+
}
|
|
9
|
+
exports.generateQueuePublishForTopicPolicy = generateQueuePublishForTopicPolicy;
|
|
10
|
+
function generateWildcardSqsArn(sqsQueueArnPrefix) {
|
|
11
|
+
return `arn:aws:sqs:*:*:${sqsQueueArnPrefix}`;
|
|
12
|
+
}
|
|
13
|
+
exports.generateWildcardSqsArn = generateWildcardSqsArn;
|
|
14
|
+
function generateWildcardSnsArn(snsTopicArnPrefix) {
|
|
15
|
+
return `arn:aws:sns:*:*:${snsTopicArnPrefix}`;
|
|
16
|
+
}
|
|
17
|
+
exports.generateWildcardSnsArn = generateWildcardSnsArn;
|
|
18
|
+
//# sourceMappingURL=sqsAttributeUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqsAttributeUtils.js","sourceRoot":"","sources":["../../../lib/utils/sqsAttributeUtils.ts"],"names":[],"mappings":";;;AAAA,gGAAgG;AAChG,MAAM,cAAc,GAAG,YAAY,CAAA;AAEnC,SAAgB,kCAAkC,CAChD,QAAgB,EAChB,0BAAkC;IAElC,OAAO,eAAe,cAAc,sJAAsJ,QAAQ,8CAA8C,0BAA0B,QAAQ,CAAA;AACpR,CAAC;AALD,gFAKC;AAED,SAAgB,sBAAsB,CAAC,iBAAyB;IAC9D,OAAO,mBAAmB,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAFD,wDAEC;AAED,SAAgB,sBAAsB,CAAC,iBAAyB;IAC9D,OAAO,mBAAmB,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAFD,wDAEC"}
|
|
@@ -35,7 +35,9 @@ async function initSqs(sqsClient, locatorConfig, creationConfig) {
|
|
|
35
35
|
if (!creationConfig?.queue.QueueName) {
|
|
36
36
|
throw new Error('queueConfig.QueueName is mandatory when locator is not provided');
|
|
37
37
|
}
|
|
38
|
-
const queueUrl = await (0, sqsUtils_1.assertQueue)(sqsClient, creationConfig.queue
|
|
38
|
+
const queueUrl = await (0, sqsUtils_1.assertQueue)(sqsClient, creationConfig.queue, {
|
|
39
|
+
topicArnsWithPublishPermissionsPrefix: creationConfig.topicArnsWithPublishPermissionsPrefix,
|
|
40
|
+
});
|
|
39
41
|
const queueName = creationConfig.queue.QueueName;
|
|
40
42
|
return {
|
|
41
43
|
queueUrl,
|
|
@@ -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,CAAC,CAAA;
|
|
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,10 +1,12 @@
|
|
|
1
1
|
import type { CreateQueueCommandInput, SQSClient } from '@aws-sdk/client-sqs';
|
|
2
|
+
import type { QueueAttributeName } from '@aws-sdk/client-sqs/dist-types/models/models_0';
|
|
2
3
|
import type { Either } from '@lokalise/node-core';
|
|
4
|
+
import type { ExtraSQSCreationParams } from '../sqs/AbstractSqsConsumer';
|
|
3
5
|
import type { SQSQueueLocatorType } from '../sqs/AbstractSqsService';
|
|
4
6
|
type QueueAttributesResult = {
|
|
5
7
|
attributes?: Record<string, string>;
|
|
6
8
|
};
|
|
7
|
-
export declare function getQueueAttributes(sqsClient: SQSClient, queueLocator: SQSQueueLocatorType): Promise<Either<'not_found', QueueAttributesResult>>;
|
|
8
|
-
export declare function assertQueue(sqsClient: SQSClient, queueConfig: CreateQueueCommandInput): Promise<string>;
|
|
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>;
|
|
9
11
|
export declare function deleteQueue(client: SQSClient, queueName: string): Promise<void>;
|
|
10
12
|
export {};
|
|
@@ -2,9 +2,11 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.deleteQueue = exports.assertQueue = exports.getQueueAttributes = void 0;
|
|
4
4
|
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
5
|
-
|
|
5
|
+
const sqsAttributeUtils_1 = require("./sqsAttributeUtils");
|
|
6
|
+
async function getQueueAttributes(sqsClient, queueLocator, attributeNames) {
|
|
6
7
|
const command = new client_sqs_1.GetQueueAttributesCommand({
|
|
7
8
|
QueueUrl: queueLocator.queueUrl,
|
|
9
|
+
AttributeNames: attributeNames,
|
|
8
10
|
});
|
|
9
11
|
try {
|
|
10
12
|
const response = await sqsClient.send(command);
|
|
@@ -26,7 +28,7 @@ async function getQueueAttributes(sqsClient, queueLocator) {
|
|
|
26
28
|
}
|
|
27
29
|
}
|
|
28
30
|
exports.getQueueAttributes = getQueueAttributes;
|
|
29
|
-
async function assertQueue(sqsClient, queueConfig) {
|
|
31
|
+
async function assertQueue(sqsClient, queueConfig, extraParams) {
|
|
30
32
|
const command = new client_sqs_1.CreateQueueCommand(queueConfig);
|
|
31
33
|
await sqsClient.send(command);
|
|
32
34
|
const getUrlCommand = new client_sqs_1.GetQueueUrlCommand({
|
|
@@ -36,6 +38,15 @@ async function assertQueue(sqsClient, queueConfig) {
|
|
|
36
38
|
if (!response.QueueUrl) {
|
|
37
39
|
throw new Error(`Queue ${queueConfig.QueueName ?? ''} was not created`);
|
|
38
40
|
}
|
|
41
|
+
if (extraParams?.topicArnsWithPublishPermissionsPrefix) {
|
|
42
|
+
const setTopicAttributesCommand = new client_sqs_1.SetQueueAttributesCommand({
|
|
43
|
+
QueueUrl: response.QueueUrl,
|
|
44
|
+
Attributes: {
|
|
45
|
+
Policy: (0, sqsAttributeUtils_1.generateQueuePublishForTopicPolicy)(response.QueueUrl, extraParams.topicArnsWithPublishPermissionsPrefix),
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
await sqsClient.send(setTopicAttributesCommand);
|
|
49
|
+
}
|
|
39
50
|
return response.QueueUrl;
|
|
40
51
|
}
|
|
41
52
|
exports.assertQueue = assertQueue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqsUtils.js","sourceRoot":"","sources":["../../../lib/utils/sqsUtils.ts"],"names":[],"mappings":";;;AACA,
|
|
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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@message-queue-toolkit/sqs",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "SQS adapter for message-queue-toolkit",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
34
|
"@aws-sdk/client-sqs": "^3.385.0",
|
|
35
|
-
"@message-queue-toolkit/core": "^3.
|
|
35
|
+
"@message-queue-toolkit/core": "^3.3.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@aws-sdk/client-sqs": "^3.385.0",
|