@webiny/handler-aws 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7be00a75a9

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 (70) hide show
  1. package/createHandler.js +16 -22
  2. package/createHandler.js.map +1 -1
  3. package/dynamodb/index.js +34 -49
  4. package/dynamodb/index.js.map +1 -1
  5. package/dynamodb/plugins/DynamoDBEventHandler.js +10 -9
  6. package/dynamodb/plugins/DynamoDBEventHandler.js.map +1 -1
  7. package/dynamodb/register.js +8 -18
  8. package/dynamodb/register.js.map +1 -1
  9. package/eventBridge/index.js +34 -49
  10. package/eventBridge/index.js.map +1 -1
  11. package/eventBridge/plugins/EventBridgeEventHandler.js +10 -9
  12. package/eventBridge/plugins/EventBridgeEventHandler.js.map +1 -1
  13. package/eventBridge/register.js +3 -11
  14. package/eventBridge/register.js.map +1 -1
  15. package/execute.js +52 -60
  16. package/execute.js.map +1 -1
  17. package/gateway/index.js +39 -67
  18. package/gateway/index.js.map +1 -1
  19. package/gateway/register.js +3 -11
  20. package/gateway/register.js.map +1 -1
  21. package/index.js +8 -39
  22. package/package.json +19 -15
  23. package/plugins/index.js +3 -3
  24. package/plugins/index.js.map +1 -1
  25. package/raw/index.js +38 -63
  26. package/raw/index.js.map +1 -1
  27. package/raw/plugins/RawEventHandler.js +11 -21
  28. package/raw/plugins/RawEventHandler.js.map +1 -1
  29. package/registry.js +17 -32
  30. package/registry.js.map +1 -1
  31. package/s3/index.js +34 -49
  32. package/s3/index.js.map +1 -1
  33. package/s3/plugins/S3EventHandler.js +10 -9
  34. package/s3/plugins/S3EventHandler.js.map +1 -1
  35. package/s3/register.js +7 -15
  36. package/s3/register.js.map +1 -1
  37. package/sns/index.js +34 -49
  38. package/sns/index.js.map +1 -1
  39. package/sns/plugins/SNSEventHandler.js +10 -9
  40. package/sns/plugins/SNSEventHandler.js.map +1 -1
  41. package/sns/register.js +7 -15
  42. package/sns/register.js.map +1 -1
  43. package/sourceHandler.js +2 -3
  44. package/sourceHandler.js.map +1 -1
  45. package/sqs/index.js +35 -52
  46. package/sqs/index.js.map +1 -1
  47. package/sqs/plugins/SQSEventHandler.js +10 -9
  48. package/sqs/plugins/SQSEventHandler.js.map +1 -1
  49. package/sqs/register.js +8 -18
  50. package/sqs/register.js.map +1 -1
  51. package/types.js +5 -4
  52. package/types.js.map +1 -1
  53. package/utils/composedHandler.js +5 -14
  54. package/utils/composedHandler.js.map +1 -1
  55. package/utils/index.js +0 -2
  56. package/utils/timer/CustomTimer.js +9 -8
  57. package/utils/timer/CustomTimer.js.map +1 -1
  58. package/utils/timer/Timer.js +12 -13
  59. package/utils/timer/Timer.js.map +1 -1
  60. package/utils/timer/abstractions/ITimer.js +0 -3
  61. package/utils/timer/factory.js +7 -8
  62. package/utils/timer/factory.js.map +1 -1
  63. package/utils/timer/index.js +0 -2
  64. package/index.js.map +0 -1
  65. package/plugins/handlerClient.d.ts +0 -2
  66. package/plugins/handlerClient.js +0 -46
  67. package/plugins/handlerClient.js.map +0 -1
  68. package/utils/index.js.map +0 -1
  69. package/utils/timer/abstractions/ITimer.js.map +0 -1
  70. package/utils/timer/index.js.map +0 -1
package/sqs/register.js CHANGED
@@ -2,24 +2,14 @@ import { registry } from "../registry.js";
2
2
  import { createHandler } from "./index.js";
3
3
  import { createSourceHandler } from "../sourceHandler.js";
4
4
  const handler = createSourceHandler({
5
- name: "handler-aws-sqs",
6
- canUse: event => {
7
- if (!Array.isArray(event.Records) || event.Records.length === 0) {
8
- return false;
9
- }
10
- const [record] = event.Records;
11
- if (typeof record.eventSource !== "string") {
12
- return false;
13
- }
14
- return record.eventSource.toLowerCase() === "aws:sqs";
15
- },
16
- handle: async ({
17
- params,
18
- event,
19
- context
20
- }) => {
21
- return createHandler(params)(event, context);
22
- }
5
+ name: "handler-aws-sqs",
6
+ canUse: (event)=>{
7
+ if (!Array.isArray(event.Records) || 0 === event.Records.length) return false;
8
+ const [record] = event.Records;
9
+ if ("string" != typeof record.eventSource) return false;
10
+ return "aws:sqs" === record.eventSource.toLowerCase();
11
+ },
12
+ handle: async ({ params, event, context })=>createHandler(params)(event, context)
23
13
  });
