tool-log
v0.0.11
Published
Цветная консоль для логирования
Readme
tool-log
Цветная консоль для логирования
Особенности
- 🎨 Цветной вывод — 9 цветов текста + 9 цветов фона
- ⚡ Шорткоты — методы
red(),green(),cyan()и др. - 🏷️ Опциональные цвета — переопределение цветов для отдельного вызова
- 📦 Любые типы — строки, числа, булевы, объекты, массивы,
null,undefined - 🚫 Dev-only — автоматическая блокировка логов в продакшене
- 📐 Деструктуризация — безопасное извлечение методов
Установка
npm install tool-logБыстрый старт
import { ClassLog } from 'tool-log';
const log = new ClassLog({ textColor: 'green', bgColor: 'bgBlack' });
log.red('Ошибка подключения');
log.green({ status: 'ok', users: 42 });
log.cyan('Готово', 123, true);API
Конструктор
new ClassLog(config?: ColorOptions)Options:
| Параметр | Тип | По умолчанию | Описание |
|----------|-----|--------------|----------|
| textColor | TextColor | 'white' | Цвет текста по умолчанию |
| bgColor | BgColor | null | Цвет фона по умолчанию |
Методы
color(...args: LogValue[], options?: ColorOptions): void
info(...args: unknown[]): void
Базовый метод для цветного вывода и дефолтный метод завязанные на isLogLocalhost.
log.color('С фоном', { textColor: 'red', bgColor: 'bgWhite' });
log.info('С фоном', 2);Шорткоты
log.red('Ошибка');
log.blue('Информация');
log.yellow('Предупреждение');
log.green('Успех');
log.cyan('Данные');
log.magenta('Декор');
log.gray('Отладка');
log.black('Текст');
log.white('Текст');Деструктуризация
const { red, green, cyan } = log;
red('ошибка');
green({ ok: true });Типы
type LogValue = string | number | boolean | null | undefined | object | Function;
type TextColor = 'black' | 'red' | 'green' | 'yellow' | 'blue' | 'magenta' | 'cyan' | 'white' | 'gray';
type BgColor = 'bgBlack' | 'bgRed' | 'bgGreen' | 'bgYellow' | 'bgBlue' | 'bgMagenta' | 'bgCyan' | 'bgWhite';Примеры
Несколько значений
log.green('Юзер', { id: 1, name: 'Иван' }, [1, 2, 3]);
log.cyan('флаг:', false, 'счётчик:', 42, 'null:', null);Объекты и массивы
log.green({ status: 'ok', users: 42 });
log.yellow([1, 2, 3, { nested: true }]);Несколько логгеров
const infoLog = new ClassLog({ textColor: 'cyan' });
const errorLog = new ClassLog({ textColor: 'white', bgColor: 'bgRed' });
infoLog.cyan({ status: 'ok' });
errorLog.red('Критическая ошибка');Разработка
# Запуск dev-сервера
npm run dev
# Сборка
npm run build
# Публикация
npm run release:patch # или minor/major