@webiny/handler-aws 0.0.0-unstable.6e5425ee89 → 0.0.0-unstable.7f63ea0744

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 CHANGED
@@ -28,12 +28,11 @@ const Reply = require("fastify/lib/reply");
28
28
  const url = "/webiny-dynamodb-event";
29
29
  const createHandler = params => {
30
30
  return (payload, context) => {
31
- const app = (0, _handler.createHandler)({
32
- plugins: params.plugins,
31
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
33
32
  options: (0, _objectSpread2.default)({
34
33
  logger: params.debug === true
35
34
  }, params.options || {})
36
- });
35
+ }));
37
36
  /**
38
37
  * We always must add our default plugins to the app.
39
38
  */
@@ -1 +1 @@
1
- {"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","plugins","options","logger","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,mBAAmB,CAAC;AAU1C,MAAMC,GAAG,GAAG,wBAAwB;AAU7B,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEL,MAAM,CAACK,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAEP,MAAM,CAACQ,KAAK,KAAK;MAAI,GACzBR,MAAM,CAACM,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAML,OAAO,GAAGF,GAAG,CAACO,MAAM,CAACL,OAAO,CAACM,MAAM,CAAuBC,0CAAoB,CAACC,IAAI,CAAC;IAC1F,MAAMC,OAAO,GAAGT,OAAO,CAACU,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CACV,yEAAwE,CAC5E;IACL;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAA0C,GAAG;QAC/CkB,OAAO;QACPhB,OAAO,EAAEC,GAAG,CAACO,MAAM;QACnBU,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB,OAAO;QACtBiB;MACJ,CAAC;MACD,MAAMG,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
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,mBAAmB,CAAC;AAU1C,MAAMC,GAAG,GAAG,wBAAwB;AAU7B,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBJ,MAAM;MACTK,OAAO;QACHC,MAAM,EAAEN,MAAM,CAACO,KAAK,KAAK;MAAI,GACzBP,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACL,GAAG,CAACM,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMC,OAAO,GAAGP,GAAG,CAACM,MAAM,CAACC,OAAO,CAACC,MAAM,CAAuBC,0CAAoB,CAACC,IAAI,CAAC;IAC1F,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CACV,yEAAwE,CAC5E;IACL;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAA0C,GAAG;QAC/CkB,OAAO;QACPhB,OAAO,EAAEC,GAAG,CAACM,MAAM;QACnBW,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB,OAAO;QACtBiB;MACJ,CAAC;MACD,MAAMG,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
@@ -28,12 +28,11 @@ const Reply = require("fastify/lib/reply");
28
28
  const url = "/webiny-sqs-event";
29
29
  const createHandler = params => {
30
30
  return (payload, context) => {
31
- const app = (0, _handler.createHandler)({
32
- plugins: params.plugins,
31
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
33
32
  options: (0, _objectSpread2.default)({
34
33
  logger: params.debug === true
35
34
  }, params.options || {})
36
- });
35
+ }));
37
36
  /**
38
37
  * We always must add our default plugins to the app.
39
38
  */
