UNPKG

@kiwigdc/kiwilaunch

Version:
44 lines (43 loc) 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.KLogger = void 0; const fs = require("fs"); const Logger_1 = require("./Logger"); const FormatColor_1 = require("./FormatColor"); class KLogger extends Logger_1.Logger { /** * Construct a new file logs and write the date * @param file used file for write logs * @param prefix prefix for every logs */ constructor(file, prefix = "") { super(); this.file = file; this.prefix = prefix; this.PATTERN = [ '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))' ].join('|'); let date = new Date(); this.bufferWrite = fs.createWriteStream(file, { flags: 'w' }); this.bufferWrite.write("\n" + this.prefix + " SESSION :" + date.toLocaleDateString() + " - " + date.toLocaleTimeString() + "\n"); } /** * called for every logs * @param msg message logged */ print(msg) { msg = this.prefix + " " + msg + FormatColor_1.TextFormat.RESET; console.log(msg); msg = msg.replaceAll(new RegExp(this.PATTERN, "g"), ""); this.bufferWrite.write(msg + "\n", 'utf-8'); } debug(msg) { msg = "DEBUG\n" + FormatColor_1.TextColor.RED + msg + "\n"; console.debug(msg); } static getLogger() { return super.getLogger(); } } exports.KLogger = KLogger;