serverless-simple-middleware 0.0.60 → 0.0.62
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/.nvmrc +1 -0
- package/README.md +0 -1
- package/dist/aws/config.d.ts +2 -2
- package/dist/aws/config.js +6 -4
- package/dist/aws/define.d.ts +0 -12
- package/dist/aws/define.js +2 -1
- package/dist/aws/index.js +17 -6
- package/dist/aws/simple.d.ts +22 -17
- package/dist/aws/simple.js +334 -227
- package/dist/index.js +17 -6
- package/dist/internal/AwsError.d.ts +5 -0
- package/dist/internal/AwsError.js +33 -0
- package/dist/internal/s3.d.ts +38 -0
- package/dist/internal/s3.js +2 -0
- package/dist/middleware/aws.d.ts +2 -2
- package/dist/middleware/aws.js +12 -9
- package/dist/middleware/base.d.ts +8 -8
- package/dist/middleware/base.js +9 -8
- package/dist/middleware/build.d.ts +1 -1
- package/dist/middleware/build.js +68 -45
- package/dist/middleware/index.d.ts +2 -2
- package/dist/middleware/index.js +20 -8
- package/dist/middleware/logger.js +8 -4
- package/dist/middleware/mysql.d.ts +3 -3
- package/dist/middleware/mysql.js +17 -13
- package/dist/middleware/trace.d.ts +2 -2
- package/dist/middleware/trace.js +21 -21
- package/dist/utils/index.js +16 -5
- package/dist/utils/logger.d.ts +3 -3
- package/dist/utils/logger.js +9 -7
- package/dist/utils/misc.d.ts +1 -1
- package/dist/utils/misc.js +10 -3
- package/package.json +18 -10
- package/src/aws/config.ts +1 -1
- package/src/aws/define.ts +0 -19
- package/src/aws/simple.ts +326 -204
- package/src/internal/AwsError.ts +13 -0
- package/src/internal/s3.ts +75 -0
- package/src/middleware/aws.ts +1 -1
- package/src/middleware/base.ts +5 -4
- package/src/middleware/build.ts +31 -31
- package/src/middleware/mysql.ts +11 -7
- package/src/middleware/trace.ts +15 -19
- package/src/utils/misc.ts +11 -2
package/.nvmrc
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v18
|
package/README.md
CHANGED
package/dist/aws/config.d.ts
CHANGED
|
@@ -5,8 +5,8 @@ export interface AWSConfig {
|
|
|
5
5
|
export interface AWSConfigs {
|
|
6
6
|
[service: string]: AWSConfig;
|
|
7
7
|
}
|
|
8
|
-
export
|
|
9
|
-
export
|
|
8
|
+
export type AWSConfigResolver = (service: string) => AWSConfig;
|
|
9
|
+
export type SimpleAWSConfigLoadParam = AWSConfigs | string;
|
|
10
10
|
export declare class SimpleAWSConfig {
|
|
11
11
|
private configs;
|
|
12
12
|
constructor(configs?: AWSConfigs);
|
package/dist/aws/config.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadAWSConfig = exports.SimpleAWSConfig = void 0;
|
|
3
4
|
var cross_fetch_1 = require("cross-fetch");
|
|
4
5
|
var fs = require("fs");
|
|
5
6
|
var SimpleAWSConfig = /** @class */ (function () {
|
|
@@ -13,17 +14,18 @@ var SimpleAWSConfig = /** @class */ (function () {
|
|
|
13
14
|
return SimpleAWSConfig;
|
|
14
15
|
}());
|
|
15
16
|
exports.SimpleAWSConfig = SimpleAWSConfig;
|
|
16
|
-
|
|
17
|
+
var loadAWSConfig = function (newConfigsOrUrl) {
|
|
17
18
|
if (typeof newConfigsOrUrl === 'string') {
|
|
18
19
|
if (/^http.*json$/.test(newConfigsOrUrl)) {
|
|
19
|
-
return cross_fetch_1.default(newConfigsOrUrl)
|
|
20
|
+
return (0, cross_fetch_1.default)(newConfigsOrUrl)
|
|
20
21
|
.then(function (r) { return r.json(); })
|
|
21
22
|
.then(exports.loadAWSConfig);
|
|
22
23
|
}
|
|
23
24
|
else if (/json$/.test(newConfigsOrUrl)) {
|
|
24
|
-
return exports.loadAWSConfig(JSON.parse(fs.readFileSync(newConfigsOrUrl, 'utf-8')));
|
|
25
|
+
return (0, exports.loadAWSConfig)(JSON.parse(fs.readFileSync(newConfigsOrUrl, 'utf-8')));
|
|
25
26
|
}
|
|
26
|
-
return exports.loadAWSConfig(JSON.parse(newConfigsOrUrl));
|
|
27
|
+
return (0, exports.loadAWSConfig)(JSON.parse(newConfigsOrUrl));
|
|
27
28
|
}
|
|
28
29
|
return Promise.resolve(new SimpleAWSConfig(newConfigsOrUrl));
|
|
29
30
|
};
|
|
31
|
+
exports.loadAWSConfig = loadAWSConfig;
|
package/dist/aws/define.d.ts
CHANGED
|
@@ -7,15 +7,3 @@ export interface SQSMessageBody<T> {
|
|
|
7
7
|
handle: string;
|
|
8
8
|
body?: T;
|
|
9
9
|
}
|
|
10
|
-
export interface S3SignedUrlParams {
|
|
11
|
-
Key?: string;
|
|
12
|
-
Expires?: number;
|
|
13
|
-
ContentType?: string;
|
|
14
|
-
ACL?: 'private' | 'public-read' | 'public-read-write' | 'authenticated-read' | string;
|
|
15
|
-
ResponseContentDisposition?: string;
|
|
16
|
-
ResponseContentType?: string;
|
|
17
|
-
}
|
|
18
|
-
export interface S3SignedUrlResult {
|
|
19
|
-
key: string;
|
|
20
|
-
url: string;
|
|
21
|
-
}
|
package/dist/aws/define.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AWSComponent = void 0;
|
|
3
4
|
var AWSComponent;
|
|
4
5
|
(function (AWSComponent) {
|
|
5
6
|
AWSComponent["s3"] = "s3";
|
|
6
7
|
AWSComponent["sqs"] = "sqs";
|
|
7
8
|
AWSComponent["dynamodb"] = "dynamodb";
|
|
8
|
-
})(AWSComponent
|
|
9
|
+
})(AWSComponent || (exports.AWSComponent = AWSComponent = {}));
|
package/dist/aws/index.js
CHANGED
|
@@ -1,8 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
function
|
|
3
|
-
|
|
4
|
-
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
5
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
17
|
+
__exportStar(require("./define"), exports);
|
|
18
|
+
__exportStar(require("./config"), exports);
|
|
19
|
+
__exportStar(require("./simple"), exports);
|
package/dist/aws/simple.d.ts
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
import * as AWS from 'aws-sdk';
|
|
1
|
+
import { CloudfrontSignedCookiesOutput } from '@aws-sdk/cloudfront-signer';
|
|
3
2
|
import { SimpleAWSConfig } from './config';
|
|
4
|
-
import {
|
|
3
|
+
import { SQSMessageBody } from './define';
|
|
4
|
+
import { DynamoDB } from '@aws-sdk/client-dynamodb';
|
|
5
|
+
import { S3, Tag } from '@aws-sdk/client-s3';
|
|
6
|
+
import { SQS } from '@aws-sdk/client-sqs';
|
|
7
|
+
import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
8
|
+
import { PresignerOptions } from '../internal/s3';
|
|
5
9
|
export declare class SimpleAWS {
|
|
6
10
|
private queueUrls;
|
|
7
11
|
private config;
|
|
@@ -9,38 +13,39 @@ export declare class SimpleAWS {
|
|
|
9
13
|
private lazySqs;
|
|
10
14
|
private lazyDynamodb;
|
|
11
15
|
private lazyDynamodbAdmin;
|
|
16
|
+
private static readonly stageTag;
|
|
17
|
+
private static readonly stringifiedStageTag;
|
|
12
18
|
constructor(config?: SimpleAWSConfig);
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
get s3(): S3;
|
|
20
|
+
get sqs(): SQS;
|
|
21
|
+
get dynamodb(): DynamoDBDocument;
|
|
22
|
+
get dynamodbAdmin(): DynamoDB;
|
|
17
23
|
getQueueUrl: (queueName: string) => Promise<string>;
|
|
18
24
|
enqueue: (queueName: string, data: any) => Promise<number>;
|
|
19
|
-
dequeue: <T>(queueName: string, fetchSize?: number, waitSeconds?: number, visibilityTimeout?: number) => Promise<SQSMessageBody<T
|
|
20
|
-
dequeueAll: <T>(queueName: string, limitSize?: number, visibilityTimeout?: number) => Promise<SQSMessageBody<T
|
|
25
|
+
dequeue: <T>(queueName: string, fetchSize?: number, waitSeconds?: number, visibilityTimeout?: number) => Promise<Array<SQSMessageBody<T>>>;
|
|
26
|
+
dequeueAll: <T>(queueName: string, limitSize?: number, visibilityTimeout?: number) => Promise<Array<SQSMessageBody<T>>>;
|
|
21
27
|
retainMessage: (queueName: string, handle: string, seconds: number) => Promise<string>;
|
|
22
28
|
completeMessage: (queueName: string, handle: string) => Promise<string>;
|
|
23
29
|
completeMessages: (queueName: string, handles: string[]) => Promise<string[]>;
|
|
24
30
|
download: (bucket: string, key: string, localPath: string) => Promise<string>;
|
|
25
31
|
readFile: (bucket: string, key: string) => Promise<string>;
|
|
26
32
|
readFileBuffer: (bucket: string, key: string) => Promise<Buffer>;
|
|
27
|
-
upload: (bucket: string, localPath: string, key: string) => Promise<string>;
|
|
28
|
-
uploadFromBuffer: (bucket: string, key: string, buffer: Buffer) => Promise<string>;
|
|
33
|
+
upload: (bucket: string, localPath: string, key: string, tags?: Tag[]) => Promise<string>;
|
|
34
|
+
uploadFromBuffer: (bucket: string, key: string, buffer: Buffer, tags?: Tag[]) => Promise<string>;
|
|
29
35
|
writeFile: (bucket: string, key: string, content: string) => Promise<void>;
|
|
30
|
-
getSignedUrl
|
|
31
|
-
getSignedCookie: (keyPairId: string, privateKey: string, url: string, expires: number) =>
|
|
32
|
-
getAttachmentUrl: (bucketName: string, key: string, fileName: string, params?: S3SignedUrlParams | undefined) => S3SignedUrlResult;
|
|
36
|
+
getSignedUrl(options: PresignerOptions): Promise<string>;
|
|
37
|
+
getSignedCookie: (keyPairId: string, privateKey: string, url: string, expires: number) => CloudfrontSignedCookiesOutput;
|
|
33
38
|
getDynamoDbItem: <T>(tableName: string, key: {
|
|
34
39
|
[keyColumn: string]: string;
|
|
35
|
-
}, defaultValue?: T
|
|
40
|
+
}, defaultValue?: T) => Promise<T | undefined>;
|
|
36
41
|
updateDynamoDbItem: (tableName: string, key: {
|
|
37
42
|
[keyColumn: string]: string;
|
|
38
43
|
}, columnValues: {
|
|
39
44
|
[column: string]: any;
|
|
40
|
-
}) => Promise<import("aws-sdk/lib
|
|
45
|
+
}) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
|
|
41
46
|
setupQueue: (queueName: string) => Promise<boolean>;
|
|
42
47
|
setupStorage: (bucketName: string, cors: {
|
|
43
|
-
methods:
|
|
48
|
+
methods: Array<"GET" | "POST" | "PUT" | "DELETE" | "HEAD">;
|
|
44
49
|
origins: string[];
|
|
45
50
|
}) => Promise<boolean>;
|
|
46
51
|
setupDynamoDb: (tableName: string, keyColumn: string) => Promise<boolean>;
|