@message-queue-toolkit/sqs 15.2.0 → 16.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.
- package/dist/index.d.ts +4 -2
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/sqs/AbstractSqsConsumer.d.ts +8 -1
- package/dist/lib/sqs/AbstractSqsConsumer.js +33 -14
- package/dist/lib/sqs/AbstractSqsConsumer.js.map +1 -1
- package/dist/lib/sqs/AbstractSqsPublisher.d.ts +6 -3
- package/dist/lib/sqs/AbstractSqsPublisher.js +17 -9
- package/dist/lib/sqs/AbstractSqsPublisher.js.map +1 -1
- package/dist/lib/sqs/AbstractSqsService.d.ts +1 -0
- package/dist/lib/sqs/AbstractSqsService.js +3 -1
- package/dist/lib/sqs/AbstractSqsService.js.map +1 -1
- package/dist/lib/types/MessageTypes.d.ts +2 -0
- package/dist/lib/utils/messageUtils.d.ts +4 -0
- package/dist/lib/utils/messageUtils.js +22 -0
- package/dist/lib/utils/messageUtils.js.map +1 -0
- package/dist/lib/utils/sqsMessageReader.d.ts +2 -2
- package/dist/lib/utils/sqsMessageReader.js +4 -1
- package/dist/lib/utils/sqsMessageReader.js.map +1 -1
- package/dist/lib/utils/sqsUtils.d.ts +12 -1
- package/dist/lib/utils/sqsUtils.js +19 -1
- package/dist/lib/utils/sqsUtils.js.map +1 -1
- package/package.json +6 -4
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export type { ExtraSQSCreationParams, SQSDependencies, SQSCreationConfig, SQSQueueLocatorType, } from './lib/sqs/AbstractSqsService';
|
|
1
|
+
export type { ExtraSQSCreationParams, SQSDependencies, SQSCreationConfig, SQSQueueLocatorType, SQS_MESSAGE_MAX_SIZE, } from './lib/sqs/AbstractSqsService';
|
|
2
2
|
export { SqsConsumerErrorResolver } from './lib/errors/SqsConsumerErrorResolver';
|
|
3
3
|
export type { SQSConsumerDependencies, SQSConsumerOptions } from './lib/sqs/AbstractSqsConsumer';
|
|
4
4
|
export { AbstractSqsConsumer } from './lib/sqs/AbstractSqsConsumer';
|
|
5
|
-
export { AbstractSqsPublisher } from './lib/sqs/AbstractSqsPublisher';
|
|
5
|
+
export { AbstractSqsPublisher, OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE, } from './lib/sqs/AbstractSqsPublisher';
|
|
6
6
|
export type { SQSMessageOptions } from './lib/sqs/AbstractSqsPublisher';
|
|
7
7
|
export { assertQueue, deleteQueue, getQueueAttributes, getQueueUrl } from './lib/utils/sqsUtils';
|
|
8
8
|
export { deleteSqs, updateQueueAttributes } from './lib/utils/sqsInitter';
|
|
@@ -10,3 +10,5 @@ export { deserializeSQSMessage } from './lib/utils/sqsMessageDeserializer';
|
|
|
10
10
|
export { generateQueuePublishForTopicPolicy, generateWildcardSqsArn, generateWildcardSnsArn, } from './lib/utils/sqsAttributeUtils';
|
|
11
11
|
export type { CommonMessage, SQSMessage } from './lib/types/MessageTypes';
|
|
12
12
|
export { FakeConsumerErrorResolver } from './lib/fakes/FakeConsumerErrorResolver';
|
|
13
|
+
export { calculateOutgoingMessageSize } from './lib/utils/sqsUtils';
|
|
14
|
+
export { resolveOutgoingMessageAttributes } from './lib/utils/messageUtils';
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FakeConsumerErrorResolver = exports.generateWildcardSnsArn = exports.generateWildcardSqsArn = exports.generateQueuePublishForTopicPolicy = exports.deserializeSQSMessage = exports.updateQueueAttributes = exports.deleteSqs = exports.getQueueUrl = exports.getQueueAttributes = exports.deleteQueue = exports.assertQueue = exports.AbstractSqsPublisher = exports.AbstractSqsConsumer = exports.SqsConsumerErrorResolver = void 0;
|
|
3
|
+
exports.resolveOutgoingMessageAttributes = exports.calculateOutgoingMessageSize = exports.FakeConsumerErrorResolver = exports.generateWildcardSnsArn = exports.generateWildcardSqsArn = exports.generateQueuePublishForTopicPolicy = exports.deserializeSQSMessage = exports.updateQueueAttributes = exports.deleteSqs = exports.getQueueUrl = exports.getQueueAttributes = exports.deleteQueue = exports.assertQueue = exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = exports.AbstractSqsPublisher = exports.AbstractSqsConsumer = exports.SqsConsumerErrorResolver = void 0;
|
|
4
4
|
var SqsConsumerErrorResolver_1 = require("./lib/errors/SqsConsumerErrorResolver");
|
|
5
5
|
Object.defineProperty(exports, "SqsConsumerErrorResolver", { enumerable: true, get: function () { return SqsConsumerErrorResolver_1.SqsConsumerErrorResolver; } });
|
|
6
6
|
var AbstractSqsConsumer_1 = require("./lib/sqs/AbstractSqsConsumer");
|
|
7
7
|
Object.defineProperty(exports, "AbstractSqsConsumer", { enumerable: true, get: function () { return AbstractSqsConsumer_1.AbstractSqsConsumer; } });
|
|
8
8
|
var AbstractSqsPublisher_1 = require("./lib/sqs/AbstractSqsPublisher");
|
|
9
9
|
Object.defineProperty(exports, "AbstractSqsPublisher", { enumerable: true, get: function () { return AbstractSqsPublisher_1.AbstractSqsPublisher; } });
|
|
10
|
+
Object.defineProperty(exports, "OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE", { enumerable: true, get: function () { return AbstractSqsPublisher_1.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE; } });
|
|
10
11
|
var sqsUtils_1 = require("./lib/utils/sqsUtils");
|
|
11
12
|
Object.defineProperty(exports, "assertQueue", { enumerable: true, get: function () { return sqsUtils_1.assertQueue; } });
|
|
12
13
|
Object.defineProperty(exports, "deleteQueue", { enumerable: true, get: function () { return sqsUtils_1.deleteQueue; } });
|
|
@@ -23,4 +24,8 @@ Object.defineProperty(exports, "generateWildcardSqsArn", { enumerable: true, get
|
|
|
23
24
|
Object.defineProperty(exports, "generateWildcardSnsArn", { enumerable: true, get: function () { return sqsAttributeUtils_1.generateWildcardSnsArn; } });
|
|
24
25
|
var FakeConsumerErrorResolver_1 = require("./lib/fakes/FakeConsumerErrorResolver");
|
|
25
26
|
Object.defineProperty(exports, "FakeConsumerErrorResolver", { enumerable: true, get: function () { return FakeConsumerErrorResolver_1.FakeConsumerErrorResolver; } });
|
|
27
|
+
var sqsUtils_2 = require("./lib/utils/sqsUtils");
|
|
28
|
+
Object.defineProperty(exports, "calculateOutgoingMessageSize", { enumerable: true, get: function () { return sqsUtils_2.calculateOutgoingMessageSize; } });
|
|
29
|
+
var messageUtils_1 = require("./lib/utils/messageUtils");
|
|
30
|
+
Object.defineProperty(exports, "resolveOutgoingMessageAttributes", { enumerable: true, get: function () { return messageUtils_1.resolveOutgoingMessageAttributes; } });
|
|
26
31
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAQA,kFAAgF;AAAvE,oIAAA,wBAAwB,OAAA;AAGjC,qEAAmE;AAA1D,0HAAA,mBAAmB,OAAA;AAE5B,uEAGuC;AAFrC,4HAAA,oBAAoB,OAAA;AACpB,wIAAA,gCAAgC,OAAA;AAIlC,iDAAgG;AAAvF,uGAAA,WAAW,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,8GAAA,kBAAkB,OAAA;AAAE,uGAAA,WAAW,OAAA;AAClE,qDAAyE;AAAhE,uGAAA,SAAS,OAAA;AAAE,mHAAA,qBAAqB,OAAA;AACzC,6EAA0E;AAAjE,+HAAA,qBAAqB,OAAA;AAC9B,mEAIsC;AAHpC,uIAAA,kCAAkC,OAAA;AAClC,2HAAA,sBAAsB,OAAA;AACtB,2HAAA,sBAAsB,OAAA;AAIxB,mFAAiF;AAAxE,sIAAA,yBAAyB,OAAA;AAElC,iDAAmE;AAA1D,wHAAA,4BAA4B,OAAA;AACrC,yDAA2E;AAAlE,gIAAA,gCAAgC,OAAA"}
|
|
@@ -40,7 +40,14 @@ export declare abstract class AbstractSqsConsumer<MessagePayloadType extends obj
|
|
|
40
40
|
protected resolveSchema(message: MessagePayloadType): Either<Error, import("zod").ZodType<MessagePayloadType, import("zod").ZodTypeDef, MessagePayloadType>>;
|
|
41
41
|
protected resolveNextFunction(preHandlers: Prehandler<MessagePayloadType, ExecutionContext, unknown>[], message: MessagePayloadType, index: number, preHandlerOutput: PrehandlerOutput, resolve: (value: PrehandlerOutput | PromiseLike<PrehandlerOutput>) => void, reject: (err: Error) => void): (preHandlerResult: import("@message-queue-toolkit/core").PrehandlerResult) => void;
|
|
42
42
|
protected resolveMessageLog(message: MessagePayloadType, messageType: string): unknown;
|
|
43
|
-
protected resolveMessage(message: SQSMessage): Either<import("@message-queue-toolkit/core").MessageInvalidFormatError | import("@message-queue-toolkit/core").MessageValidationError,
|
|
43
|
+
protected resolveMessage(message: SQSMessage): Either<import("@message-queue-toolkit/core").MessageInvalidFormatError | import("@message-queue-toolkit/core").MessageValidationError, import("@message-queue-toolkit/core").ResolvedMessage>;
|
|
44
|
+
protected resolveMaybeOffloadedPayloadMessage(message: SQSMessage): Promise<{
|
|
45
|
+
error?: undefined;
|
|
46
|
+
result: import("@message-queue-toolkit/core").ResolvedMessage;
|
|
47
|
+
} | {
|
|
48
|
+
error: "abort";
|
|
49
|
+
result?: undefined;
|
|
50
|
+
}>;
|
|
44
51
|
private tryToExtractId;
|
|
45
52
|
private deserializeMessage;
|
|
46
53
|
private failProcessing;
|
|
@@ -4,9 +4,11 @@ exports.AbstractSqsConsumer = void 0;
|
|
|
4
4
|
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
5
5
|
const core_1 = require("@message-queue-toolkit/core");
|
|
6
6
|
const sqs_consumer_1 = require("sqs-consumer");
|
|
7
|
+
const messageUtils_1 = require("../utils/messageUtils");
|
|
7
8
|
const sqsInitter_1 = require("../utils/sqsInitter");
|
|
8
9
|
const sqsMessageReader_1 = require("../utils/sqsMessageReader");
|
|
9
10
|
const sqsUtils_1 = require("../utils/sqsUtils");
|
|
11
|
+
const AbstractSqsPublisher_1 = require("./AbstractSqsPublisher");
|
|
10
12
|
const AbstractSqsService_1 = require("./AbstractSqsService");
|
|
11
13
|
const ABORT_EARLY_EITHER = {
|
|
12
14
|
error: 'abort',
|
|
@@ -69,11 +71,12 @@ class AbstractSqsConsumer extends AbstractSqsService_1.AbstractSqsService {
|
|
|
69
71
|
sqs: this.sqsClient,
|
|
70
72
|
queueUrl: this.queueUrl,
|
|
71
73
|
visibilityTimeout,
|
|
74
|
+
messageAttributeNames: [AbstractSqsPublisher_1.PAYLOAD_OFFLOADING_ATTRIBUTE_PREFIX + '*'],
|
|
72
75
|
...this.consumerOptionsOverride,
|
|
73
76
|
handleMessage: async (message) => {
|
|
74
77
|
if (message === null)
|
|
75
78
|
return;
|
|
76
|
-
const deserializedMessage = this.deserializeMessage(message);
|
|
79
|
+
const deserializedMessage = await this.deserializeMessage(message);
|
|
77
80
|
if (deserializedMessage.error === 'abort') {
|
|
78
81
|
await this.failProcessing(message);
|
|
79
82
|
const messageId = this.tryToExtractId(message);
|
|
@@ -177,43 +180,59 @@ class AbstractSqsConsumer extends AbstractSqsService_1.AbstractSqsService {
|
|
|
177
180
|
resolveMessage(message) {
|
|
178
181
|
return (0, sqsMessageReader_1.readSqsMessage)(message, this.errorResolver);
|
|
179
182
|
}
|
|
183
|
+
async resolveMaybeOffloadedPayloadMessage(message) {
|
|
184
|
+
const resolveMessageResult = this.resolveMessage(message);
|
|
185
|
+
if ((0, core_1.isMessageError)(resolveMessageResult.error)) {
|
|
186
|
+
this.handleError(resolveMessageResult.error);
|
|
187
|
+
return ABORT_EARLY_EITHER;
|
|
188
|
+
}
|
|
189
|
+
// Empty content for whatever reason
|
|
190
|
+
if (!resolveMessageResult.result || !resolveMessageResult.result.body) {
|
|
191
|
+
return ABORT_EARLY_EITHER;
|
|
192
|
+
}
|
|
193
|
+
if ((0, messageUtils_1.hasOffloadedPayload)(resolveMessageResult.result)) {
|
|
194
|
+
const retrieveOffloadedMessagePayloadResult = await this.retrieveOffloadedMessagePayload(resolveMessageResult.result.body);
|
|
195
|
+
if (retrieveOffloadedMessagePayloadResult.error) {
|
|
196
|
+
this.handleError(retrieveOffloadedMessagePayloadResult.error);
|
|
197
|
+
return ABORT_EARLY_EITHER;
|
|
198
|
+
}
|
|
199
|
+
resolveMessageResult.result.body = retrieveOffloadedMessagePayloadResult.result;
|
|
200
|
+
}
|
|
201
|
+
return resolveMessageResult;
|
|
202
|
+
}
|
|
180
203
|
tryToExtractId(message) {
|
|
181
204
|
const resolveMessageResult = this.resolveMessage(message);
|
|
182
205
|
if ((0, core_1.isMessageError)(resolveMessageResult.error)) {
|
|
183
206
|
this.handleError(resolveMessageResult.error);
|
|
184
207
|
return ABORT_EARLY_EITHER;
|
|
185
208
|
}
|
|
209
|
+
const resolvedMessage = resolveMessageResult.result;
|
|
186
210
|
// Empty content for whatever reason
|
|
187
|
-
if (!
|
|
211
|
+
if (!resolvedMessage || !resolvedMessage.body)
|
|
188
212
|
return ABORT_EARLY_EITHER;
|
|
189
213
|
// @ts-ignore
|
|
190
|
-
if (this.messageIdField in
|
|
214
|
+
if (this.messageIdField in resolvedMessage.body) {
|
|
191
215
|
return {
|
|
192
216
|
// @ts-ignore
|
|
193
|
-
result:
|
|
217
|
+
result: resolvedMessage.body[this.messageIdField],
|
|
194
218
|
};
|
|
195
219
|
}
|
|
196
220
|
return ABORT_EARLY_EITHER;
|
|
197
221
|
}
|
|
198
|
-
deserializeMessage(message) {
|
|
222
|
+
async deserializeMessage(message) {
|
|
199
223
|
if (message === null) {
|
|
200
224
|
return ABORT_EARLY_EITHER;
|
|
201
225
|
}
|
|
202
|
-
const resolveMessageResult = this.
|
|
203
|
-
if (
|
|
204
|
-
this.handleError(resolveMessageResult.error);
|
|
205
|
-
return ABORT_EARLY_EITHER;
|
|
206
|
-
}
|
|
207
|
-
// Empty content for whatever reason
|
|
208
|
-
if (!resolveMessageResult.result) {
|
|
226
|
+
const resolveMessageResult = await this.resolveMaybeOffloadedPayloadMessage(message);
|
|
227
|
+
if (resolveMessageResult.error) {
|
|
209
228
|
return ABORT_EARLY_EITHER;
|
|
210
229
|
}
|
|
211
|
-
const resolveSchemaResult = this.resolveSchema(resolveMessageResult.result);
|
|
230
|
+
const resolveSchemaResult = this.resolveSchema(resolveMessageResult.result.body);
|
|
212
231
|
if (resolveSchemaResult.error) {
|
|
213
232
|
this.handleError(resolveSchemaResult.error);
|
|
214
233
|
return ABORT_EARLY_EITHER;
|
|
215
234
|
}
|
|
216
|
-
const deserializationResult = (0, core_1.parseMessage)(resolveMessageResult.result, resolveSchemaResult.result, this.errorResolver);
|
|
235
|
+
const deserializationResult = (0, core_1.parseMessage)(resolveMessageResult.result.body, resolveSchemaResult.result, this.errorResolver);
|
|
217
236
|
if ((0, core_1.isMessageError)(deserializationResult.error)) {
|
|
218
237
|
this.handleError(deserializationResult.error);
|
|
219
238
|
return ABORT_EARLY_EITHER;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":";;;AAAA,oDAAmF;AAcnF,sDAA4F;AAC5F,+CAAuC;AAIvC,oDAAwD;AACxD,gEAA0D;AAC1D,gDAAsD;
|
|
1
|
+
{"version":3,"file":"AbstractSqsConsumer.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsConsumer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,25 @@
|
|
|
1
1
|
import type { Either } from '@lokalise/node-core';
|
|
2
|
-
import type { AsyncPublisher, MessageInvalidFormatError, MessageValidationError,
|
|
2
|
+
import type { AsyncPublisher, BarrierResult, MessageInvalidFormatError, MessageValidationError, QueuePublisherOptions, OffloadedPayloadPointerPayload, ResolvedMessage } from '@message-queue-toolkit/core';
|
|
3
3
|
import type { ZodSchema } from 'zod';
|
|
4
4
|
import type { SQSMessage } from '../types/MessageTypes';
|
|
5
|
+
import type { SQSCreationConfig, SQSDependencies, SQSQueueLocatorType } from './AbstractSqsService';
|
|
5
6
|
import { AbstractSqsService } from './AbstractSqsService';
|
|
6
|
-
import type { SQSDependencies, SQSQueueLocatorType, SQSCreationConfig } from './AbstractSqsService';
|
|
7
7
|
export type SQSMessageOptions = {
|
|
8
8
|
MessageGroupId?: string;
|
|
9
9
|
MessageDeduplicationId?: string;
|
|
10
10
|
};
|
|
11
|
+
export declare const PAYLOAD_OFFLOADING_ATTRIBUTE_PREFIX = "payloadOffloading.";
|
|
12
|
+
export declare const OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE: string;
|
|
11
13
|
export declare abstract class AbstractSqsPublisher<MessagePayloadType extends object> extends AbstractSqsService<MessagePayloadType> implements AsyncPublisher<MessagePayloadType, SQSMessageOptions> {
|
|
12
14
|
private readonly messageSchemaContainer;
|
|
13
15
|
private initPromise?;
|
|
14
16
|
constructor(dependencies: SQSDependencies, options: QueuePublisherOptions<SQSCreationConfig, SQSQueueLocatorType, MessagePayloadType>);
|
|
15
17
|
publish(message: MessagePayloadType, options?: SQSMessageOptions): Promise<void>;
|
|
16
18
|
protected resolveNextFunction(): () => void;
|
|
17
|
-
protected resolveMessage(_message: SQSMessage): Either<MessageInvalidFormatError | MessageValidationError,
|
|
19
|
+
protected resolveMessage(_message: SQSMessage): Either<MessageInvalidFormatError | MessageValidationError, ResolvedMessage>;
|
|
18
20
|
protected processPrehandlers(): Promise<unknown>;
|
|
19
21
|
protected preHandlerBarrier<BarrierOutput>(): Promise<BarrierResult<BarrierOutput>>;
|
|
20
22
|
processMessage(): Promise<Either<'retryLater', 'success'>>;
|
|
21
23
|
protected resolveSchema(message: MessagePayloadType): Either<Error, ZodSchema<MessagePayloadType>>;
|
|
24
|
+
protected sendMessage(payload: MessagePayloadType | OffloadedPayloadPointerPayload, options: SQSMessageOptions): Promise<void>;
|
|
22
25
|
}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractSqsPublisher = void 0;
|
|
3
|
+
exports.AbstractSqsPublisher = exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = exports.PAYLOAD_OFFLOADING_ATTRIBUTE_PREFIX = void 0;
|
|
4
4
|
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
5
5
|
const node_core_1 = require("@lokalise/node-core");
|
|
6
|
+
const messageUtils_1 = require("../utils/messageUtils");
|
|
7
|
+
const sqsUtils_1 = require("../utils/sqsUtils");
|
|
6
8
|
const AbstractSqsService_1 = require("./AbstractSqsService");
|
|
9
|
+
exports.PAYLOAD_OFFLOADING_ATTRIBUTE_PREFIX = 'payloadOffloading.';
|
|
10
|
+
exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = exports.PAYLOAD_OFFLOADING_ATTRIBUTE_PREFIX + 'size';
|
|
7
11
|
class AbstractSqsPublisher extends AbstractSqsService_1.AbstractSqsService {
|
|
8
12
|
messageSchemaContainer;
|
|
9
13
|
initPromise;
|
|
@@ -33,14 +37,8 @@ class AbstractSqsPublisher extends AbstractSqsService_1.AbstractSqsService {
|
|
|
33
37
|
this.logMessage(resolvedLogMessage);
|
|
34
38
|
}
|
|
35
39
|
message = this.updateInternalProperties(message);
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
QueueUrl: this.queueUrl,
|
|
39
|
-
MessageBody: JSON.stringify(message),
|
|
40
|
-
...options,
|
|
41
|
-
};
|
|
42
|
-
const command = new client_sqs_1.SendMessageCommand(input);
|
|
43
|
-
await this.sqsClient.send(command);
|
|
40
|
+
const maybeOffloadedPayloadMessage = await this.offloadMessagePayloadIfNeeded(message, () => (0, sqsUtils_1.calculateOutgoingMessageSize)(message));
|
|
41
|
+
await this.sendMessage(maybeOffloadedPayloadMessage, options);
|
|
44
42
|
this.handleMessageProcessed(parsedMessage, 'published');
|
|
45
43
|
}
|
|
46
44
|
catch (error) {
|
|
@@ -80,6 +78,16 @@ class AbstractSqsPublisher extends AbstractSqsService_1.AbstractSqsService {
|
|
|
80
78
|
resolveSchema(message) {
|
|
81
79
|
return this.messageSchemaContainer.resolveSchema(message);
|
|
82
80
|
}
|
|
81
|
+
async sendMessage(payload, options) {
|
|
82
|
+
const attributes = (0, messageUtils_1.resolveOutgoingMessageAttributes)(payload);
|
|
83
|
+
const command = new client_sqs_1.SendMessageCommand({
|
|
84
|
+
QueueUrl: this.queueUrl,
|
|
85
|
+
MessageBody: JSON.stringify(payload),
|
|
86
|
+
MessageAttributes: attributes,
|
|
87
|
+
...options,
|
|
88
|
+
});
|
|
89
|
+
await this.sqsClient.send(command);
|
|
90
|
+
}
|
|
83
91
|
}
|
|
84
92
|
exports.AbstractSqsPublisher = AbstractSqsPublisher;
|
|
85
93
|
//# sourceMappingURL=AbstractSqsPublisher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractSqsPublisher.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisher.ts"],"names":[],"mappings":";;;AACA,oDAAwD;AAExD,mDAAmD;
|
|
1
|
+
{"version":3,"file":"AbstractSqsPublisher.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsPublisher.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { CreateQueueRequest, SQSClient } from '@aws-sdk/client-sqs';
|
|
|
2
2
|
import type { QueueDependencies, QueueOptions } from '@message-queue-toolkit/core';
|
|
3
3
|
import { AbstractQueueService } from '@message-queue-toolkit/core';
|
|
4
4
|
import type { SQSMessage } from '../types/MessageTypes';
|
|
5
|
+
export declare const SQS_MESSAGE_MAX_SIZE: number;
|
|
5
6
|
export type SQSDependencies = QueueDependencies & {
|
|
6
7
|
sqsClient: SQSClient;
|
|
7
8
|
};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractSqsService = void 0;
|
|
3
|
+
exports.AbstractSqsService = exports.SQS_MESSAGE_MAX_SIZE = void 0;
|
|
4
4
|
const core_1 = require("@message-queue-toolkit/core");
|
|
5
5
|
const sqsInitter_1 = require("../utils/sqsInitter");
|
|
6
|
+
// https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
|
|
7
|
+
exports.SQS_MESSAGE_MAX_SIZE = 256 * 1024; // 256KB
|
|
6
8
|
class AbstractSqsService extends core_1.AbstractQueueService {
|
|
7
9
|
sqsClient;
|
|
8
10
|
// @ts-ignore
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractSqsService.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsService.ts"],"names":[],"mappings":";;;AAEA,sDAAkE;AAGlE,oDAAwD;
|
|
1
|
+
{"version":3,"file":"AbstractSqsService.js","sourceRoot":"","sources":["../../../lib/sqs/AbstractSqsService.ts"],"names":[],"mappings":";;;AAEA,sDAAkE;AAGlE,oDAAwD;AAExD,kGAAkG;AACrF,QAAA,oBAAoB,GAAG,GAAG,GAAG,IAAI,CAAA,CAAC,QAAQ;AAoBvD,MAAsB,kBAWpB,SAAQ,2BAST;IACoB,SAAS,CAAW;IAEvC,aAAa;IACH,SAAS,CAAQ;IAC3B,aAAa;IACH,QAAQ,CAAQ;IAC1B,aAAa;IACH,QAAQ,CAAQ;IAE1B,YAAY,YAA8B,EAAE,OAAuB;QACjE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QAC5B,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;QACD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,oBAAO,EACrD,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,cAAc,CACpB,CAAA;QACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;IACvB,CAAC;IAEe,KAAK;QACnB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACtB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;CACF;AAtDD,gDAsDC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { MessageAttributeValue } from '@aws-sdk/client-sqs';
|
|
1
2
|
export type SQSMessage = {
|
|
2
3
|
MessageId: string;
|
|
3
4
|
ReceiptHandle: string;
|
|
4
5
|
MD5OfBody: string;
|
|
5
6
|
Body: string;
|
|
7
|
+
MessageAttributes?: Record<string, MessageAttributeValue>;
|
|
6
8
|
};
|
|
7
9
|
export type CommonMessage = {
|
|
8
10
|
messageType: string;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ResolvedMessage } from '@message-queue-toolkit/core';
|
|
2
|
+
export declare const OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = "payloadOffloading.size";
|
|
3
|
+
export declare function resolveOutgoingMessageAttributes<MessageAttributeValue>(payload: unknown): Record<string, MessageAttributeValue>;
|
|
4
|
+
export declare function hasOffloadedPayload(message: ResolvedMessage): boolean;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.hasOffloadedPayload = exports.resolveOutgoingMessageAttributes = exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = void 0;
|
|
4
|
+
const core_1 = require("@message-queue-toolkit/core");
|
|
5
|
+
exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE = 'payloadOffloading.size';
|
|
6
|
+
function resolveOutgoingMessageAttributes(payload) {
|
|
7
|
+
const attributes = {};
|
|
8
|
+
if ((0, core_1.isOffloadedPayloadPointerPayload)(payload)) {
|
|
9
|
+
attributes[exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE] = {
|
|
10
|
+
DataType: 'Number',
|
|
11
|
+
// The SQS SDK does not provide properties to set numeric values, we have to convert it to string
|
|
12
|
+
StringValue: payload.offloadedPayloadSize.toString(),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
return attributes;
|
|
16
|
+
}
|
|
17
|
+
exports.resolveOutgoingMessageAttributes = resolveOutgoingMessageAttributes;
|
|
18
|
+
function hasOffloadedPayload(message) {
|
|
19
|
+
return !!message.attributes && exports.OFFLOADED_PAYLOAD_SIZE_ATTRIBUTE in message.attributes;
|
|
20
|
+
}
|
|
21
|
+
exports.hasOffloadedPayload = hasOffloadedPayload;
|
|
22
|
+
//# sourceMappingURL=messageUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageUtils.js","sourceRoot":"","sources":["../../../lib/utils/messageUtils.ts"],"names":[],"mappings":";;;AACA,sDAA8E;AAEjE,QAAA,gCAAgC,GAAG,wBAAwB,CAAA;AAExE,SAAgB,gCAAgC,CAC9C,OAAgB;IAEhB,MAAM,UAAU,GAA0C,EAAE,CAAA;IAE5D,IAAI,IAAA,uCAAgC,EAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,UAAU,CAAC,wCAAgC,CAAC,GAAG;YAC7C,QAAQ,EAAE,QAAQ;YAClB,iGAAiG;YACjG,WAAW,EAAE,OAAO,CAAC,oBAAoB,CAAC,QAAQ,EAAE;SAC5B,CAAA;IAC5B,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAdD,4EAcC;AAED,SAAgB,mBAAmB,CAAC,OAAwB;IAC1D,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,wCAAgC,IAAI,OAAO,CAAC,UAAU,CAAA;AACvF,CAAC;AAFD,kDAEC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { Either, ErrorResolver } from '@lokalise/node-core';
|
|
2
|
-
import type { MessageInvalidFormatError, MessageValidationError } from '@message-queue-toolkit/core';
|
|
2
|
+
import type { MessageInvalidFormatError, MessageValidationError, ResolvedMessage } from '@message-queue-toolkit/core';
|
|
3
3
|
import type { SQSMessage } from '../types/MessageTypes';
|
|
4
|
-
export declare function readSqsMessage(message: SQSMessage, errorProcessor: ErrorResolver): Either<MessageInvalidFormatError | MessageValidationError,
|
|
4
|
+
export declare function readSqsMessage(message: SQSMessage, errorProcessor: ErrorResolver): Either<MessageInvalidFormatError | MessageValidationError, ResolvedMessage>;
|
|
@@ -4,7 +4,10 @@ exports.readSqsMessage = void 0;
|
|
|
4
4
|
function readSqsMessage(message, errorProcessor) {
|
|
5
5
|
try {
|
|
6
6
|
return {
|
|
7
|
-
result:
|
|
7
|
+
result: {
|
|
8
|
+
body: JSON.parse(message.Body),
|
|
9
|
+
attributes: message.MessageAttributes,
|
|
10
|
+
},
|
|
8
11
|
};
|
|
9
12
|
}
|
|
10
13
|
catch (exception) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqsMessageReader.js","sourceRoot":"","sources":["../../../lib/utils/sqsMessageReader.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"sqsMessageReader.js","sourceRoot":"","sources":["../../../lib/utils/sqsMessageReader.ts"],"names":[],"mappings":";;;AASA,SAAgB,cAAc,CAC5B,OAAmB,EACnB,cAA6B;IAE7B,IAAI,CAAC;QACH,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC9B,UAAU,EAAE,OAAO,CAAC,iBAAiB;aACtC;SACF,CAAA;IACH,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,OAAO;YACL,KAAK,EAAE,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC;SAC9C,CAAA;IACH,CAAC;AACH,CAAC;AAhBD,wCAgBC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateQueueCommandInput, SQSClient, QueueAttributeName } from '@aws-sdk/client-sqs';
|
|
1
|
+
import type { CreateQueueCommandInput, SQSClient, QueueAttributeName, SendMessageCommandInput } from '@aws-sdk/client-sqs';
|
|
2
2
|
import type { Either } from '@lokalise/node-core';
|
|
3
3
|
import type { ExtraSQSCreationParams, SQSQueueLocatorType } from '../sqs/AbstractSqsService';
|
|
4
4
|
type QueueAttributesResult = {
|
|
@@ -12,4 +12,15 @@ export declare function assertQueue(sqsClient: SQSClient, queueConfig: CreateQue
|
|
|
12
12
|
queueName: string | undefined;
|
|
13
13
|
}>;
|
|
14
14
|
export declare function deleteQueue(client: SQSClient, queueName: string, waitForConfirmation?: boolean): Promise<void>;
|
|
15
|
+
/**
|
|
16
|
+
* Calculates the size of an outgoing SQS message.
|
|
17
|
+
*
|
|
18
|
+
* SQS imposes a 256 KB limit on the total size of a message, which includes both the message body and any metadata (attributes).
|
|
19
|
+
* This function currently computes the size based solely on the message body, as no attributes are included at this time.
|
|
20
|
+
* For future updates, if message attributes are added, their sizes should also be considered.
|
|
21
|
+
*
|
|
22
|
+
* Reference: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
|
|
23
|
+
*/
|
|
24
|
+
export declare function calculateOutgoingMessageSize(message: unknown): number;
|
|
25
|
+
export declare function calculateSqsMessageBodySize(messageBody: SendMessageCommandInput['MessageBody']): number;
|
|
15
26
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.deleteQueue = exports.assertQueue = exports.getQueueAttributes = exports.getQueueUrl = void 0;
|
|
3
|
+
exports.calculateSqsMessageBodySize = exports.calculateOutgoingMessageSize = exports.deleteQueue = exports.assertQueue = exports.getQueueAttributes = exports.getQueueUrl = void 0;
|
|
4
4
|
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
5
5
|
const core_1 = require("@message-queue-toolkit/core");
|
|
6
6
|
const sqsAttributeUtils_1 = require("./sqsAttributeUtils");
|
|
@@ -157,4 +157,22 @@ async function deleteQueue(client, queueName, waitForConfirmation = true) {
|
|
|
157
157
|
}
|
|
158
158
|
}
|
|
159
159
|
exports.deleteQueue = deleteQueue;
|
|
160
|
+
/**
|
|
161
|
+
* Calculates the size of an outgoing SQS message.
|
|
162
|
+
*
|
|
163
|
+
* SQS imposes a 256 KB limit on the total size of a message, which includes both the message body and any metadata (attributes).
|
|
164
|
+
* This function currently computes the size based solely on the message body, as no attributes are included at this time.
|
|
165
|
+
* For future updates, if message attributes are added, their sizes should also be considered.
|
|
166
|
+
*
|
|
167
|
+
* Reference: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
|
|
168
|
+
*/
|
|
169
|
+
function calculateOutgoingMessageSize(message) {
|
|
170
|
+
const messageBody = JSON.stringify(message);
|
|
171
|
+
return calculateSqsMessageBodySize(messageBody);
|
|
172
|
+
}
|
|
173
|
+
exports.calculateOutgoingMessageSize = calculateOutgoingMessageSize;
|
|
174
|
+
function calculateSqsMessageBodySize(messageBody) {
|
|
175
|
+
return messageBody ? Buffer.byteLength(messageBody, 'utf8') : 0;
|
|
176
|
+
}
|
|
177
|
+
exports.calculateSqsMessageBodySize = calculateSqsMessageBodySize;
|
|
160
178
|
//# sourceMappingURL=sqsUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqsUtils.js","sourceRoot":"","sources":["../../../lib/utils/sqsUtils.ts"],"names":[],"mappings":";;;AAAA,oDAO4B;
|
|
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
|
+
"version": "16.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "SQS adapter for message-queue-toolkit",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"main": "dist/index.js",
|
|
14
14
|
"types": "dist/index.d.ts",
|
|
15
15
|
"scripts": {
|
|
16
|
-
"build": "tsc",
|
|
16
|
+
"build": "del-cli dist && tsc",
|
|
17
17
|
"build:release": "del-cli dist && del-cli coverage && npm run lint && tsc --project tsconfig.release.json",
|
|
18
18
|
"test": "vitest",
|
|
19
19
|
"test:coverage": "npm test -- --coverage",
|
|
@@ -25,17 +25,19 @@
|
|
|
25
25
|
"prepublishOnly": "npm run build:release"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@lokalise/node-core": "^
|
|
28
|
+
"@lokalise/node-core": "^10.0.0",
|
|
29
29
|
"sqs-consumer": "^10.3.0",
|
|
30
30
|
"zod": "^3.23.8"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
33
|
"@aws-sdk/client-sqs": "^3.556.0",
|
|
34
|
-
"@message-queue-toolkit/core": "^
|
|
34
|
+
"@message-queue-toolkit/core": "^14.0.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
+
"@aws-sdk/client-s3": "^3.598.0",
|
|
37
38
|
"@aws-sdk/client-sqs": "^3.569.0",
|
|
38
39
|
"@message-queue-toolkit/core": "*",
|
|
40
|
+
"@message-queue-toolkit/s3-payload-store": "*",
|
|
39
41
|
"@types/node": "^20.12.8",
|
|
40
42
|
"@typescript-eslint/eslint-plugin": "^7.1.1",
|
|
41
43
|
"@typescript-eslint/parser": "^7.1.1",
|