UNPKG

@arkts/shared

Version:
84 lines (80 loc) 3.54 kB
const require_lsp_logger = require('./lsp-logger-Dy_sO8QF.js'); const kleur = require_lsp_logger.__toESM(require("kleur")); const vscode = require_lsp_logger.__toESM(require("vscode")); //#region ../vscode/package.json var version = "1.0.26"; //#endregion //#region src/log/ext-reporter.ts var OutputChannelReporter = class { constructor(outputChannel, prefix) { this.outputChannel = outputChannel; this.prefix = prefix; } safeStringify(value) { try { return JSON.stringify(value); } catch { return String(value); } } toString(logObj) { if (logObj.message) return logObj.message; if (logObj.args.length === 0) return this.safeStringify(logObj); return logObj.args.join(" "); } log(logObj, _ctx) { switch (logObj.type) { case "log": this.outputChannel.appendLine(kleur.default.gray(`[${logObj.type.toUpperCase()}] 📅:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "warn": this.outputChannel.appendLine(kleur.default.yellow(`[${logObj.type.toUpperCase()}] ⚠️:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "info": this.outputChannel.appendLine(kleur.default.blue(`[${logObj.type.toUpperCase()}] 🔥:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "success": case "ready": case "start": this.outputChannel.appendLine(kleur.default.green(`[${logObj.type.toUpperCase()}] ✅:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "fail": case "fatal": case "error": this.outputChannel.appendLine(kleur.default.red(`[${logObj.type.toUpperCase()}] ❌:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "debug": case "verbose": case "trace": this.outputChannel.appendLine(kleur.default.gray(`[${logObj.type.toUpperCase()}] 🐛:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; case "box": this.outputChannel.appendLine(kleur.default.gray(`[${logObj.type.toUpperCase()}] 📦:${this.prefix ? ` <${this.prefix}>` : ""}${logObj.tag} ${kleur.default.dim(logObj.date.toLocaleString())} ${this.toString(logObj)}`)); break; } } }; //#endregion //#region src/log/extension-logger.ts var ExtensionLogger = class ExtensionLogger extends require_lsp_logger.LanguageServerLogger { static outputChannel; static extensionVersionIsLogged = false; constructor() { const outputChannel = ExtensionLogger.outputChannel ? ExtensionLogger.outputChannel : vscode.window.createOutputChannel(`ETS Support Powered by Naily`, "log"); super({ reporters: [new OutputChannelReporter(outputChannel, "Naily's ETS Support")], prefix: "Naily's ETS Support" }); ExtensionLogger.outputChannel = outputChannel; if (!ExtensionLogger.extensionVersionIsLogged) { this.getConsola().info(`ETS Support Plugin version: ${version}`); ExtensionLogger.extensionVersionIsLogged = true; } } getOutputChannel() { return ExtensionLogger.outputChannel; } }; //#endregion exports.ExtensionLogger = ExtensionLogger; //# sourceMappingURL=vscode.js.map