@middy/http-error-handler 2.5.1 → 3.0.0-alpha.0

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2017-2021 Luciano Mammino, will Farrell and the [Middy team](https://github.com/middyjs/middy/graphs/contributors)
3
+ Copyright (c) 2017-2022 Luciano Mammino, will Farrell and the [Middy team](https://github.com/middyjs/middy/graphs/contributors)
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -44,7 +44,7 @@ npm install --save @middy/http-error-handler
44
44
 
45
45
  ## Options
46
46
 
47
- - `logger` (defaults to `console.error`) - a logging function that is invoked with the current error as an argument. You can pass `false` if you don't want the logging to happen.
47
+ - `logger` function (defaults to `console.error`) - a logging function that is invoked with the current error as an argument. You can pass `false` if you don't want the logging to happen.
48
48
  - `fallbackMessage` (default to null) - When non-http errors occur you can catch them by setting a fallback message to be used. These will be returned with a 500 status code.
49
49
 
50
50
  ## Sample usage
@@ -82,7 +82,7 @@ Everyone is very welcome to contribute to this repository. Feel free to [raise i
82
82
 
83
83
  ## License
84
84
 
85
- Licensed under [MIT License](LICENSE). Copyright (c) 2017-2021 Luciano Mammino, will Farrell, and the [Middy team](https://github.com/middyjs/middy/graphs/contributors).
85
+ Licensed under [MIT License](LICENSE). Copyright (c) 2017-2022 Luciano Mammino, will Farrell, and the [Middy team](https://github.com/middyjs/middy/graphs/contributors).
86
86
 
87
87
  <a href="https://app.fossa.io/projects/git%2Bgithub.com%2Fmiddyjs%2Fmiddy?ref=badge_large">
88
88
  <img src="https://app.fossa.io/api/projects/git%2Bgithub.com%2Fmiddyjs%2Fmiddy.svg?type=large" alt="FOSSA Status" style="max-width:100%;">
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@middy/http-error-handler",
3
- "version": "2.5.1",
3
+ "version": "3.0.0-alpha.0",
4
4
  "description": "Http error handler middleware for the middy framework",
5
- "type": "commonjs",
5
+ "type": "module",
6
6
  "engines": {
7
- "node": ">=12"
7
+ "node": ">=14"
8
8
  },
9
9
  "engineStrict": true,
10
10
  "publishConfig": {
11
11
  "access": "public"
12
12
  },
13
- "main": "index.js",
13
+ "exports": "./index.js",
14
14
  "types": "index.d.ts",
15
15
  "files": [
16
16
  "index.d.ts"
@@ -47,13 +47,12 @@
47
47
  },
48
48
  "homepage": "https://github.com/middyjs/middy#readme",
49
49
  "dependencies": {
50
- "@middy/util": "^2.5.1"
50
+ "@middy/util": "^3.0.0-alpha.0"
51
51
  },
52
52
  "devDependencies": {
53
- "@middy/core": "^2.5.1",
53
+ "@middy/core": "^3.0.0-alpha.0",
54
54
  "@types/http-errors": "^1.8.0",
55
- "@types/node": "^16.0.0",
56
- "http-errors": "^1.8.0"
55
+ "@types/node": "^17.0.0"
57
56
  },
58
- "gitHead": "df18e5eff7d73492a96a2ca4780a2eae45d1cedb"
57
+ "gitHead": "c533f62841c8a39d061d7b94f30ba178f002c8db"
59
58
  }
package/index.js DELETED
@@ -1,55 +0,0 @@
1
- "use strict";
2
-
3
- const {
4
- jsonSafeParse,
5
- normalizeHttpResponse
6
- } = require('@middy/util');
7
-
8
- const defaults = {
9
- logger: console.error,
10
- fallbackMessage: null
11
- };
12
-
13
- const httpErrorHandlerMiddleware = (opts = {}) => {
14
- const options = { ...defaults,
15
- ...opts
16
- };
17
-
18
- const httpErrorHandlerMiddlewareOnError = async request => {
19
- var _request$error, _request$error2, _request$error3, _request$error4, _request$error5;
20
-
21
- if (typeof options.logger === 'function') {
22
- options.logger(request.error);
23
- } // Set default expose value, only passes in when there is an override
24
-
25
-
26
- if ((_request$error = request.error) !== null && _request$error !== void 0 && _request$error.statusCode && ((_request$error2 = request.error) === null || _request$error2 === void 0 ? void 0 : _request$error2.expose) === undefined) {
27
- request.error.expose = request.error.statusCode < 500;
28
- } // Non-http error OR expose set to false
29
-
30
-
31
- if (options.fallbackMessage && (!((_request$error3 = request.error) !== null && _request$error3 !== void 0 && _request$error3.statusCode) || !((_request$error4 = request.error) !== null && _request$error4 !== void 0 && _request$error4.expose))) {
32
- request.error = {
33
- statusCode: 500,
34
- message: options.fallbackMessage,
35
- expose: true
36
- };
37
- }
38
-
39
- if ((_request$error5 = request.error) !== null && _request$error5 !== void 0 && _request$error5.expose) {
40
- var _request$error6, _request$error7;
41
-
42
- request.response = normalizeHttpResponse(request.response);
43
- request.response.statusCode = (_request$error6 = request.error) === null || _request$error6 === void 0 ? void 0 : _request$error6.statusCode;
44
- request.response.body = (_request$error7 = request.error) === null || _request$error7 === void 0 ? void 0 : _request$error7.message;
45
- request.response.headers['Content-Type'] = typeof jsonSafeParse(request.response.body) === 'string' ? 'text/plain' : 'application/json';
46
- return request.response;
47
- }
48
- };
49
-
50
- return {
51
- onError: httpErrorHandlerMiddlewareOnError
52
- };
53
- };
54
-
55
- module.exports = httpErrorHandlerMiddleware;