UNPKG

@magic-mustard/sqlsync

Version:

SQLSync simplifies database schema evolution by allowing a declarative approach to table management

41 lines (40 loc) 1.75 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = void 0; // src/utils/logger.ts const chalk_1 = __importDefault(require("chalk")); // Enhanced console logger implementation with colors // Could be replaced with a more sophisticated library like Winston or Pino later. const log = (level, message, ...args) => { // Only display timestamp in debug mode to make normal logs cleaner const timestamp = process.env.DEBUG ? `[${new Date().toISOString()}] ` : ''; const colorize = (text) => { switch (level.toLowerCase()) { case 'debug': return chalk_1.default.gray(text); case 'info': return chalk_1.default.blue(text); case 'warn': return chalk_1.default.yellow(text); case 'error': return chalk_1.default.red(text); case 'success': return chalk_1.default.green(text); default: return text; } }; const levelDisplay = `[${level.toUpperCase()}]`; // Format the log message with appropriate colors console.log(`${timestamp}${colorize(levelDisplay)} ${message}`, ...args); }; exports.logger = { debug: (message, ...args) => log('debug', message, ...args), info: (message, ...args) => log('info', message, ...args), warn: (message, ...args) => log('warn', message, ...args), error: (message, ...args) => log('error', message, ...args), success: (message, ...args) => log('success', message, ...args), // Add success level with green color };