24
14
  registry.register(handler);
25
15
 
@@ -1 +1 @@
1
- {"version":3,"names":["registry","createHandler","createSourceHandler","handler","name","canUse","event","Array","isArray","Records","length","record","eventSource","toLowerCase","handle","params","context","register"],"sources":["register.ts"],"sourcesContent":["import type { SQSEvent } from \"@webiny/aws-sdk/types/index.js\";\nimport { registry } from \"~/registry.js\";\nimport type { HandlerParams } from \"./index.js\";\nimport { createHandler } from \"./index.js\";\nimport { createSourceHandler } from \"~/sourceHandler.js\";\n\nconst handler = createSourceHandler<SQSEvent, HandlerParams>({\n name: \"handler-aws-sqs\",\n canUse: event => {\n if (!Array.isArray(event.Records) || event.Records.length === 0) {\n return false;\n }\n const [record] = event.Records;\n if (typeof record.eventSource !== \"string\") {\n return false;\n }\n return record.eventSource.toLowerCase() === \"aws:sqs\";\n },\n handle: async ({ params, event, context }) => {\n return createHandler(params)(event, context);\n }\n});\n\nregistry.register(handler);\n"],"mappings":"AACA,SAASA,QAAQ;AAEjB,SAASC,aAAa;AACtB,SAASC,mBAAmB;AAE5B,MAAMC,OAAO,GAAGD,mBAAmB,CAA0B;EACzDE,IAAI,EAAE,iBAAiB;EACvBC,MAAM,EAAEC,KAAK,IAAI;IACb,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,KAAK,CAACG,OAAO,CAAC,IAAIH,KAAK,CAACG,OAAO,CAACC,MAAM,KAAK,CAAC,EAAE;MAC7D,OAAO,KAAK;IAChB;IACA,MAAM,CAACC,MAAM,CAAC,GAAGL,KAAK,CAACG,OAAO;IAC9B,IAAI,OAAOE,MAAM,CAACC,WAAW,KAAK,QAAQ,EAAE;MACxC,OAAO,KAAK;IAChB;IACA,OAAOD,MAAM,CAACC,WAAW,CAACC,WAAW,CAAC,CAAC,KAAK,SAAS;EACzD,CAAC;EACDC,MAAM,EAAE,MAAAA,CAAO;IAAEC,MAAM;IAAET,KAAK;IAAEU;EAAQ,CAAC,KAAK;IAC1C,OAAOf,aAAa,CAACc,MAAM,CAAC,CAACT,KAAK,EAAEU,OAAO,CAAC;EAChD;AACJ,CAAC,CAAC;AAEFhB,QAAQ,CAACiB,QAAQ,CAACd,OAAO,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"sqs/register.js","sources":["../../src/sqs/register.ts"],"sourcesContent":["import type { SQSEvent } from \"@webiny/aws-sdk/types/index.js\";\nimport { registry } from \"~/registry.js\";\nimport type { HandlerParams } from \"./index.js\";\nimport { createHandler } from \"./index.js\";\nimport { createSourceHandler } from \"~/sourceHandler.js\";\n\nconst handler = createSourceHandler<SQSEvent, HandlerParams>({\n name: \"handler-aws-sqs\",\n canUse: event => {\n if (!Array.isArray(event.Records) || event.Records.length === 0) {\n return false;\n }\n const [record] = event.Records;\n if (typeof record.eventSource !== \"string\") {\n return false;\n }\n return record.eventSource.toLowerCase() === \"aws:sqs\";\n },\n handle: async ({ params, event, context }) => {\n return createHandler(params)(event, context);\n }\n});\n\nregistry.register(handler);\n"],"names":["handler","createSourceHandler","event","Array","record","params","context","createHandler","registry"],"mappings":";;;AAMA,MAAMA,UAAUC,oBAA6C;IACzD,MAAM;IACN,QAAQC,CAAAA;QACJ,IAAI,CAACC,MAAM,OAAO,CAACD,MAAM,OAAO,KAAKA,AAAyB,MAAzBA,MAAM,OAAO,CAAC,MAAM,EACrD,OAAO;QAEX,MAAM,CAACE,OAAO,GAAGF,MAAM,OAAO;QAC9B,IAAI,AAA8B,YAA9B,OAAOE,OAAO,WAAW,EACzB,OAAO;QAEX,OAAOA,AAAqC,cAArCA,OAAO,WAAW,CAAC,WAAW;IACzC;IACA,QAAQ,OAAO,EAAEC,MAAM,EAAEH,KAAK,EAAEI,OAAO,EAAE,GAC9BC,cAAcF,QAAQH,OAAOI;AAE5C;AAEAE,SAAS,QAAQ,CAACR"}
package/types.js CHANGED
@@ -1,9 +1,10 @@
1
1
  import "fastify";
