@comicrelief/lambda-wrapper 2.0.0-beta.1 → 2.0.0-beta.11
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/README.md +26 -3
- package/dist/core/DependencyAwareClass.d.ts +4 -3
- package/dist/core/DependencyAwareClass.d.ts.map +1 -1
- package/dist/core/DependencyAwareClass.js.map +1 -1
- package/dist/core/DependencyInjection.d.ts +6 -6
- package/dist/core/DependencyInjection.d.ts.map +1 -1
- package/dist/core/DependencyInjection.js +24 -2
- package/dist/core/DependencyInjection.js.map +1 -1
- package/dist/core/LambdaWrapper.d.ts +21 -9
- package/dist/core/LambdaWrapper.d.ts.map +1 -1
- package/dist/core/LambdaWrapper.js +55 -11
- package/dist/core/LambdaWrapper.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -4
- package/dist/index.js.map +1 -1
- package/dist/models/ResponseModel.d.ts +4 -22
- package/dist/models/ResponseModel.d.ts.map +1 -1
- package/dist/models/ResponseModel.js +2 -2
- package/dist/models/ResponseModel.js.map +1 -1
- package/dist/services/LoggerService.d.ts.map +1 -1
- package/dist/services/LoggerService.js +8 -17
- package/dist/services/LoggerService.js.map +1 -1
- package/dist/services/RequestService.d.ts +3 -3
- package/dist/services/RequestService.d.ts.map +1 -1
- package/dist/services/RequestService.js +9 -7
- package/dist/services/RequestService.js.map +1 -1
- package/dist/services/SQSService.d.ts +97 -15
- package/dist/services/SQSService.d.ts.map +1 -1
- package/dist/services/SQSService.js +74 -29
- package/dist/services/SQSService.js.map +1 -1
- package/dist/types/Status.d.ts +6 -0
- package/dist/types/Status.d.ts.map +1 -0
- package/dist/types/Status.js +3 -0
- package/dist/types/Status.js.map +1 -0
- package/package.json +17 -17
- package/dist/models/StatusModel.d.ts +0 -40
- package/dist/models/StatusModel.d.ts.map +0 -1
- package/dist/models/StatusModel.js +0 -50
- package/dist/models/StatusModel.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestService.d.ts","sourceRoot":"","sources":["../../src/services/RequestService.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKlD,OAAO,oBAAoB,MAAM,8BAA8B,CAAC;AAChE,OAAO,aAAa,MAAM,yBAAyB,CAAC;AAGpD,eAAO,MAAM,aAAa;;;;;;;;CAQzB,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAKzC,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAItC,CAAC;AAGF,eAAO,MAAM,WAAW;;CAEvB,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,oBAAoB;IAC9D;;;;;;OAMG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAU9F
|
|
1
|
+
{"version":3,"file":"RequestService.d.ts","sourceRoot":"","sources":["../../src/services/RequestService.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAKlD,OAAO,oBAAoB,MAAM,8BAA8B,CAAC;AAChE,OAAO,aAAa,MAAM,yBAAyB,CAAC;AAGpD,eAAO,MAAM,aAAa;;;;;;;;CAQzB,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAKzC,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAItC,CAAC;AAGF,eAAO,MAAM,WAAW;;CAEvB,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,oBAAoB;IAC9D;;;;;;OAMG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAU9F;;;;;;OAMG;IACH,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAWnD;;;;;;;;OAQG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,SAAK,GAAG,MAAM;IAMjD;;OAEG;IACH,qBAAqB,IAAI,MAAM,GAAG,IAAI;IAgBtC;;;;;OAKG;IACH,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,GAAG;IAqBtD;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG;IAyDjC;;OAEG;IACH,KAAK,IAAI,MAAM,GAAG,IAAI;IActB;;OAEG;IACH,uBAAuB;;;;;;;IAuBvB;;;;;;OAMG;IACH,0BAA0B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9D;;;;OAIG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO;IAiC5B;;OAEG;IACH,aAAa;IAUb;;;;;OAKG;IACH,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAM3G;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,GAAG,SAAS;CAGpE"}
|
|
@@ -56,11 +56,17 @@ class RequestService extends DependencyAwareClass_1.default {
|
|
|
56
56
|
/**
|
|
57
57
|
* Get all HTTP headers included in the request.
|
|
58
58
|
*
|
|
59
|
+
* Header names are converted to lowercase.
|
|
60
|
+
*
|
|
59
61
|
* @returns An object with a key for each header.
|
|
60
62
|
*/
|
|
61
63
|
getAllHeaders() {
|
|
62
|
-
const event = this.
|
|
63
|
-
|
|
64
|
+
const event = this.di.event;
|
|
65
|
+
if (!event.headers) {
|
|
66
|
+
return {};
|
|
67
|
+
}
|
|
68
|
+
return Object.fromEntries(Object.entries(event.headers)
|
|
69
|
+
.map(([key, value]) => [key.toLowerCase(), value]));
|
|
64
70
|
}
|
|
65
71
|
/**
|
|
66
72
|
* Get an HTTP header from the request.
|
|
@@ -73,12 +79,8 @@ class RequestService extends DependencyAwareClass_1.default {
|
|
|
73
79
|
*/
|
|
74
80
|
getHeader(name, whenMissing = '') {
|
|
75
81
|
const headers = this.getAllHeaders();
|
|
76
|
-
if (!headers) {
|
|
77
|
-
return whenMissing;
|
|
78
|
-
}
|
|
79
82
|
const lowerName = name.toLowerCase();
|
|
80
|
-
|
|
81
|
-
return (key && headers[key]) || whenMissing;
|
|
83
|
+
return headers[lowerName] ?? whenMissing;
|
|
82
84
|
}
|
|
83
85
|
/**
|
|
84
86
|
* Get an authorization token from the `Authorization` header.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestService.js","sourceRoot":"","sources":["../../src/services/RequestService.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAsC;AAGtC,0DAAkC;AAClC,oEAA4C;AAC5C,oDAA4B;AAE5B,wFAAgE;AAChE,4EAAoD;AACpD,oEAA4C;AAE/B,QAAA,aAAa,GAAG;IAC3B,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACX,CAAC;AAEW,QAAA,6BAA6B,GAAG;IAC3C,qBAAa,CAAC,MAAM;IACpB,qBAAa,CAAC,GAAG;IACjB,qBAAa,CAAC,IAAI;IAClB,qBAAa,CAAC,OAAO;CACtB,CAAC;AAEW,QAAA,0BAA0B,GAAG;IACxC,qBAAa,CAAC,KAAK;IACnB,qBAAa,CAAC,IAAI;IAClB,qBAAa,CAAC,GAAG;CAClB,CAAC;AAEF,qCAAqC;AACxB,QAAA,WAAW,GAAG;IACzB,gBAAgB,EAAE,IAAI,uBAAa,CAAC,EAAE,EAAE,GAAG,EAAE,6BAA6B,CAAC;CAC5E,CAAC;AASF;;GAEG;AACH,MAAqB,cAAe,SAAQ,8BAAoB;IAC9D;;;;;;OAMG;IACH,GAAG,CAAC,SAAiB,EAAE,MAAsB,EAAE,WAAoB;QACjE,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEjD,IAAI,eAAe,KAAK,IAAI,EAAE;YAC5B,OAAO,MAAM,IAAI,IAAI,CAAC;SACvB;QAED,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,MAAM,IAAI,IAAI,CAAC;IACtD,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"RequestService.js","sourceRoot":"","sources":["../../src/services/RequestService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,28 @@
|
|
|
1
1
|
import AWS from 'aws-sdk';
|
|
2
2
|
import DependencyAwareClass from '../core/DependencyAwareClass';
|
|
3
3
|
import DependencyInjection from '../core/DependencyInjection';
|
|
4
|
+
import { LambdaWrapperConfig } from '../core/config';
|
|
4
5
|
import SQSMessageModel from '../models/SQSMessageModel';
|
|
6
|
+
import { ServiceStatus } from '../types/Status';
|
|
5
7
|
export interface SQSServiceConfig {
|
|
6
8
|
/**
|
|
7
9
|
* Maps short friendly queue names to the full SQS queue name.
|
|
8
10
|
*
|
|
9
11
|
* Usually we define queue names in our `serverless.yml` and provide them to
|
|
10
|
-
* the application via environment variables.
|
|
12
|
+
* the application via environment variables. If you haven't defined types
|
|
13
|
+
* for your env vars, you'll need to coerce them to `string`.
|
|
14
|
+
*
|
|
15
|
+
* Example:
|
|
11
16
|
*
|
|
12
17
|
* ```ts
|
|
13
18
|
* {
|
|
14
19
|
* queues: {
|
|
15
|
-
* submissions: process.env.SQS_QUEUE_SUBMISSIONS,
|
|
20
|
+
* submissions: process.env.SQS_QUEUE_SUBMISSIONS as string,
|
|
16
21
|
* }
|
|
17
22
|
* }
|
|
18
23
|
* ```
|
|
19
24
|
*/
|
|
20
|
-
queues?:
|
|
25
|
+
queues?: object;
|
|
21
26
|
/**
|
|
22
27
|
* Maps short friendly queue names to the queue consumer function name, for
|
|
23
28
|
* use with offline SQS emulation. Example:
|
|
@@ -38,6 +43,17 @@ export interface SQSServiceConfig {
|
|
|
38
43
|
export interface WithSQSServiceConfig {
|
|
39
44
|
sqs?: SQSServiceConfig;
|
|
40
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Type of a queue name taken from the Lambda Wrapper config type.
|
|
48
|
+
*
|
|
49
|
+
* If the `sqs` config key is absent, the resulting type is `never` (since no
|
|
50
|
+
* queues are defined).
|
|
51
|
+
*/
|
|
52
|
+
export declare type QueueName<TConfig extends WithSQSServiceConfig> = TConfig extends {
|
|
53
|
+
sqs: {
|
|
54
|
+
queues: Record<infer Key, string>;
|
|
55
|
+
};
|
|
56
|
+
} ? string & Key : never;
|
|
41
57
|
/**
|
|
42
58
|
* Allowed values for `process.env.LAMBDA_WRAPPER_OFFLINE_SQS_MODE`.
|
|
43
59
|
*/
|
|
@@ -88,7 +104,7 @@ export declare const SQS_PUBLISH_FAILURE_MODES: {
|
|
|
88
104
|
* sqs: {
|
|
89
105
|
* queues: {
|
|
90
106
|
* // add an entry for each queue mapping to its AWS name
|
|
91
|
-
* submissions: process.env.SQS_QUEUE_SUBMISSIONS,
|
|
107
|
+
* submissions: process.env.SQS_QUEUE_SUBMISSIONS as string,
|
|
92
108
|
* },
|
|
93
109
|
* },
|
|
94
110
|
* });
|
|
@@ -104,14 +120,80 @@ export declare const SQS_PUBLISH_FAILURE_MODES: {
|
|
|
104
120
|
* await sqs.publish('submissions', message);
|
|
105
121
|
* });
|
|
106
122
|
* ```
|
|
123
|
+
*
|
|
124
|
+
* When using TypeScript, queue names are inferred from your Lambda Wrapper
|
|
125
|
+
* config so that IntelliSense can provide hints and TypeScript will tell you
|
|
126
|
+
* at compile-time if you try to publish to an undefined queue.
|
|
127
|
+
*
|
|
128
|
+
* ```ts
|
|
129
|
+
* // ok
|
|
130
|
+
* await sqs.publish('submissions', message);
|
|
131
|
+
*
|
|
132
|
+
* // error: Argument of type '"submission"' is not assignable to parameter of
|
|
133
|
+
* // type '"submissions"'.
|
|
134
|
+
* await sqs.publish('submission', message);
|
|
135
|
+
* ```
|
|
136
|
+
*
|
|
137
|
+
* Note that if you're passing the queue name in as a variable, you'll need to
|
|
138
|
+
* ensure the variable type is specific enough and not simply `string`. If you
|
|
139
|
+
* have a list of queue names you will need to declare it `as const`. Otherwise,
|
|
140
|
+
* use string literal types, or the `QueueName` generic type which extracts the
|
|
141
|
+
* type of all queue names from your Lambda Wrapper config.
|
|
142
|
+
*
|
|
143
|
+
* ```ts
|
|
144
|
+
* const myQueues = ['queue1', 'queue2'];
|
|
145
|
+
* for (const queue of myQueues) {
|
|
146
|
+
* // won't compile because `queue` is of type `string`
|
|
147
|
+
* await sqs.publish(queue, message);
|
|
148
|
+
* }
|
|
149
|
+
*
|
|
150
|
+
* const myQueues = ['queue1', 'queue2'] as const;
|
|
151
|
+
* for (const queue of myQueues) {
|
|
152
|
+
* // ok now because `queue` is of type `"queue1" | "queue2"`
|
|
153
|
+
* await sqs.publish(queue, message);
|
|
154
|
+
* }
|
|
155
|
+
*
|
|
156
|
+
* // you can also simply use string literal types
|
|
157
|
+
* let queue: "queue1" | "queue2";
|
|
158
|
+
*
|
|
159
|
+
* // or accept any queue defined in the config using `QueueName`
|
|
160
|
+
* let queue: QueueName<typeof lambdaWrapper.config>;
|
|
161
|
+
* ```
|
|
162
|
+
*
|
|
163
|
+
* This is all pretty cool, but the current implementation has a caveat: the
|
|
164
|
+
* `WithSQSServiceConfig` type has to be a little vague about `sqs.queues` in
|
|
165
|
+
* order to get TypeScript to infer its keys. The following config will not
|
|
166
|
+
* raise any errors itself, but is invalid and will make the `QueueName` type
|
|
167
|
+
* `never`.
|
|
168
|
+
*
|
|
169
|
+
* ```ts
|
|
170
|
+
* lambdaWrapper.configure<WithSQSServiceConfig>({
|
|
171
|
+
* sqs: {
|
|
172
|
+
* queues: {
|
|
173
|
+
* good: 'good-queue',
|
|
174
|
+
* bad: 0, // oops, not a string, but no errors here!
|
|
175
|
+
* },
|
|
176
|
+
* },
|
|
177
|
+
* });
|
|
178
|
+
*
|
|
179
|
+
* // even though this is queue has valid config, the invalid one breaks it:
|
|
180
|
+
* // Argument of type 'string' is not assignable to parameter of type 'never'.
|
|
181
|
+
* await sqs.publish('good', message);
|
|
182
|
+
* ```
|
|
183
|
+
*
|
|
184
|
+
* If you start getting _not assignable to parameter of type 'never'_ errors on
|
|
185
|
+
* all your `SQSService` method calls, double-check that your config is correct.
|
|
186
|
+
* Be particularly careful with environment variables – by default they have
|
|
187
|
+
* type `string | undefined`. In the first example at the top of this page, a
|
|
188
|
+
* type assertion was used to coerce this to `string`.
|
|
107
189
|
*/
|
|
108
|
-
export default class SQSService extends DependencyAwareClass {
|
|
109
|
-
readonly queues: Record<
|
|
110
|
-
readonly queueConsumers: Record<
|
|
111
|
-
readonly queueUrls: Record<
|
|
190
|
+
export default class SQSService<TConfig extends LambdaWrapperConfig & WithSQSServiceConfig = any> extends DependencyAwareClass {
|
|
191
|
+
readonly queues: Record<QueueName<TConfig>, string>;
|
|
192
|
+
readonly queueConsumers: Record<QueueName<TConfig>, string>;
|
|
193
|
+
readonly queueUrls: Record<QueueName<TConfig>, string>;
|
|
112
194
|
private $sqs?;
|
|
113
195
|
private $lambda?;
|
|
114
|
-
constructor(di: DependencyInjection);
|
|
196
|
+
constructor(di: DependencyInjection<TConfig>);
|
|
115
197
|
/**
|
|
116
198
|
* Returns an SQS client instance
|
|
117
199
|
*/
|
|
@@ -133,17 +215,17 @@ export default class SQSService extends DependencyAwareClass {
|
|
|
133
215
|
* @param queue
|
|
134
216
|
* @param messageModels
|
|
135
217
|
*/
|
|
136
|
-
batchDelete(queue:
|
|
218
|
+
batchDelete(queue: QueueName<TConfig>, messageModels: SQSMessageModel[]): Promise<void>;
|
|
137
219
|
/**
|
|
138
220
|
* Check SQS status.
|
|
139
221
|
*/
|
|
140
|
-
checkStatus(): Promise<
|
|
222
|
+
checkStatus(): Promise<ServiceStatus>;
|
|
141
223
|
/**
|
|
142
224
|
* Get the approximate number of messages in a queue.
|
|
143
225
|
*
|
|
144
226
|
* @param queue
|
|
145
227
|
*/
|
|
146
|
-
getMessageCount(queue:
|
|
228
|
+
getMessageCount(queue: QueueName<TConfig>): Promise<number>;
|
|
147
229
|
/**
|
|
148
230
|
* Publish to message queue.
|
|
149
231
|
*
|
|
@@ -158,7 +240,7 @@ export default class SQSService extends DependencyAwareClass {
|
|
|
158
240
|
* - `catch`: errors will be caught and logged. This is the default.
|
|
159
241
|
* - `throw`: errors will be thrown, causing promise to reject.
|
|
160
242
|
*/
|
|
161
|
-
publish(queue:
|
|
243
|
+
publish(queue: QueueName<TConfig>, messageObject: object, messageGroupId?: null, failureMode?: 'catch' | 'throw'): Promise<QueueName<TConfig> | null>;
|
|
162
244
|
/**
|
|
163
245
|
* Sends a message to a queue consumer running in serverless-offline.
|
|
164
246
|
*
|
|
@@ -169,13 +251,13 @@ export default class SQSService extends DependencyAwareClass {
|
|
|
169
251
|
* @param queue
|
|
170
252
|
* @param messageParameters
|
|
171
253
|
*/
|
|
172
|
-
publishOffline(queue:
|
|
254
|
+
publishOffline(queue: QueueName<TConfig>, messageParameters: AWS.SQS.SendMessageRequest): Promise<void>;
|
|
173
255
|
/**
|
|
174
256
|
* Receive from message queue
|
|
175
257
|
*
|
|
176
258
|
* @param queue string
|
|
177
259
|
* @param timeout number
|
|
178
260
|
*/
|
|
179
|
-
receive(queue:
|
|
261
|
+
receive(queue: QueueName<TConfig>, timeout?: number): Promise<SQSMessageModel[]>;
|
|
180
262
|
}
|
|
181
263
|
//# sourceMappingURL=SQSService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQSService.d.ts","sourceRoot":"","sources":["../../src/services/SQSService.ts"],"names":[],"mappings":"AAEA,OAAO,GAAG,MAAM,SAAS,CAAC;AAG1B,OAAO,oBAAoB,MAAM,8BAA8B,CAAC;AAChE,OAAO,mBAAmB,MAAM,6BAA6B,CAAC;AAC9D,OAAO,eAAe,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"SQSService.d.ts","sourceRoot":"","sources":["../../src/services/SQSService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
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);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
4
|
};
|
|
@@ -33,7 +10,6 @@ const aws_sdk_1 = __importDefault(require("aws-sdk"));
|
|
|
33
10
|
const uuid_1 = require("uuid");
|
|
34
11
|
const DependencyAwareClass_1 = __importDefault(require("../core/DependencyAwareClass"));
|
|
35
12
|
const SQSMessageModel_1 = __importDefault(require("../models/SQSMessageModel"));
|
|
36
|
-
const StatusModel_1 = __importStar(require("../models/StatusModel"));
|
|
37
13
|
const LoggerService_1 = __importDefault(require("./LoggerService"));
|
|
38
14
|
const TimerService_1 = __importDefault(require("./TimerService"));
|
|
39
15
|
/**
|
|
@@ -86,7 +62,7 @@ exports.SQS_PUBLISH_FAILURE_MODES = {
|
|
|
86
62
|
* sqs: {
|
|
87
63
|
* queues: {
|
|
88
64
|
* // add an entry for each queue mapping to its AWS name
|
|
89
|
-
* submissions: process.env.SQS_QUEUE_SUBMISSIONS,
|
|
65
|
+
* submissions: process.env.SQS_QUEUE_SUBMISSIONS as string,
|
|
90
66
|
* },
|
|
91
67
|
* },
|
|
92
68
|
* });
|
|
@@ -102,6 +78,72 @@ exports.SQS_PUBLISH_FAILURE_MODES = {
|
|
|
102
78
|
* await sqs.publish('submissions', message);
|
|
103
79
|
* });
|
|
104
80
|
* ```
|
|
81
|
+
*
|
|
82
|
+
* When using TypeScript, queue names are inferred from your Lambda Wrapper
|
|
83
|
+
* config so that IntelliSense can provide hints and TypeScript will tell you
|
|
84
|
+
* at compile-time if you try to publish to an undefined queue.
|
|
85
|
+
*
|
|
86
|
+
* ```ts
|
|
87
|
+
* // ok
|
|
88
|
+
* await sqs.publish('submissions', message);
|
|
89
|
+
*
|
|
90
|
+
* // error: Argument of type '"submission"' is not assignable to parameter of
|
|
91
|
+
* // type '"submissions"'.
|
|
92
|
+
* await sqs.publish('submission', message);
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* Note that if you're passing the queue name in as a variable, you'll need to
|
|
96
|
+
* ensure the variable type is specific enough and not simply `string`. If you
|
|
97
|
+
* have a list of queue names you will need to declare it `as const`. Otherwise,
|
|
98
|
+
* use string literal types, or the `QueueName` generic type which extracts the
|
|
99
|
+
* type of all queue names from your Lambda Wrapper config.
|
|
100
|
+
*
|
|
101
|
+
* ```ts
|
|
102
|
+
* const myQueues = ['queue1', 'queue2'];
|
|
103
|
+
* for (const queue of myQueues) {
|
|
104
|
+
* // won't compile because `queue` is of type `string`
|
|
105
|
+
* await sqs.publish(queue, message);
|
|
106
|
+
* }
|
|
107
|
+
*
|
|
108
|
+
* const myQueues = ['queue1', 'queue2'] as const;
|
|
109
|
+
* for (const queue of myQueues) {
|
|
110
|
+
* // ok now because `queue` is of type `"queue1" | "queue2"`
|
|
111
|
+
* await sqs.publish(queue, message);
|
|
112
|
+
* }
|
|
113
|
+
*
|
|
114
|
+
* // you can also simply use string literal types
|
|
115
|
+
* let queue: "queue1" | "queue2";
|
|
116
|
+
*
|
|
117
|
+
* // or accept any queue defined in the config using `QueueName`
|
|
118
|
+
* let queue: QueueName<typeof lambdaWrapper.config>;
|
|
119
|
+
* ```
|
|
120
|
+
*
|
|
121
|
+
* This is all pretty cool, but the current implementation has a caveat: the
|
|
122
|
+
* `WithSQSServiceConfig` type has to be a little vague about `sqs.queues` in
|
|
123
|
+
* order to get TypeScript to infer its keys. The following config will not
|
|
124
|
+
* raise any errors itself, but is invalid and will make the `QueueName` type
|
|
125
|
+
* `never`.
|
|
126
|
+
*
|
|
127
|
+
* ```ts
|
|
128
|
+
* lambdaWrapper.configure<WithSQSServiceConfig>({
|
|
129
|
+
* sqs: {
|
|
130
|
+
* queues: {
|
|
131
|
+
* good: 'good-queue',
|
|
132
|
+
* bad: 0, // oops, not a string, but no errors here!
|
|
133
|
+
* },
|
|
134
|
+
* },
|
|
135
|
+
* });
|
|
136
|
+
*
|
|
137
|
+
* // even though this is queue has valid config, the invalid one breaks it:
|
|
138
|
+
* // Argument of type 'string' is not assignable to parameter of type 'never'.
|
|
139
|
+
* await sqs.publish('good', message);
|
|
140
|
+
* ```
|
|
141
|
+
*
|
|
142
|
+
* If you start getting _not assignable to parameter of type 'never'_ errors on
|
|
143
|
+
* all your `SQSService` method calls, double-check that your config is correct.
|
|
144
|
+
* Be particularly careful with environment variables – by default they have
|
|
145
|
+
* type `string | undefined`. In the first example at the top of this page, a
|
|
146
|
+
* type assertion was used to coerce this to `string`.
|
|
105
147
|
*/
|
|
106
148
|
class SQSService extends DependencyAwareClass_1.default {
|
|
107
149
|
constructor(di) {
|
|
@@ -216,15 +258,18 @@ class SQSService extends DependencyAwareClass_1.default {
|
|
|
216
258
|
timer.start(timerId);
|
|
217
259
|
this.sqs.listQueues({}, (error, data) => {
|
|
218
260
|
timer.stop(timerId);
|
|
219
|
-
|
|
261
|
+
let status = 'OK';
|
|
220
262
|
if (error) {
|
|
221
263
|
logger.error(error);
|
|
222
|
-
|
|
264
|
+
status = 'APPLICATION_FAILURE';
|
|
223
265
|
}
|
|
224
266
|
if (typeof data.QueueUrls === 'undefined' || data.QueueUrls.length === 0) {
|
|
225
|
-
|
|
267
|
+
status = 'APPLICATION_FAILURE';
|
|
226
268
|
}
|
|
227
|
-
resolve(
|
|
269
|
+
resolve({
|
|
270
|
+
service: 'SQS',
|
|
271
|
+
status,
|
|
272
|
+
});
|
|
228
273
|
});
|
|
229
274
|
});
|
|
230
275
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SQSService.js","sourceRoot":"","sources":["../../src/services/SQSService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SQSService.js","sourceRoot":"","sources":["../../src/services/SQSService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Status.d.ts","sourceRoot":"","sources":["../../src/types/Status.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM,GACd,IAAI,GACJ,oBAAoB,GACpB,qBAAqB,CAAC;AAE1B,oBAAY,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Status.js","sourceRoot":"","sources":["../../src/types/Status.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@comicrelief/lambda-wrapper",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.11",
|
|
4
4
|
"description": "Lambda wrapper for all Comic Relief Serverless Projects",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"author": "Adam Clark",
|
|
@@ -23,40 +23,40 @@
|
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@comicrelief/eslint-config": "^2.0.3",
|
|
25
25
|
"@istanbuljs/nyc-config-typescript": "^1.0.2",
|
|
26
|
-
"@types/async": "^3.2.
|
|
27
|
-
"@types/
|
|
28
|
-
"@types/jest": "^28.1.6",
|
|
26
|
+
"@types/async": "^3.2.20",
|
|
27
|
+
"@types/jest": "^29.5.4",
|
|
29
28
|
"@types/node": "14",
|
|
30
|
-
"@types/useragent": "^2.3.
|
|
31
|
-
"@types/uuid": "^
|
|
32
|
-
"@types/xml2js": "^0.4.
|
|
29
|
+
"@types/useragent": "^2.3.2",
|
|
30
|
+
"@types/uuid": "^9.0.3",
|
|
31
|
+
"@types/xml2js": "^0.4.12",
|
|
33
32
|
"@typescript-eslint/eslint-plugin": "^5.33.0",
|
|
34
33
|
"@typescript-eslint/parser": "^5.33.0",
|
|
35
|
-
"aws-sdk": "^2.
|
|
36
|
-
"eslint": "^8.
|
|
34
|
+
"aws-sdk": "^2.1456.0",
|
|
35
|
+
"eslint": "^8.49.0",
|
|
37
36
|
"eslint-plugin-import": "^2.25.2",
|
|
38
37
|
"eslint-plugin-jsdoc": "^39.3.2",
|
|
39
|
-
"jest": "^
|
|
38
|
+
"jest": "^29.7.0",
|
|
40
39
|
"nyc": "^15.1.0",
|
|
41
|
-
"semantic-release": "^19.0.
|
|
42
|
-
"ts-jest": "^
|
|
40
|
+
"semantic-release": "^19.0.5",
|
|
41
|
+
"ts-jest": "^29.1.1",
|
|
43
42
|
"ts-node": "^10.9.1",
|
|
44
|
-
"tsconfig-paths": "^4.
|
|
43
|
+
"tsconfig-paths": "^4.2.0",
|
|
45
44
|
"typescript": "^4.7.4"
|
|
46
45
|
},
|
|
47
46
|
"peerDependencies": {
|
|
48
47
|
"aws-sdk": "^2.831.0"
|
|
49
48
|
},
|
|
50
49
|
"dependencies": {
|
|
50
|
+
"@lumigo/tracer": "^1.87.0",
|
|
51
51
|
"@sentry/node": "^6.0.1",
|
|
52
|
+
"@types/aws-lambda": "^8.10.120",
|
|
52
53
|
"alai": "1.0.3",
|
|
53
54
|
"async": "^3.2.4",
|
|
54
55
|
"axios": "^0.27.2",
|
|
55
|
-
"epsagon": "^1.123.2",
|
|
56
56
|
"useragent": "2.3.0",
|
|
57
|
-
"uuid": "^
|
|
57
|
+
"uuid": "^9.0.1",
|
|
58
58
|
"validate.js": "0.13.1",
|
|
59
|
-
"winston": "^3.
|
|
60
|
-
"xml2js": "^0.
|
|
59
|
+
"winston": "^3.10.0",
|
|
60
|
+
"xml2js": "^0.6.2"
|
|
61
61
|
}
|
|
62
62
|
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
export declare const STATUS_TYPES: {
|
|
2
|
-
OK: string;
|
|
3
|
-
ACCEPTABLE_FAILURE: string;
|
|
4
|
-
APPLICATION_FAILURE: string;
|
|
5
|
-
};
|
|
6
|
-
/**
|
|
7
|
-
* Model for our status check endpoints.
|
|
8
|
-
*/
|
|
9
|
-
export default class StatusModel {
|
|
10
|
-
/**
|
|
11
|
-
* Service name.
|
|
12
|
-
*/
|
|
13
|
-
service: string;
|
|
14
|
-
/**
|
|
15
|
-
* One of the `STATUS_TYPES` values.
|
|
16
|
-
*/
|
|
17
|
-
status: string;
|
|
18
|
-
constructor(service: string, status: string);
|
|
19
|
-
/**
|
|
20
|
-
* Get the service name.
|
|
21
|
-
*/
|
|
22
|
-
getService(): string;
|
|
23
|
-
/**
|
|
24
|
-
* Set the service name.
|
|
25
|
-
*
|
|
26
|
-
* @param service
|
|
27
|
-
*/
|
|
28
|
-
setService(service: string): void;
|
|
29
|
-
/**
|
|
30
|
-
* Set the status.
|
|
31
|
-
*
|
|
32
|
-
* @param status
|
|
33
|
-
*/
|
|
34
|
-
setStatus(status: string): void;
|
|
35
|
-
/**
|
|
36
|
-
* Get the status.
|
|
37
|
-
*/
|
|
38
|
-
getStatus(): string;
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=StatusModel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StatusModel.d.ts","sourceRoot":"","sources":["../../src/models/StatusModel.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;CAIxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;gBAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAK3C;;OAEG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM;IAI1B;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM;IAQxB;;OAEG;IACH,SAAS,IAAI,MAAM;CAGpB"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.STATUS_TYPES = void 0;
|
|
4
|
-
exports.STATUS_TYPES = {
|
|
5
|
-
OK: 'OK',
|
|
6
|
-
ACCEPTABLE_FAILURE: 'ACCEPTABLE_FAILURE',
|
|
7
|
-
APPLICATION_FAILURE: 'APPLICATION_FAILURE',
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* Model for our status check endpoints.
|
|
11
|
-
*/
|
|
12
|
-
class StatusModel {
|
|
13
|
-
constructor(service, status) {
|
|
14
|
-
this.service = service;
|
|
15
|
-
this.status = status;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Get the service name.
|
|
19
|
-
*/
|
|
20
|
-
getService() {
|
|
21
|
-
return this.service;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Set the service name.
|
|
25
|
-
*
|
|
26
|
-
* @param service
|
|
27
|
-
*/
|
|
28
|
-
setService(service) {
|
|
29
|
-
this.service = service;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Set the status.
|
|
33
|
-
*
|
|
34
|
-
* @param status
|
|
35
|
-
*/
|
|
36
|
-
setStatus(status) {
|
|
37
|
-
if (!(status in exports.STATUS_TYPES)) {
|
|
38
|
-
throw new TypeError(`${StatusModel.name} - ${status} is not a valid status type`);
|
|
39
|
-
}
|
|
40
|
-
this.status = status;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Get the status.
|
|
44
|
-
*/
|
|
45
|
-
getStatus() {
|
|
46
|
-
return this.status;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.default = StatusModel;
|
|
50
|
-
//# sourceMappingURL=StatusModel.js.map
|