@visulima/error-handler 1.0.2 → 1.0.4

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 (36) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/LICENSE.md +13 -5
  3. package/README.md +24 -18
  4. package/dist/error-handler/html-error-handler.d.ts +4 -4
  5. package/dist/error-handler/html-error-handler.js +7 -35
  6. package/dist/error-handler/json-error-handler.d.ts +3 -3
  7. package/dist/error-handler/json-error-handler.js +1 -31
  8. package/dist/error-handler/jsonapi-error-handler.d.ts +1 -1
  9. package/dist/error-handler/jsonapi-error-handler.js +1 -46
  10. package/dist/error-handler/jsonp-error-handler.d.ts +3 -3
  11. package/dist/error-handler/jsonp-error-handler.js +1 -36
  12. package/dist/error-handler/problem-error-handler.d.ts +1 -1
  13. package/dist/error-handler/problem-error-handler.js +1 -53
  14. package/dist/error-handler/text-error-handler.d.ts +3 -3
  15. package/dist/error-handler/text-error-handler.js +2 -27
  16. package/dist/error-handler/xml-error-handler.d.ts +8 -8
  17. package/dist/error-handler/xml-error-handler.js +1 -45
  18. package/dist/handler/cli-handler.d.ts +2 -2
  19. package/dist/handler/cli-handler.js +2 -172
  20. package/dist/handler/http/fetch-handler.d.ts +2 -2
  21. package/dist/handler/http/fetch-handler.js +1 -267
  22. package/dist/handler/http/node-handler.d.ts +4 -4
  23. package/dist/handler/http/node-handler.js +1 -17
  24. package/dist/index.d.ts +6 -6
  25. package/dist/index.js +1 -8
  26. package/dist/packem_shared/add-status-code-to-response-BE6paXjR.js +1 -0
  27. package/dist/packem_shared/cliHandler-B3-YFZRV.js +1 -0
  28. package/dist/packem_shared/createNegotiatedErrorHandler-BLks0_Ak.js +1 -0
  29. package/dist/packem_shared/send-json-Cedv8-Bt.js +1 -0
  30. package/dist/packem_shared/set-error-headers-DT9rVGtW.js +1 -0
  31. package/dist/packem_shared/{types.d-DLy8CCca.d.ts → types.d-BQZBUb3b.d.ts} +1 -4
  32. package/package.json +3 -3
  33. package/dist/packem_shared/add-status-code-to-response-DdfxTQsK.js +0 -17
  34. package/dist/packem_shared/createNegotiatedErrorHandler-Cd7yj67Z.js +0 -52
  35. package/dist/packem_shared/send-json-o-t1rNfw.js +0 -8
  36. package/dist/packem_shared/set-error-headers-B6ZeX5k4.js +0 -10
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/error-handler",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "Error handlers for use in development and production environments.",
5
5
  "keywords": [
6
6
  "visulima",
@@ -133,9 +133,9 @@
133
133
  "CHANGELOG.md"
134
134
  ],
135
135
  "dependencies": {
136
- "@tinyhttp/accepts": "^2.2.3",
136
+ "@tinyhttp/accepts": "^2.2.4",
137
137
  "@visulima/boxen": "2.0.3",
138
- "@visulima/error": "4.6.0",
138
+ "@visulima/error": "4.6.1",
139
139
  "http-errors": "^2.0.0",
140
140
  "http-status-codes": "^2.3.0",
141
141
  "jstoxml": "^7.0.1",
@@ -1,17 +0,0 @@
1
- import { StatusCodes } from 'http-status-codes';
2
-
3
- var __defProp = Object.defineProperty;
4
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
- const addStatusCodeToResponse = /* @__PURE__ */ __name((response, error) => {
6
- const err = error;
7
- const candidate = Number(err.statusCode ?? err.status);
8
- if (Number.isInteger(candidate) && candidate >= 400 && candidate <= 599) {
9
- response.statusCode = candidate;
10
- return;
11
- }
12
- if (response.statusCode < 400) {
13
- response.statusCode = StatusCodes.INTERNAL_SERVER_ERROR;
14
- }
15
- }, "addStatusCodeToResponse");
16
-
17
- export { addStatusCodeToResponse as a };
@@ -1,52 +0,0 @@
1
- import jsonapiErrorHandler from '../error-handler/jsonapi-error-handler.js';
2
- import problemErrorHandler from '../error-handler/problem-error-handler.js';
3
- import { textErrorHandler } from '../error-handler/text-error-handler.js';
4
- import { jsonErrorHandler } from '../error-handler/json-error-handler.js';
5
- import { jsonpErrorHandler } from '../error-handler/jsonp-error-handler.js';
6
- import { xmlErrorHandler } from '../error-handler/xml-error-handler.js';
7
- import { Accepts } from '@tinyhttp/accepts';
8
-
9
- var __defProp = Object.defineProperty;
10
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
11
- const createNegotiatedErrorHandler = /* @__PURE__ */ __name((errorHandlers, showTrace, defaultHtmlHandler) => async (error, request, response) => {
12
- const accept = new Accepts(request);
13
- const chosenType = accept.type([
14
- "text/html",
15
- "application/vnd.api+json",
16
- "application/problem+json",
17
- "application/json",
18
- "text/plain",
19
- "application/javascript",
20
- "text/javascript",
21
- "application/xml",
22
- "text/xml"
23
- ]);
24
- let errorHandler = defaultHtmlHandler || problemErrorHandler;
25
- if (chosenType === "text/html" && defaultHtmlHandler) {
26
- errorHandler = defaultHtmlHandler;
27
- } else if (chosenType === "application/vnd.api+json") {
28
- errorHandler = jsonapiErrorHandler;
29
- } else if (chosenType === "application/problem+json") {
30
- errorHandler = problemErrorHandler;
31
- } else if (chosenType === "application/json") {
32
- errorHandler = jsonErrorHandler();
33
- } else if (chosenType === "text/plain") {
34
- errorHandler = textErrorHandler();
35
- } else if (chosenType === "application/javascript" || chosenType === "text/javascript") {
36
- errorHandler = jsonpErrorHandler();
37
- } else if (chosenType === "application/xml" || chosenType === "text/xml") {
38
- errorHandler = xmlErrorHandler();
39
- }
40
- for (const { handler, regex } of errorHandlers) {
41
- const headerVal = request.headers.accept ?? "";
42
- const headerStr = Array.isArray(headerVal) ? headerVal.join(",") : headerVal;
43
- if (regex.test(headerStr)) {
44
- errorHandler = handler;
45
- break;
46
- }
47
- }
48
- error.expose = showTrace;
49
- await errorHandler(error, request, response);
50
- }, "createNegotiatedErrorHandler");
51
-
52
- export { createNegotiatedErrorHandler as default };
@@ -1,8 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- const sendJson = /* @__PURE__ */ __name((response, jsonBody, contentType = "application/json; charset=utf-8") => {
4
- response.setHeader("content-type", contentType);
5
- response.end(JSON.stringify(jsonBody));
6
- }, "sendJson");
7
-
8
- export { sendJson as s };
@@ -1,10 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- const setErrorHeaders = /* @__PURE__ */ __name((response, error) => {
4
- const headers = error.headers ?? {};
5
- Object.keys(headers).forEach((header) => {
6
- response.setHeader(header, headers[header]);
7
- });
8
- }, "setErrorHeaders");
9
-
10
- export { setErrorHeaders as s };