@@ -1 +1 @@
1
- {"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","plugins","options","logger","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,mBAAmB,CAAC;AAU1C,MAAMC,GAAG,GAAG,mBAAmB;AAaxB,MAAMC,aAAa,GACtBC,MAA2B,IACW;EACtC,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEL,MAAM,CAACK,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAEP,MAAM,CAACQ,KAAK,KAAK;MAAI,GACzBR,MAAM,CAACM,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAML,OAAO,GAAGF,GAAG,CAACO,MAAM,CAACL,OAAO,CAACM,MAAM,CACrCC,gDAAuB,CAACC,IAAI,CAC/B;IACD,MAAMC,OAAO,GAAGT,OAAO,CAACU,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CACV,oFAAmF,CACvF;IACL;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAiE,GAAG;QACtEkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACO,MAAM;QACnBT,OAAO;QACPmB,aAAa,EAAElB;MACnB,CAAC;MACD,MAAMmB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAE,CAACtB,MAAM,CAAC;MAEvC,IAAIqB,MAAM,YAAYzB,KAAK,EAAE;QACzB,OAAOyB,MAAM;MACjB;MAEClB,GAAG,CAASoB,mBAAmB,GAAGF,MAAM;MACzC,OAAOF,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXtB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
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,mBAAmB,CAAC;AAU1C,MAAMC,GAAG,GAAG,mBAAmB;AAaxB,MAAMC,aAAa,GACtBC,MAA2B,IACW;EACtC,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBJ,MAAM;MACTK,OAAO;QACHC,MAAM,EAAEN,MAAM,CAACO,KAAK,KAAK;MAAI,GACzBP,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACL,GAAG,CAACM,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMC,OAAO,GAAGP,GAAG,CAACM,MAAM,CAACC,OAAO,CAACC,MAAM,CACrCC,gDAAuB,CAACC,IAAI,CAC/B;IACD,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CACV,oFAAmF,CACvF;IACL;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAiE,GAAG;QACtEkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACM,MAAM;QACnBR,OAAO;QACPmB,aAAa,EAAElB;MACnB,CAAC;MACD,MAAMmB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAE,CAACtB,MAAM,CAAC;MAEvC,IAAIqB,MAAM,YAAYzB,KAAK,EAAE;QACzB,OAAOyB,MAAM;MACjB;MAEClB,GAAG,CAASoB,mBAAmB,GAAGF,MAAM;MACzC,OAAOF,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXtB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
package/gateway/index.js CHANGED
@@ -60,12 +60,11 @@ const attachRequiredProperties = event => {
60
60
  const createHandler = params => {
61
61
  return (event, context) => {
62
62
  var _params$http;
63
- const app = (0, _handler.createHandler)({
64
- plugins: params.plugins,
63
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
65
64
  options: (0, _objectSpread2.default)({
66
65
  logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
67
66
  }, params.options || {})
68
- });
67
+ }));
69
68
  /**
70
69
  * We always must add our default plugins to the app.
71
70
  */
@@ -1 +1 @@
1
- {"version":3,"names":["getHeader","headers","header","key","toLowerCase","undefined","defaultContentType","defaultCharset","attachRequiredProperties","event","contentType","join","body","startsWith","createHandler","params","context","app","createBaseHandler","plugins","options","logger","http","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,OAAoC,EAAEC,MAAc,KAAyB;EAC5F,KAAK,MAAMC,GAAG,IAAIF,OAAO,EAAE;IACvB,IAAIE,GAAG,CAACC,WAAW,EAAE,KAAKF,MAAM,EAAE;MAC9B;IACJ;IACA,OAAOD,OAAO,CAACE,GAAG,CAAC;EACvB;EACA,OAAOE,SAAS;AACpB,CAAC;AAED,MAAMC,kBAAkB,GAAG,kBAAkB;AAC7C,MAAMC,cAAc,GAAG,OAAO;AAC9B;AACA;AACA;AACA,MAAMC,wBAAwB,GAAIC,KAAsB,IAAW;EAC/D;AACJ;AACA;AACA;EACI,IAAI,CAACA,KAAK,CAACR,OAAO,EAAE;IAChBQ,KAAK,CAACR,OAAO,GAAG,CAAC,CAAC;EACtB;EACA,MAAMS,WAAW,GAAGV,SAAS,CAACS,KAAK,CAACR,OAAO,EAAE,cAAc,CAAC;EAC5D;AACJ;AACA;AACA;AACA;EACI,IAAI,CAACS,WAAW,EAAE;IACdD,KAAK,CAACR,OAAO,CAAC,cAAc,CAAC,GAAG,CAACK,kBAAkB,EAAG,WAAUC,cAAe,EAAC,CAAC,CAACI,IAAI,CAAC,GAAG,CAAC;IAC3FF,KAAK,CAACG,IAAI,GAAG,IAAI;EACrB,CAAC,MAAM,IAAI,CAACH,KAAK,CAACG,IAAI,IAAIF,WAAW,CAACG,UAAU,CAACP,kBAAkB,CAAC,EAAE;IAClEG,KAAK,CAACG,IAAI,GAAG,IAAI;EACrB;AACJ,CAAC;AAEM,MAAME,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACN,KAAK,EAAEO,OAAO,KAAK;IAAA;IACvB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEJ,MAAM,CAACI,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAE,iBAAAN,MAAM,CAACO,IAAI,iDAAX,aAAaC,KAAK,MAAK;MAAI,GAC/BR,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAI,+BAAsB,EAACP,GAAG,CAACQ,MAAM,CAAC;IAElC,IAAIR,GAAG,CAACQ,MAAM,CAACN,OAAO,CAACO,MAAM,CAAcC,oBAAW,CAACC,IAAI,CAAC,CAACC,MAAM,KAAK,CAAC,EAAE;MACvE,MAAM,IAAIC,KAAK,CACV,iFAAgF,CACpF;IACL;IACAtB,wBAAwB,CAACC,KAAK,CAAC;IAE/B,MAAMsB,SAAS,GAAG,IAAAC,kBAAgB,EAACf,GAAG;MAClCgB,eAAe,EAAE,IAAI;MACrBC,wBAAwB,EAAE,IAAI;MAC9BC,sBAAsB,EAAE,WAAW;MACnCC,aAAa,EAAEC,QAAQ,IAAI;QACvB,OACI,CAAC,CAACA,QAAQ,CAACpC,OAAO,CAACqC,yBAAkB,CAACC,OAAO,CAAC,IAC9C,CAAC,CAACF,QAAQ,CAACpC,OAAO,CAACqC,yBAAkB,CAACE,MAAM,CAAC;MAErD;IAAC,GACGzB,MAAM,CAAC0B,aAAa,IAAI,CAAC,CAAC,EAChC;IACF,OAAOV,SAAS,CAACtB,KAAK,EAAEO,OAAO,CAAC;EACpC,CAAC;AACL,CAAC;AAAC"}
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,OAAoC,EAAEC,MAAc,KAAyB;EAC5F,KAAK,MAAMC,GAAG,IAAIF,OAAO,EAAE;IACvB,IAAIE,GAAG,CAACC,WAAW,EAAE,KAAKF,MAAM,EAAE;MAC9B;IACJ;IACA,OAAOD,OAAO,CAACE,GAAG,CAAC;EACvB;EACA,OAAOE,SAAS;AACpB,CAAC;AAED,MAAMC,kBAAkB,GAAG,kBAAkB;AAC7C,MAAMC,cAAc,GAAG,OAAO;AAC9B;AACA;AACA;AACA,MAAMC,wBAAwB,GAAIC,KAAsB,IAAW;EAC/D;AACJ;AACA;AACA;EACI,IAAI,CAACA,KAAK,CAACR,OAAO,EAAE;IAChBQ,KAAK,CAACR,OAAO,GAAG,CAAC,CAAC;EACtB;EACA,MAAMS,WAAW,GAAGV,SAAS,CAACS,KAAK,CAACR,OAAO,EAAE,cAAc,CAAC;EAC5D;AACJ;AACA;AACA;AACA;EACI,IAAI,CAACS,WAAW,EAAE;IACdD,KAAK,CAACR,OAAO,CAAC,cAAc,CAAC,GAAG,CAACK,kBAAkB,EAAG,WAAUC,cAAe,EAAC,CAAC,CAACI,IAAI,CAAC,GAAG,CAAC;IAC3FF,KAAK,CAACG,IAAI,GAAG,IAAI;EACrB,CAAC,MAAM,IAAI,CAACH,KAAK,CAACG,IAAI,IAAIF,WAAW,CAACG,UAAU,CAACP,kBAAkB,CAAC,EAAE;IAClEG,KAAK,CAACG,IAAI,GAAG,IAAI;EACrB;AACJ,CAAC;AAEM,MAAME,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACN,KAAK,EAAEO,OAAO,KAAK;IAAA;IACvB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBH,MAAM;MACTI,OAAO;QACHC,MAAM,EAAE,iBAAAL,MAAM,CAACM,IAAI,iDAAX,aAAaC,KAAK,MAAK;MAAI,GAC/BP,MAAM,CAACI,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAI,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAElC,IAAIP,GAAG,CAACO,MAAM,CAACC,OAAO,CAACC,MAAM,CAAcC,oBAAW,CAACC,IAAI,CAAC,CAACC,MAAM,KAAK,CAAC,EAAE;MACvE,MAAM,IAAIC,KAAK,CACV,iFAAgF,CACpF;IACL;IACAtB,wBAAwB,CAACC,KAAK,CAAC;IAE/B,MAAMsB,SAAS,GAAG,IAAAC,kBAAgB,EAACf,GAAG;MAClCgB,eAAe,EAAE,IAAI;MACrBC,wBAAwB,EAAE,IAAI;MAC9BC,sBAAsB,EAAE,WAAW;MACnCC,aAAa,EAAEC,QAAQ,IAAI;QACvB,OACI,CAAC,CAACA,QAAQ,CAACpC,OAAO,CAACqC,yBAAkB,CAACC,OAAO,CAAC,IAC9C,CAAC,CAACF,QAAQ,CAACpC,OAAO,CAACqC,yBAAkB,CAACE,MAAM,CAAC;MAErD;IAAC,GACGzB,MAAM,CAAC0B,aAAa,IAAI,CAAC,CAAC,EAChC;IACF,OAAOV,SAAS,CAACtB,KAAK,EAAEO,OAAO,CAAC;EACpC,CAAC;AACL,CAAC;AAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/handler-aws",
3
- "version": "0.0.0-unstable.6e5425ee89",
3
+ "version": "0.0.0-unstable.7f63ea0744",
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.20.1",
15
+ "@babel/runtime": "7.20.13",
16
16
  "@fastify/aws-lambda": "3.1.3",
17
- "@webiny/handler": "0.0.0-unstable.6e5425ee89",
18
- "@webiny/handler-client": "0.0.0-unstable.6e5425ee89",
19
- "@webiny/plugins": "0.0.0-unstable.6e5425ee89",
17
+ "@webiny/handler": "0.0.0-unstable.7f63ea0744",
18
+ "@webiny/handler-client": "0.0.0-unstable.7f63ea0744",
19
+ "@webiny/plugins": "0.0.0-unstable.7f63ea0744",
20
20
  "aws-lambda": "1.0.7",
21
- "fastify": "4.10.2"
21
+ "fastify": "4.11.0"
22
22
  },
23
23
  "devDependencies": {
24
24
  "@babel/cli": "^7.19.3",
25
25
  "@babel/core": "^7.19.3",
26
26
  "@babel/preset-env": "^7.19.4",
27
27
  "@babel/preset-typescript": "^7.18.6",
28
- "@webiny/cli": "^0.0.0-unstable.6e5425ee89",
29
- "@webiny/project-utils": "^0.0.0-unstable.6e5425ee89",
28
+ "@webiny/cli": "^0.0.0-unstable.7f63ea0744",
29
+ "@webiny/project-utils": "^0.0.0-unstable.7f63ea0744",
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": "1e49c5d4b72b2f00661572464188f53b42ed7745"
42
+ "gitHead": "7f63ea0744c9e31977e5dabb95538d22b4db585c"
43
43
  }
package/raw/index.js CHANGED
@@ -36,12 +36,11 @@ const url = "/webiny-raw-event";
36
36
  const createHandler = params => {
37
37
  return (payload, context) => {
38
38
  var _params$http;
39
- const app = (0, _handler.createHandler)({
40
- plugins: params.plugins,
39
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
41
40
  options: (0, _objectSpread2.default)({
42
41
  logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
43
42
  }, params.options || {})
44
- });
43
+ }));
45
44
  /**
46
45
  * We always must add our default plugins to the app.
47
46
  */
