@expressots/shared
Version:
Shared library for ExpressoTS modules 🐎
73 lines (72 loc) • 3.05 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.LogLevel = void 0;
exports.log = log;
exports.printError = printError;
exports.printSuccess = printSuccess;
exports.printWarning = printWarning;
exports.printGenerateError = printGenerateError;
exports.printGenerateSuccess = printGenerateSuccess;
const process_1 = require("process");
const chalk_1 = __importDefault(require("chalk"));
/**
* Logger utility for dotenv
*/
var LogLevel;
(function (LogLevel) {
LogLevel["Info"] = "info";
LogLevel["Warn"] = "warn";
LogLevel["Debug"] = "debug";
})(LogLevel || (exports.LogLevel = LogLevel = {}));
/**
* Log a message
* @param message - The message to log
* @param logLevel - The log level. Defaults to LogLevel.Info
*/
function log(message, logLevel = LogLevel.Info) {
switch (logLevel) {
case LogLevel.Info:
process_1.stdout.write(`[ExpressoTS][INFO] ${message}\n`);
break;
case LogLevel.Warn:
process_1.stdout.write(`[ExpressoTS][WARN] ${message}\n`);
break;
case LogLevel.Debug:
process_1.stdout.write(`[ExpressoTS][DEBUG] ${message}\n`);
break;
}
}
function printError(message, component) {
const formattedMessage = message ? `${message}: ` : ": ";
const formattedComponent = component ? `[${component}]` : "[]";
const output = chalk_1.default.red(`${formattedMessage}${chalk_1.default.bold(chalk_1.default.white(`${formattedComponent} ❌\n`))}`);
process_1.stdout.write(output);
}
function printSuccess(message, component) {
const formattedMessage = message ? `${message}: ` : ": ";
const formattedComponent = component ? `[${component}]` : "[]";
const output = chalk_1.default.green(`${formattedMessage}${chalk_1.default.bold(chalk_1.default.white(`${formattedComponent} ✔️\n`))}`);
process_1.stdout.write(output);
}
function printWarning(message, component) {
if (component === undefined) {
process_1.stdout.write(chalk_1.default.yellow(`${message} ⚠️\n`));
return;
}
process_1.stdout.write(chalk_1.default.yellow(`${message}:`, chalk_1.default.bold(chalk_1.default.white(`[${component}] ⚠️\n`))));
}
async function printGenerateError(schematic, file) {
const schematicFormatted = `[${schematic}]`.padEnd(14);
const fileNameFormatted = chalk_1.default.bold.white(`${file.split(".")[0]} not created! ❌\n`);
const output = chalk_1.default.redBright(schematicFormatted) + fileNameFormatted;
process_1.stdout.write(output);
}
async function printGenerateSuccess(schematic, file) {
const schematicFormatted = `[${schematic}]`.padEnd(14);
const fileNameFormatted = chalk_1.default.bold.white(`${file.split(".")[0]} created! ✔️\n`);
const output = chalk_1.default.greenBright(schematicFormatted) + fileNameFormatted;
process_1.stdout.write(output);
}
;