jsout
Version:
A Syslog-compatible, small, and simple logger for Typescript/Javascript projects. Sponsored by https://aeroview.io
29 lines • 1.36 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatCli = formatCli;
const colorizeLevel_1 = require("../colorizeLevel");
const node_util_1 = __importDefault(require("node:util"));
const formatSerializedError_1 = require("./formatSerializedError");
const colorette_1 = require("colorette");
function formatCli(log) {
const insp = (obj) => node_util_1.default.inspect(obj, { colors: true, depth: null });
const level = `${(0, colorette_1.bold)((0, colorette_1.white)('Level'))}: ${(0, colorizeLevel_1.colorizeLevel)(log.level)}\n`;
const message = `${(0, colorette_1.bold)((0, colorette_1.white)(`Message: ${log.message}`))}\n`;
const error = cliFormatError(log.error);
const data = log.data ? `${insp(log.data)}\n` : '';
return `\n${level}${message}${error}${data}`;
}
function cliFormatError(error) {
if (!error)
return '';
if ((0, formatSerializedError_1.isSerializedError)(error)) {
return `${(0, formatSerializedError_1.formatSerializedError)(error)}\n`;
}
else {
return `${(0, colorette_1.bold)('Error')}: ${node_util_1.default.inspect(error, { colors: true, depth: null })}\n`;
}
}
//# sourceMappingURL=cli.js.map