UNPKG

@rawcmd/typewriters

Version:

Collection of typewriters for styling command-line messages for Rawcmd.

29 lines 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = require("@rawcmd/core"); const title_1 = require("./title"); const row_1 = require("./row"); const utils_1 = require("@rawcmd/utils"); function errorTypewriter(options) { options = Object.assign({ title: 'Error', message: 'An unexpected error occurred.', code: 500000, totalWidth: 80 }, options); const writeTitle = title_1.titleTypewriter(options); const writeBody = row_1.rowTypewriter([ { index: 0, width: options.totalWidth, }, ]); return (error) => { if (!error) { return ''; } const code = `(${!utils_1.isUndefined(error.code) ? error.code : options.code})`; const title = [options.title, code].join(' '); const message = [error.message || options.message]; const titleOutput = writeTitle(title); const bodyOutput = writeBody(message); return [titleOutput, bodyOutput].filter((o) => !!o).join(core_1.EOL); }; } exports.errorTypewriter = errorTypewriter; //# sourceMappingURL=error.js.map