h3 0.5.1 → 0.5.2
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 +17 -12
- package/dist/index.d.ts +2 -1
- package/dist/index.mjs +17 -13
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -272,30 +272,30 @@ function createError(input) {
|
|
|
272
272
|
return err;
|
|
273
273
|
}
|
|
274
274
|
function sendError(event, error, debug) {
|
|
275
|
-
let h3Error;
|
|
276
|
-
if (error instanceof H3Error) {
|
|
277
|
-
h3Error = error;
|
|
278
|
-
} else {
|
|
279
|
-
console.error(error);
|
|
280
|
-
h3Error = createError(error);
|
|
281
|
-
}
|
|
282
275
|
if (event.res.writableEnded) {
|
|
283
276
|
return;
|
|
284
277
|
}
|
|
285
|
-
|
|
286
|
-
event.res.statusMessage = h3Error.statusMessage;
|
|
278
|
+
const h3Error = isError(error) ? error : createError(error);
|
|
287
279
|
const responseBody = {
|
|
288
|
-
statusCode:
|
|
289
|
-
statusMessage:
|
|
280
|
+
statusCode: h3Error.statusCode,
|
|
281
|
+
statusMessage: h3Error.statusMessage,
|
|
290
282
|
stack: [],
|
|
291
283
|
data: h3Error.data
|
|
292
284
|
};
|
|
293
285
|
if (debug) {
|
|
294
286
|
responseBody.stack = (h3Error.stack || "").split("\n").map((l) => l.trim());
|
|
295
287
|
}
|
|
288
|
+
if (event.res.writableEnded) {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
event.res.statusCode = h3Error.statusCode;
|
|
292
|
+
event.res.statusMessage = h3Error.statusMessage;
|
|
296
293
|
event.res.setHeader("Content-Type", MIMES.json);
|
|
297
294
|
event.res.end(JSON.stringify(responseBody, null, 2));
|
|
298
295
|
}
|
|
296
|
+
function isError(input) {
|
|
297
|
+
return input instanceof H3Error;
|
|
298
|
+
}
|
|
299
299
|
|
|
300
300
|
function createApp(options = {}) {
|
|
301
301
|
const stack = [];
|
|
@@ -307,8 +307,12 @@ function createApp(options = {}) {
|
|
|
307
307
|
} catch (err) {
|
|
308
308
|
if (options.onError) {
|
|
309
309
|
await options.onError(err, event);
|
|
310
|
+
} else {
|
|
311
|
+
if (!isError(err)) {
|
|
312
|
+
console.error("[h3]", err);
|
|
313
|
+
}
|
|
314
|
+
await sendError(event, err, !!options.debug);
|
|
310
315
|
}
|
|
311
|
-
await sendError(event, err, !!options.debug);
|
|
312
316
|
}
|
|
313
317
|
};
|
|
314
318
|
const app = nodeHandler;
|
|
@@ -456,6 +460,7 @@ exports.defineLazyEventHandler = defineLazyEventHandler;
|
|
|
456
460
|
exports.defineLazyHandler = defineLazyHandler;
|
|
457
461
|
exports.defineMiddleware = defineMiddleware;
|
|
458
462
|
exports.deleteCookie = deleteCookie;
|
|
463
|
+
exports.isError = isError;
|
|
459
464
|
exports.isEvent = isEvent;
|
|
460
465
|
exports.isEventHandler = isEventHandler;
|
|
461
466
|
exports.isMethod = isMethod;
|
package/dist/index.d.ts
CHANGED
|
@@ -121,6 +121,7 @@ declare function createError(input: Partial<H3Error>): H3Error;
|
|
|
121
121
|
* In the debug mode the stack trace of errors will be return in response.
|
|
122
122
|
*/
|
|
123
123
|
declare function sendError(event: CompatibilityEvent, error: Error | H3Error, debug?: boolean): void;
|
|
124
|
+
declare function isError(input: any): input is H3Error;
|
|
124
125
|
|
|
125
126
|
declare const defineHandler: <T>(handler: Handler<T, {}>) => Handler<T, {}>;
|
|
126
127
|
/** @deprecated Use defineHandler */
|
|
@@ -224,4 +225,4 @@ interface Router extends AddRouteShortcuts {
|
|
|
224
225
|
}
|
|
225
226
|
declare function createRouter(): Router;
|
|
226
227
|
|
|
227
|
-
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, isEvent, isEventHandler, isMethod, isStream, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|
|
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 };
|
package/dist/index.mjs
CHANGED
|
@@ -264,30 +264,30 @@ function createError(input) {
|
|
|
264
264
|
return err;
|
|
265
265
|
}
|
|
266
266
|
function sendError(event, error, debug) {
|
|
267
|
-
let h3Error;
|
|
268
|
-
if (error instanceof H3Error) {
|
|
269
|
-
h3Error = error;
|
|
270
|
-
} else {
|
|
271
|
-
console.error(error);
|
|
272
|
-
h3Error = createError(error);
|
|
273
|
-
}
|
|
274
267
|
if (event.res.writableEnded) {
|
|
275
268
|
return;
|
|
276
269
|
}
|
|
277
|
-
|
|
278
|
-
event.res.statusMessage = h3Error.statusMessage;
|
|
270
|
+
const h3Error = isError(error) ? error : createError(error);
|
|
279
271
|
const responseBody = {
|
|
280
|
-
statusCode:
|
|
281
|
-
statusMessage:
|
|
272
|
+
statusCode: h3Error.statusCode,
|
|
273
|
+
statusMessage: h3Error.statusMessage,
|
|
282
274
|
stack: [],
|
|
283
275
|
data: h3Error.data
|
|
284
276
|
};
|
|
285
277
|
if (debug) {
|
|
286
278
|
responseBody.stack = (h3Error.stack || "").split("\n").map((l) => l.trim());
|
|
287
279
|
}
|
|
280
|
+
if (event.res.writableEnded) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
283
|
+
event.res.statusCode = h3Error.statusCode;
|
|
284
|
+
event.res.statusMessage = h3Error.statusMessage;
|
|
288
285
|
event.res.setHeader("Content-Type", MIMES.json);
|
|
289
286
|
event.res.end(JSON.stringify(responseBody, null, 2));
|
|
290
287
|
}
|
|
288
|
+
function isError(input) {
|
|
289
|
+
return input instanceof H3Error;
|
|
290
|
+
}
|
|
291
291
|
|
|
292
292
|
function createApp(options = {}) {
|
|
293
293
|
const stack = [];
|
|
@@ -299,8 +299,12 @@ function createApp(options = {}) {
|
|
|
299
299
|
} catch (err) {
|
|
300
300
|
if (options.onError) {
|
|
301
301
|
await options.onError(err, event);
|
|
302
|
+
} else {
|
|
303
|
+
if (!isError(err)) {
|
|
304
|
+
console.error("[h3]", err);
|
|
305
|
+
}
|
|
306
|
+
await sendError(event, err, !!options.debug);
|
|
302
307
|
}
|
|
303
|
-
await sendError(event, err, !!options.debug);
|
|
304
308
|
}
|
|
305
309
|
};
|
|
306
310
|
const app = nodeHandler;
|
|
@@ -430,4 +434,4 @@ function createRouter() {
|
|
|
430
434
|
return router;
|
|
431
435
|
}
|
|
432
436
|
|
|
433
|
-
export { H3Error, MIMES, appendHeader, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, isEvent, isEventHandler, isMethod, isStream, lazyHandle, promisifyHandle, promisifyHandler, send, sendError, sendRedirect, sendStream, setCookie, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
|
|
437
|
+
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 };
|