lambda-serverless-api
Advanced tools
Comparing version 11.0.5 to 11.1.0
@@ -8,9 +8,6 @@ /* load-hot */ | ||
import { serializeError } from 'serialize-error'; | ||
import { symbols } from './symbols.js'; | ||
const getErrorMessage = (error) => String(get(error, 'message', 'Exception')).split('\n')[0]; | ||
export const asApiGatewayResponse = (resp, stringifyJson = true) => { | ||
if (get(resp, 'isApiResponse') !== true) { | ||
throw resp; | ||
} | ||
assert(get(resp, 'isApiResponse') === true); | ||
@@ -99,3 +96,7 @@ const isApiError = get(resp, 'isApiError'); | ||
} catch (err) { | ||
assert(idx === 0, 'Should not throw from afterSuccess() or after()'); | ||
assert( | ||
err[symbols.tracked] === true || idx === 0, | ||
'Should not throw from afterSuccess() or after()' | ||
); | ||
Object.defineProperty(event, symbols.tracked, { value: true, writable: false }); | ||
kwargs.response = err; | ||
@@ -105,6 +106,9 @@ isError = true; | ||
assert(get(kwargs, 'response.isApiError', true) === isError); | ||
if (get(kwargs, 'response.isApiResponse', false) !== true) { | ||
break; | ||
} | ||
} | ||
if (get(kwargs, 'response.isApiResponse', false) !== true) { | ||
return { | ||
statusCode: 500, | ||
body: '{"message":"Internal Server Error"}' | ||
}; | ||
} | ||
return asApiGatewayResponse(kwargs.response); | ||
@@ -116,8 +120,4 @@ }; | ||
logger.warn([ | ||
`${getErrorMessage(error)}: ${handler.route}`, | ||
JSON.stringify({ | ||
context: 'lambda-serverless-api', | ||
route: handler.route, | ||
error: serializeError(error) | ||
}) | ||
'Unexpected Exception', | ||
JSON.stringify({ error: serializeError(error), kwargs }) | ||
].join('\n')); | ||
@@ -124,0 +124,0 @@ return { |
export const symbols = { | ||
viaRouter: Symbol('via_router') | ||
viaRouter: Symbol('via_router'), | ||
tracked: Symbol('tracked') | ||
}; |
@@ -67,3 +67,5 @@ import assert from 'assert'; | ||
event, | ||
response: asApiGatewayResponse(response, false) | ||
response: get(response, 'isApiResponse') === true | ||
? asApiGatewayResponse(response, false) | ||
: response | ||
}); | ||
@@ -70,0 +72,0 @@ await this.parse(message); |
@@ -17,14 +17,14 @@ { | ||
"devDependencies": { | ||
"@aws-sdk/client-s3": "^3.388.0", | ||
"@babel/core": "7.22.10", | ||
"@babel/eslint-parser": "7.22.10", | ||
"@babel/register": "7.22.5", | ||
"@aws-sdk/client-s3": "^3.414.0", | ||
"@babel/core": "7.22.20", | ||
"@babel/eslint-parser": "7.22.15", | ||
"@babel/register": "7.22.15", | ||
"@blackflux/eslint-plugin-rules": "3.0.1", | ||
"@blackflux/robo-config-plugin": "9.1.13", | ||
"aws-sdk-wrap": "13.0.9", | ||
"@blackflux/robo-config-plugin": "9.1.16", | ||
"aws-sdk-wrap": "13.1.0", | ||
"c8": "8.0.1", | ||
"chai": "4.3.7", | ||
"eslint": "8.46.0", | ||
"chai": "4.3.8", | ||
"eslint": "8.49.0", | ||
"eslint-config-airbnb-base": "15.0.0", | ||
"eslint-plugin-import": "2.28.0", | ||
"eslint-plugin-import": "2.28.1", | ||
"eslint-plugin-json": "3.1.0", | ||
@@ -37,3 +37,3 @@ "eslint-plugin-markdown": "3.0.1", | ||
"moment-timezone": "0.5.43", | ||
"nock": "13.3.2", | ||
"nock": "13.3.3", | ||
"node-tdd": "4.0.1", | ||
@@ -43,3 +43,3 @@ "request": "2.88.2", | ||
}, | ||
"version": "11.0.5", | ||
"version": "11.1.0", | ||
"scripts": { | ||
@@ -94,6 +94,6 @@ "clean": "rm -rf lib", | ||
"object-hash-strict": "4.0.1", | ||
"object-scan": "19.0.1", | ||
"object-scan": "19.0.2", | ||
"painless-version": "3.0.0", | ||
"route-recognizer": "0.3.4", | ||
"serialize-error": "11.0.1", | ||
"serialize-error": "11.0.2", | ||
"smart-fs": "4.0.1", | ||
@@ -100,0 +100,0 @@ "stack-trace": "1.0.0-pre2", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
101621
2984
+ Addedobject-scan@19.0.2(transitive)
+ Addedserialize-error@11.0.2(transitive)
- Removedserialize-error@11.0.1(transitive)
Updatedobject-scan@19.0.2
Updatedserialize-error@11.0.2