package/raw/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","plugins","options","logger","http","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,mBAAmB;AAYxB,MAAMC,aAAa,GACtBC,MAA2B,IACU;EACrC,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IAAA;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEL,MAAM,CAACK,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAE,iBAAAP,MAAM,CAACQ,IAAI,iDAAX,aAAaC,KAAK,MAAK;MAAI,GAC/BT,MAAM,CAACM,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAI,+BAAsB,EAACP,GAAG,CAACQ,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMN,OAAO,GAAGF,GAAG,CAACQ,MAAM,CAACN,OAAO,CAACO,MAAM,CACrCC,gCAAe,CAACC,IAAI,CACvB;IACD,MAAMC,OAAO,GAAGV,OAAO,CAACW,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,oEAAmE,CAAC;IACzF;IAEAd,GAAG,CAACe,IAAI,CAACpB,GAAG,EAAE,OAAOqB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMpB,MAAM,GAAG;QACXmB,OAAO;QACPC,KAAK;QACLlB,OAAO,EAAEC,GAAG,CAACQ,MAAM;QACnBV,OAAO;QACPoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOF,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,mBAAmB;AAYxB,MAAMC,aAAa,GACtBC,MAA2B,IACU;EACrC,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IAAA;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBJ,MAAM;MACTK,OAAO;QACHC,MAAM,EAAE,iBAAAN,MAAM,CAACO,IAAI,iDAAX,aAAaC,KAAK,MAAK;MAAI,GAC/BR,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAI,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMC,OAAO,GAAGR,GAAG,CAACO,MAAM,CAACC,OAAO,CAACC,MAAM,CACrCC,gCAAe,CAACC,IAAI,CACvB;IACD,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,oEAAmE,CAAC;IACzF;IAEAd,GAAG,CAACe,IAAI,CAACpB,GAAG,EAAE,OAAOqB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMpB,MAAM,GAAG;QACXmB,OAAO;QACPC,KAAK;QACLlB,OAAO,EAAEC,GAAG,CAACO,MAAM;QACnBT,OAAO;QACPoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMP,OAAO,CAACQ,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOF,KAAK,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
package/s3/index.js CHANGED
@@ -28,12 +28,11 @@ const Reply = require("fastify/lib/reply");
28
28
  const url = "/webiny-s3-event";
