@vara/custom-logic-sdk
Version:
Server Side JavaScript SDK for Custom Business Logic
28 lines (24 loc) • 621 B
JavaScript
const VError = require('verror');
/**
* Creates a plain object representation of the error passed in, including the full stack trace as returned from VError.fullStack
* @param err {Error} - error to serialize
* @returns {Object}
*/
function errorSerializer(err) {
if (!err || !err.stack) {
return err;
}
const stack = VError.fullStack(err);
return {
name: err.name,
message: err.message,
code: err.code,
statusCode: err.statusCode,
stack,
signal: err.signal,
details: err.details,
meta: err.meta,
innerError: err.innerError,
};
}
module.exports = errorSerializer;