tibber-aws 5.8.0 → 6.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/src/LoggerWrapper.d.ts +1 -1
- package/dist/src/LoggerWrapper.js +5 -8
- package/dist/src/LoggerWrapper.js.map +1 -1
- package/dist/src/configure.d.ts +1 -1
- package/dist/src/configure.js +1 -5
- package/dist/src/configure.js.map +1 -1
- package/dist/src/index.d.ts +4 -6
- package/dist/src/index.js +11 -17
- package/dist/src/index.js.map +1 -1
- package/dist/src/lambda/getLambdaFunc.d.ts +2 -2
- package/dist/src/lambda/getLambdaFunc.js +15 -12
- package/dist/src/lambda/getLambdaFunc.js.map +1 -1
- package/dist/src/lambda/index.js +5 -1
- package/dist/src/lambda/index.js.map +1 -1
- package/dist/src/queue/Queue.d.ts +6 -6
- package/dist/src/queue/Queue.js +30 -34
- package/dist/src/queue/Queue.js.map +1 -1
- package/dist/src/queue/QueueSubjectListener.d.ts +5 -5
- package/dist/src/queue/QueueSubjectListener.js +11 -9
- package/dist/src/queue/QueueSubjectListener.js.map +1 -1
- package/dist/src/queue/QueueSubjectListenerBuilder.js +3 -0
- package/dist/src/queue/QueueSubjectListenerBuilder.js.map +1 -1
- package/dist/src/queue/Topic.d.ts +3 -3
- package/dist/src/queue/Topic.js +12 -8
- package/dist/src/queue/Topic.js.map +1 -1
- package/dist/src/queue/index.js +5 -1
- package/dist/src/queue/index.js.map +1 -1
- package/dist/src/s3/S3Bucket.d.ts +8 -15
- package/dist/src/s3/S3Bucket.js +26 -43
- package/dist/src/s3/S3Bucket.js.map +1 -1
- package/dist/src/s3/index.js +5 -1
- package/dist/src/s3/index.js.map +1 -1
- package/dist/src/secrets/getSecret.d.ts +1 -1
- package/dist/src/secrets/getSecret.js +2 -2
- package/dist/src/secrets/getSecret.js.map +1 -1
- package/dist/src/secrets/getSecretCollection.d.ts +1 -1
- package/dist/src/secrets/getSecretCollection.js +3 -6
- package/dist/src/secrets/getSecretCollection.js.map +1 -1
- package/dist/src/secrets/index.js +5 -1
- package/dist/src/secrets/index.js.map +1 -1
- package/dist/src/secrets/syncSecrets.js +6 -7
- package/dist/src/secrets/syncSecrets.js.map +1 -1
- package/dist/src/secrets/types.d.ts +7 -8
- package/package.json +26 -21
- package/dist/src/ec2/getCurrentEc2InstanceId.d.ts +0 -1
- package/dist/src/ec2/getCurrentEc2InstanceId.js +0 -19
- package/dist/src/ec2/getCurrentEc2InstanceId.js.map +0 -1
- package/dist/src/ec2/getCurrentEc2InstanceNameTag.d.ts +0 -1
- package/dist/src/ec2/getCurrentEc2InstanceNameTag.js +0 -29
- package/dist/src/ec2/getCurrentEc2InstanceNameTag.js.map +0 -1
- package/dist/src/ec2/index.d.ts +0 -2
- package/dist/src/ec2/index.js +0 -15
- package/dist/src/ec2/index.js.map +0 -1
- package/dist/src/ecs/getContainerMetadata.d.ts +0 -1
- package/dist/src/ecs/getContainerMetadata.js +0 -15
- package/dist/src/ecs/getContainerMetadata.js.map +0 -1
- package/dist/src/ecs/getContainerMetadataSync.d.ts +0 -1
- package/dist/src/ecs/getContainerMetadataSync.js +0 -14
- package/dist/src/ecs/getContainerMetadataSync.js.map +0 -1
- package/dist/src/ecs/index.d.ts +0 -2
- package/dist/src/ecs/index.js +0 -15
- package/dist/src/ecs/index.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ILogger } from './ILogger';
|
|
2
2
|
export declare class LoggerWrapper implements ILogger {
|
|
3
3
|
private _logger;
|
|
4
|
-
constructor(logger?:
|
|
4
|
+
constructor(logger?: undefined | null | ILogger);
|
|
5
5
|
log(level: string, message: string): void;
|
|
6
6
|
debug(message: string): void;
|
|
7
7
|
info(message: string): void;
|
|
@@ -2,24 +2,21 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LoggerWrapper = void 0;
|
|
4
4
|
class LoggerWrapper {
|
|
5
|
+
_logger;
|
|
5
6
|
constructor(logger) {
|
|
6
7
|
this._logger = logger || {};
|
|
7
8
|
}
|
|
8
9
|
log(level, message) {
|
|
9
|
-
|
|
10
|
-
((_a = this._logger) === null || _a === void 0 ? void 0 : _a.log) && this._logger.log(level, message);
|
|
10
|
+
this._logger?.log && this._logger.log(level, message);
|
|
11
11
|
}
|
|
12
12
|
debug(message) {
|
|
13
|
-
|
|
14
|
-
((_a = this._logger) === null || _a === void 0 ? void 0 : _a.debug) && this._logger.debug(message);
|
|
13
|
+
this._logger?.debug && this._logger.debug(message);
|
|
15
14
|
}
|
|
16
15
|
info(message) {
|
|
17
|
-
|
|
18
|
-
((_a = this._logger) === null || _a === void 0 ? void 0 : _a.info) && this._logger.info(message);
|
|
16
|
+
this._logger?.info && this._logger.info(message);
|
|
19
17
|
}
|
|
20
18
|
error(message) {
|
|
21
|
-
|
|
22
|
-
((_a = this._logger) === null || _a === void 0 ? void 0 : _a.error) ? this._logger.error(message) : console.log(message);
|
|
19
|
+
this._logger?.error ? this._logger.error(message) : console.log(message);
|
|
23
20
|
}
|
|
24
21
|
}
|
|
25
22
|
exports.LoggerWrapper = LoggerWrapper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggerWrapper.js","sourceRoot":"","sources":["../../src/LoggerWrapper.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"LoggerWrapper.js","sourceRoot":"","sources":["../../src/LoggerWrapper.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IAChB,OAAO,CAAmB;IAElC,YAAY,MAAmC;QAC7C,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,OAAe;QAChC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,OAAe;QACnB,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3E,CAAC;CACF;AAtBD,sCAsBC"}
|
package/dist/src/configure.d.ts
CHANGED
package/dist/src/configure.js
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.configure = void 0;
|
|
7
|
-
const aws_sdk_1 = __importDefault(require("aws-sdk"));
|
|
8
4
|
const configure = ({ region }) => {
|
|
9
|
-
|
|
5
|
+
//TODO: This needs to work as before. Need to read up on how to do this in sdk v3
|
|
10
6
|
process.env.AWS_REGION = region;
|
|
11
7
|
};
|
|
12
8
|
exports.configure = configure;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../src/configure.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../../src/configure.ts"],"names":[],"mappings":";;;AAIO,MAAM,SAAS,GAAc,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;IAC/C,iFAAiF;IACjF,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC;AAClC,CAAC,CAAC;AAHW,QAAA,SAAS,aAGpB"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
export { S3Bucket } from './s3';
|
|
2
|
-
export { Queue, Topic } from './queue';
|
|
3
|
-
export { getContainerMetadata, getContainerMetadataSync } from './ecs';
|
|
4
1
|
export { configure } from './configure';
|
|
5
|
-
export { getSecret, getSecretCollection } from './secrets';
|
|
6
2
|
export { getLambdaFunc } from './lambda';
|
|
7
|
-
export {
|
|
8
|
-
export { QueueSubjectListenerBuilder } from './queue/QueueSubjectListenerBuilder';
|
|
3
|
+
export { Queue, Topic } from './queue';
|
|
9
4
|
export { QueueSubjectListener } from './queue/QueueSubjectListener';
|
|
5
|
+
export { QueueSubjectListenerBuilder } from './queue/QueueSubjectListenerBuilder';
|
|
6
|
+
export { S3Bucket } from './s3';
|
|
7
|
+
export { getSecret, getSecretCollection } from './secrets';
|
package/dist/src/index.js
CHANGED
|
@@ -1,26 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
var s3_1 = require("./s3");
|
|
5
|
-
Object.defineProperty(exports, "S3Bucket", { enumerable: true, get: function () { return s3_1.S3Bucket; } });
|
|
6
|
-
var queue_1 = require("./queue");
|
|
7
|
-
Object.defineProperty(exports, "Queue", { enumerable: true, get: function () { return queue_1.Queue; } });
|
|
8
|
-
Object.defineProperty(exports, "Topic", { enumerable: true, get: function () { return queue_1.Topic; } });
|
|
9
|
-
var ecs_1 = require("./ecs");
|
|
10
|
-
Object.defineProperty(exports, "getContainerMetadata", { enumerable: true, get: function () { return ecs_1.getContainerMetadata; } });
|
|
11
|
-
Object.defineProperty(exports, "getContainerMetadataSync", { enumerable: true, get: function () { return ecs_1.getContainerMetadataSync; } });
|
|
3
|
+
exports.getSecretCollection = exports.getSecret = exports.S3Bucket = exports.QueueSubjectListenerBuilder = exports.QueueSubjectListener = exports.Topic = exports.Queue = exports.getLambdaFunc = exports.configure = void 0;
|
|
12
4
|
var configure_1 = require("./configure");
|
|
13
5
|
Object.defineProperty(exports, "configure", { enumerable: true, get: function () { return configure_1.configure; } });
|
|
14
|
-
var secrets_1 = require("./secrets");
|
|
15
|
-
Object.defineProperty(exports, "getSecret", { enumerable: true, get: function () { return secrets_1.getSecret; } });
|
|
16
|
-
Object.defineProperty(exports, "getSecretCollection", { enumerable: true, get: function () { return secrets_1.getSecretCollection; } });
|
|
17
6
|
var lambda_1 = require("./lambda");
|
|
18
7
|
Object.defineProperty(exports, "getLambdaFunc", { enumerable: true, get: function () { return lambda_1.getLambdaFunc; } });
|
|
19
|
-
var
|
|
20
|
-
Object.defineProperty(exports, "
|
|
21
|
-
Object.defineProperty(exports, "
|
|
22
|
-
var QueueSubjectListenerBuilder_1 = require("./queue/QueueSubjectListenerBuilder");
|
|
23
|
-
Object.defineProperty(exports, "QueueSubjectListenerBuilder", { enumerable: true, get: function () { return QueueSubjectListenerBuilder_1.QueueSubjectListenerBuilder; } });
|
|
8
|
+
var queue_1 = require("./queue");
|
|
9
|
+
Object.defineProperty(exports, "Queue", { enumerable: true, get: function () { return queue_1.Queue; } });
|
|
10
|
+
Object.defineProperty(exports, "Topic", { enumerable: true, get: function () { return queue_1.Topic; } });
|
|
24
11
|
var QueueSubjectListener_1 = require("./queue/QueueSubjectListener");
|
|
25
12
|
Object.defineProperty(exports, "QueueSubjectListener", { enumerable: true, get: function () { return QueueSubjectListener_1.QueueSubjectListener; } });
|
|
13
|
+
var QueueSubjectListenerBuilder_1 = require("./queue/QueueSubjectListenerBuilder");
|
|
14
|
+
Object.defineProperty(exports, "QueueSubjectListenerBuilder", { enumerable: true, get: function () { return QueueSubjectListenerBuilder_1.QueueSubjectListenerBuilder; } });
|
|
15
|
+
var s3_1 = require("./s3");
|
|
16
|
+
Object.defineProperty(exports, "S3Bucket", { enumerable: true, get: function () { return s3_1.S3Bucket; } });
|
|
17
|
+
var secrets_1 = require("./secrets");
|
|
18
|
+
Object.defineProperty(exports, "getSecret", { enumerable: true, get: function () { return secrets_1.getSecret; } });
|
|
19
|
+
Object.defineProperty(exports, "getSecretCollection", { enumerable: true, get: function () { return secrets_1.getSecretCollection; } });
|
|
26
20
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AAA9B,sGAAA,SAAS,OAAA;AACjB,mCAAuC;AAA/B,uGAAA,aAAa,OAAA;AACrB,iCAAqC;AAA7B,8FAAA,KAAK,OAAA;AAAE,8FAAA,KAAK,OAAA;AACpB,qEAAkE;AAA1D,4HAAA,oBAAoB,OAAA;AAC5B,mFAAgF;AAAxE,0IAAA,2BAA2B,OAAA;AACnC,2BAA8B;AAAtB,8FAAA,QAAQ,OAAA;AAChB,qCAAyD;AAAjD,oGAAA,SAAS,OAAA;AAAE,8GAAA,mBAAmB,OAAA"}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.getLambdaFunc = void 0;
|
|
7
|
-
const
|
|
8
|
-
const getLambdaFunc = funcName => {
|
|
9
|
-
const lambda = new
|
|
4
|
+
const client_lambda_1 = require("@aws-sdk/client-lambda");
|
|
5
|
+
const getLambdaFunc = (funcName, endpoint) => {
|
|
6
|
+
const lambda = new client_lambda_1.Lambda({
|
|
7
|
+
endpoint,
|
|
8
|
+
});
|
|
10
9
|
return async (payload) => {
|
|
11
|
-
const result = await lambda
|
|
12
|
-
|
|
13
|
-
.
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
const result = await lambda.invoke({
|
|
11
|
+
FunctionName: funcName,
|
|
12
|
+
Payload: JSON.stringify(payload),
|
|
13
|
+
});
|
|
14
|
+
try {
|
|
15
|
+
const stringResult = result.Payload?.transformToString();
|
|
16
|
+
return stringResult ? JSON.parse(stringResult) : null;
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
throw Error('Unable to transform response to string. Only string results are currently supported.');
|
|
16
20
|
}
|
|
17
|
-
return result.Payload ? JSON.parse(JSON.parse(result.Payload)) : null;
|
|
18
21
|
};
|
|
19
22
|
};
|
|
20
23
|
exports.getLambdaFunc = getLambdaFunc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLambdaFunc.js","sourceRoot":"","sources":["../../../src/lambda/getLambdaFunc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getLambdaFunc.js","sourceRoot":"","sources":["../../../src/lambda/getLambdaFunc.ts"],"names":[],"mappings":";;;AAAA,0DAA8C;AAWvC,MAAM,aAAa,GAAkB,CAC1C,QAAgB,EAChB,QAAiB,EACjB,EAAE;IACF,MAAM,MAAM,GAAG,IAAI,sBAAM,CAAC;QACxB,QAAQ;KACT,CAAC,CAAC;IACH,OAAO,KAAK,EAAC,OAAO,EAAC,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;YACjC,YAAY,EAAE,QAAQ;YACtB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SACjC,CAAC,CAAC;QAEH,IAAI;YACF,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC;YACzD,OAAO,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;SACvD;QAAC,MAAM;YACN,MAAM,KAAK,CACT,sFAAsF,CACvF,CAAC;SACH;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,aAAa,iBAsBxB"}
|
package/dist/src/lambda/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambda/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambda/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import { SNS } from '@aws-sdk/client-sns';
|
|
2
|
+
import { ReceiveMessageCommandInput, SQS } from '@aws-sdk/client-sqs';
|
|
3
3
|
import { Topic } from './Topic';
|
|
4
4
|
export declare class Queue {
|
|
5
5
|
queueUrl: string;
|
|
6
6
|
queueArn: string;
|
|
7
7
|
endpoint?: string | undefined;
|
|
8
|
-
sqs: AWS.SQS;
|
|
9
|
-
sns: AWS.SNS;
|
|
10
8
|
_arnMap: Record<string, boolean>;
|
|
9
|
+
sqs: SQS;
|
|
10
|
+
sns: SNS;
|
|
11
11
|
constructor(queueUrl: string, queueArn: string, endpoint?: string | undefined);
|
|
12
12
|
subscribeTopic(topic: Topic): Promise<void>;
|
|
13
|
-
send(subject: string, message: unknown, delaySeconds?: number): Promise<import("aws-sdk/
|
|
13
|
+
send(subject: string, message: unknown, delaySeconds?: number): Promise<import("@aws-sdk/client-sqs").SendMessageCommandOutput>;
|
|
14
14
|
static createQueue(queueName: string, endpoint?: string): Promise<Queue>;
|
|
15
|
-
receiveMessage(params: Omit<
|
|
15
|
+
receiveMessage(params: Omit<ReceiveMessageCommandInput, 'QueueUrl'>): Promise<import("@aws-sdk/client-sqs").ReceiveMessageCommandOutput>;
|
|
16
16
|
deleteMessage(receiptHandle: string): Promise<void>;
|
|
17
17
|
}
|
package/dist/src/queue/Queue.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.Queue = void 0;
|
|
7
|
-
const
|
|
4
|
+
const client_sns_1 = require("@aws-sdk/client-sns");
|
|
5
|
+
const client_sqs_1 = require("@aws-sdk/client-sqs");
|
|
8
6
|
const policyTemplate = {
|
|
9
7
|
Statement: [
|
|
10
8
|
{
|
|
@@ -19,16 +17,20 @@ const policyTemplate = {
|
|
|
19
17
|
Version: '2012-10-17',
|
|
20
18
|
};
|
|
21
19
|
class Queue {
|
|
20
|
+
queueUrl;
|
|
21
|
+
queueArn;
|
|
22
|
+
endpoint;
|
|
23
|
+
_arnMap = {};
|
|
24
|
+
sqs;
|
|
25
|
+
sns;
|
|
22
26
|
constructor(queueUrl, queueArn, endpoint) {
|
|
23
27
|
this.queueUrl = queueUrl;
|
|
24
28
|
this.queueArn = queueArn;
|
|
25
29
|
this.endpoint = endpoint;
|
|
26
|
-
this.sqs = new
|
|
27
|
-
this.sns = new
|
|
28
|
-
this._arnMap = {};
|
|
30
|
+
this.sqs = new client_sqs_1.SQS({ endpoint: this.endpoint });
|
|
31
|
+
this.sns = new client_sns_1.SNS({ endpoint: this.endpoint });
|
|
29
32
|
}
|
|
30
33
|
async subscribeTopic(topic) {
|
|
31
|
-
var _a;
|
|
32
34
|
if (this._arnMap[topic.topicArn]) {
|
|
33
35
|
return;
|
|
34
36
|
}
|
|
@@ -39,16 +41,14 @@ class Queue {
|
|
|
39
41
|
Protocol: 'sqs',
|
|
40
42
|
TopicArn: topic.topicArn,
|
|
41
43
|
};
|
|
42
|
-
return await this.sns.subscribe(params)
|
|
44
|
+
return await this.sns.subscribe(params);
|
|
43
45
|
};
|
|
44
|
-
const response = await this.sqs
|
|
45
|
-
.getQueueAttributes({
|
|
46
|
-
QueueUrl: this.queueUrl,
|
|
46
|
+
const response = await this.sqs.getQueueAttributes({
|
|
47
47
|
AttributeNames: ['All'],
|
|
48
|
-
|
|
49
|
-
|
|
48
|
+
QueueUrl: this.queueUrl,
|
|
49
|
+
});
|
|
50
50
|
let policy = policyTemplate;
|
|
51
|
-
if (
|
|
51
|
+
if (response.Attributes?.Policy) {
|
|
52
52
|
policy = JSON.parse(response.Attributes.Policy);
|
|
53
53
|
}
|
|
54
54
|
const statement = policy.Statement[0];
|
|
@@ -67,12 +67,10 @@ class Queue {
|
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
69
69
|
sourceArns.push(topic.topicArn);
|
|
70
|
-
await this.sqs
|
|
71
|
-
.setQueueAttributes({
|
|
72
|
-
QueueUrl: this.queueUrl,
|
|
70
|
+
await this.sqs.setQueueAttributes({
|
|
73
71
|
Attributes: { Policy: JSON.stringify(policy) },
|
|
74
|
-
|
|
75
|
-
|
|
72
|
+
QueueUrl: this.queueUrl,
|
|
73
|
+
});
|
|
76
74
|
await subFunc();
|
|
77
75
|
}
|
|
78
76
|
async send(subject, message, delaySeconds = 0) {
|
|
@@ -84,35 +82,33 @@ class Queue {
|
|
|
84
82
|
}),
|
|
85
83
|
QueueUrl: this.queueUrl,
|
|
86
84
|
};
|
|
87
|
-
return await this.sqs.sendMessage(payload)
|
|
85
|
+
return await this.sqs.sendMessage(payload);
|
|
88
86
|
}
|
|
89
87
|
static async createQueue(queueName, endpoint) {
|
|
90
|
-
|
|
91
|
-
const
|
|
92
|
-
const queue = await sqs.createQueue({ QueueName: queueName }).promise();
|
|
88
|
+
const sqs = new client_sqs_1.SQS({ endpoint });
|
|
89
|
+
const queue = await sqs.createQueue({ QueueName: queueName });
|
|
93
90
|
if (!queue.QueueUrl)
|
|
94
91
|
throw Error("Expected QueueUrl to be set on 'queue' instance.");
|
|
95
|
-
const response = await sqs
|
|
96
|
-
.getQueueAttributes({
|
|
97
|
-
QueueUrl: queue.QueueUrl,
|
|
92
|
+
const response = await sqs.getQueueAttributes({
|
|
98
93
|
AttributeNames: ['QueueArn', 'Policy'],
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
if (!
|
|
94
|
+
QueueUrl: queue.QueueUrl,
|
|
95
|
+
});
|
|
96
|
+
if (!response.Attributes?.QueueArn)
|
|
102
97
|
throw Error("Expected QueueArn to be set on 'response' instance.");
|
|
103
98
|
return new Queue(queue.QueueUrl, response.Attributes.QueueArn, endpoint);
|
|
104
99
|
}
|
|
105
100
|
async receiveMessage(params) {
|
|
106
|
-
return await this.sqs
|
|
107
|
-
|
|
108
|
-
.
|
|
101
|
+
return await this.sqs.receiveMessage({
|
|
102
|
+
...params,
|
|
103
|
+
...{ QueueUrl: this.queueUrl },
|
|
104
|
+
});
|
|
109
105
|
}
|
|
110
106
|
async deleteMessage(receiptHandle) {
|
|
111
107
|
const request = {
|
|
112
108
|
QueueUrl: this.queueUrl,
|
|
113
109
|
ReceiptHandle: receiptHandle,
|
|
114
110
|
};
|
|
115
|
-
await this.sqs.deleteMessage(request)
|
|
111
|
+
await this.sqs.deleteMessage(request);
|
|
116
112
|
}
|
|
117
113
|
}
|
|
118
114
|
exports.Queue = Queue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Queue.js","sourceRoot":"","sources":["../../../src/queue/Queue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Queue.js","sourceRoot":"","sources":["../../../src/queue/Queue.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReceiveMessageCommandInput } from '@aws-sdk/client-sqs';
|
|
2
2
|
import { ILogger } from '../ILogger';
|
|
3
3
|
import { Queue } from './Queue';
|
|
4
|
-
export
|
|
4
|
+
export type QueueSubjectListenerOptions = {
|
|
5
5
|
maxConcurrentMessage: number;
|
|
6
6
|
visibilityTimeout: number;
|
|
7
7
|
waitTimeSeconds: number;
|
|
8
8
|
receiveTimeout?: () => number;
|
|
9
9
|
};
|
|
10
|
-
export
|
|
10
|
+
export type QueueSubjectListenerMessageHandler = {
|
|
11
11
|
(message: unknown, subject: string): void;
|
|
12
12
|
};
|
|
13
13
|
export declare class QueueSubjectListener {
|
|
@@ -16,8 +16,8 @@ export declare class QueueSubjectListener {
|
|
|
16
16
|
handlers: Record<string, Array<QueueSubjectListenerMessageHandler>>;
|
|
17
17
|
isStopped: boolean;
|
|
18
18
|
logger: ILogger;
|
|
19
|
-
constructor(queue: Queue, logger?:
|
|
19
|
+
constructor(queue: Queue, logger?: undefined | null | ILogger, options?: QueueSubjectListenerOptions);
|
|
20
20
|
stop(): void;
|
|
21
21
|
onSubject(subjectName: string, handler: QueueSubjectListenerMessageHandler): void;
|
|
22
|
-
listen(params?:
|
|
22
|
+
listen(params?: ReceiveMessageCommandInput): void;
|
|
23
23
|
}
|
|
@@ -3,6 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.QueueSubjectListener = void 0;
|
|
4
4
|
const LoggerWrapper_1 = require("../LoggerWrapper");
|
|
5
5
|
class QueueSubjectListener {
|
|
6
|
+
queue;
|
|
7
|
+
options;
|
|
8
|
+
handlers = {};
|
|
9
|
+
isStopped = false;
|
|
10
|
+
logger;
|
|
6
11
|
constructor(queue, logger, options = {
|
|
7
12
|
maxConcurrentMessage: 1,
|
|
8
13
|
waitTimeSeconds: 10,
|
|
@@ -10,8 +15,6 @@ class QueueSubjectListener {
|
|
|
10
15
|
}) {
|
|
11
16
|
this.queue = queue;
|
|
12
17
|
this.options = options;
|
|
13
|
-
this.handlers = {};
|
|
14
|
-
this.isStopped = false;
|
|
15
18
|
this.logger = new LoggerWrapper_1.LoggerWrapper(logger);
|
|
16
19
|
}
|
|
17
20
|
stop() {
|
|
@@ -22,10 +25,9 @@ class QueueSubjectListener {
|
|
|
22
25
|
this.handlers[subjectName].push(handler);
|
|
23
26
|
}
|
|
24
27
|
listen(params) {
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const WaitTimeSeconds = (_c = params === null || params === void 0 ? void 0 : params.WaitTimeSeconds) !== null && _c !== void 0 ? _c : this.options.waitTimeSeconds;
|
|
28
|
+
const MaxNumberOfMessages = params?.MaxNumberOfMessages ?? this.options.maxConcurrentMessage;
|
|
29
|
+
const VisibilityTimeout = params?.VisibilityTimeout ?? this.options.visibilityTimeout;
|
|
30
|
+
const WaitTimeSeconds = params?.WaitTimeSeconds ?? this.options.waitTimeSeconds;
|
|
29
31
|
const receiveTimeout = this.options.receiveTimeout;
|
|
30
32
|
let cntInFlight = 0;
|
|
31
33
|
const handlerFunc = async () => {
|
|
@@ -75,7 +77,7 @@ class QueueSubjectListener {
|
|
|
75
77
|
await h(message, subject);
|
|
76
78
|
}
|
|
77
79
|
catch (error) {
|
|
78
|
-
this.logger.error(error);
|
|
80
|
+
typeof error === 'string' && this.logger.error(error);
|
|
79
81
|
}
|
|
80
82
|
}));
|
|
81
83
|
}
|
|
@@ -85,7 +87,7 @@ class QueueSubjectListener {
|
|
|
85
87
|
this.logger.debug(`Message with subject "${m.message.subject}" deleted`);
|
|
86
88
|
}
|
|
87
89
|
catch (error) {
|
|
88
|
-
this.logger.error(error);
|
|
90
|
+
typeof error === 'string' && this.logger.error(error);
|
|
89
91
|
}
|
|
90
92
|
finally {
|
|
91
93
|
cntInFlight--;
|
|
@@ -96,7 +98,7 @@ class QueueSubjectListener {
|
|
|
96
98
|
}
|
|
97
99
|
}
|
|
98
100
|
catch (err) {
|
|
99
|
-
this.logger.error(err);
|
|
101
|
+
typeof err === 'string' && this.logger.error(err);
|
|
100
102
|
}
|
|
101
103
|
setTimeout(handlerFunc, (receiveTimeout && receiveTimeout()) || 10);
|
|
102
104
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueueSubjectListener.js","sourceRoot":"","sources":["../../../src/queue/QueueSubjectListener.ts"],"names":[],"mappings":";;;AAEA,oDAA+C;AAc/C,MAAa,oBAAoB;
|
|
1
|
+
{"version":3,"file":"QueueSubjectListener.js","sourceRoot":"","sources":["../../../src/queue/QueueSubjectListener.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,9 @@ const Queue_1 = require("./Queue");
|
|
|
5
5
|
const QueueSubjectListener_1 = require("./QueueSubjectListener");
|
|
6
6
|
const Topic_1 = require("./Topic");
|
|
7
7
|
class QueueSubjectListenerBuilder {
|
|
8
|
+
queueName;
|
|
9
|
+
logger;
|
|
10
|
+
topics;
|
|
8
11
|
constructor(queueName, logger, ...topics) {
|
|
9
12
|
this.queueName = queueName;
|
|
10
13
|
this.logger = logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueueSubjectListenerBuilder.js","sourceRoot":"","sources":["../../../src/queue/QueueSubjectListenerBuilder.ts"],"names":[],"mappings":";;;AACA,mCAA8B;AAC9B,iEAA4D;AAC5D,mCAA8B;AAO9B,MAAa,2BAA2B;
|
|
1
|
+
{"version":3,"file":"QueueSubjectListenerBuilder.js","sourceRoot":"","sources":["../../../src/queue/QueueSubjectListenerBuilder.ts"],"names":[],"mappings":";;;AACA,mCAA8B;AAC9B,iEAA4D;AAC5D,mCAA8B;AAO9B,MAAa,2BAA2B;IAI7B;IACA;IAJF,MAAM,CAAwB;IAErC,YACS,SAAiB,EACjB,MAAmC,EAC1C,GAAG,MAA6B;QAFzB,cAAS,GAAT,SAAS,CAAQ;QACjB,WAAM,GAAN,MAAM,CAA6B;QAG1C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAEtE,MAAM,KAAK,GAAG,MAAM,aAAK,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,KAAK,CAAC;YACV,IAAI,CAAC,CAAC,CAAC,YAAY,aAAK,CAAC,EAAE;gBACzB,KAAK,GAAG,MAAM,aAAK,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;aACpD;iBAAM;gBACL,KAAK,GAAG,CAAC,CAAC;aACX;YAED,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;gBAC9B,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAElD,MAAM,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;SACnC;QAED,OAAO,IAAI,2CAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;CACF;AAhCD,kEAgCC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { MessageAttributeValue, SNS } from '@aws-sdk/client-sns';
|
|
2
2
|
export declare class Topic {
|
|
3
3
|
topicArn: string;
|
|
4
4
|
name: string;
|
|
5
5
|
subject?: string | undefined;
|
|
6
6
|
endpoint?: string | undefined;
|
|
7
|
-
sns:
|
|
7
|
+
sns: SNS;
|
|
8
8
|
private constructor();
|
|
9
9
|
static createTopic(topicName: string, subjectName?: string, endpoint?: string): Promise<Topic>;
|
|
10
|
-
push(evt: unknown, subject?: string, messageAttributes?:
|
|
10
|
+
push(evt: unknown, subject?: string, messageAttributes?: Record<string, MessageAttributeValue>): Promise<import("@aws-sdk/client-sns").PublishCommandOutput>;
|
|
11
11
|
}
|
package/dist/src/queue/Topic.js
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.Topic = void 0;
|
|
7
|
-
const
|
|
4
|
+
const client_sns_1 = require("@aws-sdk/client-sns");
|
|
8
5
|
class Topic {
|
|
6
|
+
topicArn;
|
|
7
|
+
name;
|
|
8
|
+
subject;
|
|
9
|
+
endpoint;
|
|
10
|
+
sns;
|
|
9
11
|
constructor(topicArn, name, subject, endpoint) {
|
|
10
12
|
this.topicArn = topicArn;
|
|
11
13
|
this.name = name;
|
|
12
14
|
this.subject = subject;
|
|
13
15
|
this.endpoint = endpoint;
|
|
14
|
-
this.sns = new
|
|
16
|
+
this.sns = new client_sns_1.SNS({ endpoint: this.endpoint });
|
|
15
17
|
}
|
|
16
18
|
static async createTopic(topicName, subjectName, endpoint) {
|
|
17
|
-
const sns = new
|
|
18
|
-
|
|
19
|
+
const sns = new client_sns_1.SNS({
|
|
20
|
+
endpoint,
|
|
21
|
+
});
|
|
22
|
+
const topicResponse = await sns.createTopic({ Name: topicName });
|
|
19
23
|
if (!topicResponse.TopicArn) {
|
|
20
24
|
throw Error("Unable to get topic ARN... did creating the Topic 'topicName' fail?");
|
|
21
25
|
}
|
|
@@ -28,7 +32,7 @@ class Topic {
|
|
|
28
32
|
Subject: subject || this.subject,
|
|
29
33
|
TopicArn: this.topicArn,
|
|
30
34
|
};
|
|
31
|
-
return await this.sns.publish(payload)
|
|
35
|
+
return await this.sns.publish(payload);
|
|
32
36
|
}
|
|
33
37
|
}
|
|
34
38
|
exports.Topic = Topic;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Topic.js","sourceRoot":"","sources":["../../../src/queue/Topic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Topic.js","sourceRoot":"","sources":["../../../src/queue/Topic.ts"],"names":[],"mappings":";;;AAAA,oDAA+D;AAE/D,MAAa,KAAK;IAIP;IACA;IACA;IACA;IANF,GAAG,CAAM;IAEhB,YACS,QAAgB,EAChB,IAAY,EACZ,OAAgB,EAChB,QAAiB;QAHjB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAS;QAChB,aAAQ,GAAR,QAAQ,CAAS;QAExB,IAAI,CAAC,GAAG,GAAG,IAAI,gBAAG,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,SAAiB,EACjB,WAAoB,EACpB,QAAiB;QAEjB,MAAM,GAAG,GAAG,IAAI,gBAAG,CAAC;YAClB,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,EAAC,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;QAE/D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC3B,MAAM,KAAK,CACT,qEAAqE,CACtE,CAAC;SACH;QAED,OAAO,IAAI,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,IAAI,CACR,GAAY,EACZ,OAAgB,EAChB,iBAAyD;QAEzD,MAAM,OAAO,GAAG;YACd,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YAC5B,iBAAiB,EAAE,iBAAiB;YACpC,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;CACF;AA7CD,sBA6CC"}
|
package/dist/src/queue/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queue/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/queue/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,yDAAuC;AACvC,gEAA8C;AAC9C,0CAAwB"}
|