@webiny/handler-aws 0.0.0-ee-vpcs.549378cf03
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/LICENSE +21 -0
- package/README.md +15 -0
- package/dynamodb/index.d.ts +11 -0
- package/dynamodb/index.js +87 -0
- package/dynamodb/index.js.map +1 -0
- package/dynamodb/plugins/DynamoDBEventHandler.d.ts +19 -0
- package/dynamodb/plugins/DynamoDBEventHandler.js +30 -0
- package/dynamodb/plugins/DynamoDBEventHandler.js.map +1 -0
- package/eventBridge/index.d.ts +11 -0
- package/eventBridge/index.js +87 -0
- package/eventBridge/index.js.map +1 -0
- package/eventBridge/plugins/EventBridgeEventHandler.d.ts +19 -0
- package/eventBridge/plugins/EventBridgeEventHandler.js +30 -0
- package/eventBridge/plugins/EventBridgeEventHandler.js.map +1 -0
- package/execute.d.ts +7 -0
- package/execute.js +71 -0
- package/execute.js.map +1 -0
- package/gateway/index.d.ts +14 -0
- package/gateway/index.js +106 -0
- package/gateway/index.js.map +1 -0
- package/index.d.ts +6 -0
- package/index.js +245 -0
- package/index.js.map +1 -0
- package/package.json +43 -0
- package/plugins/handlerClient.d.ts +2 -0
- package/plugins/handlerClient.js +62 -0
- package/plugins/handlerClient.js.map +1 -0
- package/plugins/index.d.ts +2 -0
- package/plugins/index.js +14 -0
- package/plugins/index.js.map +1 -0
- package/raw/index.d.ts +19 -0
- package/raw/index.js +95 -0
- package/raw/index.js.map +1 -0
- package/raw/plugins/RawEventHandler.d.ts +13 -0
- package/raw/plugins/RawEventHandler.js +23 -0
- package/raw/plugins/RawEventHandler.js.map +1 -0
- package/s3/index.d.ts +11 -0
- package/s3/index.js +87 -0
- package/s3/index.js.map +1 -0
- package/s3/plugins/S3EventHandler.d.ts +19 -0
- package/s3/plugins/S3EventHandler.js +30 -0
- package/s3/plugins/S3EventHandler.js.map +1 -0
- package/sqs/index.d.ts +11 -0
- package/sqs/index.js +87 -0
- package/sqs/index.js.map +1 -0
- package/sqs/plugins/SQSEventHandler.d.ts +19 -0
- package/sqs/plugins/SQSEventHandler.js +30 -0
- package/sqs/plugins/SQSEventHandler.js.map +1 -0
- package/types.d.ts +18 -0
- package/types.js +32 -0
- package/types.js.map +1 -0
package/index.js
ADDED
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "CreateApiGatewayHandlerParams", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _gateway.CreateHandlerParams;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "CreateDynamoDBHandlerParams", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _dynamodb.CreateHandlerParams;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "CreateEventBridgeHandlerParams", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _eventBridge.CreateHandlerParams;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, "CreateRawHandlerParams", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _raw.CreateHandlerParams;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, "CreateS3HandlerParams", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _s.CreateHandlerParams;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "CreateSQSHandlerParams", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _sqs.CreateHandlerParams;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, "DynamoDBEventHandler", {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _dynamodb.DynamoDBEventHandler;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, "DynamoDBEventHandlerCallable", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _dynamodb.DynamoDBEventHandlerCallable;
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, "DynamoDBEventHandlerCallableParams", {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _dynamodb.DynamoDBEventHandlerCallableParams;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, "DynamoDBHandlerCallable", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _dynamodb.HandlerCallable;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
Object.defineProperty(exports, "EventBridgeEventHandler", {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function () {
|
|
69
|
+
return _eventBridge.EventBridgeEventHandler;
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
Object.defineProperty(exports, "EventBridgeEventHandlerCallable", {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function () {
|
|
75
|
+
return _eventBridge.EventBridgeEventHandlerCallable;
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(exports, "EventBridgeEventHandlerCallableParams", {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: function () {
|
|
81
|
+
return _eventBridge.EventBridgeEventHandlerCallableParams;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(exports, "EventBridgeHandlerCallable", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
get: function () {
|
|
87
|
+
return _eventBridge.HandlerCallable;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(exports, "RawEventHandler", {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return _raw.RawEventHandler;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
Object.defineProperty(exports, "RawEventHandlerCallable", {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
get: function () {
|
|
99
|
+
return _raw.RawEventHandlerCallable;
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
Object.defineProperty(exports, "RawEventHandlerCallableParams", {
|
|
103
|
+
enumerable: true,
|
|
104
|
+
get: function () {
|
|
105
|
+
return _raw.RawEventHandlerCallableParams;
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
Object.defineProperty(exports, "RawHandlerCallable", {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function () {
|
|
111
|
+
return _raw.HandlerCallable;
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, "RoutePlugin", {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _gateway.RoutePlugin;
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
Object.defineProperty(exports, "S3EventHandler", {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function () {
|
|
123
|
+
return _s.S3EventHandler;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, "S3EventHandlerCallable", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _s.S3EventHandlerCallable;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
Object.defineProperty(exports, "S3EventHandlerCallableParams", {
|
|
133
|
+
enumerable: true,
|
|
134
|
+
get: function () {
|
|
135
|
+
return _s.S3EventHandlerCallableParams;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
Object.defineProperty(exports, "SQSEventHandler", {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: function () {
|
|
141
|
+
return _sqs.SQSEventHandler;
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
Object.defineProperty(exports, "SQSEventHandlerCallable", {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _sqs.SQSEventHandlerCallable;
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
Object.defineProperty(exports, "SQSEventHandlerCallableParams", {
|
|
151
|
+
enumerable: true,
|
|
152
|
+
get: function () {
|
|
153
|
+
return _sqs.SQSEventHandlerCallableParams;
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
Object.defineProperty(exports, "SQSHandlerCallable", {
|
|
157
|
+
enumerable: true,
|
|
158
|
+
get: function () {
|
|
159
|
+
return _sqs.HandlerCallable;
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
Object.defineProperty(exports, "createApiGatewayHandler", {
|
|
163
|
+
enumerable: true,
|
|
164
|
+
get: function () {
|
|
165
|
+
return _gateway.createHandler;
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
Object.defineProperty(exports, "createApiGatewayRoute", {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
get: function () {
|
|
171
|
+
return _gateway.createRoute;
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
Object.defineProperty(exports, "createDynamoDBEventHandler", {
|
|
175
|
+
enumerable: true,
|
|
176
|
+
get: function () {
|
|
177
|
+
return _dynamodb.createEventHandler;
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
Object.defineProperty(exports, "createDynamoDBHandler", {
|
|
181
|
+
enumerable: true,
|
|
182
|
+
get: function () {
|
|
183
|
+
return _dynamodb.createHandler;
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
Object.defineProperty(exports, "createEventBridgeEventHandler", {
|
|
187
|
+
enumerable: true,
|
|
188
|
+
get: function () {
|
|
189
|
+
return _eventBridge.createEventHandler;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
Object.defineProperty(exports, "createEventBridgeHandler", {
|
|
193
|
+
enumerable: true,
|
|
194
|
+
get: function () {
|
|
195
|
+
return _eventBridge.createHandler;
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
Object.defineProperty(exports, "createRawEventHandler", {
|
|
199
|
+
enumerable: true,
|
|
200
|
+
get: function () {
|
|
201
|
+
return _raw.createEventHandler;
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
Object.defineProperty(exports, "createRawHandler", {
|
|
205
|
+
enumerable: true,
|
|
206
|
+
get: function () {
|
|
207
|
+
return _raw.createHandler;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
Object.defineProperty(exports, "createS3EventHandler", {
|
|
211
|
+
enumerable: true,
|
|
212
|
+
get: function () {
|
|
213
|
+
return _s.createEventHandler;
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
Object.defineProperty(exports, "createS3Handler", {
|
|
217
|
+
enumerable: true,
|
|
218
|
+
get: function () {
|
|
219
|
+
return _s.createHandler;
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
Object.defineProperty(exports, "createSQSEventHandler", {
|
|
223
|
+
enumerable: true,
|
|
224
|
+
get: function () {
|
|
225
|
+
return _sqs.createEventHandler;
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
Object.defineProperty(exports, "createSQSHandler", {
|
|
229
|
+
enumerable: true,
|
|
230
|
+
get: function () {
|
|
231
|
+
return _sqs.createHandler;
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
|
|
235
|
+
var _gateway = require("./gateway");
|
|
236
|
+
|
|
237
|
+
var _s = require("./s3");
|
|
238
|
+
|
|
239
|
+
var _dynamodb = require("./dynamodb");
|
|
240
|
+
|
|
241
|
+
var _sqs = require("./sqs");
|
|
242
|
+
|
|
243
|
+
var _eventBridge = require("./eventBridge");
|
|
244
|
+
|
|
245
|
+
var _raw = require("./raw");
|
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export {\n createHandler as createApiGatewayHandler,\n CreateHandlerParams as CreateApiGatewayHandlerParams,\n RoutePlugin,\n createRoute as createApiGatewayRoute\n} from \"~/gateway\";\n\nexport {\n createHandler as createS3Handler,\n CreateHandlerParams as CreateS3HandlerParams,\n S3EventHandler,\n S3EventHandlerCallable,\n S3EventHandlerCallableParams,\n createEventHandler as createS3EventHandler\n} from \"~/s3\";\n\nexport {\n createHandler as createDynamoDBHandler,\n CreateHandlerParams as CreateDynamoDBHandlerParams,\n DynamoDBEventHandler,\n DynamoDBEventHandlerCallable,\n DynamoDBEventHandlerCallableParams,\n createEventHandler as createDynamoDBEventHandler,\n HandlerCallable as DynamoDBHandlerCallable\n} from \"~/dynamodb\";\n\nexport {\n createHandler as createSQSHandler,\n CreateHandlerParams as CreateSQSHandlerParams,\n SQSEventHandler,\n SQSEventHandlerCallable,\n SQSEventHandlerCallableParams,\n createEventHandler as createSQSEventHandler,\n HandlerCallable as SQSHandlerCallable\n} from \"~/sqs\";\n\nexport {\n createHandler as createEventBridgeHandler,\n CreateHandlerParams as CreateEventBridgeHandlerParams,\n EventBridgeEventHandler,\n EventBridgeEventHandlerCallable,\n EventBridgeEventHandlerCallableParams,\n createEventHandler as createEventBridgeEventHandler,\n HandlerCallable as EventBridgeHandlerCallable\n} from \"~/eventBridge\";\n\nexport {\n createHandler as createRawHandler,\n CreateHandlerParams as CreateRawHandlerParams,\n HandlerCallable as RawHandlerCallable,\n createEventHandler as createRawEventHandler,\n RawEventHandlerCallableParams,\n RawEventHandlerCallable,\n RawEventHandler\n} from \"~/raw\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAOA;;AASA;;AAUA;;AAUA;;AAUA"}
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@webiny/handler-aws",
|
|
3
|
+
"version": "0.0.0-ee-vpcs.549378cf03",
|
|
4
|
+
"main": "index.js",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/webiny/webiny-js.git"
|
|
8
|
+
},
|
|
9
|
+
"description": "Our small wrapper around fastify to ease handling of http requests for the system.",
|
|
10
|
+
"contributors": [
|
|
11
|
+
"Bruno Zorić <bruno@webiny.com>"
|
|
12
|
+
],
|
|
13
|
+
"license": "MIT",
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@babel/runtime": "7.19.0",
|
|
16
|
+
"@fastify/aws-lambda": "3.1.3",
|
|
17
|
+
"@webiny/handler": "0.0.0-ee-vpcs.549378cf03",
|
|
18
|
+
"@webiny/handler-client": "0.0.0-ee-vpcs.549378cf03",
|
|
19
|
+
"@webiny/plugins": "0.0.0-ee-vpcs.549378cf03",
|
|
20
|
+
"aws-lambda": "1.0.7",
|
|
21
|
+
"fastify": "4.11.0"
|
|
22
|
+
},
|
|
23
|
+
"devDependencies": {
|
|
24
|
+
"@babel/cli": "^7.19.3",
|
|
25
|
+
"@babel/core": "^7.19.3",
|
|
26
|
+
"@babel/preset-env": "^7.19.4",
|
|
27
|
+
"@babel/preset-typescript": "^7.18.6",
|
|
28
|
+
"@webiny/cli": "^0.0.0-ee-vpcs.549378cf03",
|
|
29
|
+
"@webiny/project-utils": "^0.0.0-ee-vpcs.549378cf03",
|
|
30
|
+
"rimraf": "^3.0.2",
|
|
31
|
+
"ttypescript": "^1.5.13",
|
|
32
|
+
"typescript": "4.7.4"
|
|
33
|
+
},
|
|
34
|
+
"publishConfig": {
|
|
35
|
+
"access": "public",
|
|
36
|
+
"directory": "dist"
|
|
37
|
+
},
|
|
38
|
+
"scripts": {
|
|
39
|
+
"build": "yarn webiny run build",
|
|
40
|
+
"watch": "yarn webiny run watch"
|
|
41
|
+
},
|
|
42
|
+
"gitHead": "549378cf03fcd27845fc3fa23d1dc6b32896f630"
|
|
43
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createHandlerClientPlugin = void 0;
|
|
9
|
+
|
|
10
|
+
var _lambda = _interopRequireDefault(require("aws-sdk/clients/lambda"));
|
|
11
|
+
|
|
12
|
+
var _handlerClient = require("@webiny/handler-client");
|
|
13
|
+
|
|
14
|
+
const createHandlerClientPlugin = () => {
|
|
15
|
+
const plugin = new _handlerClient.HandlerClientPlugin({
|
|
16
|
+
invoke: async params => {
|
|
17
|
+
const {
|
|
18
|
+
await: useAwait,
|
|
19
|
+
name,
|
|
20
|
+
payload
|
|
21
|
+
} = params;
|
|
22
|
+
const lambdaClient = new _lambda.default({
|
|
23
|
+
region: process.env.AWS_REGION
|
|
24
|
+
});
|
|
25
|
+
const response = await lambdaClient.invoke({
|
|
26
|
+
FunctionName: name,
|
|
27
|
+
InvocationType: useAwait === false ? "Event" : "RequestResponse",
|
|
28
|
+
Payload: JSON.stringify(payload)
|
|
29
|
+
}).promise();
|
|
30
|
+
|
|
31
|
+
if (useAwait === false) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const Payload = response.Payload;
|
|
36
|
+
return JSON.parse(Payload);
|
|
37
|
+
},
|
|
38
|
+
canUse: params => {
|
|
39
|
+
if (!(params !== null && params !== void 0 && params.name)) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const {
|
|
44
|
+
name
|
|
45
|
+
} = params;
|
|
46
|
+
/**
|
|
47
|
+
* In case we are invoking currently active lambda, let's use this plugin as well.
|
|
48
|
+
* When invoking some other lambda, name starts with arn.
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
if (name === process.env.AWS_LAMBDA_FUNCTION_NAME) {
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return name.match("arn:") !== null;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
plugin.name = "handler-client";
|
|
59
|
+
return plugin;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
exports.createHandlerClientPlugin = createHandlerClientPlugin;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createHandlerClientPlugin","plugin","HandlerClientPlugin","invoke","params","await","useAwait","name","payload","lambdaClient","LambdaClient","region","process","env","AWS_REGION","response","FunctionName","InvocationType","Payload","JSON","stringify","promise","parse","canUse","AWS_LAMBDA_FUNCTION_NAME","match"],"sources":["handlerClient.ts"],"sourcesContent":["import LambdaClient from \"aws-sdk/clients/lambda\";\nimport { HandlerClientPlugin } from \"@webiny/handler-client\";\n\nexport const createHandlerClientPlugin = () => {\n const plugin = new HandlerClientPlugin({\n invoke: async params => {\n const { await: useAwait, name, payload } = params;\n const lambdaClient = new LambdaClient({\n region: process.env.AWS_REGION\n });\n const response = await lambdaClient\n .invoke({\n FunctionName: name,\n InvocationType: useAwait === false ? \"Event\" : \"RequestResponse\",\n Payload: JSON.stringify(payload)\n })\n .promise();\n\n if (useAwait === false) {\n return null;\n }\n\n const Payload = response.Payload as string;\n return JSON.parse(Payload);\n },\n canUse: params => {\n if (!params?.name) {\n return true;\n }\n const { name } = params;\n /**\n * In case we are invoking currently active lambda, let's use this plugin as well.\n * When invoking some other lambda, name starts with arn.\n */\n if (name === process.env.AWS_LAMBDA_FUNCTION_NAME) {\n return true;\n }\n return name.match(\"arn:\") !== null;\n }\n });\n\n plugin.name = \"handler-client\";\n\n return plugin;\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEO,MAAMA,yBAAyB,GAAG,MAAM;EAC3C,MAAMC,MAAM,GAAG,IAAIC,kCAAJ,CAAwB;IACnCC,MAAM,EAAE,MAAMC,MAAN,IAAgB;MACpB,MAAM;QAAEC,KAAK,EAAEC,QAAT;QAAmBC,IAAnB;QAAyBC;MAAzB,IAAqCJ,MAA3C;MACA,MAAMK,YAAY,GAAG,IAAIC,eAAJ,CAAiB;QAClCC,MAAM,EAAEC,OAAO,CAACC,GAAR,CAAYC;MADc,CAAjB,CAArB;MAGA,MAAMC,QAAQ,GAAG,MAAMN,YAAY,CAC9BN,MADkB,CACX;QACJa,YAAY,EAAET,IADV;QAEJU,cAAc,EAAEX,QAAQ,KAAK,KAAb,GAAqB,OAArB,GAA+B,iBAF3C;QAGJY,OAAO,EAAEC,IAAI,CAACC,SAAL,CAAeZ,OAAf;MAHL,CADW,EAMlBa,OANkB,EAAvB;;MAQA,IAAIf,QAAQ,KAAK,KAAjB,EAAwB;QACpB,OAAO,IAAP;MACH;;MAED,MAAMY,OAAO,GAAGH,QAAQ,CAACG,OAAzB;MACA,OAAOC,IAAI,CAACG,KAAL,CAAWJ,OAAX,CAAP;IACH,CApBkC;IAqBnCK,MAAM,EAAEnB,MAAM,IAAI;MACd,IAAI,EAACA,MAAD,aAACA,MAAD,eAACA,MAAM,CAAEG,IAAT,CAAJ,EAAmB;QACf,OAAO,IAAP;MACH;;MACD,MAAM;QAAEA;MAAF,IAAWH,MAAjB;MACA;AACZ;AACA;AACA;;MACY,IAAIG,IAAI,KAAKK,OAAO,CAACC,GAAR,CAAYW,wBAAzB,EAAmD;QAC/C,OAAO,IAAP;MACH;;MACD,OAAOjB,IAAI,CAACkB,KAAL,CAAW,MAAX,MAAuB,IAA9B;IACH;EAlCkC,CAAxB,CAAf;EAqCAxB,MAAM,CAACM,IAAP,GAAc,gBAAd;EAEA,OAAON,MAAP;AACH,CAzCM"}
|
package/plugins/index.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.registerDefaultPlugins = void 0;
|
|
7
|
+
|
|
8
|
+
var _handlerClient = require("./handlerClient");
|
|
9
|
+
|
|
10
|
+
const registerDefaultPlugins = context => {
|
|
11
|
+
context.plugins.register([(0, _handlerClient.createHandlerClientPlugin)()]);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.registerDefaultPlugins = registerDefaultPlugins;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["registerDefaultPlugins","context","plugins","register","createHandlerClientPlugin"],"sources":["index.ts"],"sourcesContent":["import { createHandlerClientPlugin } from \"./handlerClient\";\nimport { Context } from \"@webiny/handler/types\";\n\nexport const registerDefaultPlugins = (context: Context): void => {\n context.plugins.register([createHandlerClientPlugin()]);\n};\n"],"mappings":";;;;;;;AAAA;;AAGO,MAAMA,sBAAsB,GAAIC,OAAD,IAA4B;EAC9DA,OAAO,CAACC,OAAR,CAAgBC,QAAhB,CAAyB,CAAC,IAAAC,wCAAA,GAAD,CAAzB;AACH,CAFM"}
|
package/raw/index.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the handler implementation for @webiny/handler/plugins/EventPlugin.
|
|
3
|
+
* This is mostly meant for some custom lambda calls as we are sometimes invoking lambdas directly.
|
|
4
|
+
*
|
|
5
|
+
* We should try to have some kind of standardized event type implementation at some point.
|
|
6
|
+
*/
|
|
7
|
+
import { CreateHandlerParams as BaseCreateHandlerParams } from "@webiny/handler";
|
|
8
|
+
import { Context as LambdaContext } from "aws-lambda";
|
|
9
|
+
import { APIGatewayProxyResult } from "aws-lambda/trigger/api-gateway-proxy";
|
|
10
|
+
export interface HandlerCallable<Payload, Response = APIGatewayProxyResult> {
|
|
11
|
+
(payload: Payload, context: LambdaContext): Promise<Response>;
|
|
12
|
+
}
|
|
13
|
+
export interface CreateHandlerParams extends BaseCreateHandlerParams {
|
|
14
|
+
http?: {
|
|
15
|
+
debug?: boolean;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export declare const createHandler: <Payload = any, Response_1 = APIGatewayProxyResult>(params: CreateHandlerParams) => HandlerCallable<Payload, Response_1>;
|
|
19
|
+
export * from "./plugins/RawEventHandler";
|
package/raw/index.js
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
var _exportNames = {
|
|
9
|
+
createHandler: true
|
|
10
|
+
};
|
|
11
|
+
exports.createHandler = void 0;
|
|
12
|
+
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
|
+
|
|
15
|
+
var _handler = require("@webiny/handler");
|
|
16
|
+
|
|
17
|
+
var _RawEventHandler = require("./plugins/RawEventHandler");
|
|
18
|
+
|
|
19
|
+
Object.keys(_RawEventHandler).forEach(function (key) {
|
|
20
|
+
if (key === "default" || key === "__esModule") return;
|
|
21
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
22
|
+
if (key in exports && exports[key] === _RawEventHandler[key]) return;
|
|
23
|
+
Object.defineProperty(exports, key, {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () {
|
|
26
|
+
return _RawEventHandler[key];
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
var _plugins = require("../plugins");
|
|
32
|
+
|
|
33
|
+
var _execute = require("../execute");
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* This is the handler implementation for @webiny/handler/plugins/EventPlugin.
|
|
37
|
+
* This is mostly meant for some custom lambda calls as we are sometimes invoking lambdas directly.
|
|
38
|
+
*
|
|
39
|
+
* We should try to have some kind of standardized event type implementation at some point.
|
|
40
|
+
*/
|
|
41
|
+
const Reply = require("fastify/lib/reply");
|
|
42
|
+
|
|
43
|
+
const url = "/webiny-raw-event";
|
|
44
|
+
|
|
45
|
+
const createHandler = params => {
|
|
46
|
+
return (payload, context) => {
|
|
47
|
+
var _params$http;
|
|
48
|
+
|
|
49
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
50
|
+
options: (0, _objectSpread2.default)({
|
|
51
|
+
logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
|
|
52
|
+
}, params.options || {})
|
|
53
|
+
}));
|
|
54
|
+
/**
|
|
55
|
+
* We always must add our default plugins to the app.
|
|
56
|
+
*/
|
|
57
|
+
|
|
58
|
+
(0, _plugins.registerDefaultPlugins)(app.webiny);
|
|
59
|
+
/**
|
|
60
|
+
* There must be an event plugin for this handler to work.
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
const plugins = app.webiny.plugins.byType(_RawEventHandler.RawEventHandler.type);
|
|
64
|
+
const handler = plugins.shift();
|
|
65
|
+
|
|
66
|
+
if (!handler) {
|
|
67
|
+
throw new Error(`To run @webiny/handler-aws/raw, you must have RawEventHandler set.`);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
app.post(url, async (request, reply) => {
|
|
71
|
+
const params = {
|
|
72
|
+
request,
|
|
73
|
+
reply,
|
|
74
|
+
context: app.webiny,
|
|
75
|
+
payload,
|
|
76
|
+
lambdaContext: context
|
|
77
|
+
};
|
|
78
|
+
const result = await handler.cb(params);
|
|
79
|
+
|
|
80
|
+
if (result instanceof Reply) {
|
|
81
|
+
return result;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
app.__webiny_raw_result = result;
|
|
85
|
+
return reply.send({});
|
|
86
|
+
});
|
|
87
|
+
return (0, _execute.execute)({
|
|
88
|
+
app,
|
|
89
|
+
url,
|
|
90
|
+
payload
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
exports.createHandler = createHandler;
|
package/raw/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","options","logger","http","debug","registerDefaultPlugins","webiny","plugins","byType","RawEventHandler","type","handler","shift","Error","post","request","reply","lambdaContext","result","cb","__webiny_raw_result","send","execute"],"sources":["index.ts"],"sourcesContent":["/**\n * This is the handler implementation for @webiny/handler/plugins/EventPlugin.\n * This is mostly meant for some custom lambda calls as we are sometimes invoking lambdas directly.\n *\n * We should try to have some kind of standardized event type implementation at some point.\n */\nimport {\n createHandler as createBaseHandler,\n CreateHandlerParams as BaseCreateHandlerParams\n} from \"@webiny/handler\";\nconst Reply = require(\"fastify/lib/reply\");\nimport { Context as LambdaContext } from \"aws-lambda\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { RawEventHandler } from \"~/raw/plugins/RawEventHandler\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { execute } from \"~/execute\";\n\nconst url = \"/webiny-raw-event\";\n\nexport interface HandlerCallable<Payload, Response = APIGatewayProxyResult> {\n (payload: Payload, context: LambdaContext): Promise<Response>;\n}\n\nexport interface CreateHandlerParams extends BaseCreateHandlerParams {\n http?: {\n debug?: boolean;\n };\n}\n\nexport const createHandler = <Payload = any, Response = APIGatewayProxyResult>(\n params: CreateHandlerParams\n): HandlerCallable<Payload, Response> => {\n return (payload, context) => {\n const app = createBaseHandler({\n ...params,\n options: {\n logger: params.http?.debug === true,\n ...(params.options || {})\n }\n });\n /**\n * We always must add our default plugins to the app.\n */\n registerDefaultPlugins(app.webiny);\n /**\n * There must be an event plugin for this handler to work.\n */\n const plugins = app.webiny.plugins.byType<RawEventHandler<Payload, any, Response>>(\n RawEventHandler.type\n );\n const handler = plugins.shift();\n if (!handler) {\n throw new Error(`To run @webiny/handler-aws/raw, you must have RawEventHandler set.`);\n }\n\n app.post(url, async (request, reply) => {\n const params = {\n request,\n reply,\n context: app.webiny,\n payload,\n lambdaContext: context\n };\n const result = await handler.cb(params);\n\n if (result instanceof Reply) {\n return result;\n }\n\n (app as any).__webiny_raw_result = result;\n return reply.send({});\n });\n return execute({\n app,\n url,\n payload\n });\n };\n};\n\nexport * from \"./plugins/RawEventHandler\";\n"],"mappings":";;;;;;;;;;;;;;AAMA;;AAOA;;AAmEA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AAlEA;;AACA;;AAfA;AACA;AACA;AACA;AACA;AACA;AAKA,MAAMA,KAAK,GAAGC,OAAO,CAAC,mBAAD,CAArB;;AAOA,MAAMC,GAAG,GAAG,mBAAZ;;AAYO,MAAMC,aAAa,GACtBC,MADyB,IAEY;EACrC,OAAO,CAACC,OAAD,EAAUC,OAAV,KAAsB;IAAA;;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAA,8DACLJ,MADK;MAERK,OAAO;QACHC,MAAM,EAAE,iBAAAN,MAAM,CAACO,IAAP,8DAAaC,KAAb,MAAuB;MAD5B,GAECR,MAAM,CAACK,OAAP,IAAkB,EAFnB;IAFC,GAAZ;IAOA;AACR;AACA;;IACQ,IAAAI,+BAAA,EAAuBN,GAAG,CAACO,MAA3B;IACA;AACR;AACA;;IACQ,MAAMC,OAAO,GAAGR,GAAG,CAACO,MAAJ,CAAWC,OAAX,CAAmBC,MAAnB,CACZC,gCAAA,CAAgBC,IADJ,CAAhB;IAGA,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAR,EAAhB;;IACA,IAAI,CAACD,OAAL,EAAc;MACV,MAAM,IAAIE,KAAJ,CAAW,oEAAX,CAAN;IACH;;IAEDd,GAAG,CAACe,IAAJ,CAASpB,GAAT,EAAc,OAAOqB,OAAP,EAAgBC,KAAhB,KAA0B;MACpC,MAAMpB,MAAM,GAAG;QACXmB,OADW;QAEXC,KAFW;QAGXlB,OAAO,EAAEC,GAAG,CAACO,MAHF;QAIXT,OAJW;QAKXoB,aAAa,EAAEnB;MALJ,CAAf;MAOA,MAAMoB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAR,CAAWvB,MAAX,CAArB;;MAEA,IAAIsB,MAAM,YAAY1B,KAAtB,EAA6B;QACzB,OAAO0B,MAAP;MACH;;MAEAnB,GAAD,CAAaqB,mBAAb,GAAmCF,MAAnC;MACA,OAAOF,KAAK,CAACK,IAAN,CAAW,EAAX,CAAP;IACH,CAhBD;IAiBA,OAAO,IAAAC,gBAAA,EAAQ;MACXvB,GADW;MAEXL,GAFW;MAGXG;IAHW,CAAR,CAAP;EAKH,CA7CD;AA8CH,CAjDM"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Reply, Context as BaseContext } from "@webiny/handler/types";
|
|
2
|
+
import { Context as LambdaContext } from "aws-lambda";
|
|
3
|
+
import { EventPlugin, EventPluginCallableParams } from "@webiny/handler";
|
|
4
|
+
export interface RawEventHandlerCallableParams<Event, Context extends BaseContext> extends EventPluginCallableParams<Event, Context> {
|
|
5
|
+
lambdaContext: LambdaContext;
|
|
6
|
+
}
|
|
7
|
+
export interface RawEventHandlerCallable<Event, Context extends BaseContext, Response> {
|
|
8
|
+
(params: RawEventHandlerCallableParams<Event, Context>): Promise<Response | Reply>;
|
|
9
|
+
}
|
|
10
|
+
export declare class RawEventHandler<Event = any, Context extends BaseContext = BaseContext, Response = any> extends EventPlugin {
|
|
11
|
+
constructor(cb: RawEventHandlerCallable<Event, Context, Response>);
|
|
12
|
+
}
|
|
13
|
+
export declare const createEventHandler: <Event_1 = any, Context extends BaseContext = BaseContext, Response_1 = any>(cb: RawEventHandlerCallable<Event_1, Context, Response_1>) => RawEventHandler<Event_1, Context, Response_1>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createEventHandler = exports.RawEventHandler = void 0;
|
|
7
|
+
|
|
8
|
+
var _handler = require("@webiny/handler");
|
|
9
|
+
|
|
10
|
+
class RawEventHandler extends _handler.EventPlugin {
|
|
11
|
+
constructor(cb) {
|
|
12
|
+
super(cb);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
exports.RawEventHandler = RawEventHandler;
|
|
18
|
+
|
|
19
|
+
const createEventHandler = cb => {
|
|
20
|
+
return new RawEventHandler(cb);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
exports.createEventHandler = createEventHandler;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["RawEventHandler","EventPlugin","constructor","cb","createEventHandler"],"sources":["RawEventHandler.ts"],"sourcesContent":["import { Reply, Context as BaseContext } from \"@webiny/handler/types\";\nimport { Context as LambdaContext } from \"aws-lambda\";\nimport { EventPlugin, EventPluginCallableParams } from \"@webiny/handler\";\n\nexport interface RawEventHandlerCallableParams<Event, Context extends BaseContext>\n extends EventPluginCallableParams<Event, Context> {\n lambdaContext: LambdaContext;\n}\nexport interface RawEventHandlerCallable<Event, Context extends BaseContext, Response> {\n (params: RawEventHandlerCallableParams<Event, Context>): Promise<Response | Reply>;\n}\n\nexport class RawEventHandler<\n Event = any,\n Context extends BaseContext = BaseContext,\n Response = any\n> extends EventPlugin {\n public constructor(cb: RawEventHandlerCallable<Event, Context, Response>) {\n super(cb as any);\n }\n}\n\nexport const createEventHandler = <\n Event = any,\n Context extends BaseContext = BaseContext,\n Response = any\n>(\n cb: RawEventHandlerCallable<Event, Context, Response>\n) => {\n return new RawEventHandler<Event, Context, Response>(cb);\n};\n"],"mappings":";;;;;;;AAEA;;AAUO,MAAMA,eAAN,SAIGC,oBAJH,CAIe;EACXC,WAAW,CAACC,EAAD,EAAwD;IACtE,MAAMA,EAAN;EACH;;AAHiB;;;;AAMf,MAAMC,kBAAkB,GAK3BD,EAL8B,IAM7B;EACD,OAAO,IAAIH,eAAJ,CAA8CG,EAA9C,CAAP;AACH,CARM"}
|
package/s3/index.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CreateHandlerParams as BaseCreateHandlerParams } from "@webiny/handler";
|
|
2
|
+
import { S3Event, Context as LambdaContext } from "aws-lambda";
|
|
3
|
+
import { APIGatewayProxyResult } from "aws-lambda/trigger/api-gateway-proxy";
|
|
4
|
+
export interface HandlerCallable {
|
|
5
|
+
(payload: S3Event, context: LambdaContext): Promise<APIGatewayProxyResult>;
|
|
6
|
+
}
|
|
7
|
+
export interface CreateHandlerParams extends BaseCreateHandlerParams {
|
|
8
|
+
debug?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare const createHandler: (params: CreateHandlerParams) => HandlerCallable;
|
|
11
|
+
export * from "./plugins/S3EventHandler";
|
package/s3/index.js
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
var _exportNames = {
|
|
9
|
+
createHandler: true
|
|
10
|
+
};
|
|
11
|
+
exports.createHandler = void 0;
|
|
12
|
+
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
|
+
|
|
15
|
+
var _handler = require("@webiny/handler");
|
|
16
|
+
|
|
17
|
+
var _S3EventHandler = require("./plugins/S3EventHandler");
|
|
18
|
+
|
|
19
|
+
Object.keys(_S3EventHandler).forEach(function (key) {
|
|
20
|
+
if (key === "default" || key === "__esModule") return;
|
|
21
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
22
|
+
if (key in exports && exports[key] === _S3EventHandler[key]) return;
|
|
23
|
+
Object.defineProperty(exports, key, {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () {
|
|
26
|
+
return _S3EventHandler[key];
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
var _plugins = require("../plugins");
|
|
32
|
+
|
|
33
|
+
var _execute = require("../execute");
|
|
34
|
+
|
|
35
|
+
const Reply = require("fastify/lib/reply");
|
|
36
|
+
|
|
37
|
+
const url = "/webiny-s3-event";
|
|
38
|
+
|
|
39
|
+
const createHandler = params => {
|
|
40
|
+
return (payload, context) => {
|
|
41
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
42
|
+
options: (0, _objectSpread2.default)({
|
|
43
|
+
logger: params.debug === true
|
|
44
|
+
}, params.options || {})
|
|
45
|
+
}));
|
|
46
|
+
/**
|
|
47
|
+
* We always must add our default plugins to the app.
|
|
48
|
+
*/
|
|
49
|
+
|
|
50
|
+
(0, _plugins.registerDefaultPlugins)(app.webiny);
|
|
51
|
+
/**
|
|
52
|
+
* There must be an event plugin for this handler to work.
|
|
53
|
+
*/
|
|
54
|
+
|
|
55
|
+
const plugins = app.webiny.plugins.byType(_S3EventHandler.S3EventHandler.type);
|
|
56
|
+
const handler = plugins.shift();
|
|
57
|
+
|
|
58
|
+
if (!handler) {
|
|
59
|
+
throw new Error(`To run @webiny/handler-aws/s3, you must have S3EventHandler set.`);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
app.post(url, async (request, reply) => {
|
|
63
|
+
const params = {
|
|
64
|
+
request,
|
|
65
|
+
reply,
|
|
66
|
+
context: app.webiny,
|
|
67
|
+
event: payload,
|
|
68
|
+
lambdaContext: context
|
|
69
|
+
};
|
|
70
|
+
const result = await handler.cb(params);
|
|
71
|
+
|
|
72
|
+
if (result instanceof Reply) {
|
|
73
|
+
return result;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
app.__webiny_raw_result = result;
|
|
77
|
+
return reply.send({});
|
|
78
|
+
});
|
|
79
|
+
return (0, _execute.execute)({
|
|
80
|
+
app,
|
|
81
|
+
url,
|
|
82
|
+
payload
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
exports.createHandler = createHandler;
|
package/s3/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","options","logger","debug","registerDefaultPlugins","webiny","plugins","byType","S3EventHandler","type","handler","shift","Error","post","request","reply","event","lambdaContext","result","cb","__webiny_raw_result","send","execute"],"sources":["index.ts"],"sourcesContent":["import {\n createHandler as createBaseHandler,\n CreateHandlerParams as BaseCreateHandlerParams\n} from \"@webiny/handler\";\nconst Reply = require(\"fastify/lib/reply\");\nimport { S3Event, Context as LambdaContext } from \"aws-lambda\";\nimport { S3EventHandler, S3EventHandlerCallableParams } from \"./plugins/S3EventHandler\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { execute } from \"~/execute\";\n\nconst url = \"/webiny-s3-event\";\n\nexport interface HandlerCallable {\n (payload: S3Event, context: LambdaContext): Promise<APIGatewayProxyResult>;\n}\n\nexport interface CreateHandlerParams extends BaseCreateHandlerParams {\n debug?: boolean;\n}\n\nexport const createHandler = (params: CreateHandlerParams): HandlerCallable => {\n return (payload, context) => {\n const app = createBaseHandler({\n ...params,\n options: {\n logger: params.debug === true,\n ...(params.options || {})\n }\n });\n /**\n * We always must add our default plugins to the app.\n */\n registerDefaultPlugins(app.webiny);\n /**\n * There must be an event plugin for this handler to work.\n */\n const plugins = app.webiny.plugins.byType<S3EventHandler>(S3EventHandler.type);\n const handler = plugins.shift();\n if (!handler) {\n throw new Error(`To run @webiny/handler-aws/s3, you must have S3EventHandler set.`);\n }\n\n app.post(url, async (request, reply) => {\n const params: S3EventHandlerCallableParams = {\n request,\n reply,\n context: app.webiny,\n event: payload,\n lambdaContext: context\n };\n const result = await handler.cb(params);\n\n if (result instanceof Reply) {\n return result;\n }\n\n (app as any).__webiny_raw_result = result;\n return reply.send({});\n });\n return execute({\n app,\n url,\n payload\n });\n };\n};\n\nexport * from \"./plugins/S3EventHandler\";\n"],"mappings":";;;;;;;;;;;;;;AAAA;;AAMA;;AA8DA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AA5DA;;AACA;;AALA,MAAMA,KAAK,GAAGC,OAAO,CAAC,mBAAD,CAArB;;AAOA,MAAMC,GAAG,GAAG,kBAAZ;;AAUO,MAAMC,aAAa,GAAIC,MAAD,IAAkD;EAC3E,OAAO,CAACC,OAAD,EAAUC,OAAV,KAAsB;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAA,8DACLJ,MADK;MAERK,OAAO;QACHC,MAAM,EAAEN,MAAM,CAACO,KAAP,KAAiB;MADtB,GAECP,MAAM,CAACK,OAAP,IAAkB,EAFnB;IAFC,GAAZ;IAOA;AACR;AACA;;IACQ,IAAAG,+BAAA,EAAuBL,GAAG,CAACM,MAA3B;IACA;AACR;AACA;;IACQ,MAAMC,OAAO,GAAGP,GAAG,CAACM,MAAJ,CAAWC,OAAX,CAAmBC,MAAnB,CAA0CC,8BAAA,CAAeC,IAAzD,CAAhB;IACA,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAR,EAAhB;;IACA,IAAI,CAACD,OAAL,EAAc;MACV,MAAM,IAAIE,KAAJ,CAAW,kEAAX,CAAN;IACH;;IAEDb,GAAG,CAACc,IAAJ,CAASnB,GAAT,EAAc,OAAOoB,OAAP,EAAgBC,KAAhB,KAA0B;MACpC,MAAMnB,MAAoC,GAAG;QACzCkB,OADyC;QAEzCC,KAFyC;QAGzCjB,OAAO,EAAEC,GAAG,CAACM,MAH4B;QAIzCW,KAAK,EAAEnB,OAJkC;QAKzCoB,aAAa,EAAEnB;MAL0B,CAA7C;MAOA,MAAMoB,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAR,CAAWvB,MAAX,CAArB;;MAEA,IAAIsB,MAAM,YAAY1B,KAAtB,EAA6B;QACzB,OAAO0B,MAAP;MACH;;MAEAnB,GAAD,CAAaqB,mBAAb,GAAmCF,MAAnC;MACA,OAAOH,KAAK,CAACM,IAAN,CAAW,EAAX,CAAP;IACH,CAhBD;IAiBA,OAAO,IAAAC,gBAAA,EAAQ;MACXvB,GADW;MAEXL,GAFW;MAGXG;IAHW,CAAR,CAAP;EAKH,CA3CD;AA4CH,CA7CM"}
|