29
29
  const createHandler = params => {
30
30
  return (payload, context) => {
31
- const app = (0, _handler.createHandler)({
32
- plugins: params.plugins,
31
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
33
32
  options: (0, _objectSpread2.default)({
34
33
  logger: params.debug === true
35
34
  }, params.options || {})
36
- });
35
+ }));
37
36
  /**
38
37
  * We always must add our default plugins to the app.
39
38
  */
package/s3/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","plugins","options","logger","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,kBAAkB;AAUvB,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEL,MAAM,CAACK,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAEP,MAAM,CAACQ,KAAK,KAAK;MAAI,GACzBR,MAAM,CAACM,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAML,OAAO,GAAGF,GAAG,CAACO,MAAM,CAACL,OAAO,CAACM,MAAM,CAAiBC,8BAAc,CAACC,IAAI,CAAC;IAC9E,MAAMC,OAAO,GAAGT,OAAO,CAACU,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,kEAAiE,CAAC;IACvF;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAoC,GAAG;QACzCkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACO,MAAM;QACnBU,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,kBAAkB;AAUvB,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBJ,MAAM;MACTK,OAAO;QACHC,MAAM,EAAEN,MAAM,CAACO,KAAK,KAAK;MAAI,GACzBP,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACL,GAAG,CAACM,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMC,OAAO,GAAGP,GAAG,CAACM,MAAM,CAACC,OAAO,CAACC,MAAM,CAAiBC,8BAAc,CAACC,IAAI,CAAC;IAC9E,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,kEAAiE,CAAC;IACvF;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAoC,GAAG;QACzCkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACM,MAAM;QACnBW,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
package/sqs/index.js CHANGED
@@ -28,12 +28,11 @@ const Reply = require("fastify/lib/reply");
28
28
  const url = "/webiny-sqs-event";
