@sprucelabs/mercury-event-emitter
Version:
Types for Mercury!
34 lines (33 loc) • 1.35 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const error_1 = __importDefault(require("@sprucelabs/error"));
class SpruceError extends error_1.default {
friendlyMessage() {
const { options } = this;
let message;
switch (options?.code) {
case 'LISTENER_ERROR':
message = `Error in local event listener:\n\n${options.originalError?.stack ??
options.originalError?.message ??
options.originalError}`;
break;
case 'INVALID_PAYLOAD':
message = `The emit payload you passed to "${options.eventName}" is invalid${options.originalError
? `:\n\n${options.originalError.message}`
: '.'}`;
break;
case 'INVALID_RESPONSE_PAYLOAD':
message = `The response payload to "${options.eventName}" is invalid${options.originalError
? `:\n\n${options.originalError.message}`
: '.'}`;
break;
default:
message = this.message;
}
return message;
}
}
exports.default = SpruceError;