@webiny/handler-aws 5.33.5 → 5.34.0-beta.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/dynamodb/index.js +5 -10
- package/dynamodb/index.js.map +1 -1
- package/dynamodb/plugins/DynamoDBEventHandler.js +1 -1
- package/eventBridge/index.js +5 -10
- package/eventBridge/index.js.map +1 -1
- package/eventBridge/plugins/EventBridgeEventHandler.js +1 -1
- package/execute.js +3 -7
- package/execute.js.map +1 -1
- package/gateway/index.js +47 -9
- package/gateway/index.js.map +1 -1
- package/package.json +14 -14
- package/plugins/handlerClient.js +1 -1
- package/raw/index.js +11 -10
- package/raw/index.js.map +1 -1
- package/s3/index.js +5 -10
- package/s3/index.js.map +1 -1
- package/s3/plugins/S3EventHandler.js +1 -1
- package/sqs/index.js +5 -10
- package/sqs/index.js.map +1 -1
- package/sqs/plugins/SQSEventHandler.js +1 -1
package/dynamodb/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -10,7 +10,7 @@ var _exportNames = {
|
|
|
10
10
|
};
|
|
11
11
|
exports.createHandler = void 0;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
14
|
|
|
15
15
|
var _handler = require("@webiny/handler");
|
|
16
16
|
|
|
@@ -32,22 +32,17 @@ var _plugins = require("../plugins");
|
|
|
32
32
|
|
|
33
33
|
var _execute = require("../execute");
|
|
34
34
|
|
|
35
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
36
|
-
|
|
37
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
38
|
-
|
|
39
35
|
const Reply = require("fastify/lib/reply");
|
|
40
36
|
|
|
41
37
|
const url = "/webiny-dynamodb-event";
|
|
42
38
|
|
|
43
39
|
const createHandler = params => {
|
|
44
40
|
return (payload, context) => {
|
|
45
|
-
const app = (0, _handler.createHandler)({
|
|
46
|
-
|
|
47
|
-
options: _objectSpread({
|
|
41
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
42
|
+
options: (0, _objectSpread2.default)({
|
|
48
43
|
logger: params.debug === true
|
|
49
44
|
}, params.options || {})
|
|
50
|
-
});
|
|
45
|
+
}));
|
|
51
46
|
/**
|
|
52
47
|
* We always must add our default plugins to the app.
|
|
53
48
|
*/
|
package/dynamodb/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","
|
|
1
|
+
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","options","logger","debug","registerDefaultPlugins","webiny","plugins","byType","DynamoDBEventHandler","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 { DynamoDBStreamEvent, Context as LambdaContext } from \"aws-lambda\";\nimport {\n DynamoDBEventHandler,\n DynamoDBEventHandlerCallableParams\n} from \"./plugins/DynamoDBEventHandler\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { execute } from \"~/execute\";\n\nconst url = \"/webiny-dynamodb-event\";\n\nexport interface HandlerCallable {\n (event: DynamoDBStreamEvent, 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<DynamoDBEventHandler>(DynamoDBEventHandler.type);\n const handler = plugins.shift();\n if (!handler) {\n throw new Error(\n `To run @webiny/handler-aws/dynamodb, you must have DynamoDBHandler set.`\n );\n }\n\n app.post(url, async (request, reply) => {\n const params: DynamoDBEventHandlerCallableParams = {\n request,\n context: app.webiny,\n event: payload,\n lambdaContext: context,\n reply\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/DynamoDBEventHandler\";\n"],"mappings":";;;;;;;;;;;;;;AAAA;;AAMA;;AAmEA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AA9DA;;AACA;;AARA,MAAMA,KAAK,GAAGC,OAAO,CAAC,mBAAD,CAArB;;AAUA,MAAMC,GAAG,GAAG,wBAAZ;;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,CAAgDC,0CAAA,CAAqBC,IAArE,CAAhB;IACA,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAR,EAAhB;;IACA,IAAI,CAACD,OAAL,EAAc;MACV,MAAM,IAAIE,KAAJ,CACD,yEADC,CAAN;IAGH;;IAEDb,GAAG,CAACc,IAAJ,CAASnB,GAAT,EAAc,OAAOoB,OAAP,EAAgBC,KAAhB,KAA0B;MACpC,MAAMnB,MAA0C,GAAG;QAC/CkB,OAD+C;QAE/ChB,OAAO,EAAEC,GAAG,CAACM,MAFkC;QAG/CW,KAAK,EAAEnB,OAHwC;QAI/CoB,aAAa,EAAEnB,OAJgC;QAK/CiB;MAL+C,CAAnD;MAOA,MAAMG,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,CA7CD;AA8CH,CA/CM"}
|
package/eventBridge/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -10,7 +10,7 @@ var _exportNames = {
|
|
|
10
10
|
};
|
|
11
11
|
exports.createHandler = void 0;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
14
|
|
|
15
15
|
var _handler = require("@webiny/handler");
|
|
16
16
|
|
|
@@ -32,22 +32,17 @@ var _plugins = require("../plugins");
|
|
|
32
32
|
|
|
33
33
|
var _execute = require("../execute");
|
|
34
34
|
|
|
35
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
36
|
-
|
|
37
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
38
|
-
|
|
39
35
|
const Reply = require("fastify/lib/reply");
|
|
40
36
|
|
|
41
37
|
const url = "/webiny-sqs-event";
|
|
42
38
|
|
|
43
39
|
const createHandler = params => {
|
|
44
40
|
return (payload, context) => {
|
|
45
|
-
const app = (0, _handler.createHandler)({
|
|
46
|
-
|
|
47
|
-
options: _objectSpread({
|
|
41
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
42
|
+
options: (0, _objectSpread2.default)({
|
|
48
43
|
logger: params.debug === true
|
|
49
44
|
}, params.options || {})
|
|
50
|
-
});
|
|
45
|
+
}));
|
|
51
46
|
/**
|
|
52
47
|
* We always must add our default plugins to the app.
|
|
53
48
|
*/
|
package/eventBridge/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","
|
|
1
|
+
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","options","logger","debug","registerDefaultPlugins","webiny","plugins","byType","EventBridgeEventHandler","type","handler","shift","Error","post","request","reply","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 { EventBridgeEvent, Context as LambdaContext } from \"aws-lambda\";\nimport {\n EventBridgeEventHandler,\n EventBridgeEventHandlerCallableParams\n} from \"./plugins/EventBridgeEventHandler\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { execute } from \"~/execute\";\n\nconst url = \"/webiny-sqs-event\";\n\nexport interface HandlerCallable<DetailType extends string, Detail> {\n (\n event: EventBridgeEvent<DetailType, Detail>,\n context: LambdaContext\n ): Promise<APIGatewayProxyResult>;\n}\n\nexport interface CreateHandlerParams extends BaseCreateHandlerParams {\n debug?: boolean;\n}\n\nexport const createHandler = <DetailType extends string, Detail>(\n params: CreateHandlerParams\n): HandlerCallable<DetailType, Detail> => {\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<EventBridgeEventHandler<DetailType, Detail>>(\n EventBridgeEventHandler.type\n );\n const handler = plugins.shift();\n if (!handler) {\n throw new Error(\n `To run @webiny/handler-aws/eventBridge, you must have EventBridgeEventHandler set.`\n );\n }\n\n app.post(url, async (request, reply) => {\n const params: EventBridgeEventHandlerCallableParams<DetailType, Detail> = {\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/EventBridgeEventHandler\";\n"],"mappings":";;;;;;;;;;;;;;AAAA;;AAMA;;AA0EA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AArEA;;AACA;;AARA,MAAMA,KAAK,GAAGC,OAAO,CAAC,mBAAD,CAArB;;AAUA,MAAMC,GAAG,GAAG,mBAAZ;;AAaO,MAAMC,aAAa,GACtBC,MADyB,IAEa;EACtC,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,CACZC,gDAAA,CAAwBC,IADZ,CAAhB;IAGA,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAR,EAAhB;;IACA,IAAI,CAACD,OAAL,EAAc;MACV,MAAM,IAAIE,KAAJ,CACD,oFADC,CAAN;IAGH;;IAEDb,GAAG,CAACc,IAAJ,CAASnB,GAAT,EAAc,OAAOoB,OAAP,EAAgBC,KAAhB,KAA0B;MACpC,MAAMnB,MAAiE,GAAG;QACtEkB,OADsE;QAEtEC,KAFsE;QAGtEjB,OAAO,EAAEC,GAAG,CAACM,MAHyD;QAItER,OAJsE;QAKtEmB,aAAa,EAAElB;MALuD,CAA1E;MAOA,MAAMmB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAR,CAAWtB,MAAX,CAArB;;MAEA,IAAIqB,MAAM,YAAYzB,KAAtB,EAA6B;QACzB,OAAOyB,MAAP;MACH;;MAEAlB,GAAD,CAAaoB,mBAAb,GAAmCF,MAAnC;MACA,OAAOF,KAAK,CAACK,IAAN,CAAW,EAAX,CAAP;IACH,CAhBD;IAiBA,OAAO,IAAAC,gBAAA,EAAQ;MACXtB,GADW;MAEXL,GAFW;MAGXG;IAHW,CAAR,CAAP;EAKH,CA/CD;AAgDH,CAnDM"}
|
package/execute.js
CHANGED
|
@@ -1,20 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.execute = void 0;
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
11
|
|
|
12
12
|
var _types = require("./types");
|
|
13
13
|
|
|
14
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
-
|
|
16
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
|
-
|
|
18
14
|
const createHandleResponse = (app, resolve) => {
|
|
19
15
|
return (err, result) => {
|
|
20
16
|
if (err) {
|
|
@@ -43,7 +39,7 @@ const createHandleResponse = (app, resolve) => {
|
|
|
43
39
|
const getPayloadProperty = (payload, prop, defaults = {}) => {
|
|
44
40
|
if (typeof payload === "object") {
|
|
45
41
|
const value = payload[prop] ? payload[prop] : {};
|
|
46
|
-
return
|
|
42
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaults), value);
|
|
47
43
|
}
|
|
48
44
|
|
|
49
45
|
return defaults;
|
package/execute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createHandleResponse","app","resolve","err","result","statusCode","body","JSON","stringify","headers","__webiny_raw_result","isBase64Encoded","Base64EncodeHeader","encoded","binary","response","rawPayload","toString","payload","getPayloadProperty","prop","defaults","value","execute","params","url","query","cookies","Promise","inject","method"],"sources":["execute.ts"],"sourcesContent":["import { FastifyInstance } from \"@webiny/handler/types\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { LightMyRequestCallback } from \"fastify\";\nimport { Base64EncodeHeader } from \"~/types\";\n\ninterface Resolve {\n (response: APIGatewayProxyResult | any): void;\n}\nconst createHandleResponse = (app: FastifyInstance, resolve: Resolve): LightMyRequestCallback => {\n return (err, result) => {\n if (err) {\n return resolve({\n statusCode: 500,\n body: JSON.stringify(err),\n headers: {}\n });\n }\n if (app.__webiny_raw_result) {\n return resolve(app.__webiny_raw_result);\n }\n const isBase64Encoded =\n !!result.headers[Base64EncodeHeader.encoded] ||\n !!result.headers[Base64EncodeHeader.binary];\n const response: APIGatewayProxyResult = {\n statusCode: result.statusCode,\n body: isBase64Encoded ? result.rawPayload.toString(\"base64\") : result.payload,\n headers: result.headers as APIGatewayProxyResult[\"headers\"],\n isBase64Encoded\n };\n return resolve(response);\n };\n};\n\nconst getPayloadProperty = (\n payload: any,\n prop: string,\n defaults: Record<string, any> = {}\n): Record<string, any> => {\n if (typeof payload === \"object\") {\n const value = payload[prop] ? payload[prop] : {};\n\n return {\n ...defaults,\n ...value\n };\n }\n return defaults;\n};\n\nexport interface ExecuteParams {\n app: FastifyInstance;\n url: string;\n payload: any;\n}\n\nexport const execute = (params: ExecuteParams): Promise<any> => {\n const { app, url, payload } = params;\n\n const query = getPayloadProperty(payload, \"query\", {});\n const headers = getPayloadProperty(payload, \"headers\", {\n [\"content-type\"]: \"application/json\"\n });\n const cookies = getPayloadProperty(payload, \"cookies\", {});\n\n return new Promise(resolve => {\n app.inject(\n {\n method: \"POST\",\n url,\n payload: payload || {},\n query,\n headers,\n cookies\n },\n createHandleResponse(app, resolve)\n );\n });\n};\n"],"mappings":";;;;;;;;;;;AAGA
|
|
1
|
+
{"version":3,"names":["createHandleResponse","app","resolve","err","result","statusCode","body","JSON","stringify","headers","__webiny_raw_result","isBase64Encoded","Base64EncodeHeader","encoded","binary","response","rawPayload","toString","payload","getPayloadProperty","prop","defaults","value","execute","params","url","query","cookies","Promise","inject","method"],"sources":["execute.ts"],"sourcesContent":["import { FastifyInstance } from \"@webiny/handler/types\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { LightMyRequestCallback } from \"fastify\";\nimport { Base64EncodeHeader } from \"~/types\";\n\ninterface Resolve {\n (response: APIGatewayProxyResult | any): void;\n}\nconst createHandleResponse = (app: FastifyInstance, resolve: Resolve): LightMyRequestCallback => {\n return (err, result) => {\n if (err) {\n return resolve({\n statusCode: 500,\n body: JSON.stringify(err),\n headers: {}\n });\n }\n if (app.__webiny_raw_result) {\n return resolve(app.__webiny_raw_result);\n }\n const isBase64Encoded =\n !!result.headers[Base64EncodeHeader.encoded] ||\n !!result.headers[Base64EncodeHeader.binary];\n const response: APIGatewayProxyResult = {\n statusCode: result.statusCode,\n body: isBase64Encoded ? result.rawPayload.toString(\"base64\") : result.payload,\n headers: result.headers as APIGatewayProxyResult[\"headers\"],\n isBase64Encoded\n };\n return resolve(response);\n };\n};\n\nconst getPayloadProperty = (\n payload: any,\n prop: string,\n defaults: Record<string, any> = {}\n): Record<string, any> => {\n if (typeof payload === \"object\") {\n const value = payload[prop] ? payload[prop] : {};\n\n return {\n ...defaults,\n ...value\n };\n }\n return defaults;\n};\n\nexport interface ExecuteParams {\n app: FastifyInstance;\n url: string;\n payload: any;\n}\n\nexport const execute = (params: ExecuteParams): Promise<any> => {\n const { app, url, payload } = params;\n\n const query = getPayloadProperty(payload, \"query\", {});\n const headers = getPayloadProperty(payload, \"headers\", {\n [\"content-type\"]: \"application/json\"\n });\n const cookies = getPayloadProperty(payload, \"cookies\", {});\n\n return new Promise(resolve => {\n app.inject(\n {\n method: \"POST\",\n url,\n payload: payload || {},\n query,\n headers,\n cookies\n },\n createHandleResponse(app, resolve)\n );\n });\n};\n"],"mappings":";;;;;;;;;;;AAGA;;AAKA,MAAMA,oBAAoB,GAAG,CAACC,GAAD,EAAuBC,OAAvB,KAAoE;EAC7F,OAAO,CAACC,GAAD,EAAMC,MAAN,KAAiB;IACpB,IAAID,GAAJ,EAAS;MACL,OAAOD,OAAO,CAAC;QACXG,UAAU,EAAE,GADD;QAEXC,IAAI,EAAEC,IAAI,CAACC,SAAL,CAAeL,GAAf,CAFK;QAGXM,OAAO,EAAE;MAHE,CAAD,CAAd;IAKH;;IACD,IAAIR,GAAG,CAACS,mBAAR,EAA6B;MACzB,OAAOR,OAAO,CAACD,GAAG,CAACS,mBAAL,CAAd;IACH;;IACD,MAAMC,eAAe,GACjB,CAAC,CAACP,MAAM,CAACK,OAAP,CAAeG,yBAAA,CAAmBC,OAAlC,CAAF,IACA,CAAC,CAACT,MAAM,CAACK,OAAP,CAAeG,yBAAA,CAAmBE,MAAlC,CAFN;IAGA,MAAMC,QAA+B,GAAG;MACpCV,UAAU,EAAED,MAAM,CAACC,UADiB;MAEpCC,IAAI,EAAEK,eAAe,GAAGP,MAAM,CAACY,UAAP,CAAkBC,QAAlB,CAA2B,QAA3B,CAAH,GAA0Cb,MAAM,CAACc,OAFlC;MAGpCT,OAAO,EAAEL,MAAM,CAACK,OAHoB;MAIpCE;IAJoC,CAAxC;IAMA,OAAOT,OAAO,CAACa,QAAD,CAAd;EACH,CArBD;AAsBH,CAvBD;;AAyBA,MAAMI,kBAAkB,GAAG,CACvBD,OADuB,EAEvBE,IAFuB,EAGvBC,QAA6B,GAAG,EAHT,KAID;EACtB,IAAI,OAAOH,OAAP,KAAmB,QAAvB,EAAiC;IAC7B,MAAMI,KAAK,GAAGJ,OAAO,CAACE,IAAD,CAAP,GAAgBF,OAAO,CAACE,IAAD,CAAvB,GAAgC,EAA9C;IAEA,mEACOC,QADP,GAEOC,KAFP;EAIH;;EACD,OAAOD,QAAP;AACH,CAdD;;AAsBO,MAAME,OAAO,GAAIC,MAAD,IAAyC;EAC5D,MAAM;IAAEvB,GAAF;IAAOwB,GAAP;IAAYP;EAAZ,IAAwBM,MAA9B;EAEA,MAAME,KAAK,GAAGP,kBAAkB,CAACD,OAAD,EAAU,OAAV,EAAmB,EAAnB,CAAhC;EACA,MAAMT,OAAO,GAAGU,kBAAkB,CAACD,OAAD,EAAU,SAAV,EAAqB;IACnD,CAAC,cAAD,GAAkB;EADiC,CAArB,CAAlC;EAGA,MAAMS,OAAO,GAAGR,kBAAkB,CAACD,OAAD,EAAU,SAAV,EAAqB,EAArB,CAAlC;EAEA,OAAO,IAAIU,OAAJ,CAAY1B,OAAO,IAAI;IAC1BD,GAAG,CAAC4B,MAAJ,CACI;MACIC,MAAM,EAAE,MADZ;MAEIL,GAFJ;MAGIP,OAAO,EAAEA,OAAO,IAAI,EAHxB;MAIIQ,KAJJ;MAKIjB,OALJ;MAMIkB;IANJ,CADJ,EASI3B,oBAAoB,CAACC,GAAD,EAAMC,OAAN,CATxB;EAWH,CAZM,CAAP;AAaH,CAtBM"}
|
package/gateway/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -19,7 +19,7 @@ Object.defineProperty(exports, "createRoute", {
|
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
23
23
|
|
|
24
24
|
var _awsLambda = _interopRequireDefault(require("@fastify/aws-lambda"));
|
|
25
25
|
|
|
@@ -29,20 +29,57 @@ var _plugins = require("../plugins");
|
|
|
29
29
|
|
|
30
30
|
var _types = require("../types");
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
const getHeader = (headers, header) => {
|
|
33
|
+
for (const key in headers) {
|
|
34
|
+
if (key.toLowerCase() !== header) {
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return headers[key];
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return undefined;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const defaultContentType = "application/json";
|
|
45
|
+
const defaultCharset = "utf-8";
|
|
46
|
+
/**
|
|
47
|
+
* We need to attach default headers to the request, so it does not break if there is none sent.
|
|
48
|
+
*/
|
|
33
49
|
|
|
34
|
-
|
|
50
|
+
const attachRequiredProperties = event => {
|
|
51
|
+
/**
|
|
52
|
+
* A possibility that headers are not defined?
|
|
53
|
+
* Maybe during testing?
|
|
54
|
+
*/
|
|
55
|
+
if (!event.headers) {
|
|
56
|
+
event.headers = {};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
const contentType = getHeader(event.headers, "content-type");
|
|
60
|
+
/**
|
|
61
|
+
* We check the existing content type and add the default one if it does not exist.
|
|
62
|
+
*
|
|
63
|
+
* Also, if the content-type is the application/json, and the body is not sent, we add it.
|
|
64
|
+
*/
|
|
65
|
+
|
|
66
|
+
if (!contentType) {
|
|
67
|
+
event.headers["content-type"] = [defaultContentType, `charset=${defaultCharset}`].join(";");
|
|
68
|
+
event.body = "{}";
|
|
69
|
+
} else if (!event.body && contentType.startsWith(defaultContentType)) {
|
|
70
|
+
event.body = "{}";
|
|
71
|
+
}
|
|
72
|
+
};
|
|
35
73
|
|
|
36
74
|
const createHandler = params => {
|
|
37
75
|
return (event, context) => {
|
|
38
76
|
var _params$http;
|
|
39
77
|
|
|
40
|
-
const app = (0, _handler.createHandler)({
|
|
41
|
-
|
|
42
|
-
options: _objectSpread({
|
|
78
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
79
|
+
options: (0, _objectSpread2.default)({
|
|
43
80
|
logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
|
|
44
81
|
}, params.options || {})
|
|
45
|
-
});
|
|
82
|
+
}));
|
|
46
83
|
/**
|
|
47
84
|
* We always must add our default plugins to the app.
|
|
48
85
|
*/
|
|
@@ -53,7 +90,8 @@ const createHandler = params => {
|
|
|
53
90
|
throw new Error(`To run @webiny/handler-aws/gateway, you must have at least one RoutePlugin set.`);
|
|
54
91
|
}
|
|
55
92
|
|
|
56
|
-
|
|
93
|
+
attachRequiredProperties(event);
|
|
94
|
+
const appLambda = (0, _awsLambda.default)(app, (0, _objectSpread2.default)({
|
|
57
95
|
decorateRequest: true,
|
|
58
96
|
serializeLambdaArguments: true,
|
|
59
97
|
decorationPropertyName: "awsLambda",
|
package/gateway/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["getHeader","headers","header","key","toLowerCase","undefined","defaultContentType","defaultCharset","attachRequiredProperties","event","contentType","join","body","startsWith","createHandler","params","context","app","createBaseHandler","options","logger","http","debug","registerDefaultPlugins","webiny","plugins","byType","RoutePlugin","type","length","Error","appLambda","awsLambdaFastify","decorateRequest","serializeLambdaArguments","decorationPropertyName","enforceBase64","response","Base64EncodeHeader","encoded","binary","lambdaOptions"],"sources":["index.ts"],"sourcesContent":["import awsLambdaFastify, {\n LambdaFastifyOptions as LambdaOptions,\n LambdaResponse\n} from \"@fastify/aws-lambda\";\nimport { APIGatewayEvent, Context as LambdaContext } from \"aws-lambda\";\nimport {\n createHandler as createBaseHandler,\n CreateHandlerParams as BaseCreateHandlerParams,\n RoutePlugin,\n createRoute\n} from \"@webiny/handler\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { Base64EncodeHeader } from \"~/types\";\nimport { APIGatewayProxyEventHeaders } from \"aws-lambda/trigger/api-gateway-proxy\";\n\nexport interface HandlerCallable {\n (event: APIGatewayEvent, ctx: LambdaContext): Promise<LambdaResponse>;\n}\n\nexport interface CreateHandlerParams extends BaseCreateHandlerParams {\n http?: {\n debug?: boolean;\n };\n lambdaOptions?: LambdaOptions;\n}\n\nconst getHeader = (headers: APIGatewayProxyEventHeaders, header: string): string | undefined => {\n for (const key in headers) {\n if (key.toLowerCase() !== header) {\n continue;\n }\n return headers[key];\n }\n return undefined;\n};\n\nconst defaultContentType = \"application/json\";\nconst defaultCharset = \"utf-8\";\n/**\n * We need to attach default headers to the request, so it does not break if there is none sent.\n */\nconst attachRequiredProperties = (event: APIGatewayEvent): void => {\n /**\n * A possibility that headers are not defined?\n * Maybe during testing?\n */\n if (!event.headers) {\n event.headers = {};\n }\n const contentType = getHeader(event.headers, \"content-type\");\n /**\n * We check the existing content type and add the default one if it does not exist.\n *\n * Also, if the content-type is the application/json, and the body is not sent, we add it.\n */\n if (!contentType) {\n event.headers[\"content-type\"] = [defaultContentType, `charset=${defaultCharset}`].join(\";\");\n event.body = \"{}\";\n } else if (!event.body && contentType.startsWith(defaultContentType)) {\n event.body = \"{}\";\n }\n};\n\nexport const createHandler = (params: CreateHandlerParams): HandlerCallable => {\n return (event, 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 if (app.webiny.plugins.byType<RoutePlugin>(RoutePlugin.type).length === 0) {\n throw new Error(\n `To run @webiny/handler-aws/gateway, you must have at least one RoutePlugin set.`\n );\n }\n attachRequiredProperties(event);\n\n const appLambda = awsLambdaFastify(app, {\n decorateRequest: true,\n serializeLambdaArguments: true,\n decorationPropertyName: \"awsLambda\",\n enforceBase64: response => {\n return (\n !!response.headers[Base64EncodeHeader.encoded] ||\n !!response.headers[Base64EncodeHeader.binary]\n );\n },\n ...(params.lambdaOptions || {})\n });\n return appLambda(event, context);\n };\n};\n\nexport { RoutePlugin, createRoute };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAKA;;AAMA;;AACA;;AAcA,MAAMA,SAAS,GAAG,CAACC,OAAD,EAAuCC,MAAvC,KAA8E;EAC5F,KAAK,MAAMC,GAAX,IAAkBF,OAAlB,EAA2B;IACvB,IAAIE,GAAG,CAACC,WAAJ,OAAsBF,MAA1B,EAAkC;MAC9B;IACH;;IACD,OAAOD,OAAO,CAACE,GAAD,CAAd;EACH;;EACD,OAAOE,SAAP;AACH,CARD;;AAUA,MAAMC,kBAAkB,GAAG,kBAA3B;AACA,MAAMC,cAAc,GAAG,OAAvB;AACA;AACA;AACA;;AACA,MAAMC,wBAAwB,GAAIC,KAAD,IAAkC;EAC/D;AACJ;AACA;AACA;EACI,IAAI,CAACA,KAAK,CAACR,OAAX,EAAoB;IAChBQ,KAAK,CAACR,OAAN,GAAgB,EAAhB;EACH;;EACD,MAAMS,WAAW,GAAGV,SAAS,CAACS,KAAK,CAACR,OAAP,EAAgB,cAAhB,CAA7B;EACA;AACJ;AACA;AACA;AACA;;EACI,IAAI,CAACS,WAAL,EAAkB;IACdD,KAAK,CAACR,OAAN,CAAc,cAAd,IAAgC,CAACK,kBAAD,EAAsB,WAAUC,cAAe,EAA/C,EAAkDI,IAAlD,CAAuD,GAAvD,CAAhC;IACAF,KAAK,CAACG,IAAN,GAAa,IAAb;EACH,CAHD,MAGO,IAAI,CAACH,KAAK,CAACG,IAAP,IAAeF,WAAW,CAACG,UAAZ,CAAuBP,kBAAvB,CAAnB,EAA+D;IAClEG,KAAK,CAACG,IAAN,GAAa,IAAb;EACH;AACJ,CApBD;;AAsBO,MAAME,aAAa,GAAIC,MAAD,IAAkD;EAC3E,OAAO,CAACN,KAAD,EAAQO,OAAR,KAAoB;IAAA;;IACvB,MAAMC,GAAG,GAAG,IAAAC,sBAAA,8DACLH,MADK;MAERI,OAAO;QACHC,MAAM,EAAE,iBAAAL,MAAM,CAACM,IAAP,8DAAaC,KAAb,MAAuB;MAD5B,GAECP,MAAM,CAACI,OAAP,IAAkB,EAFnB;IAFC,GAAZ;IAOA;AACR;AACA;;IACQ,IAAAI,+BAAA,EAAuBN,GAAG,CAACO,MAA3B;;IAEA,IAAIP,GAAG,CAACO,MAAJ,CAAWC,OAAX,CAAmBC,MAAnB,CAAuCC,oBAAA,CAAYC,IAAnD,EAAyDC,MAAzD,KAAoE,CAAxE,EAA2E;MACvE,MAAM,IAAIC,KAAJ,CACD,iFADC,CAAN;IAGH;;IACDtB,wBAAwB,CAACC,KAAD,CAAxB;IAEA,MAAMsB,SAAS,GAAG,IAAAC,kBAAA,EAAiBf,GAAjB;MACdgB,eAAe,EAAE,IADH;MAEdC,wBAAwB,EAAE,IAFZ;MAGdC,sBAAsB,EAAE,WAHV;MAIdC,aAAa,EAAEC,QAAQ,IAAI;QACvB,OACI,CAAC,CAACA,QAAQ,CAACpC,OAAT,CAAiBqC,yBAAA,CAAmBC,OAApC,CAAF,IACA,CAAC,CAACF,QAAQ,CAACpC,OAAT,CAAiBqC,yBAAA,CAAmBE,MAApC,CAFN;MAIH;IATa,GAUVzB,MAAM,CAAC0B,aAAP,IAAwB,EAVd,EAAlB;IAYA,OAAOV,SAAS,CAACtB,KAAD,EAAQO,OAAR,CAAhB;EACH,CAjCD;AAkCH,CAnCM"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/handler-aws",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.34.0-beta.0",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -12,21 +12,21 @@
|
|
|
12
12
|
],
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@babel/runtime": "7.
|
|
16
|
-
"@fastify/aws-lambda": "3.1.
|
|
17
|
-
"@webiny/handler": "5.
|
|
18
|
-
"@webiny/handler-client": "5.
|
|
19
|
-
"@webiny/plugins": "5.
|
|
15
|
+
"@babel/runtime": "7.19.0",
|
|
16
|
+
"@fastify/aws-lambda": "3.1.3",
|
|
17
|
+
"@webiny/handler": "5.34.0-beta.0",
|
|
18
|
+
"@webiny/handler-client": "5.34.0-beta.0",
|
|
19
|
+
"@webiny/plugins": "5.34.0-beta.0",
|
|
20
20
|
"aws-lambda": "1.0.7",
|
|
21
|
-
"fastify": "4.
|
|
21
|
+
"fastify": "4.11.0"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
|
-
"@babel/cli": "^7.
|
|
25
|
-
"@babel/core": "^7.
|
|
26
|
-
"@babel/preset-env": "^7.
|
|
27
|
-
"@babel/preset-typescript": "^7.
|
|
28
|
-
"@webiny/cli": "^5.
|
|
29
|
-
"@webiny/project-utils": "^5.
|
|
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": "^5.34.0-beta.0",
|
|
29
|
+
"@webiny/project-utils": "^5.34.0-beta.0",
|
|
30
30
|
"rimraf": "^3.0.2",
|
|
31
31
|
"ttypescript": "^1.5.13",
|
|
32
32
|
"typescript": "4.7.4"
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"build": "yarn webiny run build",
|
|
40
40
|
"watch": "yarn webiny run watch"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "9648454619a1bfb35040eb00f27a64ed75194e61"
|
|
43
43
|
}
|
package/plugins/handlerClient.js
CHANGED
package/raw/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -10,7 +10,7 @@ var _exportNames = {
|
|
|
10
10
|
};
|
|
11
11
|
exports.createHandler = void 0;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
14
|
|
|
15
15
|
var _handler = require("@webiny/handler");
|
|
16
16
|
|
|
@@ -32,10 +32,12 @@ var _plugins = require("../plugins");
|
|
|
32
32
|
|
|
33
33
|
var _execute = require("../execute");
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
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
|
+
*/
|
|
39
41
|
const Reply = require("fastify/lib/reply");
|
|
40
42
|
|
|
41
43
|
const url = "/webiny-raw-event";
|
|
@@ -44,12 +46,11 @@ const createHandler = params => {
|
|
|
44
46
|
return (payload, context) => {
|
|
45
47
|
var _params$http;
|
|
46
48
|
|
|
47
|
-
const app = (0, _handler.createHandler)({
|
|
48
|
-
|
|
49
|
-
options: _objectSpread({
|
|
49
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
50
|
+
options: (0, _objectSpread2.default)({
|
|
50
51
|
logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
|
|
51
52
|
}, params.options || {})
|
|
52
|
-
});
|
|
53
|
+
}));
|
|
53
54
|
/**
|
|
54
55
|
* We always must add our default plugins to the app.
|
|
55
56
|
*/
|
package/raw/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","
|
|
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"}
|
package/s3/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -10,7 +10,7 @@ var _exportNames = {
|
|
|
10
10
|
};
|
|
11
11
|
exports.createHandler = void 0;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
14
|
|
|
15
15
|
var _handler = require("@webiny/handler");
|
|
16
16
|
|
|
@@ -32,22 +32,17 @@ var _plugins = require("../plugins");
|
|
|
32
32
|
|
|
33
33
|
var _execute = require("../execute");
|
|
34
34
|
|
|
35
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
36
|
-
|
|
37
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
38
|
-
|
|
39
35
|
const Reply = require("fastify/lib/reply");
|
|
40
36
|
|
|
41
37
|
const url = "/webiny-s3-event";
|
|
42
38
|
|
|
43
39
|
const createHandler = params => {
|
|
44
40
|
return (payload, context) => {
|
|
45
|
-
const app = (0, _handler.createHandler)({
|
|
46
|
-
|
|
47
|
-
options: _objectSpread({
|
|
41
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
42
|
+
options: (0, _objectSpread2.default)({
|
|
48
43
|
logger: params.debug === true
|
|
49
44
|
}, params.options || {})
|
|
50
|
-
});
|
|
45
|
+
}));
|
|
51
46
|
/**
|
|
52
47
|
* We always must add our default plugins to the app.
|
|
53
48
|
*/
|
package/s3/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","
|
|
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"}
|
package/sqs/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -10,7 +10,7 @@ var _exportNames = {
|
|
|
10
10
|
};
|
|
11
11
|
exports.createHandler = void 0;
|
|
12
12
|
|
|
13
|
-
var
|
|
13
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
14
14
|
|
|
15
15
|
var _handler = require("@webiny/handler");
|
|
16
16
|
|
|
@@ -32,22 +32,17 @@ var _plugins = require("../plugins");
|
|
|
32
32
|
|
|
33
33
|
var _execute = require("../execute");
|
|
34
34
|
|
|
35
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
36
|
-
|
|
37
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
38
|
-
|
|
39
35
|
const Reply = require("fastify/lib/reply");
|
|
40
36
|
|
|
41
37
|
const url = "/webiny-sqs-event";
|
|
42
38
|
|
|
43
39
|
const createHandler = params => {
|
|
44
40
|
return (payload, context) => {
|
|
45
|
-
const app = (0, _handler.createHandler)({
|
|
46
|
-
|
|
47
|
-
options: _objectSpread({
|
|
41
|
+
const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
42
|
+
options: (0, _objectSpread2.default)({
|
|
48
43
|
logger: params.debug === true
|
|
49
44
|
}, params.options || {})
|
|
50
|
-
});
|
|
45
|
+
}));
|
|
51
46
|
/**
|
|
52
47
|
* We always must add our default plugins to the app.
|
|
53
48
|
*/
|
package/sqs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","
|
|
1
|
+
{"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","options","logger","debug","registerDefaultPlugins","webiny","plugins","byType","SQSEventHandler","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 { SQSEvent, Context as LambdaContext } from \"aws-lambda\";\nimport { SQSEventHandler, SQSEventHandlerCallableParams } from \"./plugins/SQSEventHandler\";\nimport { APIGatewayProxyResult } from \"aws-lambda/trigger/api-gateway-proxy\";\nimport { registerDefaultPlugins } from \"~/plugins\";\nimport { execute } from \"~/execute\";\n\nconst url = \"/webiny-sqs-event\";\n\nexport interface HandlerCallable {\n (payload: SQSEvent, 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<SQSEventHandler>(SQSEventHandler.type);\n const handler = plugins.shift();\n if (!handler) {\n throw new Error(`To run @webiny/handler-aws/sqs, you must have SQSEventHandler set.`);\n }\n\n app.post(url, async (request, reply) => {\n const params: SQSEventHandlerCallableParams = {\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/SQSEventHandler\";\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,mBAAZ;;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,CAA2CC,gCAAA,CAAgBC,IAA3D,CAAhB;IACA,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAR,EAAhB;;IACA,IAAI,CAACD,OAAL,EAAc;MACV,MAAM,IAAIE,KAAJ,CAAW,oEAAX,CAAN;IACH;;IAEDb,GAAG,CAACc,IAAJ,CAASnB,GAAT,EAAc,OAAOoB,OAAP,EAAgBC,KAAhB,KAA0B;MACpC,MAAMnB,MAAqC,GAAG;QAC1CkB,OAD0C;QAE1CC,KAF0C;QAG1CjB,OAAO,EAAEC,GAAG,CAACM,MAH6B;QAI1CW,KAAK,EAAEnB,OAJmC;QAK1CoB,aAAa,EAAEnB;MAL2B,CAA9C;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"}
|