2
2
  export * from "@webiny/handler/types.js";
3
- export let Base64EncodeHeader = /*#__PURE__*/function (Base64EncodeHeader) {
4
- Base64EncodeHeader["encoded"] = "x-webiny-base64-encoded";
5
- Base64EncodeHeader["binary"] = "x-webiny-binary";
6
- return Base64EncodeHeader;
3
+ var types_Base64EncodeHeader = /*#__PURE__*/ function(Base64EncodeHeader) {
4
+ Base64EncodeHeader["encoded"] = "x-webiny-base64-encoded";
5
+ Base64EncodeHeader["binary"] = "x-webiny-binary";
6
+ return Base64EncodeHeader;
7
7
  }({});
8
+ export { types_Base64EncodeHeader as Base64EncodeHeader };
8
9
 
9
10
  //# sourceMappingURL=types.js.map
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["Base64EncodeHeader"],"sources":["types.ts"],"sourcesContent":["import type {\n APIGatewayEvent,\n APIGatewayEventRequestContextWithAuthorizer,\n AttributeValue,\n Context as LambdaContext,\n DynamoDBRecord,\n DynamoDBStreamEvent,\n EventBridgeEvent,\n S3Event,\n SNSEvent,\n SQSEvent\n} from \"@webiny/aws-sdk/types/index.js\";\nimport \"fastify\";\nimport type { CreateHandlerParams as BaseCreateHandlerParams } from \"@webiny/handler\";\nimport type { LambdaFastifyOptions as LambdaOptions } from \"@fastify/aws-lambda\";\nimport type { GenericRecord } from \"@webiny/utils\";\n\nexport type { AttributeValue, DynamoDBRecord };\n\nexport type { HandlerRegistry } from \"~/registry.js\";\n\nexport * from \"@webiny/handler/types.js\";\n\nexport type { APIGatewayEvent, LambdaContext, APIGatewayEventRequestContextWithAuthorizer };\n\nexport type HandlerEvent =\n | APIGatewayEvent\n | SNSEvent\n | SQSEvent\n | S3Event\n | EventBridgeEvent<string, string>\n | DynamoDBStreamEvent\n | GenericRecord<string>;\n\nexport interface EventResolver<T = any> {\n (event: HandlerEvent, context: LambdaContext): T;\n}\n\nexport interface HandlerFactoryParams extends BaseCreateHandlerParams {\n lambdaOptions?: LambdaOptions;\n}\n\nexport interface HandlerFactory<T extends HandlerFactoryParams = HandlerFactoryParams, R = any> {\n (params: T): EventResolver<R>;\n}\n\nexport interface HandlerParams<E, P extends HandlerFactoryParams> {\n params: P;\n event: E;\n context: LambdaContext;\n}\n\nexport interface SourceHandler<\n E = HandlerEvent,\n P extends HandlerFactoryParams = HandlerFactoryParams,\n T = any\n> {\n name: string;\n canUse: (event: Partial<E>, context: LambdaContext) => boolean;\n handle: (params: HandlerParams<E, P>) => Promise<T>;\n}\n\nexport enum Base64EncodeHeader {\n encoded = \"x-webiny-base64-encoded\",\n binary = \"x-webiny-binary\"\n}\n\ndeclare module \"fastify\" {\n interface FastifyRequest {\n awsLambda: {\n event: APIGatewayEvent;\n context: LambdaContext;\n };\n }\n}\n"],"mappings":"AAYA,OAAO,SAAS;AAShB,cAAc,0BAA0B;AAyCxC,WAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","sources":["../src/types.ts"],"sourcesContent":["import type {\n APIGatewayEvent,\n APIGatewayEventRequestContextWithAuthorizer,\n AttributeValue,\n Context as LambdaContext,\n DynamoDBRecord,\n DynamoDBStreamEvent,\n EventBridgeEvent,\n S3Event,\n SNSEvent,\n SQSEvent\n} from \"@webiny/aws-sdk/types/index.js\";\nimport \"fastify\";\nimport type { CreateHandlerParams as BaseCreateHandlerParams } from \"@webiny/handler\";\nimport type { LambdaFastifyOptions as LambdaOptions } from \"@fastify/aws-lambda\";\nimport type { GenericRecord } from \"@webiny/utils\";\n\nexport type { AttributeValue, DynamoDBRecord };\n\nexport type { HandlerRegistry } from \"~/registry.js\";\n\nexport * from \"@webiny/handler/types.js\";\n\nexport type { APIGatewayEvent, LambdaContext, APIGatewayEventRequestContextWithAuthorizer };\n\nexport type HandlerEvent =\n | APIGatewayEvent\n | SNSEvent\n | SQSEvent\n | S3Event\n | EventBridgeEvent<string, string>\n | DynamoDBStreamEvent\n | GenericRecord<string>;\n\nexport interface EventResolver<T = any> {\n (event: HandlerEvent, context: LambdaContext): T;\n}\n\nexport interface HandlerFactoryParams extends BaseCreateHandlerParams {\n lambdaOptions?: LambdaOptions;\n}\n\nexport interface HandlerFactory<T extends HandlerFactoryParams = HandlerFactoryParams, R = any> {\n (params: T): EventResolver<R>;\n}\n\nexport interface HandlerParams<E, P extends HandlerFactoryParams> {\n params: P;\n event: E;\n context: LambdaContext;\n}\n\nexport interface SourceHandler<\n E = HandlerEvent,\n P extends HandlerFactoryParams = HandlerFactoryParams,\n T = any\n> {\n name: string;\n canUse: (event: Partial<E>, context: LambdaContext) => boolean;\n handle: (params: HandlerParams<E, P>) => Promise<T>;\n}\n\nexport enum Base64EncodeHeader {\n encoded = \"x-webiny-base64-encoded\",\n binary = \"x-webiny-binary\"\n}\n\ndeclare module \"fastify\" {\n interface FastifyRequest {\n awsLambda: {\n event: APIGatewayEvent;\n context: LambdaContext;\n };\n }\n}\n"],"names":["Base64EncodeHeader"],"mappings":";;AA8DO,IAAKA,2BAAkBA,WAAAA,GAAAA,SAAlBA,kBAAkB;;;WAAlBA"}
@@ -1,17 +1,8 @@
1
1
  import { composeAsync } from "@webiny/utils";
