"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const baseLogFactory = require("base-log-factory"); const pc = require("picocolors"); const colors = require("./colors.js"); class ColorfulAppender extends baseLogFactory.ConsoleAppender { /** * Constructor (构造函数) */ constructor(opts = {}) { super(opts.layout); this.name = "colorful"; this.colors = opts.colors || colors.colors; } /** * Write log (写入日志) * @param event Log event (日志事件) */ write(event) { const { layout } = this; if (layout) { console.log(this.color(layout.format(event), event)); } else { console.log(this.color(baseLogFactory.basicLogPrefix(event, this.dateFormat), event), ...event.message); } } color(str, event) { return pc[this.colors[event.level]](str); } } exports.ColorfulAppender = ColorfulAppender;