@massalabs/massa-web3
Version:
massa's web3 sdk client
37 lines • 1.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ErrorBase = void 0;
const codes_1 = require("./utils/codes");
/**
* ErrorBase extends the native Error class to provide additional metadata handling for richer error information.
* This class can serve as a base for more specific error types in a wallet or similar system.
*/
class ErrorBase extends Error {
metaMessages;
docsPath;
code;
cause;
name = 'MassaWeb3Error';
constructor(shortMessage, args) {
super();
const metaMessageStr = args?.metaMessages?.map((msg) => `Meta: ${msg}`).join('\n') || '';
const docsMessageStr = args?.docsPath
? `Docs: see ${args?.docsPath} for more information.`
: '';
const detailsMessage = args?.details ? `Details: ${args.details}` : '';
this.message = [
shortMessage,
metaMessageStr,
docsMessageStr,
detailsMessage,
]
.filter(Boolean)
.join('\n\n');
this.metaMessages = args?.metaMessages || [];
this.docsPath = args?.docsPath;
this.code = args?.code ?? codes_1.ErrorCodes.UnknownError;
this.cause = args?.cause;
}
}
exports.ErrorBase = ErrorBase;
//# sourceMappingURL=base.js.map