UNPKG

clrsole

Version:
62 lines (61 loc) 1.67 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const node_util = require("node:util"); const baseLogFactory = require("base-log-factory"); const blfDebugAppender = require("blf-debug-appender"); const pc = require("picocolors"); function colorText(color, root, messages, depth) { for (let i = 0, len = messages.length, tmp; i < len; i++) { tmp = messages[i]; switch (typeof tmp) { case "object": tmp = node_util.inspect(tmp, { depth }); break; case "symbol": tmp = tmp.toString(); break; } root += ` ${tmp}`; } return pc[color](root); } const clrsole = {}; Object.entries(pc).forEach(([color, fn]) => { if (typeof fn === "function") { clrsole[color] = (...messages) => { console.log(colorText(color, "", messages, Infinity)); }; } }); function createConverter(specifier) { if (specifier === "m") { return (event) => { return event.message.map((msg) => { switch (typeof msg) { case "object": return node_util.inspect(msg); case "symbol": return msg.toString(); default: return msg; } }).join(" "); }; } } const debugAppender = new blfDebugAppender.DebugAppender({ layout: new baseLogFactory.PatternLayout( "%d{HH:mm:ss} [%p] - %m", createConverter ) }); const factory = new baseLogFactory.LogFactory({ level: baseLogFactory.Level.WARN, appenders: [debugAppender] }); Object.defineProperty(exports, "Level", { enumerable: true, get: () => baseLogFactory.Level }); exports.clrsole = clrsole; exports.factory = factory;