@middy/core 3.0.0-alpha.4 → 3.0.0-alpha.5

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 (3) hide show
  1. package/index.d.ts +1 -1
  2. package/index.js +25 -33
  3. package/package.json +2 -2
package/index.d.ts CHANGED
@@ -42,7 +42,7 @@ export interface MiddlewareObj<TEvent = any, TResult = any, TErr = Error, TConte
42
42
  // The AWS provided Handler type uses void | Promise<TResult> so we have no choice but to follow and suppress the linter warning
43
43
  // eslint-disable-next-line @typescript-eslint/no-invalid-void-type
44
44
  type MiddyInputHandler<TEvent, TResult, TContext extends LambdaContext = LambdaContext> = (event: TEvent, context: TContext, callback: LambdaCallback<TResult>) => void | Promise<TResult>
45
- type MiddyInputPromiseHandler<TEvent, TResult, TContext extends LambdaContext = LambdaContext> = ( event: TEvent, context: TContext, ) => Promise<TResult>;
45
+ type MiddyInputPromiseHandler<TEvent, TResult, TContext extends LambdaContext = LambdaContext> = (event: TEvent, context: TContext,) => Promise<TResult>
46
46
 
47
47
  export interface MiddyfiedHandler<TEvent = any, TResult = any, TErr = Error, TContext extends LambdaContext = LambdaContext> extends MiddyInputHandler<TEvent, TResult, TContext>,
48
48
  MiddyInputPromiseHandler<TEvent, TResult, TContext> {
package/index.js CHANGED
@@ -1,3 +1,5 @@
1
+ import { EventEmitter } from 'events';
2
+
1
3
  const defaultLambdaHandler = () => {};
2
4
 
3
5
  const defaultPlugin = {
@@ -148,13 +150,8 @@ const runMiddlewares = async (request, middlewares, plugin) => {
148
150
  }
149
151
  };
150
152
 
151
- const polyfillAbortController = async () => {
153
+ const polyfillAbortController = () => {
152
154
  if (process.version < 'v15.0.0') {
153
- const events = await import('events');
154
- const {
155
- EventEmitter
156
- } = events;
157
-
158
155
  class AbortSignal {
159
156
  constructor() {
160
157
  this.eventEmitter = new EventEmitter();
@@ -215,35 +212,30 @@ const polyfillAbortController = async () => {
215
212
  }
216
213
  };
217
214
 
218
- global.AbortController = await polyfillAbortController();
219
-
220
- const polyfillSetTimeoutPromise = async () => {
221
- if (process.version < 'v15.0.0') {
222
- return (ms, {
223
- signal
224
- }) => {
225
- if (signal.aborted) {
226
- return Promise.reject(new Error('Aborted', 'AbortError'));
227
- }
215
+ global.AbortController = polyfillAbortController();
228
216
 
229
- return new Promise((resolve, reject) => {
230
- const abortHandler = () => {
231
- clearTimeout(timeout);
232
- reject(new Error('Aborted', 'AbortError'));
233
- };
217
+ const polyfillSetTimeoutPromise = () => {
218
+ return (ms, {
219
+ signal
220
+ }) => {
221
+ if (signal.aborted) {
222
+ return Promise.reject(new Error('Aborted', 'AbortError'));
223
+ }
234
224
 
235
- const timeout = setTimeout(() => {
236
- resolve();
237
- signal.removeEventListener('abort', abortHandler);
238
- }, ms);
239
- signal.addEventListener('abort', abortHandler);
240
- });
241
- };
242
- } else {
243
- const timers = await import('timers/promises');
244
- return timers.setTimeout;
245
- }
225
+ return new Promise((resolve, reject) => {
226
+ const abortHandler = () => {
227
+ clearTimeout(timeout);
228
+ reject(new Error('Aborted', 'AbortError'));
229
+ };
230
+
231
+ const timeout = setTimeout(() => {
232
+ resolve();
233
+ signal.removeEventListener('abort', abortHandler);
234
+ }, ms);
235
+ signal.addEventListener('abort', abortHandler);
236
+ });
237
+ };
246
238
  };
247
239
 
248
- global.setTimeoutPromise = await polyfillSetTimeoutPromise();
240
+ const setTimeoutPromise = polyfillSetTimeoutPromise();
249
241
  export default middy;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@middy/core",
3
- "version": "3.0.0-alpha.4",
3
+ "version": "3.0.0-alpha.5",
4
4
  "description": "🛵 The stylish Node.js middleware engine for AWS Lambda (core package)",
5
5
  "type": "module",
6
6
  "engines": {
@@ -47,5 +47,5 @@
47
47
  "@types/aws-lambda": "^8.10.76",
48
48
  "@types/node": "^17.0.0"
49
49
  },
50
- "gitHead": "d4bea7f4e21f6a9bbb1f6f6908361169598b9e53"
50
+ "gitHead": "cf6a1b02a2e163bea353b10146d67e0d95ef8072"
51
51
  }