2
- export const createComposedHandler = plugins => {
3
- return composeAsync(plugins.map(plugin => {
4
- return next => {
5
- return async params => {
6
- return plugin.cb({
7
- ...params,
8
- next: () => {
9
- return next(params);
10
- }
11
- });
12
- };
13
- };
14
- }));
15
- };
2
+ const createComposedHandler = (plugins)=>composeAsync(plugins.map((plugin)=>(next)=>async (params)=>plugin.cb({
3
+ ...params,
4
+ next: ()=>next(params)
5
+ })));
6
+ export { createComposedHandler };
16
7
 
17
8
  //# sourceMappingURL=composedHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["composeAsync","createComposedHandler","plugins","map","plugin","next","params","cb"],"sources":["composedHandler.ts"],"sourcesContent":["import type { Plugin } from \"@webiny/plugins/types.js\";\nimport { composeAsync } from \"@webiny/utils\";\n\ntype WrappedInput<TInput, TOutput> = TInput & {\n next: () => Promise<TOutput>;\n};\n\nexport const createComposedHandler = <P extends Plugin, TInput, TOutput>(plugins: P[]) => {\n return composeAsync<WrappedInput<TInput, TOutput>, TOutput>(\n plugins.map(plugin => {\n return next => {\n return async params => {\n return plugin.cb({\n ...params,\n next: () => {\n return next(params);\n }\n });\n };\n };\n })\n );\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,eAAe;AAM5C,OAAO,MAAMC,qBAAqB,GAAuCC,OAAY,IAAK;EACtF,OAAOF,YAAY,CACfE,OAAO,CAACC,GAAG,CAACC,MAAM,IAAI;IAClB,OAAOC,IAAI,IAAI;MACX,OAAO,MAAMC,MAAM,IAAI;QACnB,OAAOF,MAAM,CAACG,EAAE,CAAC;UACb,GAAGD,MAAM;UACTD,IAAI,EAAEA,CAAA,KAAM;YACR,OAAOA,IAAI,CAACC,MAAM,CAAC;UACvB;QACJ,CAAC,CAAC;MACN,CAAC;IACL,CAAC;EACL,CAAC,CACL,CAAC;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils/composedHandler.js","sources":["../../src/utils/composedHandler.ts"],"sourcesContent":["import type { Plugin } from \"@webiny/plugins/types.js\";\nimport { composeAsync } from \"@webiny/utils\";\n\ntype WrappedInput<TInput, TOutput> = TInput & {\n next: () => Promise<TOutput>;\n};\n\nexport const createComposedHandler = <P extends Plugin, TInput, TOutput>(plugins: P[]) => {\n return composeAsync<WrappedInput<TInput, TOutput>, TOutput>(\n plugins.map(plugin => {\n return next => {\n return async params => {\n return plugin.cb({\n ...params,\n next: () => {\n return next(params);\n }\n });\n };\n };\n })\n );\n};\n"],"names":["createComposedHandler","plugins","composeAsync","plugin","next","params"],"mappings":";AAOO,MAAMA,wBAAwB,CAAoCC,UAC9DC,aACHD,QAAQ,GAAG,CAACE,CAAAA,SACDC,CAAAA,OACI,OAAMC,SACFF,OAAO,EAAE,CAAC;oBACb,GAAGE,MAAM;oBACT,MAAM,IACKD,KAAKC;gBAEpB"}
