@sprucelabs/spruce-skill-utils
Version:
Loosely coupled classes and functions to make skill development faster! 🏎
29 lines (28 loc) • 1.29 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() {
let message = super.friendlyMessage();
switch (this.options.code) {
case 'FAILED_TO_LOAD_PLUGIN':
message = `Failed to load the plugin at ${this.options.file}.\n\n`;
message += this.options.friendlyMessage;
break;
case 'INVALID_FEATURE_CODE':
message = `"${this.options.suppliedCode}" is not a valid feature code. Valid codes are: ${this.options.validCodes.join(', ')}`;
break;
case 'SKILL_CRASHED':
message = `Shoot, your skill crashed. Here are some deets:\n\n${this.options.originalError?.message ?? 'UNKNOWN'}`;
break;
case 'INVALID_PACKAGE_JSON':
message = `I could not open the package.json for this skill. Error was: ${this.options.errorMessage}`;
break;
}
return message;
}
}
exports.default = SpruceError;
;