29
29
  const createHandler = params => {
30
30
  return (payload, context) => {
31
- const app = (0, _handler.createHandler)({
32
- plugins: params.plugins,
31
+ const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
33
32
  options: (0, _objectSpread2.default)({
34
33
  logger: params.debug === true
35
34
  }, params.options || {})
36
- });
35
+ }));
37
36
  /**
38
37
  * We always must add our default plugins to the app.
39
38
  */
package/sqs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["Reply","require","url","createHandler","params","payload","context","app","createBaseHandler","plugins","options","logger","debug","registerDefaultPlugins","webiny","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 plugins: params.plugins,\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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,mBAAmB;AAUxB,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,EAAC;MAC1BC,OAAO,EAAEL,MAAM,CAACK,OAAO;MACvBC,OAAO;QACHC,MAAM,EAAEP,MAAM,CAACQ,KAAK,KAAK;MAAI,GACzBR,MAAM,CAACM,OAAO,IAAI,CAAC,CAAC;IAEhC,CAAC,CAAC;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACN,GAAG,CAACO,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAML,OAAO,GAAGF,GAAG,CAACO,MAAM,CAACL,OAAO,CAACM,MAAM,CAAkBC,gCAAe,CAACC,IAAI,CAAC;IAChF,MAAMC,OAAO,GAAGT,OAAO,CAACU,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,oEAAmE,CAAC;IACzF;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAqC,GAAG;QAC1CkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACO,MAAM;QACnBU,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}
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,mBAAmB,CAAC;AAO1C,MAAMC,GAAG,GAAG,mBAAmB;AAUxB,MAAMC,aAAa,GAAIC,MAA2B,IAAsB;EAC3E,OAAO,CAACC,OAAO,EAAEC,OAAO,KAAK;IACzB,MAAMC,GAAG,GAAG,IAAAC,sBAAiB,8DACtBJ,MAAM;MACTK,OAAO;QACHC,MAAM,EAAEN,MAAM,CAACO,KAAK,KAAK;MAAI,GACzBP,MAAM,CAACK,OAAO,IAAI,CAAC,CAAC;IAC3B,GACH;IACF;AACR;AACA;IACQ,IAAAG,+BAAsB,EAACL,GAAG,CAACM,MAAM,CAAC;IAClC;AACR;AACA;IACQ,MAAMC,OAAO,GAAGP,GAAG,CAACM,MAAM,CAACC,OAAO,CAACC,MAAM,CAAkBC,gCAAe,CAACC,IAAI,CAAC;IAChF,MAAMC,OAAO,GAAGJ,OAAO,CAACK,KAAK,EAAE;IAC/B,IAAI,CAACD,OAAO,EAAE;MACV,MAAM,IAAIE,KAAK,CAAE,oEAAmE,CAAC;IACzF;IAEAb,GAAG,CAACc,IAAI,CAACnB,GAAG,EAAE,OAAOoB,OAAO,EAAEC,KAAK,KAAK;MACpC,MAAMnB,MAAqC,GAAG;QAC1CkB,OAAO;QACPC,KAAK;QACLjB,OAAO,EAAEC,GAAG,CAACM,MAAM;QACnBW,KAAK,EAAEnB,OAAO;QACdoB,aAAa,EAAEnB;MACnB,CAAC;MACD,MAAMoB,MAAM,GAAG,MAAMR,OAAO,CAACS,EAAE,CAACvB,MAAM,CAAC;MAEvC,IAAIsB,MAAM,YAAY1B,KAAK,EAAE;QACzB,OAAO0B,MAAM;MACjB;MAECnB,GAAG,CAASqB,mBAAmB,GAAGF,MAAM;MACzC,OAAOH,KAAK,CAACM,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,IAAAC,gBAAO,EAAC;MACXvB,GAAG;MACHL,GAAG;MACHG;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAAC"}