@webiny/handler-aws 0.0.0-unstable.aa00eecd97 → 0.0.0-unstable.ac6ebf63c6

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.
Files changed (103) hide show
  1. package/README.md +10 -14
  2. package/createHandler.d.ts +2 -0
  3. package/createHandler.js +29 -0
  4. package/createHandler.js.map +1 -0
  5. package/dynamodb/index.d.ts +5 -8
  6. package/dynamodb/index.js +27 -40
  7. package/dynamodb/index.js.map +1 -1
  8. package/dynamodb/plugins/DynamoDBEventHandler.d.ts +8 -7
  9. package/dynamodb/plugins/DynamoDBEventHandler.js +6 -15
  10. package/dynamodb/plugins/DynamoDBEventHandler.js.map +1 -1
  11. package/dynamodb/register.d.ts +1 -0
  12. package/dynamodb/register.js +26 -0
  13. package/dynamodb/register.js.map +1 -0
  14. package/eventBridge/index.d.ts +7 -10
  15. package/eventBridge/index.js +28 -41
  16. package/eventBridge/index.js.map +1 -1
  17. package/eventBridge/plugins/EventBridgeEventHandler.d.ts +8 -7
  18. package/eventBridge/plugins/EventBridgeEventHandler.js +6 -15
  19. package/eventBridge/plugins/EventBridgeEventHandler.js.map +1 -1
  20. package/eventBridge/register.d.ts +4 -0
  21. package/eventBridge/register.js +19 -0
  22. package/eventBridge/register.js.map +1 -0
  23. package/execute.d.ts +1 -1
  24. package/execute.js +19 -14
  25. package/execute.js.map +1 -1
  26. package/gateway/index.d.ts +7 -11
  27. package/gateway/index.js +28 -39
  28. package/gateway/index.js.map +1 -1
  29. package/gateway/register.d.ts +1 -0
  30. package/gateway/register.js +19 -0
  31. package/gateway/register.js.map +1 -0
  32. package/index.d.ts +35 -7
  33. package/index.js +47 -257
  34. package/index.js.map +1 -1
  35. package/package.json +15 -22
  36. package/plugins/handlerClient.js +12 -18
  37. package/plugins/handlerClient.js.map +1 -1
  38. package/plugins/index.d.ts +1 -1
  39. package/plugins/index.js +5 -10
  40. package/plugins/index.js.map +1 -1
  41. package/raw/index.d.ts +5 -10
  42. package/raw/index.js +33 -41
  43. package/raw/index.js.map +1 -1
  44. package/raw/plugins/RawEventHandler.d.ts +17 -6
  45. package/raw/plugins/RawEventHandler.js +22 -13
  46. package/raw/plugins/RawEventHandler.js.map +1 -1
  47. package/registry.d.ts +17 -0
  48. package/registry.js +38 -0
  49. package/registry.js.map +1 -0
  50. package/s3/index.d.ts +6 -9
  51. package/s3/index.js +30 -43
  52. package/s3/index.js.map +1 -1
  53. package/s3/plugins/S3EventHandler.d.ts +8 -7
  54. package/s3/plugins/S3EventHandler.js +6 -15
  55. package/s3/plugins/S3EventHandler.js.map +1 -1
  56. package/s3/register.d.ts +4 -0
  57. package/s3/register.js +23 -0
  58. package/s3/register.js.map +1 -0
  59. package/sns/index.d.ts +8 -0
  60. package/sns/index.js +57 -0
  61. package/sns/index.js.map +1 -0
  62. package/sns/plugins/SNSEventHandler.d.ts +20 -0
  63. package/sns/plugins/SNSEventHandler.js +13 -0
  64. package/sns/plugins/SNSEventHandler.js.map +1 -0
  65. package/sns/register.d.ts +1 -0
  66. package/sns/register.js +23 -0
  67. package/sns/register.js.map +1 -0
  68. package/sourceHandler.d.ts +2 -0
  69. package/sourceHandler.js +5 -0
  70. package/sourceHandler.js.map +1 -0
  71. package/sqs/index.d.ts +6 -9
  72. package/sqs/index.js +34 -44
  73. package/sqs/index.js.map +1 -1
  74. package/sqs/plugins/SQSEventHandler.d.ts +8 -7
  75. package/sqs/plugins/SQSEventHandler.js +6 -15
  76. package/sqs/plugins/SQSEventHandler.js.map +1 -1
  77. package/sqs/register.d.ts +1 -0
  78. package/sqs/register.js +26 -0
  79. package/sqs/register.js.map +1 -0
  80. package/types.d.ts +28 -5
  81. package/types.js +7 -26
  82. package/types.js.map +1 -1
  83. package/utils/composedHandler.d.ts +6 -0
  84. package/utils/composedHandler.js +17 -0
  85. package/utils/composedHandler.js.map +1 -0
  86. package/utils/index.d.ts +2 -0
  87. package/utils/index.js +4 -0
  88. package/utils/index.js.map +1 -0
  89. package/utils/timer/CustomTimer.d.ts +5 -0
  90. package/utils/timer/CustomTimer.js +12 -0
  91. package/utils/timer/CustomTimer.js.map +1 -0
  92. package/utils/timer/Timer.d.ts +10 -0
  93. package/utils/timer/Timer.js +17 -0
  94. package/utils/timer/Timer.js.map +1 -0
  95. package/utils/timer/abstractions/ITimer.d.ts +10 -0
  96. package/utils/timer/abstractions/ITimer.js +3 -0
  97. package/utils/timer/abstractions/ITimer.js.map +1 -0
  98. package/utils/timer/factory.d.ts +4 -0
  99. package/utils/timer/factory.js +13 -0
  100. package/utils/timer/factory.js.map +1 -0
  101. package/utils/timer/index.d.ts +4 -0
  102. package/utils/timer/index.js +5 -0
  103. package/utils/timer/index.js.map +1 -0
