UNPKG

@omlet/cli

Version:

Omlet (https://omlet.dev) is a component analytics tool that uses a CLI to scan your codebase to detect components and their usage. Get real usage insights from customizable charts to measure adoption across all projects and identify opportunities to impr

87 lines (86 loc) 3.27 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.endLogger = exports.logError = exports.getLogFilePath = exports.setLogLevel = exports.LogLevel = exports.logger = void 0; const fs = __importStar(require("fs/promises")); const winston_1 = __importDefault(require("winston")); const auth_1 = require("./auth"); const config_1 = require("./config"); const error_1 = require("./error"); const logFormat = winston_1.default.format.printf(({ level, message, timestamp }) => { return `[${level.toUpperCase()} ${timestamp}][JS] ${message}`; }); exports.logger = winston_1.default.createLogger({ level: "error", format: winston_1.default.format.combine(winston_1.default.format.timestamp({ format: "MM-DD HH:mm:ss.SSS", }), logFormat), transports: [ new winston_1.default.transports.File({ filename: config_1.LOG_FILE_PATH }), ], }); var LogLevel; (function (LogLevel) { LogLevel["Error"] = "error"; LogLevel["Warn"] = "warn"; LogLevel["Info"] = "info"; LogLevel["Debug"] = "debug"; LogLevel["Trace"] = "trace"; })(LogLevel = exports.LogLevel || (exports.LogLevel = {})); function setLogLevel(level) { exports.logger.level = level; } exports.setLogLevel = setLogLevel; function getLogFilePath() { return config_1.LOG_FILE_PATH; } exports.getLogFilePath = getLogFilePath; function logError(error) { exports.logger.error(`Error: ${error.message}`); exports.logger.error(`Stack: ${error.stack}`); if (error instanceof error_1.CliError) { exports.logger.error(`Context: ${error.getContextString()}`); } else if (error instanceof auth_1.AuthenticationError) { exports.logger.error(`Reason: ${error.reason}`); } } exports.logError = logError; function endLogger() { return new Promise((resolve) => { exports.logger.on("finish", function () { fs.stat(config_1.LOG_FILE_PATH).then((stats) => { if (stats.size === 0) { return fs.unlink(config_1.LOG_FILE_PATH); } }).catch(() => { // ignore }).finally(() => { resolve(); }); }); exports.logger.end(); }); } exports.endLogger = endLogger;