h3 0.5.4 → 0.5.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.
- package/dist/index.cjs +24 -7
- package/dist/index.d.ts +11 -3
- package/dist/index.mjs +22 -8
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -250,11 +250,12 @@ function useBase(base, handler) {
|
|
|
250
250
|
};
|
|
251
251
|
}
|
|
252
252
|
|
|
253
|
-
function
|
|
253
|
+
function eventHandler(handler) {
|
|
254
254
|
handler.__is_handler__ = true;
|
|
255
255
|
return handler;
|
|
256
256
|
}
|
|
257
|
-
|
|
257
|
+
const defineEventHandler = eventHandler;
|
|
258
|
+
function lazyEventHandler(factory) {
|
|
258
259
|
let _promise;
|
|
259
260
|
let _resolved;
|
|
260
261
|
const resolveHandler = () => {
|
|
@@ -273,13 +274,26 @@ function defineLazyEventHandler(factory) {
|
|
|
273
274
|
}
|
|
274
275
|
return _promise;
|
|
275
276
|
};
|
|
276
|
-
return
|
|
277
|
+
return eventHandler((event) => {
|
|
277
278
|
if (_resolved) {
|
|
278
279
|
return _resolved(event);
|
|
279
280
|
}
|
|
280
281
|
return resolveHandler().then((handler) => handler(event));
|
|
281
282
|
});
|
|
282
283
|
}
|
|
284
|
+
const defineLazyEventHandler = lazyEventHandler;
|
|
285
|
+
function dynamicEventHandler(initial) {
|
|
286
|
+
let current = initial;
|
|
287
|
+
const wrapper = eventHandler((event) => {
|
|
288
|
+
if (current) {
|
|
289
|
+
return current(event);
|
|
290
|
+
}
|
|
291
|
+
});
|
|
292
|
+
wrapper.set = (handler) => {
|
|
293
|
+
current = handler;
|
|
294
|
+
};
|
|
295
|
+
return wrapper;
|
|
296
|
+
}
|
|
283
297
|
function isEventHandler(input) {
|
|
284
298
|
return "__is_handler__" in input;
|
|
285
299
|
}
|
|
@@ -290,7 +304,7 @@ function toEventHandler(handler) {
|
|
|
290
304
|
if (typeof handler !== "function") {
|
|
291
305
|
throw new TypeError("Invalid handler. It should be a function:", handler);
|
|
292
306
|
}
|
|
293
|
-
return
|
|
307
|
+
return eventHandler((event) => {
|
|
294
308
|
return callHandler(handler, event.req, event.res);
|
|
295
309
|
});
|
|
296
310
|
}
|
|
@@ -356,7 +370,7 @@ function use(app, arg1, arg2, arg3) {
|
|
|
356
370
|
}
|
|
357
371
|
function createAppEventHandler(stack, options) {
|
|
358
372
|
const spacing = options.debug ? 2 : void 0;
|
|
359
|
-
return
|
|
373
|
+
return eventHandler(async (event) => {
|
|
360
374
|
event.req.originalUrl = event.req.originalUrl || event.req.url || "/";
|
|
361
375
|
const reqUrl = event.req.url || "/";
|
|
362
376
|
for (const layer of stack) {
|
|
@@ -401,7 +415,7 @@ function normalizeLayer(input) {
|
|
|
401
415
|
handler = handler.handler;
|
|
402
416
|
}
|
|
403
417
|
if (input.lazy) {
|
|
404
|
-
handler =
|
|
418
|
+
handler = lazyEventHandler(handler);
|
|
405
419
|
} else if (!isEventHandler(handler)) {
|
|
406
420
|
handler = toEventHandler(handler);
|
|
407
421
|
}
|
|
@@ -430,7 +444,7 @@ function createRouter() {
|
|
|
430
444
|
for (const method of RouterMethods) {
|
|
431
445
|
router[method] = (path, handle) => router.add(path, handle, method);
|
|
432
446
|
}
|
|
433
|
-
router.handler =
|
|
447
|
+
router.handler = eventHandler((event) => {
|
|
434
448
|
let path = event.req.url || "/";
|
|
435
449
|
const queryUrlIndex = path.lastIndexOf("?");
|
|
436
450
|
if (queryUrlIndex > -1) {
|
|
@@ -478,11 +492,14 @@ exports.defineLazyEventHandler = defineLazyEventHandler;
|
|
|
478
492
|
exports.defineLazyHandler = defineLazyHandler;
|
|
479
493
|
exports.defineMiddleware = defineMiddleware;
|
|
480
494
|
exports.deleteCookie = deleteCookie;
|
|
495
|
+
exports.dynamicEventHandler = dynamicEventHandler;
|
|
496
|
+
exports.eventHandler = eventHandler;
|
|
481
497
|
exports.isError = isError;
|
|
482
498
|
exports.isEvent = isEvent;
|
|
483
499
|
exports.isEventHandler = isEventHandler;
|
|
484
500
|
exports.isMethod = isMethod;
|
|
485
501
|
exports.isStream = isStream;
|
|
502
|
+
exports.lazyEventHandler = lazyEventHandler;
|
|
486
503
|
exports.lazyHandle = lazyHandle;
|
|
487
504
|
exports.promisifyHandle = promisifyHandle;
|
|
488
505
|
exports.promisifyHandler = promisifyHandler;
|
package/dist/index.d.ts
CHANGED
|
@@ -20,9 +20,17 @@ interface EventHandler {
|
|
|
20
20
|
'__is_handler__'?: true;
|
|
21
21
|
(event: CompatibilityEvent): H3Response | Promise<H3Response>;
|
|
22
22
|
}
|
|
23
|
-
declare function
|
|
23
|
+
declare function eventHandler(handler: EventHandler): EventHandler;
|
|
24
|
+
/** @deprecated Use eventHandler() */
|
|
25
|
+
declare const defineEventHandler: typeof eventHandler;
|
|
24
26
|
declare type LazyEventHandler = () => EventHandler | Promise<EventHandler>;
|
|
25
|
-
declare function
|
|
27
|
+
declare function lazyEventHandler(factory: LazyEventHandler): EventHandler;
|
|
28
|
+
/** @deprecated use lazyEventHandler() */
|
|
29
|
+
declare const defineLazyEventHandler: typeof lazyEventHandler;
|
|
30
|
+
interface DynamicEventHandler extends EventHandler {
|
|
31
|
+
set: (handler: EventHandler) => void;
|
|
32
|
+
}
|
|
33
|
+
declare function dynamicEventHandler(initial?: EventHandler): DynamicEventHandler;
|
|
26
34
|
declare function isEventHandler(input: any): input is EventHandler;
|
|
27
35
|
declare type CompatibilityEventHandler = EventHandler | Handler | Middleware;
|
|
28
36
|
declare function toEventHandler(handler: CompatibilityEventHandler): EventHandler;
|
|
@@ -225,4 +233,4 @@ interface Router extends AddRouteShortcuts {
|
|
|
225
233
|
}
|
|
226
234
|
declare function createRouter(): Router;
|
|
227
235
|
|
|
228
|
-
export { AddRouteShortcuts, App, AppOptions, AppUse, CompatibilityEvent, CompatibilityEventHandler, Encoding, EventHandler, H3Error, H3Event, H3Response, HTTPMethod, Handler, IncomingMessage, InputLayer, InputStack, JSONValue, Layer, LazyEventHandler, LazyHandler, MIMES, Matcher, Middleware, NodeHandler, PromisifiedHandler, Router, RouterMethod, RouterUse, ServerResponse, Stack, _JSONValue, appendHeader, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, isError, isEvent, isEventHandler, isMethod, isStream, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|
|
236
|
+
export { AddRouteShortcuts, App, AppOptions, AppUse, CompatibilityEvent, CompatibilityEventHandler, DynamicEventHandler, Encoding, EventHandler, H3Error, H3Event, H3Response, HTTPMethod, Handler, IncomingMessage, InputLayer, InputStack, JSONValue, Layer, LazyEventHandler, LazyHandler, MIMES, Matcher, Middleware, NodeHandler, PromisifiedHandler, Router, RouterMethod, RouterUse, ServerResponse, Stack, _JSONValue, appendHeader, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, dynamicEventHandler, eventHandler, isError, isEvent, isEventHandler, isMethod, isStream, lazyEventHandler, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|
package/dist/index.mjs
CHANGED
|
@@ -242,11 +242,12 @@ function useBase(base, handler) {
|
|
|
242
242
|
};
|
|
243
243
|
}
|
|
244
244
|
|
|
245
|
-
function
|
|
245
|
+
function eventHandler(handler) {
|
|
246
246
|
handler.__is_handler__ = true;
|
|
247
247
|
return handler;
|
|
248
248
|
}
|
|
249
|
-
|
|
249
|
+
const defineEventHandler = eventHandler;
|
|
250
|
+
function lazyEventHandler(factory) {
|
|
250
251
|
let _promise;
|
|
251
252
|
let _resolved;
|
|
252
253
|
const resolveHandler = () => {
|
|
@@ -265,13 +266,26 @@ function defineLazyEventHandler(factory) {
|
|
|
265
266
|
}
|
|
266
267
|
return _promise;
|
|
267
268
|
};
|
|
268
|
-
return
|
|
269
|
+
return eventHandler((event) => {
|
|
269
270
|
if (_resolved) {
|
|
270
271
|
return _resolved(event);
|
|
271
272
|
}
|
|
272
273
|
return resolveHandler().then((handler) => handler(event));
|
|
273
274
|
});
|
|
274
275
|
}
|
|
276
|
+
const defineLazyEventHandler = lazyEventHandler;
|
|
277
|
+
function dynamicEventHandler(initial) {
|
|
278
|
+
let current = initial;
|
|
279
|
+
const wrapper = eventHandler((event) => {
|
|
280
|
+
if (current) {
|
|
281
|
+
return current(event);
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
wrapper.set = (handler) => {
|
|
285
|
+
current = handler;
|
|
286
|
+
};
|
|
287
|
+
return wrapper;
|
|
288
|
+
}
|
|
275
289
|
function isEventHandler(input) {
|
|
276
290
|
return "__is_handler__" in input;
|
|
277
291
|
}
|
|
@@ -282,7 +296,7 @@ function toEventHandler(handler) {
|
|
|
282
296
|
if (typeof handler !== "function") {
|
|
283
297
|
throw new TypeError("Invalid handler. It should be a function:", handler);
|
|
284
298
|
}
|
|
285
|
-
return
|
|
299
|
+
return eventHandler((event) => {
|
|
286
300
|
return callHandler(handler, event.req, event.res);
|
|
287
301
|
});
|
|
288
302
|
}
|
|
@@ -348,7 +362,7 @@ function use(app, arg1, arg2, arg3) {
|
|
|
348
362
|
}
|
|
349
363
|
function createAppEventHandler(stack, options) {
|
|
350
364
|
const spacing = options.debug ? 2 : void 0;
|
|
351
|
-
return
|
|
365
|
+
return eventHandler(async (event) => {
|
|
352
366
|
event.req.originalUrl = event.req.originalUrl || event.req.url || "/";
|
|
353
367
|
const reqUrl = event.req.url || "/";
|
|
354
368
|
for (const layer of stack) {
|
|
@@ -393,7 +407,7 @@ function normalizeLayer(input) {
|
|
|
393
407
|
handler = handler.handler;
|
|
394
408
|
}
|
|
395
409
|
if (input.lazy) {
|
|
396
|
-
handler =
|
|
410
|
+
handler = lazyEventHandler(handler);
|
|
397
411
|
} else if (!isEventHandler(handler)) {
|
|
398
412
|
handler = toEventHandler(handler);
|
|
399
413
|
}
|
|
@@ -422,7 +436,7 @@ function createRouter() {
|
|
|
422
436
|
for (const method of RouterMethods) {
|
|
423
437
|
router[method] = (path, handle) => router.add(path, handle, method);
|
|
424
438
|
}
|
|
425
|
-
router.handler =
|
|
439
|
+
router.handler = eventHandler((event) => {
|
|
426
440
|
let path = event.req.url || "/";
|
|
427
441
|
const queryUrlIndex = path.lastIndexOf("?");
|
|
428
442
|
if (queryUrlIndex > -1) {
|
|
@@ -452,4 +466,4 @@ function createRouter() {
|
|
|
452
466
|
return router;
|
|
453
467
|
}
|
|
454
468
|
|
|
455
|
-
export { H3Error, MIMES, appendHeader, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, isError, isEvent, isEventHandler, isMethod, isStream, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|
|
469
|
+
export { H3Error, MIMES, appendHeader, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, dynamicEventHandler, eventHandler, isError, isEvent, isEventHandler, isMethod, isStream, lazyEventHandler, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|