Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
32 lines
786 B
Plaintext
32 lines
786 B
Plaintext
import { ConsoleAppender, basicLogPrefix } from "base-log-factory";
|
|
import pc from "picocolors";
|
|
import { colors } from "./colors.mjs";
|
|
class ColorfulAppender extends ConsoleAppender {
|
|
/**
|
|
* Constructor (构造函数)
|
|
*/
|
|
constructor(opts = {}) {
|
|
super(opts.layout);
|
|
this.name = "colorful";
|
|
this.colors = opts.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(basicLogPrefix(event, this.dateFormat), event), ...event.message);
|
|
}
|
|
}
|
|
color(str, event) {
|
|
return pc[this.colors[event.level]](str);
|
|
}
|
|
}
|
|
export {
|
|
ColorfulAppender
|
|
};
|