UNPKG

@vizzly-testing/cli

Version:

Visual review platform for UI developers and designers

76 lines (71 loc) 2.19 kB
/** * Logger Factory * Centralized logger creation with consistent patterns */ import { createLogger } from './logger.js'; import { getLogLevel } from './environment-config.js'; /** * Create a service logger with consistent naming and options * @param {string} serviceName - Name of the service (e.g., 'TDD', 'SERVER', 'API') * @param {Object} options - Logger options * @returns {Logger} Configured logger instance */ export function createServiceLogger(serviceName, options = {}) { return createLogger({ level: options.level || getLogLevel(), verbose: options.verbose || false, silent: options.silent || false, colors: options.colors !== false, logFile: options.logFile, prefix: serviceName, ...options }); } /** * Create a component logger for CLI commands and utilities * @param {string} componentName - Name of the component * @param {Object} options - Logger options * @returns {Logger} Configured logger instance */ export function createComponentLogger(componentName, options = {}) { return createLogger({ level: options.level || 'info', verbose: options.verbose || false, silent: options.silent || false, colors: options.colors !== false, logFile: options.logFile, prefix: componentName, ...options }); } /** * Create a basic logger with standard defaults * @param {Object} options - Logger options * @returns {Logger} Configured logger instance */ export function createStandardLogger(options = {}) { return createLogger({ level: options.level || 'info', verbose: options.verbose || false, silent: options.silent || false, colors: options.colors !== false, logFile: options.logFile, ...options }); } /** * Create a logger for uploader service with specific defaults * @param {Object} options - Logger options * @returns {Logger} Configured logger instance */ export function createUploaderLogger(options = {}) { return createLogger({ level: options.logLevel || 'info', verbose: options.verbose || false, silent: options.silent || false, colors: options.colors !== false, logFile: options.logFile, prefix: 'UPLOADER', ...options }); }