package/utils/index.js CHANGED
@@ -1,4 +1,2 @@
1
1
  export * from "./composedHandler.js";
2
2
  export * from "./timer/index.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,12 +1,13 @@
1
1
  const MAX_RUNNING_MINUTES = 14;
2
- const MAX_RUNNING_MILLISECONDS = MAX_RUNNING_MINUTES * 60 * 1000;
3
- export class CustomTimer {
4
- constructor() {
5
- this.startTime = Date.now();
6
- }
7
- getRemainingMilliseconds() {
8
- return this.startTime + MAX_RUNNING_MILLISECONDS - Date.now(); // 14 minutes
9
- }
2
+ const MAX_RUNNING_MILLISECONDS = 60 * MAX_RUNNING_MINUTES * 1000;
3
+ class CustomTimer {
4
+ constructor(){
5
+ this.startTime = Date.now();
6
+ }
7
+ getRemainingMilliseconds() {
8
+ return this.startTime + MAX_RUNNING_MILLISECONDS - Date.now();
9
+ }
10
10
  }
11
+ export { CustomTimer };
11
12
 
12
13
  //# sourceMappingURL=CustomTimer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MAX_RUNNING_MINUTES","MAX_RUNNING_MILLISECONDS","CustomTimer","constructor","startTime","Date","now","getRemainingMilliseconds"],"sources":["CustomTimer.ts"],"sourcesContent":["const MAX_RUNNING_MINUTES = 14;\nconst MAX_RUNNING_MILLISECONDS = MAX_RUNNING_MINUTES * 60 * 1000;\n\nexport class CustomTimer {\n private readonly startTime: number;\n\n public constructor() {\n this.startTime = Date.now();\n }\n\n public getRemainingMilliseconds(): number {\n return this.startTime + MAX_RUNNING_MILLISECONDS - Date.now(); // 14 minutes\n }\n}\n"],"mappings":"AAAA,MAAMA,mBAAmB,GAAG,EAAE;AAC9B,MAAMC,wBAAwB,GAAGD,mBAAmB,GAAG,EAAE,GAAG,IAAI;AAEhE,OAAO,MAAME,WAAW,CAAC;EAGdC,WAAWA,CAAA,EAAG;IACjB,IAAI,CAACC,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EAC/B;EAEOC,wBAAwBA,CAAA,EAAW;IACtC,OAAO,IAAI,CAACH,SAAS,GAAGH,wBAAwB,GAAGI,IAAI,CAACC,GAAG,CAAC,CAAC,CAAC,CAAC;EACnE;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"utils/timer/CustomTimer.js","sources":["../../../src/utils/timer/CustomTimer.ts"],"sourcesContent":["const MAX_RUNNING_MINUTES = 14;\nconst MAX_RUNNING_MILLISECONDS = MAX_RUNNING_MINUTES * 60 * 1000;\n\nexport class CustomTimer {\n private readonly startTime: number;\n\n public constructor() {\n this.startTime = Date.now();\n }\n\n public getRemainingMilliseconds(): number {\n return this.startTime + MAX_RUNNING_MILLISECONDS - Date.now(); // 14 minutes\n }\n}\n"],"names":["MAX_RUNNING_MINUTES","MAX_RUNNING_MILLISECONDS","CustomTimer","Date"],"mappings":"AAAA,MAAMA,sBAAsB;AAC5B,MAAMC,2BAA2BD,AAAsB,KAAtBA,sBAA2B;AAErD,MAAME;IAGT,aAAqB;QACjB,IAAI,CAAC,SAAS,GAAGC,KAAK,GAAG;IAC7B;IAEO,2BAAmC;QACtC,OAAO,IAAI,CAAC,SAAS,GAAGF,2BAA2BE,KAAK,GAAG;IAC/D;AACJ"}
@@ -1,17 +1,16 @@
1
- export class Timer {
2
- constructor(cb) {
3
- this.cb = cb;
4
- }
5
- getRemainingMilliseconds() {
6
- return this.cb();
7
- }
8
- getRemainingSeconds() {
9
- const result = this.cb();
10
- if (result > 0) {
11
- return Math.floor(result / 1000);
1
+ class Timer {
2
+ constructor(cb){
3
+ this.cb = cb;
4
+ }
5
+ getRemainingMilliseconds() {
6
+ return this.cb();
7
+ }
8
+ getRemainingSeconds() {
9
+ const result = this.cb();
10
+ if (result > 0) return Math.floor(result / 1000);
11
+ return 0;
12
12
  }
13
- return 0;
14
- }
15
13
  }
14
+ export { Timer };
16
15
 
17
16
  //# sourceMappingURL=Timer.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Timer","constructor","cb","getRemainingMilliseconds","getRemainingSeconds","result","Math","floor"],"sources":["Timer.ts"],"sourcesContent":["import type { ITimer } from \"./abstractions/ITimer.js\";\n\nexport interface ITimerCb {\n (): number;\n}\n\nexport class Timer implements ITimer {\n private readonly cb: ITimerCb;\n\n public constructor(cb: ITimerCb) {\n this.cb = cb;\n }\n public getRemainingMilliseconds(): number {\n return this.cb();\n }\n\n public getRemainingSeconds(): number {\n const result = this.cb();\n if (result > 0) {\n return Math.floor(result / 1000);\n }\n return 0;\n }\n}\n"],"mappings":"AAMA,OAAO,MAAMA,KAAK,CAAmB;EAG1BC,WAAWA,CAACC,EAAY,EAAE;IAC7B,IAAI,CAACA,EAAE,GAAGA,EAAE;EAChB;EACOC,wBAAwBA,CAAA,EAAW;IACtC,OAAO,IAAI,CAACD,EAAE,CAAC,CAAC;EACpB;EAEOE,mBAAmBA,CAAA,EAAW;IACjC,MAAMC,MAAM,GAAG,IAAI,CAACH,EAAE,CAAC,CAAC;IACxB,IAAIG,MAAM,GAAG,CAAC,EAAE;MACZ,OAAOC,IAAI,CAACC,KAAK,CAACF,MAAM,GAAG,IAAI,CAAC;IACpC;IACA,OAAO,CAAC;EACZ;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"utils/timer/Timer.js","sources":["../../../src/utils/timer/Timer.ts"],"sourcesContent":["import type { ITimer } from \"./abstractions/ITimer.js\";\n\nexport interface ITimerCb {\n (): number;\n}\n\nexport class Timer implements ITimer {\n private readonly cb: ITimerCb;\n\n public constructor(cb: ITimerCb) {\n this.cb = cb;\n }\n public getRemainingMilliseconds(): number {\n return this.cb();\n }\n\n public getRemainingSeconds(): number {\n const result = this.cb();\n if (result > 0) {\n return Math.floor(result / 1000);\n }\n return 0;\n }\n}\n"],"names":["Timer","cb","result","Math"],"mappings":"AAMO,MAAMA;IAGT,YAAmBC,EAAY,CAAE;QAC7B,IAAI,CAAC,EAAE,GAAGA;IACd;IACO,2BAAmC;QACtC,OAAO,IAAI,CAAC,EAAE;IAClB;IAEO,sBAA8B;QACjC,MAAMC,SAAS,IAAI,CAAC,EAAE;QACtB,IAAIA,SAAS,GACT,OAAOC,KAAK,KAAK,CAACD,SAAS;QAE/B,OAAO;IACX;AACJ"}
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=ITimer.js.map
@@ -1,13 +1,12 @@
1
1
  import { CustomTimer } from "./CustomTimer.js";
2
2
  import { Timer } from "./Timer.js";
3
- export const timerFactory = params => {
4
- const customTimer = new CustomTimer();
5
- return new Timer(() => {
6
- if (params?.getRemainingTimeInMillis) {
7
- return params.getRemainingTimeInMillis();
8
- }
9
- return customTimer.getRemainingMilliseconds();
10
- });
3
+ const timerFactory = (params)=>{
4
+ const customTimer = new CustomTimer();
5
+ return new Timer(()=>{
6
+ if (params?.getRemainingTimeInMillis) return params.getRemainingTimeInMillis();
7
+ return customTimer.getRemainingMilliseconds();
8
+ });
11
9
  };
10
+ export { timerFactory };
12
11
 
13
12
  //# sourceMappingURL=factory.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CustomTimer","Timer","timerFactory","params","customTimer","getRemainingTimeInMillis","getRemainingMilliseconds"],"sources":["factory.ts"],"sourcesContent":["import type { ITimer } from \"./abstractions/ITimer.js\";\nimport { CustomTimer } from \"./CustomTimer.js\";\nimport type { Context as LambdaContext } from \"@webiny/aws-sdk/types/index.js\";\nimport { Timer } from \"./Timer.js\";\n\nexport type ITimerFactoryParams = Pick<LambdaContext, \"getRemainingTimeInMillis\">;\n\nexport const timerFactory = (params?: Partial<ITimerFactoryParams>): ITimer => {\n const customTimer = new CustomTimer();\n\n return new Timer(() => {\n if (params?.getRemainingTimeInMillis) {\n return params.getRemainingTimeInMillis();\n }\n return customTimer.getRemainingMilliseconds();\n });\n};\n"],"mappings":"AACA,SAASA,WAAW;AAEpB,SAASC,KAAK;AAId,OAAO,MAAMC,YAAY,GAAIC,MAAqC,IAAa;EAC3E,MAAMC,WAAW,GAAG,IAAIJ,WAAW,CAAC,CAAC;EAErC,OAAO,IAAIC,KAAK,CAAC,MAAM;IACnB,IAAIE,MAAM,EAAEE,wBAAwB,EAAE;MAClC,OAAOF,MAAM,CAACE,wBAAwB,CAAC,CAAC;IAC5C;IACA,OAAOD,WAAW,CAACE,wBAAwB,CAAC,CAAC;EACjD,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"utils/timer/factory.js","sources":["../../../src/utils/timer/factory.ts"],"sourcesContent":["import type { ITimer } from \"./abstractions/ITimer.js\";\nimport { CustomTimer } from \"./CustomTimer.js\";\nimport type { Context as LambdaContext } from \"@webiny/aws-sdk/types/index.js\";\nimport { Timer } from \"./Timer.js\";\n\nexport type ITimerFactoryParams = Pick<LambdaContext, \"getRemainingTimeInMillis\">;\n\nexport const timerFactory = (params?: Partial<ITimerFactoryParams>): ITimer => {\n const customTimer = new CustomTimer();\n\n return new Timer(() => {\n if (params?.getRemainingTimeInMillis) {\n return params.getRemainingTimeInMillis();\n }\n return customTimer.getRemainingMilliseconds();\n });\n};\n"],"names":["timerFactory","params","customTimer","CustomTimer","Timer"],"mappings":";;AAOO,MAAMA,eAAe,CAACC;IACzB,MAAMC,cAAc,IAAIC;IAExB,OAAO,IAAIC,MAAM;QACb,IAAIH,QAAQ,0BACR,OAAOA,OAAO,wBAAwB;QAE1C,OAAOC,YAAY,wBAAwB;IAC/C;AACJ"}
@@ -1,5 +1,3 @@
1
1
  export * from "./CustomTimer.js";
2
2
  export * from "./factory.js";
3
3
  export * from "./Timer.js";
4
-
5
- //# sourceMappingURL=index.js.map
package/index.js.map DELETED
@@ -1 +0,0 @@
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":[]}
@@ -1,2 +0,0 @@
1
- import { HandlerClientPlugin } from "@webiny/handler-client";
2
- export declare const createHandlerClientPlugin: () => HandlerClientPlugin;
@@ -1,46 +0,0 @@
1
- import { LambdaClient, InvokeCommand } from "@webiny/aws-sdk/client-lambda/index.js";
2
- import { HandlerClientPlugin } from "@webiny/handler-client";
3
- export const createHandlerClientPlugin = () => {
4
- const plugin = new HandlerClientPlugin({
5
- invoke: async params => {
6
- const {
7
- await: useAwait,
8
- name,
9
- payload
10
- } = params;
11
- const lambdaClient = new LambdaClient({
12
- region: process.env.AWS_REGION
13
- });
14
- const response = await lambdaClient.send(new InvokeCommand({
15
- FunctionName: name,
16
- InvocationType: useAwait === false ? "Event" : "RequestResponse",
17
- Payload: JSON.stringify(payload)
18
- }));
19
- if (useAwait === false) {
20
- return null;
21
- }
22
- const decoder = new TextDecoder("utf-8");
23
- return JSON.parse(decoder.decode(response.Payload));
24
- },
25
- canUse: params => {
26
- if (!params?.name) {
27
- return true;
28
- }
29
- const {
30
- name
31
- } = params;
32
- /**
33
- * In case we are invoking currently active lambda, let's use this plugin as well.
34
- * When invoking some other lambda, name starts with arn.
35
- */
36
- if (name === process.env.AWS_LAMBDA_FUNCTION_NAME) {
37
- return true;
38
- }
39
- return name.match("arn:") !== null;
40
- }
41
- });
42
- plugin.name = "handler-client";
43
- return plugin;
44
- };
45
-
46
- //# sourceMappingURL=handlerClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["LambdaClient","InvokeCommand","HandlerClientPlugin","createHandlerClientPlugin","plugin","invoke","params","await","useAwait","name","payload","lambdaClient","region","process","env","AWS_REGION","response","send","FunctionName","InvocationType","Payload","JSON","stringify","decoder","TextDecoder","parse","decode","canUse","AWS_LAMBDA_FUNCTION_NAME","match"],"sources":["handlerClient.ts"],"sourcesContent":["import { LambdaClient, InvokeCommand } from \"@webiny/aws-sdk/client-lambda/index.js\";\nimport { HandlerClientPlugin } from \"@webiny/handler-client\";\n\nexport const createHandlerClientPlugin = () => {\n const plugin = new HandlerClientPlugin({\n invoke: async params => {\n const { await: useAwait, name, payload } = params;\n const lambdaClient = new LambdaClient({\n region: process.env.AWS_REGION\n });\n const response = await lambdaClient.send(\n new InvokeCommand({\n FunctionName: name,\n InvocationType: useAwait === false ? \"Event\" : \"RequestResponse\",\n Payload: JSON.stringify(payload)\n })\n );\n\n if (useAwait === false) {\n return null;\n }\n\n const decoder = new TextDecoder(\"utf-8\");\n return JSON.parse(decoder.decode(response.Payload));\n },\n canUse: params => {\n if (!params?.name) {\n return true;\n }\n const { name } = params;\n /**\n * In case we are invoking currently active lambda, let's use this plugin as well.\n * When invoking some other lambda, name starts with arn.\n */\n if (name === process.env.AWS_LAMBDA_FUNCTION_NAME) {\n return true;\n }\n return name.match(\"arn:\") !== null;\n }\n });\n\n plugin.name = \"handler-client\";\n\n return plugin;\n};\n"],"mappings":"AAAA,SAASA,YAAY,EAAEC,aAAa,QAAQ,wCAAwC;AACpF,SAASC,mBAAmB,QAAQ,wBAAwB;AAE5D,OAAO,MAAMC,yBAAyB,GAAGA,CAAA,KAAM;EAC3C,MAAMC,MAAM,GAAG,IAAIF,mBAAmB,CAAC;IACnCG,MAAM,EAAE,MAAMC,MAAM,IAAI;MACpB,MAAM;QAAEC,KAAK,EAAEC,QAAQ;QAAEC,IAAI;QAAEC;MAAQ,CAAC,GAAGJ,MAAM;MACjD,MAAMK,YAAY,GAAG,IAAIX,YAAY,CAAC;QAClCY,MAAM,EAAEC,OAAO,CAACC,GAAG,CAACC;MACxB,CAAC,CAAC;MACF,MAAMC,QAAQ,GAAG,MAAML,YAAY,CAACM,IAAI,CACpC,IAAIhB,aAAa,CAAC;QACdiB,YAAY,EAAET,IAAI;QAClBU,cAAc,EAAEX,QAAQ,KAAK,KAAK,GAAG,OAAO,GAAG,iBAAiB;QAChEY,OAAO,EAAEC,IAAI,CAACC,SAAS,CAACZ,OAAO;MACnC,CAAC,CACL,CAAC;MAED,IAAIF,QAAQ,KAAK,KAAK,EAAE;QACpB,OAAO,IAAI;MACf;MAEA,MAAMe,OAAO,GAAG,IAAIC,WAAW,CAAC,OAAO,CAAC;MACxC,OAAOH,IAAI,CAACI,KAAK,CAACF,OAAO,CAACG,MAAM,CAACV,QAAQ,CAACI,OAAO,CAAC,CAAC;IACvD,CAAC;IACDO,MAAM,EAAErB,MAAM,IAAI;MACd,IAAI,CAACA,MAAM,EAAEG,IAAI,EAAE;QACf,OAAO,IAAI;MACf;MACA,MAAM;QAAEA;MAAK,CAAC,GAAGH,MAAM;MACvB;AACZ;AACA;AACA;MACY,IAAIG,IAAI,KAAKI,OAAO,CAACC,GAAG,CAACc,wBAAwB,EAAE;QAC/C,OAAO,IAAI;MACf;MACA,OAAOnB,IAAI,CAACoB,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI;IACtC;EACJ,CAAC,CAAC;EAEFzB,MAAM,CAACK,IAAI,GAAG,gBAAgB;EAE9B,OAAOL,MAAM;AACjB,CAAC","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./composedHandler.js\";\nexport * from \"./timer/index.js\";\n"],"mappings":"AAAA;AACA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["ITimer.ts"],"sourcesContent":["export interface ITimer {\n /**\n * Return value must be in milliseconds.\n */\n getRemainingMilliseconds(): number;\n /**\n * Return value must be in seconds.\n */\n getRemainingSeconds(): number;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export type * from \"./abstractions/ITimer.js\";\nexport * from \"./CustomTimer.js\";\nexport * from \"./factory.js\";\nexport * from \"./Timer.js\";\n"],"mappings":"AACA;AACA;AACA","ignoreList":[]}