package/execute.js CHANGED
@@ -1,12 +1,4 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.execute = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _types = require("./types");
1
+ import { Base64EncodeHeader } from "./types.js";
10
2
  const createHandleResponse = (app, resolve) => {
11
3
  return (err, result) => {
12
4
  if (err) {
@@ -18,8 +10,16 @@ const createHandleResponse = (app, resolve) => {
18
10
  }
19
11
  if (app.__webiny_raw_result) {
20
12
  return resolve(app.__webiny_raw_result);
13
+ } else if (!result) {
14
+ const response = {
15
+ statusCode: 200,
16
+ body: "",
17
+ headers: {},
18
+ isBase64Encoded: false
19
+ };
20
+ return resolve(response);
21
21
  }
22
- const isBase64Encoded = !!result.headers[_types.Base64EncodeHeader.encoded] || !!result.headers[_types.Base64EncodeHeader.binary];
22
+ const isBase64Encoded = !!result.headers[Base64EncodeHeader.encoded] || !!result.headers[Base64EncodeHeader.binary];
23
23
  const response = {
24
24
  statusCode: result.statusCode,
25
25
  body: isBase64Encoded ? result.rawPayload.toString("base64") : result.payload,
@@ -30,13 +30,16 @@ const createHandleResponse = (app, resolve) => {
30
30
  };
31
31
  };
32
32
  const getPayloadProperty = (payload, prop, defaults = {}) => {
33
- if (typeof payload === "object") {
33
+ if (payload && typeof payload === "object") {
34
34
  const value = payload[prop] ? payload[prop] : {};
35
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, defaults), value);
35
+ return {
36
+ ...defaults,
37
+ ...value
38
+ };
36
39
  }
37
40
  return defaults;
38
41
  };
39
- const execute = params => {
42
+ export const execute = params => {
40
43
  const {
41
44
  app,
42
45
  url,
@@ -52,10 +55,12 @@ const execute = params => {
52
55
  method: "POST",
53
56
  url,
54
57
  payload: payload || {},
58
+ body: payload || {},
55
59
  query,
56
60
  headers,
57
61
  cookies
58
62
  }, createHandleResponse(app, resolve));
59
63
  });
60
64
  };
61
- exports.execute = execute;
65
+
66
+ //# sourceMappingURL=execute.js.map
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;AAKA,MAAMA,oBAAoB,GAAG,CAACC,GAAoB,EAAEC,OAAgB,KAA6B;EAC7F,OAAO,CAACC,GAAG,EAAEC,MAAM,KAAK;IACpB,IAAID,GAAG,EAAE;MACL,OAAOD,OAAO,CAAC;QACXG,UAAU,EAAE,GAAG;QACfC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACL,GAAG,CAAC;QACzBM,OAAO,EAAE,CAAC;MACd,CAAC,CAAC;IACN;IACA,IAAIR,GAAG,CAACS,mBAAmB,EAAE;MACzB,OAAOR,OAAO,CAACD,GAAG,CAACS,mBAAmB,CAAC;IAC3C;IACA,MAAMC,eAAe,GACjB,CAAC,CAACP,MAAM,CAACK,OAAO,CAACG,yBAAkB,CAACC,OAAO,CAAC,IAC5C,CAAC,CAACT,MAAM,CAACK,OAAO,CAACG,yBAAkB,CAACE,MAAM,CAAC;IAC/C,MAAMC,QAA+B,GAAG;MACpCV,UAAU,EAAED,MAAM,CAACC,UAAU;MAC7BC,IAAI,EAAEK,eAAe,GAAGP,MAAM,CAACY,UAAU,CAACC,QAAQ,CAAC,QAAQ,CAAC,GAAGb,MAAM,CAACc,OAAO;MAC7ET,OAAO,EAAEL,MAAM,CAACK,OAA2C;MAC3DE;IACJ,CAAC;IACD,OAAOT,OAAO,CAACa,QAAQ,CAAC;EAC5B,CAAC;AACL,CAAC;AAED,MAAMI,kBAAkB,GAAG,CACvBD,OAAY,EACZE,IAAY,EACZC,QAA6B,GAAG,CAAC,CAAC,KACZ;EACtB,IAAI,OAAOH,OAAO,KAAK,QAAQ,EAAE;IAC7B,MAAMI,KAAK,GAAGJ,OAAO,CAACE,IAAI,CAAC,GAAGF,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhD,mEACOC,QAAQ,GACRC,KAAK;EAEhB;EACA,OAAOD,QAAQ;AACnB,CAAC;AAQM,MAAME,OAAO,GAAIC,MAAqB,IAAmB;EAC5D,MAAM;IAAEvB,GAAG;IAAEwB,GAAG;IAAEP;EAAQ,CAAC,GAAGM,MAAM;EAEpC,MAAME,KAAK,GAAGP,kBAAkB,CAACD,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EACtD,MAAMT,OAAO,GAAGU,kBAAkB,CAACD,OAAO,EAAE,SAAS,EAAE;IACnD,CAAC,cAAc,GAAG;EACtB,CAAC,CAAC;EACF,MAAMS,OAAO,GAAGR,kBAAkB,CAACD,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;EAE1D,OAAO,IAAIU,OAAO,CAAC1B,OAAO,IAAI;IAC1BD,GAAG,CAAC4B,MAAM,CACN;MACIC,MAAM,EAAE,MAAM;MACdL,GAAG;MACHP,OAAO,EAAEA,OAAO,IAAI,CAAC,CAAC;MACtBQ,KAAK;MACLjB,OAAO;MACPkB;IACJ,CAAC,EACD3B,oBAAoB,CAACC,GAAG,EAAEC,OAAO,CAAC,CACrC;EACL,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["Base64EncodeHeader","createHandleResponse","app","resolve","err","result","statusCode","body","JSON","stringify","headers","__webiny_raw_result","response","isBase64Encoded","encoded","binary","rawPayload","toString","payload","getPayloadProperty","prop","defaults","value","execute","params","url","query","cookies","Promise","inject","method"],"sources":["execute.ts"],"sourcesContent":["import type { FastifyInstance } from \"@webiny/handler/types.js\";\nimport type { APIGatewayProxyResult } from \"@webiny/aws-sdk/types/index.js\";\nimport type { LightMyRequestCallback } from \"fastify\";\nimport { Base64EncodeHeader } from \"~/types.js\";\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 } else if (!result) {\n const response: APIGatewayProxyResult = {\n statusCode: 200,\n body: \"\",\n headers: {},\n isBase64Encoded: false\n };\n return resolve(response);\n }\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 (payload && 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\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 body: payload || {},\n query,\n headers,\n cookies\n },\n createHandleResponse(app, resolve)\n );\n });\n};\n"],"mappings":"AAGA,SAASA,kBAAkB;AAK3B,MAAMC,oBAAoB,GAAGA,CAACC,GAAoB,EAAEC,OAAgB,KAA6B;EAC7F,OAAO,CAACC,GAAG,EAAEC,MAAM,KAAK;IACpB,IAAID,GAAG,EAAE;MACL,OAAOD,OAAO,CAAC;QACXG,UAAU,EAAE,GAAG;QACfC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACL,GAAG,CAAC;QACzBM,OAAO,EAAE,CAAC;MACd,CAAC,CAAC;IACN;IACA,IAAIR,GAAG,CAACS,mBAAmB,EAAE;MACzB,OAAOR,OAAO,CAACD,GAAG,CAACS,mBAAmB,CAAC;IAC3C,CAAC,MAAM,IAAI,CAACN,MAAM,EAAE;MAChB,MAAMO,QAA+B,GAAG;QACpCN,UAAU,EAAE,GAAG;QACfC,IAAI,EAAE,EAAE;QACRG,OAAO,EAAE,CAAC,CAAC;QACXG,eAAe,EAAE;MACrB,CAAC;MACD,OAAOV,OAAO,CAACS,QAAQ,CAAC;IAC5B;IAEA,MAAMC,eAAe,GACjB,CAAC,CAACR,MAAM,CAACK,OAAO,CAACV,kBAAkB,CAACc,OAAO,CAAC,IAC5C,CAAC,CAACT,MAAM,CAACK,OAAO,CAACV,kBAAkB,CAACe,MAAM,CAAC;IAC/C,MAAMH,QAA+B,GAAG;MACpCN,UAAU,EAAED,MAAM,CAACC,UAAU;MAC7BC,IAAI,EAAEM,eAAe,GAAGR,MAAM,CAACW,UAAU,CAACC,QAAQ,CAAC,QAAQ,CAAC,GAAGZ,MAAM,CAACa,OAAO;MAC7ER,OAAO,EAAEL,MAAM,CAACK,OAA2C;MAC3DG;IACJ,CAAC;IACD,OAAOV,OAAO,CAACS,QAAQ,CAAC;EAC5B,CAAC;AACL,CAAC;AAED,MAAMO,kBAAkB,GAAGA,CACvBD,OAAY,EACZE,IAAY,EACZC,QAA6B,GAAG,CAAC,CAAC,KACZ;EACtB,IAAIH,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;IACxC,MAAMI,KAAK,GAAGJ,OAAO,CAACE,IAAI,CAAC,GAAGF,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhD,OAAO;MACH,GAAGC,QAAQ;MACX,GAAGC;IACP,CAAC;EACL;EACA,OAAOD,QAAQ;AACnB,CAAC;AAQD,OAAO,MAAME,OAAO,GAAIC,MAAqB,IAAmB;EAC5D,MAAM;IAAEtB,GAAG;IAAEuB,GAAG;IAAEP;EAAQ,CAAC,GAAGM,MAAM;EAEpC,MAAME,KAAK,GAAGP,kBAAkB,CAACD,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;EACtD,MAAMR,OAAO,GAAGS,kBAAkB,CAACD,OAAO,EAAE,SAAS,EAAE;IACnD,CAAC,cAAc,GAAG;EACtB,CAAC,CAAC;EAEF,MAAMS,OAAO,GAAGR,kBAAkB,CAACD,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;EAE1D,OAAO,IAAIU,OAAO,CAACzB,OAAO,IAAI;IAC1BD,GAAG,CAAC2B,MAAM,CACN;MACIC,MAAM,EAAE,MAAM;MACdL,GAAG;MACHP,OAAO,EAAEA,OAAO,IAAI,CAAC,CAAC;MACtBX,IAAI,EAAEW,OAAO,IAAI,CAAC,CAAC;MACnBQ,KAAK;MACLhB,OAAO;MACPiB;IACJ,CAAC,EACD1B,oBAAoB,CAACC,GAAG,EAAEC,OAAO,CACrC,CAAC;EACL,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
@@ -1,14 +1,10 @@
1
- import { LambdaFastifyOptions as LambdaOptions, LambdaResponse } from "@fastify/aws-lambda";
2
- import { APIGatewayEvent, Context as LambdaContext } from "aws-lambda";
3
- import { CreateHandlerParams as BaseCreateHandlerParams, RoutePlugin, createRoute } from "@webiny/handler";
1
+ import type { APIGatewayEvent, Context as LambdaContext } from "@webiny/aws-sdk/types/index.js";
2
+ import type { LambdaResponse } from "@fastify/aws-lambda";
3
+ import { createRoute, RoutePlugin } from "@webiny/handler";
4
+ import type { HandlerFactoryParams } from "../types.js";
5
+ export { RoutePlugin, createRoute };
6
+ export type HandlerParams = HandlerFactoryParams;
4
7
  export interface HandlerCallable {
5
8
  (event: APIGatewayEvent, ctx: LambdaContext): Promise<LambdaResponse>;
6
9
  }
7
- export interface CreateHandlerParams extends BaseCreateHandlerParams {
8
- http?: {
9
- debug?: boolean;
10
- };
11
- lambdaOptions?: LambdaOptions;
12
- }
13
- export declare const createHandler: (params: CreateHandlerParams) => HandlerCallable;
14
- export { RoutePlugin, createRoute };
10
+ export declare const createHandler: (params: HandlerParams) => HandlerCallable;
package/gateway/index.js CHANGED
@@ -1,27 +1,8 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- Object.defineProperty(exports, "RoutePlugin", {
8
- enumerable: true,
9
- get: function () {
10
- return _handler.RoutePlugin;
11
- }
12
- });
13
- exports.createHandler = void 0;
14
- Object.defineProperty(exports, "createRoute", {
15
- enumerable: true,
16
- get: function () {
17
- return _handler.createRoute;
18
- }
19
- });
20
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
21
- var _awsLambda = _interopRequireDefault(require("@fastify/aws-lambda"));
22
- var _handler = require("@webiny/handler");
23
- var _plugins = require("../plugins");
24
- var _types = require("../types");
1
+ import awsLambdaFastify from "@fastify/aws-lambda";
2
+ import { createHandler as createBaseHandler, createRoute, RoutePlugin } from "@webiny/handler";
3
+ import { registerDefaultPlugins } from "../plugins/index.js";
4
+ import { Base64EncodeHeader } from "../types.js";
5
+ export { RoutePlugin, createRoute };
25
6
  const getHeader = (headers, header) => {
26
7
  for (const key in headers) {
27
8
  if (key.toLowerCase() !== header) {
@@ -37,6 +18,7 @@ const defaultCharset = "utf-8";
37
18
  * We need to attach default headers to the request, so it does not break if there is none sent.
38
19
  */
39
20
  const attachRequiredProperties = event => {
21
+ const isOptions = event.httpMethod.toLowerCase() === "options";
40
22
  /**
41
23
  * A possibility that headers are not defined?
42
24
  * Maybe during testing?
@@ -56,32 +38,39 @@ const attachRequiredProperties = event => {
56
38
  } else if (!event.body && contentType.startsWith(defaultContentType)) {
57
39
  event.body = "{}";
58
40
  }
41
+ if (!isOptions) {
42
+ return;
43
+ }
44
+ event.body = null;
59
45
  };
60
- const createHandler = params => {
61
- return (event, context) => {
62
- var _params$http;
63
- const app = (0, _handler.createHandler)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
64
- options: (0, _objectSpread2.default)({
65
- logger: ((_params$http = params.http) === null || _params$http === void 0 ? void 0 : _params$http.debug) === true
66
- }, params.options || {})
67
- }));
46
+ export const createHandler = params => {
47
+ return async (event, context) => {
48
+ const app = createBaseHandler({
49
+ ...params,
50
+ options: {
51
+ logger: params.debug === true,
52
+ ...(params.options || {})
53
+ }
54
+ });
68
55
  /**
69
56
  * We always must add our default plugins to the app.
70
57
  */
71
- (0, _plugins.registerDefaultPlugins)(app.webiny);
72
- if (app.webiny.plugins.byType(_handler.RoutePlugin.type).length === 0) {
58
+ registerDefaultPlugins(app.webiny);
59
+ if (app.webiny.plugins.byType(RoutePlugin.type).length === 0) {
73
60
  throw new Error(`To run @webiny/handler-aws/gateway, you must have at least one RoutePlugin set.`);
74
61
  }
75
62
  attachRequiredProperties(event);
76
- const appLambda = (0, _awsLambda.default)(app, (0, _objectSpread2.default)({
63
+ const appLambda = awsLambdaFastify(app, {
77
64
  decorateRequest: true,
78
65
  serializeLambdaArguments: true,
79
66
  decorationPropertyName: "awsLambda",
80
67
  enforceBase64: response => {
81
- return !!response.headers[_types.Base64EncodeHeader.encoded] || !!response.headers[_types.Base64EncodeHeader.binary];
82
- }
83
- }, params.lambdaOptions || {}));
68
+ return !!response.headers[Base64EncodeHeader.encoded] || !!response.headers[Base64EncodeHeader.binary];
69
+ },
70
+ ...(params.lambdaOptions || {})
71
+ });
84
72
  return appLambda(event, context);
85
73
  };
86
74
  };
87
- exports.createHandler = createHandler;
75
+
76
+ //# sourceMappingURL=index.js.map
@@ -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","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"}
1
+ {"version":3,"names":["awsLambdaFastify","createHandler","createBaseHandler","createRoute","RoutePlugin","registerDefaultPlugins","Base64EncodeHeader","getHeader","headers","header","key","toLowerCase","undefined","defaultContentType","defaultCharset","attachRequiredProperties","event","isOptions","httpMethod","contentType","join","body","startsWith","params","context","app","options","logger","debug","webiny","plugins","byType","type","length","Error","appLambda","decorateRequest","serializeLambdaArguments","decorationPropertyName","enforceBase64","response","encoded","binary","lambdaOptions"],"sources":["index.ts"],"sourcesContent":["import type {\n APIGatewayEvent,\n APIGatewayProxyEventHeaders,\n Context as LambdaContext\n} from \"@webiny/aws-sdk/types/index.js\";\nimport type { LambdaResponse } from \"@fastify/aws-lambda\";\nimport awsLambdaFastify from \"@fastify/aws-lambda\";\nimport { createHandler as createBaseHandler, createRoute, RoutePlugin } from \"@webiny/handler\";\nimport { registerDefaultPlugins } from \"~/plugins/index.js\";\nimport type { HandlerFactoryParams } from \"~/types.js\";\nimport { Base64EncodeHeader } from \"~/types.js\";\n\nexport { RoutePlugin, createRoute };\n\nexport type HandlerParams = HandlerFactoryParams;\n\nexport interface HandlerCallable {\n (event: APIGatewayEvent, ctx: LambdaContext): Promise<LambdaResponse>;\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 const isOptions = event.httpMethod.toLowerCase() === \"options\";\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 if (!isOptions) {\n return;\n }\n event.body = null;\n};\n\nexport const createHandler = (params: HandlerParams): HandlerCallable => {\n return async (event, 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 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"],"mappings":"AAMA,OAAOA,gBAAgB,MAAM,qBAAqB;AAClD,SAASC,aAAa,IAAIC,iBAAiB,EAAEC,WAAW,EAAEC,WAAW,QAAQ,iBAAiB;AAC9F,SAASC,sBAAsB;AAE/B,SAASC,kBAAkB;AAE3B,SAASF,WAAW,EAAED,WAAW;AAQjC,MAAMI,SAAS,GAAGA,CAACC,OAAoC,EAAEC,MAAc,KAAyB;EAC5F,KAAK,MAAMC,GAAG,IAAIF,OAAO,EAAE;IACvB,IAAIE,GAAG,CAACC,WAAW,CAAC,CAAC,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,MAAMC,SAAS,GAAGD,KAAK,CAACE,UAAU,CAACP,WAAW,CAAC,CAAC,KAAK,SAAS;EAC9D;AACJ;AACA;AACA;EACI,IAAI,CAACK,KAAK,CAACR,OAAO,EAAE;IAChBQ,KAAK,CAACR,OAAO,GAAG,CAAC,CAAC;EACtB;EACA,MAAMW,WAAW,GAAGZ,SAAS,CAACS,KAAK,CAACR,OAAO,EAAE,cAAc,CAAC;EAC5D;AACJ;AACA;AACA;AACA;EACI,IAAI,CAACW,WAAW,EAAE;IACdH,KAAK,CAACR,OAAO,CAAC,cAAc,CAAC,GAAG,CAACK,kBAAkB,EAAE,WAAWC,cAAc,EAAE,CAAC,CAACM,IAAI,CAAC,GAAG,CAAC;IAC3FJ,KAAK,CAACK,IAAI,GAAG,IAAI;EACrB,CAAC,MAAM,IAAI,CAACL,KAAK,CAACK,IAAI,IAAIF,WAAW,CAACG,UAAU,CAACT,kBAAkB,CAAC,EAAE;IAClEG,KAAK,CAACK,IAAI,GAAG,IAAI;EACrB;EACA,IAAI,CAACJ,SAAS,EAAE;IACZ;EACJ;EACAD,KAAK,CAACK,IAAI,GAAG,IAAI;AACrB,CAAC;AAED,OAAO,MAAMpB,aAAa,GAAIsB,MAAqB,IAAsB;EACrE,OAAO,OAAOP,KAAK,EAAEQ,OAAO,KAAK;IAC7B,MAAMC,GAAG,GAAGvB,iBAAiB,CAAC;MAC1B,GAAGqB,MAAM;MACTG,OAAO,EAAE;QACLC,MAAM,EAAEJ,MAAM,CAACK,KAAK,KAAK,IAAI;QAC7B,IAAIL,MAAM,CAACG,OAAO,IAAI,CAAC,CAAC;MAC5B;IACJ,CAAC,CAAC;IACF;AACR;AACA;IACQrB,sBAAsB,CAACoB,GAAG,CAACI,MAAM,CAAC;IAElC,IAAIJ,GAAG,CAACI,MAAM,CAACC,OAAO,CAACC,MAAM,CAAc3B,WAAW,CAAC4B,IAAI,CAAC,CAACC,MAAM,KAAK,CAAC,EAAE;MACvE,MAAM,IAAIC,KAAK,CACX,iFACJ,CAAC;IACL;IACAnB,wBAAwB,CAACC,KAAK,CAAC;IAE/B,MAAMmB,SAAS,GAAGnC,gBAAgB,CAACyB,GAAG,EAAE;MACpCW,eAAe,EAAE,IAAI;MACrBC,wBAAwB,EAAE,IAAI;MAC9BC,sBAAsB,EAAE,WAAW;MACnCC,aAAa,EAAEC,QAAQ,IAAI;QACvB,OACI,CAAC,CAACA,QAAQ,CAAChC,OAAO,CAACF,kBAAkB,CAACmC,OAAO,CAAC,IAC9C,CAAC,CAACD,QAAQ,CAAChC,OAAO,CAACF,kBAAkB,CAACoC,MAAM,CAAC;MAErD,CAAC;MACD,IAAInB,MAAM,CAACoB,aAAa,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC;IACF,OAAOR,SAAS,CAACnB,KAAK,EAAEQ,OAAO,CAAC;EACpC,CAAC;AACL,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,19 @@
1
+ import { registry } from "../registry.js";
2
+ import { createSourceHandler } from "../sourceHandler.js";
3
+ import { createHandler } from "./index.js";
4
+ const handler = createSourceHandler({
5
+ name: "handler-aws-api-gateway",
6
+ canUse: event => {
7
+ return !!event.httpMethod;
8
+ },
9
+ handle: async ({
10
+ params,
11
+ event,
12
+ context
13
+ }) => {
14
+ return createHandler(params)(event, context);
15
+ }
16
+ });
17
+ registry.register(handler);
18
+
19
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["registry","createSourceHandler","createHandler","handler","name","canUse","event","httpMethod","handle","params","context","register"],"sources":["register.ts"],"sourcesContent":["import type { APIGatewayEvent } from \"@webiny/aws-sdk/types/index.js\";\nimport { registry } from \"~/registry.js\";\nimport { createSourceHandler } from \"~/sourceHandler.js\";\nimport type { HandlerParams } from \"./index.js\";\nimport { createHandler } from \"./index.js\";\n\nconst handler = createSourceHandler<APIGatewayEvent, HandlerParams>({\n name: \"handler-aws-api-gateway\",\n canUse: event => {\n return !!event.httpMethod;\n },\n handle: async ({ params, event, context }) => {\n return createHandler(params)(event, context);\n }\n});\n\nregistry.register(handler);\n"],"mappings":"AACA,SAASA,QAAQ;AACjB,SAASC,mBAAmB;AAE5B,SAASC,aAAa;AAEtB,MAAMC,OAAO,GAAGF,mBAAmB,CAAiC;EAChEG,IAAI,EAAE,yBAAyB;EAC/BC,MAAM,EAAEC,KAAK,IAAI;IACb,OAAO,CAAC,CAACA,KAAK,CAACC,UAAU;EAC7B,CAAC;EACDC,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAEH,KAAK;IAAEI;EAAQ,CAAC,KAAK;IAC1C,OAAOR,aAAa,CAACO,MAAM,CAAC,CAACH,KAAK,EAAEI,OAAO,CAAC;EAChD;AACJ,CAAC,CAAC;AAEFV,QAAQ,CAACW,QAAQ,CAACR,OAAO,CAAC","ignoreList":[]}
package/index.d.ts CHANGED
@@ -1,7 +1,35 @@
1
- export { createHandler as createApiGatewayHandler, CreateHandlerParams as CreateApiGatewayHandlerParams, RoutePlugin, createRoute as createApiGatewayRoute } from "./gateway";
2
- export { createHandler as createS3Handler, CreateHandlerParams as CreateS3HandlerParams, S3EventHandler, S3EventHandlerCallable, S3EventHandlerCallableParams, createEventHandler as createS3EventHandler } from "./s3";
3
- export { createHandler as createDynamoDBHandler, CreateHandlerParams as CreateDynamoDBHandlerParams, DynamoDBEventHandler, DynamoDBEventHandlerCallable, DynamoDBEventHandlerCallableParams, createEventHandler as createDynamoDBEventHandler, HandlerCallable as DynamoDBHandlerCallable } from "./dynamodb";
4
- export { createHandler as createSQSHandler, CreateHandlerParams as CreateSQSHandlerParams, SQSEventHandler, SQSEventHandlerCallable, SQSEventHandlerCallableParams, createEventHandler as createSQSEventHandler, HandlerCallable as SQSHandlerCallable } from "./sqs";
5
- export { createHandler as createEventBridgeHandler, CreateHandlerParams as CreateEventBridgeHandlerParams, EventBridgeEventHandler, EventBridgeEventHandlerCallable, EventBridgeEventHandlerCallableParams, createEventHandler as createEventBridgeEventHandler, HandlerCallable as EventBridgeHandlerCallable } from "./eventBridge";
6
- export { createHandler as createRawHandler, CreateHandlerParams as CreateRawHandlerParams, HandlerCallable as RawHandlerCallable, createEventHandler as createRawEventHandler, RawEventHandlerCallableParams, RawEventHandlerCallable, RawEventHandler } from "./raw";
7
- export { ContextPlugin, createContextPlugin, ContextPluginCallable } from "@webiny/handler";
1
+ import "./gateway/register.js";
2
+ import "./s3/register.js";
3
+ import "./dynamodb/register.js";
4
+ import "./sqs/register.js";
5
+ import "./eventBridge/register.js";
6
+ import "./sns/register.js";
7
+ export * from "./utils/index.js";
8
+ /**
9
+ * API Gateway
10
+ */
11
+ export { createHandler as createApiGatewayHandler, type HandlerParams as CreateApiGatewayHandlerParams, type HandlerCallable as ApiGatewayHandlerCallable, RoutePlugin, createRoute as createApiGatewayRoute } from "./gateway/index.js";
12
+ /**
13
+ * S3
14
+ */
15
+ export { createHandler as createS3Handler, type HandlerParams as CreateS3HandlerParams, S3EventHandler, type S3EventHandlerCallable, type S3EventHandlerCallableParams, createEventHandler as createS3EventHandler } from "./s3/index.js";
16
+ /**
17
+ * DynamoDB Stream
18
+ */
19
+ export { createHandler as createDynamoDBHandler, type HandlerParams as CreateDynamoDBHandlerParams, DynamoDBEventHandler, type DynamoDBEventHandlerCallable, type DynamoDBEventHandlerCallableParams, createEventHandler as createDynamoDBEventHandler } from "./dynamodb/index.js";
20
+ /**
21
+ * SQS
22
+ */
23
+ export { createHandler as createSQSHandler, type HandlerParams as CreateSQSHandlerParams, SQSEventHandler, type SQSEventHandlerCallable, type SQSEventHandlerCallableParams, createEventHandler as createSQSEventHandler } from "./sqs/index.js";
24
+ /**
25
+ * SNS
26
+ */
27
+ export { createHandler as createSNSHandler, type HandlerParams as CreateSNSHandlerParams, SNSEventHandler, type SNSEventHandlerCallable, type SNSEventHandlerCallableParams, createEventHandler as createSNSEventHandler } from "./sns/index.js";
28
+ /**
29
+ * EventBridge
30
+ */
31
+ export { createHandler as createEventBridgeHandler, type HandlerParams as CreateEventBridgeHandlerParams, EventBridgeEventHandler, type EventBridgeEventHandlerCallable, type EventBridgeEventHandlerCallableParams, createEventHandler as createEventBridgeEventHandler } from "./eventBridge/index.js";
32
+ export { createHandler as createRawHandler, type CreateHandlerParams as CreateRawHandlerParams, type HandlerCallable as RawHandlerCallable, createEventHandler as createRawEventHandler, type RawEventHandlerCallableParams, type RawEventHandlerCallable, RawEventHandler } from "./raw/index.js";
33
+ export { ContextPlugin, createContextPlugin, type ContextPluginCallable } from "@webiny/handler";
34
+ export * from "./createHandler.js";
35
+ export * from "./sourceHandler.js";
package/index.js CHANGED
@@ -1,258 +1,48 @@
1
- "use strict";
1
+ import "./gateway/register.js";
2
+ import "./s3/register.js";
3
+ import "./dynamodb/register.js";
4
+ import "./sqs/register.js";
5
+ import "./eventBridge/register.js";
6
+ import "./sns/register.js";
7
+ export * from "./utils/index.js";
2
8
 
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "ContextPlugin", {
7
- enumerable: true,
8
- get: function () {
9
- return _handler.ContextPlugin;
10
- }
11
- });
12
- Object.defineProperty(exports, "ContextPluginCallable", {
13
- enumerable: true,
14
- get: function () {
15
- return _handler.ContextPluginCallable;
16
- }
17
- });
18
- Object.defineProperty(exports, "CreateApiGatewayHandlerParams", {
19
- enumerable: true,
20
- get: function () {
21
- return _gateway.CreateHandlerParams;
22
- }
23
- });
24
- Object.defineProperty(exports, "CreateDynamoDBHandlerParams", {
25
- enumerable: true,
26
- get: function () {
27
- return _dynamodb.CreateHandlerParams;
28
- }
29
- });
30
- Object.defineProperty(exports, "CreateEventBridgeHandlerParams", {
31
- enumerable: true,
32
- get: function () {
33
- return _eventBridge.CreateHandlerParams;
34
- }
35
- });
36
- Object.defineProperty(exports, "CreateRawHandlerParams", {
37
- enumerable: true,
38
- get: function () {
39
- return _raw.CreateHandlerParams;
40
- }
41
- });
42
- Object.defineProperty(exports, "CreateS3HandlerParams", {
43
- enumerable: true,
44
- get: function () {
45
- return _s.CreateHandlerParams;
46
- }
47
- });
48
- Object.defineProperty(exports, "CreateSQSHandlerParams", {
49
- enumerable: true,
50
- get: function () {
51
- return _sqs.CreateHandlerParams;
52
- }
53
- });
54
- Object.defineProperty(exports, "DynamoDBEventHandler", {
55
- enumerable: true,
56
- get: function () {
57
- return _dynamodb.DynamoDBEventHandler;
58
- }
59
- });
60
- Object.defineProperty(exports, "DynamoDBEventHandlerCallable", {
61
- enumerable: true,
62
- get: function () {
63
- return _dynamodb.DynamoDBEventHandlerCallable;
64
- }
65
- });
66
- Object.defineProperty(exports, "DynamoDBEventHandlerCallableParams", {
67
- enumerable: true,
68
- get: function () {
69
- return _dynamodb.DynamoDBEventHandlerCallableParams;
70
- }
71
- });
72
- Object.defineProperty(exports, "DynamoDBHandlerCallable", {
73
- enumerable: true,
74
- get: function () {
75
- return _dynamodb.HandlerCallable;
76
- }
77
- });
78
- Object.defineProperty(exports, "EventBridgeEventHandler", {
79
- enumerable: true,
80
- get: function () {
81
- return _eventBridge.EventBridgeEventHandler;
82
- }
83
- });
84
- Object.defineProperty(exports, "EventBridgeEventHandlerCallable", {
85
- enumerable: true,
86
- get: function () {
87
- return _eventBridge.EventBridgeEventHandlerCallable;
88
- }
89
- });
90
- Object.defineProperty(exports, "EventBridgeEventHandlerCallableParams", {
91
- enumerable: true,
92
- get: function () {
93
- return _eventBridge.EventBridgeEventHandlerCallableParams;
94
- }
95
- });
96
- Object.defineProperty(exports, "EventBridgeHandlerCallable", {
97
- enumerable: true,
98
- get: function () {
99
- return _eventBridge.HandlerCallable;
100
- }
101
- });
102
- Object.defineProperty(exports, "RawEventHandler", {
103
- enumerable: true,
104
- get: function () {
105
- return _raw.RawEventHandler;
106
- }
107
- });
108
- Object.defineProperty(exports, "RawEventHandlerCallable", {
109
- enumerable: true,
110
- get: function () {
111
- return _raw.RawEventHandlerCallable;
112
- }
113
- });
114
- Object.defineProperty(exports, "RawEventHandlerCallableParams", {
115
- enumerable: true,
116
- get: function () {
117
- return _raw.RawEventHandlerCallableParams;
118
- }
119
- });
120
- Object.defineProperty(exports, "RawHandlerCallable", {
121
- enumerable: true,
122
- get: function () {
123
- return _raw.HandlerCallable;
124
- }
125
- });
126
- Object.defineProperty(exports, "RoutePlugin", {
127
- enumerable: true,
128
- get: function () {
129
- return _gateway.RoutePlugin;
130
- }
131
- });
132
- Object.defineProperty(exports, "S3EventHandler", {
133
- enumerable: true,
134
- get: function () {
135
- return _s.S3EventHandler;
136
- }
137
- });
138
- Object.defineProperty(exports, "S3EventHandlerCallable", {
139
- enumerable: true,
140
- get: function () {
141
- return _s.S3EventHandlerCallable;
142
- }
143
- });
144
- Object.defineProperty(exports, "S3EventHandlerCallableParams", {
145
- enumerable: true,
146
- get: function () {
147
- return _s.S3EventHandlerCallableParams;
148
- }
149
- });
150
- Object.defineProperty(exports, "SQSEventHandler", {
151
- enumerable: true,
152
- get: function () {
153
- return _sqs.SQSEventHandler;
154
- }
155
- });
156
- Object.defineProperty(exports, "SQSEventHandlerCallable", {
157
- enumerable: true,
158
- get: function () {
159
- return _sqs.SQSEventHandlerCallable;
160
- }
161
- });
162
- Object.defineProperty(exports, "SQSEventHandlerCallableParams", {
163
- enumerable: true,
164
- get: function () {
165
- return _sqs.SQSEventHandlerCallableParams;
166
- }
167
- });
168
- Object.defineProperty(exports, "SQSHandlerCallable", {
169
- enumerable: true,
170
- get: function () {
171
- return _sqs.HandlerCallable;
172
- }
173
- });
174
- Object.defineProperty(exports, "createApiGatewayHandler", {
175
- enumerable: true,
176
- get: function () {
177
- return _gateway.createHandler;
178
- }
179
- });
180
- Object.defineProperty(exports, "createApiGatewayRoute", {
181
- enumerable: true,
182
- get: function () {
183
- return _gateway.createRoute;
184
- }
185
- });
186
- Object.defineProperty(exports, "createContextPlugin", {
187
- enumerable: true,
188
- get: function () {
189
- return _handler.createContextPlugin;
190
- }
191
- });
192
- Object.defineProperty(exports, "createDynamoDBEventHandler", {
193
- enumerable: true,
194
- get: function () {
195
- return _dynamodb.createEventHandler;
196
- }
197
- });
198
- Object.defineProperty(exports, "createDynamoDBHandler", {
199
- enumerable: true,
200
- get: function () {
201
- return _dynamodb.createHandler;
202
- }
203
- });
204
- Object.defineProperty(exports, "createEventBridgeEventHandler", {
205
- enumerable: true,
206
- get: function () {
207
- return _eventBridge.createEventHandler;
208
- }
209
- });
210
- Object.defineProperty(exports, "createEventBridgeHandler", {
211
- enumerable: true,
212
- get: function () {
213
- return _eventBridge.createHandler;
214
- }
215
- });
216
- Object.defineProperty(exports, "createRawEventHandler", {
217
- enumerable: true,
218
- get: function () {
219
- return _raw.createEventHandler;
220
- }
221
- });
222
- Object.defineProperty(exports, "createRawHandler", {
223
- enumerable: true,
224
- get: function () {
225
- return _raw.createHandler;
226
- }
227
- });
228
- Object.defineProperty(exports, "createS3EventHandler", {
229
- enumerable: true,
230
- get: function () {
231
- return _s.createEventHandler;
232
- }
233
- });
234
- Object.defineProperty(exports, "createS3Handler", {
235
- enumerable: true,
236
- get: function () {
237
- return _s.createHandler;
238
- }
239
- });
240
- Object.defineProperty(exports, "createSQSEventHandler", {
241
- enumerable: true,
242
- get: function () {
243
- return _sqs.createEventHandler;
244
- }
245
- });
246
- Object.defineProperty(exports, "createSQSHandler", {
247
- enumerable: true,
248
- get: function () {
249
- return _sqs.createHandler;
250
- }
251
- });
252
- var _gateway = require("./gateway");
253
- var _s = require("./s3");
254
- var _dynamodb = require("./dynamodb");
255
- var _sqs = require("./sqs");
256
- var _eventBridge = require("./eventBridge");
257
- var _raw = require("./raw");
258
- var _handler = require("@webiny/handler");
9
+ /**
10
+ * API Gateway
11
+ */
12
+ export { createHandler as createApiGatewayHandler, RoutePlugin, createRoute as createApiGatewayRoute } from "./gateway/index.js";
13
+
14
+ /**
15
+ * S3
16
+ */
17
+ //
18
+ export { createHandler as createS3Handler, S3EventHandler, createEventHandler as createS3EventHandler } from "./s3/index.js";
19
+
20
+ /**
21
+ * DynamoDB Stream
22
+ */
23
+ //
24
+ export { createHandler as createDynamoDBHandler, DynamoDBEventHandler, createEventHandler as createDynamoDBEventHandler } from "./dynamodb/index.js";
25
+
26
+ /**
27
+ * SQS
28
+ */
29
+ //
30
+ export { createHandler as createSQSHandler, SQSEventHandler, createEventHandler as createSQSEventHandler } from "./sqs/index.js";
31
+
32
+ /**
33
+ * SNS
34
+ */
35
+ //
36
+ export { createHandler as createSNSHandler, SNSEventHandler, createEventHandler as createSNSEventHandler } from "./sns/index.js";
37
+
38
+ /**
39
+ * EventBridge
40
+ */
41
+ //
42
+ export { createHandler as createEventBridgeHandler, EventBridgeEventHandler, createEventHandler as createEventBridgeEventHandler } from "./eventBridge/index.js";
43
+ export { createHandler as createRawHandler, createEventHandler as createRawEventHandler, RawEventHandler } from "./raw/index.js";
44
+ export { ContextPlugin, createContextPlugin } from "@webiny/handler";
45
+ export * from "./createHandler.js";
46
+ export * from "./sourceHandler.js";
47
+
48
+ //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export {\n createHandler as createApiGatewayHandler,\n CreateHandlerParams as CreateApiGatewayHandlerParams,\n RoutePlugin,\n createRoute as createApiGatewayRoute\n} from \"~/gateway\";\n\nexport {\n createHandler as createS3Handler,\n CreateHandlerParams as CreateS3HandlerParams,\n S3EventHandler,\n S3EventHandlerCallable,\n S3EventHandlerCallableParams,\n createEventHandler as createS3EventHandler\n} from \"~/s3\";\n\nexport {\n createHandler as createDynamoDBHandler,\n CreateHandlerParams as CreateDynamoDBHandlerParams,\n DynamoDBEventHandler,\n DynamoDBEventHandlerCallable,\n DynamoDBEventHandlerCallableParams,\n createEventHandler as createDynamoDBEventHandler,\n HandlerCallable as DynamoDBHandlerCallable\n} from \"~/dynamodb\";\n\nexport {\n createHandler as createSQSHandler,\n CreateHandlerParams as CreateSQSHandlerParams,\n SQSEventHandler,\n SQSEventHandlerCallable,\n SQSEventHandlerCallableParams,\n createEventHandler as createSQSEventHandler,\n HandlerCallable as SQSHandlerCallable\n} from \"~/sqs\";\n\nexport {\n createHandler as createEventBridgeHandler,\n CreateHandlerParams as CreateEventBridgeHandlerParams,\n EventBridgeEventHandler,\n EventBridgeEventHandlerCallable,\n EventBridgeEventHandlerCallableParams,\n createEventHandler as createEventBridgeEventHandler,\n HandlerCallable as EventBridgeHandlerCallable\n} from \"~/eventBridge\";\n\nexport {\n createHandler as createRawHandler,\n CreateHandlerParams as CreateRawHandlerParams,\n HandlerCallable as RawHandlerCallable,\n createEventHandler as createRawEventHandler,\n RawEventHandlerCallableParams,\n RawEventHandlerCallable,\n RawEventHandler\n} from \"~/raw\";\n\nexport { ContextPlugin, createContextPlugin, ContextPluginCallable } from \"@webiny/handler\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAOA;AASA;AAUA;AAUA;AAUA;AAUA"}
1
+ {"version":3,"names":["createHandler","createApiGatewayHandler","RoutePlugin","createRoute","createApiGatewayRoute","createS3Handler","S3EventHandler","createEventHandler","createS3EventHandler","createDynamoDBHandler","DynamoDBEventHandler","createDynamoDBEventHandler","createSQSHandler","SQSEventHandler","createSQSEventHandler","createSNSHandler","SNSEventHandler","createSNSEventHandler","createEventBridgeHandler","EventBridgeEventHandler","createEventBridgeEventHandler","createRawHandler","createRawEventHandler","RawEventHandler","ContextPlugin","createContextPlugin"],"sources":["index.ts"],"sourcesContent":["import \"./gateway/register.js\";\nimport \"./s3/register.js\";\nimport \"./dynamodb/register.js\";\nimport \"./sqs/register.js\";\nimport \"./eventBridge/register.js\";\nimport \"./sns/register.js\";\n\nexport * from \"./utils/index.js\";\n\n/**\n * API Gateway\n */\nexport {\n createHandler as createApiGatewayHandler,\n type HandlerParams as CreateApiGatewayHandlerParams,\n type HandlerCallable as ApiGatewayHandlerCallable,\n RoutePlugin,\n createRoute as createApiGatewayRoute\n} from \"~/gateway/index.js\";\n\n/**\n * S3\n */\n//\nexport {\n createHandler as createS3Handler,\n type HandlerParams as CreateS3HandlerParams,\n S3EventHandler,\n type S3EventHandlerCallable,\n type S3EventHandlerCallableParams,\n createEventHandler as createS3EventHandler\n} from \"~/s3/index.js\";\n\n/**\n * DynamoDB Stream\n */\n//\nexport {\n createHandler as createDynamoDBHandler,\n type HandlerParams as CreateDynamoDBHandlerParams,\n DynamoDBEventHandler,\n type DynamoDBEventHandlerCallable,\n type DynamoDBEventHandlerCallableParams,\n createEventHandler as createDynamoDBEventHandler\n} from \"~/dynamodb/index.js\";\n\n/**\n * SQS\n */\n//\nexport {\n createHandler as createSQSHandler,\n type HandlerParams as CreateSQSHandlerParams,\n SQSEventHandler,\n type SQSEventHandlerCallable,\n type SQSEventHandlerCallableParams,\n createEventHandler as createSQSEventHandler\n} from \"~/sqs/index.js\";\n\n/**\n * SNS\n */\n//\nexport {\n createHandler as createSNSHandler,\n type HandlerParams as CreateSNSHandlerParams,\n SNSEventHandler,\n type SNSEventHandlerCallable,\n type SNSEventHandlerCallableParams,\n createEventHandler as createSNSEventHandler\n} from \"~/sns/index.js\";\n\n/**\n * EventBridge\n */\n//\nexport {\n createHandler as createEventBridgeHandler,\n type HandlerParams as CreateEventBridgeHandlerParams,\n EventBridgeEventHandler,\n type EventBridgeEventHandlerCallable,\n type EventBridgeEventHandlerCallableParams,\n createEventHandler as createEventBridgeEventHandler\n} from \"~/eventBridge/index.js\";\n\nexport {\n createHandler as createRawHandler,\n type CreateHandlerParams as CreateRawHandlerParams,\n type HandlerCallable as RawHandlerCallable,\n createEventHandler as createRawEventHandler,\n type RawEventHandlerCallableParams,\n type RawEventHandlerCallable,\n RawEventHandler\n} from \"~/raw/index.js\";\n\nexport { ContextPlugin, createContextPlugin, type ContextPluginCallable } from \"@webiny/handler\";\n\nexport * from \"./createHandler.js\";\nexport * from \"./sourceHandler.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAEA;AACA;AACA;AACA,SACIA,aAAa,IAAIC,uBAAuB,EAGxCC,WAAW,EACXC,WAAW,IAAIC,qBAAqB;;AAGxC;AACA;AACA;AACA;AACA,SACIJ,aAAa,IAAIK,eAAe,EAEhCC,cAAc,EAGdC,kBAAkB,IAAIC,oBAAoB;;AAG9C;AACA;AACA;AACA;AACA,SACIR,aAAa,IAAIS,qBAAqB,EAEtCC,oBAAoB,EAGpBH,kBAAkB,IAAII,0BAA0B;;AAGpD;AACA;AACA;AACA;AACA,SACIX,aAAa,IAAIY,gBAAgB,EAEjCC,eAAe,EAGfN,kBAAkB,IAAIO,qBAAqB;;AAG/C;AACA;AACA;AACA;AACA,SACId,aAAa,IAAIe,gBAAgB,EAEjCC,eAAe,EAGfT,kBAAkB,IAAIU,qBAAqB;;AAG/C;AACA;AACA;AACA;AACA,SACIjB,aAAa,IAAIkB,wBAAwB,EAEzCC,uBAAuB,EAGvBZ,kBAAkB,IAAIa,6BAA6B;AAGvD,SACIpB,aAAa,IAAIqB,gBAAgB,EAGjCd,kBAAkB,IAAIe,qBAAqB,EAG3CC,eAAe;AAGnB,SAASC,aAAa,EAAEC,mBAAmB,QAAoC,iBAAiB;AAEhG;AACA","ignoreList":[]}