{"version":3,"file":"styling-Cg5saQ46.cjs","names":[],"sources":["../../src/styling/StyleBuilder.ts","../../src/styling/themes.ts","../../src/styling/banners.ts","../../src/styling/SmartPresets.ts"],"sourcesContent":["/**\n * @fileoverview StyleBuilder class for Advanced Logger\n */\n\n/**\n * Utility class for creating dynamic console styles with method chaining\n */\nexport class StyleBuilder {\n    private styles: string[] = [];\n\n    constructor(baseStyle = '') {\n        if (baseStyle) this.styles.push(baseStyle);\n    }\n\n    /**\n     * Add background color or gradient\n     */\n    bg(background: string): StyleBuilder {\n        this.styles.push(`background: ${background}`);\n        return this;\n    }\n\n    /**\n     * Add text color\n     */\n    color(color: string): StyleBuilder {\n        this.styles.push(`color: ${color}`);\n        return this;\n    }\n\n    /**\n     * Add border styling\n     */\n    border(border: string): StyleBuilder {\n        this.styles.push(`border: ${border}`);\n        return this;\n    }\n\n    /**\n     * Add box shadow\n     */\n    shadow(shadow: string): StyleBuilder {\n        this.styles.push(`box-shadow: ${shadow}`);\n        return this;\n    }\n\n    /**\n     * Add padding\n     */\n    padding(padding: string): StyleBuilder {\n        this.styles.push(`padding: ${padding}`);\n        return this;\n    }\n\n    /**\n     * Add margin\n     */\n    margin(margin: string): StyleBuilder {\n        this.styles.push(`margin: ${margin}`);\n        return this;\n    }\n\n    /**\n     * Add border radius\n     */\n    rounded(radius: string = '4px'): StyleBuilder {\n        this.styles.push(`border-radius: ${radius}`);\n        return this;\n    }\n\n    /**\n     * Add font weight\n     */\n    bold(): StyleBuilder {\n        this.styles.push('font-weight: bold');\n        return this;\n    }\n\n    /**\n     * Add font styling\n     */\n    font(font: string): StyleBuilder {\n        this.styles.push(`font-family: ${font}`);\n        return this;\n    }\n\n    /**\n     * Set monospace font family (alias for common monospace fonts)\n     */\n    mono(): StyleBuilder {\n        return this.font('Monaco, Consolas, \"Courier New\", monospace');\n    }\n\n    /**\n     * Set system font family (alias for system fonts)\n     */\n    system(): StyleBuilder {\n        return this.font('system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif');\n    }\n\n    /**\n     * Add font size\n     */\n    size(size: string): StyleBuilder {\n        this.styles.push(`font-size: ${size}`);\n        return this;\n    }\n\n    /**\n     * Add line height\n     */\n    lineHeight(height: string): StyleBuilder {\n        this.styles.push(`line-height: ${height}`);\n        return this;\n    }\n\n    /**\n     * Add text decoration\n     */\n    underline(): StyleBuilder {\n        this.styles.push('text-decoration: underline');\n        return this;\n    }\n\n    /**\n     * Add text transform\n     */\n    uppercase(): StyleBuilder {\n        this.styles.push('text-transform: uppercase');\n        return this;\n    }\n\n    /**\n     * Add opacity\n     */\n    opacity(value: number): StyleBuilder {\n        this.styles.push(`opacity: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add display property\n     */\n    display(value: string): StyleBuilder {\n        this.styles.push(`display: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add position property\n     */\n    position(value: string): StyleBuilder {\n        this.styles.push(`position: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add transform property\n     */\n    transform(value: string): StyleBuilder {\n        this.styles.push(`transform: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add animation property\n     */\n    animation(value: string): StyleBuilder {\n        this.styles.push(`animation: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add transition property\n     */\n    transition(value: string): StyleBuilder {\n        this.styles.push(`transition: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add cursor property\n     */\n    cursor(value: string): StyleBuilder {\n        this.styles.push(`cursor: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add any custom CSS property\n     */\n    custom(property: string, value: string): StyleBuilder {\n        this.styles.push(`${property}: ${value}`);\n        return this;\n    }\n\n    /**\n     * Add any CSS property (alias for custom)\n     */\n    css(property: string, value: string): StyleBuilder {\n        return this.custom(property, value);\n    }\n\n    /**\n     * Build the final CSS string\n     */\n    build(): string {\n        return this.styles.join('; ');\n    }\n\n    /**\n     * Clear all styles and start fresh\n     */\n    clear(): StyleBuilder {\n        this.styles = [];\n        return this;\n    }\n\n    /**\n     * Clone this StyleBuilder with the same styles\n     */\n    clone(): StyleBuilder {\n        const cloned = new StyleBuilder();\n        cloned.styles = [...this.styles];\n        return cloned;\n    }\n\n    /**\n     * Merge another StyleBuilder's styles into this one\n     */\n    merge(other: StyleBuilder): StyleBuilder {\n        this.styles.push(...other.styles);\n        return this;\n    }\n}\n\n/**\n * Proxy-based dynamic styler for chainable console styling\n */\nfunction createStyler(): any {\n    const builder = new StyleBuilder();\n    return new Proxy(builder, {\n        get(target: StyleBuilder, prop: string) {\n            if (prop in target) {\n                const method = (target as any)[prop];\n                if (typeof method === 'function') {\n                    return method.bind(target);\n                }\n                return method;\n            }\n            return undefined;\n        }\n    });\n}\n\n/**\n * Dynamic styler instance for external use\n */\nexport const $ = createStyler();\n\n/**\n * Pre-defined style presets for common use cases\n */\nexport const StylePresets = {\n    success: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #00b894 0%, #00a085 100%)')\n        .color('#ffffff')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold(),\n\n    error: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #e84393 0%, #d63031 100%)')\n        .color('#ffffff')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold(),\n\n    warning: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #fdcb6e 0%, #e17055 100%)')\n        .color('#2d3436')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold(),\n\n    info: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #74b9ff 0%, #0984e3 100%)')\n        .color('#ffffff')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold(),\n\n    debug: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #667eea 0%, #764ba2 100%)')\n        .color('#ffffff')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold(),\n\n    muted: () => new StyleBuilder()\n        .color('#6c757d')\n        .font('Monaco, Consolas, monospace')\n        .size('12px'),\n\n    accent: () => new StyleBuilder()\n        .bg('#f8f9fa')\n        .color('#495057')\n        .padding('2px 6px')\n        .rounded('3px')\n        .border('1px solid #dee2e6'),\n\n    neon: () => new StyleBuilder()\n        .bg('linear-gradient(135deg, #0f3460 0%, #e94560 100%)')\n        .color('#00ffff')\n        .padding('4px 8px')\n        .rounded('4px')\n        .bold()\n        .shadow('0 0 10px rgba(0, 255, 255, 0.5)'),\n};","/**\n * @fileoverview Theme presets for Advanced Logger\n */\n\nimport type { ThemeVariant } from '../types/index.js';\nimport type { LevelStyleConfig } from '../utils/index.js';\n\n/**\n * Theme configurations for different visual styles\n */\nexport const THEME_PRESETS: Record<ThemeVariant, Record<string, LevelStyleConfig>> = {\n    default: {\n        debug: {\n            emoji: '🐞', label: 'DEBUG',\n            background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)',\n            color: '#ffffff', border: '1px solid #667eea',\n            shadow: '0 2px 4px rgba(102, 126, 234, 0.3)',\n        },\n        info: {\n            emoji: 'ℹ️', label: 'INFO',\n            background: 'linear-gradient(135deg, #74b9ff 0%, #0984e3 100%)',\n            color: '#ffffff', border: '1px solid #74b9ff',\n            shadow: '0 2px 4px rgba(116, 185, 255, 0.3)',\n        },\n        warn: {\n            emoji: '⚠️', label: 'WARN',\n            background: 'linear-gradient(135deg, #fdcb6e 0%, #e17055 100%)',\n            color: '#2d3436', border: '1px solid #fdcb6e',\n            shadow: '0 2px 4px rgba(253, 203, 110, 0.3)',\n        },\n        error: {\n            emoji: '❌', label: 'ERROR',\n            background: 'linear-gradient(135deg, #e84393 0%, #d63031 100%)',\n            color: '#ffffff', border: '1px solid #e84393',\n            shadow: '0 2px 4px rgba(232, 67, 147, 0.3)',\n        },\n        success: {\n            emoji: '✅', label: 'SUCCESS',\n            background: 'linear-gradient(135deg, #00b894 0%, #00a085 100%)',\n            color: '#ffffff', border: '1px solid #00b894',\n            shadow: '0 2px 4px rgba(0, 184, 148, 0.3)',\n        },\n        critical: {\n            emoji: '🔥', label: 'CRITICAL',\n            background: 'linear-gradient(135deg, #ff3838 0%, #ff1744 100%)',\n            color: '#ffffff', border: '2px solid #ff3838',\n            shadow: '0 4px 8px rgba(255, 56, 56, 0.5)',\n        },\n    },\n    dark: {\n        debug: {\n            emoji: '🌙', label: 'DEBUG',\n            background: 'linear-gradient(135deg, #2d3748 0%, #4a5568 100%)',\n            color: '#e2e8f0', border: '1px solid #4a5568',\n            shadow: '0 2px 4px rgba(45, 55, 72, 0.8)',\n        },\n        info: {\n            emoji: '💡', label: 'INFO',\n            background: 'linear-gradient(135deg, #1a202c 0%, #2d3748 100%)',\n            color: '#90cdf4', border: '1px solid #3182ce',\n            shadow: '0 2px 4px rgba(26, 32, 44, 0.8)',\n        },\n        warn: {\n            emoji: '⚡', label: 'WARN',\n            background: 'linear-gradient(135deg, #744210 0%, #975a16 100%)',\n            color: '#faf089', border: '1px solid #d69e2e',\n            shadow: '0 2px 4px rgba(116, 66, 16, 0.8)',\n        },\n        error: {\n            emoji: '💀', label: 'ERROR',\n            background: 'linear-gradient(135deg, #742a2a 0%, #9b2c2c 100%)',\n            color: '#feb2b2', border: '1px solid #e53e3e',\n            shadow: '0 2px 4px rgba(116, 42, 42, 0.8)',\n        },\n        success: {\n            emoji: '🎯', label: 'SUCCESS',\n            background: 'linear-gradient(135deg, #276749 0%, #2f855a 100%)',\n            color: '#9ae6b4', border: '1px solid #38a169',\n            shadow: '0 2px 4px rgba(39, 103, 73, 0.8)',\n        },\n        critical: {\n            emoji: '💥', label: 'CRITICAL',\n            background: 'linear-gradient(135deg, #1a1a1a 0%, #ff0000 100%)',\n            color: '#ffffff', border: '2px solid #ff0000',\n            shadow: '0 4px 8px rgba(255, 0, 0, 0.9)',\n        },\n    },\n    neon: {\n        debug: {\n            emoji: '⚡', label: 'DEBUG',\n            background: 'linear-gradient(135deg, #0f3460 0%, #e94560 100%)',\n            color: '#00ffff', border: '1px solid #00ffff',\n            shadow: '0 0 10px rgba(0, 255, 255, 0.5)',\n        },\n        info: {\n            emoji: '🔮', label: 'INFO',\n            background: 'linear-gradient(135deg, #16213e 0%, #0f3460 100%)',\n            color: '#00ff41', border: '1px solid #00ff41',\n            shadow: '0 0 10px rgba(0, 255, 65, 0.5)',\n        },\n        warn: {\n            emoji: '⚠️', label: 'WARN',\n            background: 'linear-gradient(135deg, #533a03 0%, #e94560 100%)',\n            color: '#ffff00', border: '1px solid #ffff00',\n            shadow: '0 0 10px rgba(255, 255, 0, 0.5)',\n        },\n        error: {\n            emoji: '💥', label: 'ERROR',\n            background: 'linear-gradient(135deg, #5c0a0a 0%, #ff073a 100%)',\n            color: '#ff073a', border: '1px solid #ff073a',\n            shadow: '0 0 10px rgba(255, 7, 58, 0.8)',\n        },\n        success: {\n            emoji: '✨', label: 'SUCCESS',\n            background: 'linear-gradient(135deg, #0a5c0a 0%, #39ff14 100%)',\n            color: '#39ff14', border: '1px solid #39ff14',\n            shadow: '0 0 10px rgba(57, 255, 20, 0.8)',\n        },\n        critical: {\n            emoji: '🌟', label: 'CRITICAL',\n            background: 'linear-gradient(135deg, #000000 0%, #ff0080 100%)',\n            color: '#ff0080', border: '2px solid #ff0080',\n            shadow: '0 0 20px rgba(255, 0, 128, 1)',\n        },\n    },\n    minimal: {\n        debug: {\n            emoji: '', label: 'DEBUG',\n            background: '#f7fafc', color: '#4a5568',\n            border: '1px solid #e2e8f0', shadow: 'none',\n        },\n        info: {\n            emoji: '', label: 'INFO',\n            background: '#ebf8ff', color: '#2b6cb0',\n            border: '1px solid #bee3f8', shadow: 'none',\n        },\n        warn: {\n            emoji: '', label: 'WARN',\n            background: '#fffbf0', color: '#c05621',\n            border: '1px solid #fed7aa', shadow: 'none',\n        },\n        error: {\n            emoji: '', label: 'ERROR',\n            background: '#fef5f5', color: '#c53030',\n            border: '1px solid #fca5a5', shadow: 'none',\n        },\n        success: {\n            emoji: '', label: 'SUCCESS',\n            background: '#f0fff4', color: '#2f855a',\n            border: '1px solid #9ae6b4', shadow: 'none',\n        },\n        critical: {\n            emoji: '', label: 'CRITICAL',\n            background: '#fef5f5', color: '#e53e3e',\n            border: '2px solid #f56565', shadow: 'none',\n        },\n    },\n    // Additional theme variants can be added here\n    light: {\n        debug: {\n            emoji: '🔍', label: 'DEBUG',\n            background: 'linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%)',\n            color: '#1565c0', border: '1px solid #90caf9',\n            shadow: '0 1px 3px rgba(33, 150, 243, 0.2)',\n        },\n        info: {\n            emoji: 'ℹ️', label: 'INFO',\n            background: 'linear-gradient(135deg, #f3e5f5 0%, #e1bee7 100%)',\n            color: '#7b1fa2', border: '1px solid #ce93d8',\n            shadow: '0 1px 3px rgba(156, 39, 176, 0.2)',\n        },\n        warn: {\n            emoji: '⚠️', label: 'WARN',\n            background: 'linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%)',\n            color: '#f57c00', border: '1px solid #ffcc02',\n            shadow: '0 1px 3px rgba(255, 152, 0, 0.2)',\n        },\n        error: {\n            emoji: '❌', label: 'ERROR',\n            background: 'linear-gradient(135deg, #ffebee 0%, #ffcdd2 100%)',\n            color: '#d32f2f', border: '1px solid #f44336',\n            shadow: '0 1px 3px rgba(244, 67, 54, 0.2)',\n        },\n        success: {\n            emoji: '✅', label: 'SUCCESS',\n            background: 'linear-gradient(135deg, #e8f5e8 0%, #c8e6c9 100%)',\n            color: '#388e3c', border: '1px solid #4caf50',\n            shadow: '0 1px 3px rgba(76, 175, 80, 0.2)',\n        },\n        critical: {\n            emoji: '🚨', label: 'CRITICAL',\n            background: 'linear-gradient(135deg, #fce4ec 0%, #f8bbd9 100%)',\n            color: '#c2185b', border: '2px solid #e91e63',\n            shadow: '0 2px 6px rgba(233, 30, 99, 0.3)',\n        },\n    },\n    cyberpunk: {\n        debug: {\n            emoji: '🤖', label: 'DEBUG',\n            background: 'linear-gradient(135deg, #0d1b2a 0%, #415a77 100%)',\n            color: '#00d4aa', border: '1px solid #00d4aa',\n            shadow: '0 0 15px rgba(0, 212, 170, 0.4)',\n        },\n        info: {\n            emoji: '🔗', label: 'INFO',\n            background: 'linear-gradient(135deg, #1b263b 0%, #0d1b2a 100%)',\n            color: '#00b4d8', border: '1px solid #00b4d8',\n            shadow: '0 0 15px rgba(0, 180, 216, 0.4)',\n        },\n        warn: {\n            emoji: '⚡', label: 'WARN',\n            background: 'linear-gradient(135deg, #f72585 0%, #b5179e 100%)',\n            color: '#ffff3f', border: '1px solid #ffff3f',\n            shadow: '0 0 15px rgba(255, 255, 63, 0.4)',\n        },\n        error: {\n            emoji: '💀', label: 'ERROR',\n            background: 'linear-gradient(135deg, #7209b7 0%, #480ca8 100%)',\n            color: '#ff006e', border: '1px solid #ff006e',\n            shadow: '0 0 15px rgba(255, 0, 110, 0.6)',\n        },\n        success: {\n            emoji: '⚡', label: 'SUCCESS',\n            background: 'linear-gradient(135deg, #003566 0%, #001d3d 100%)',\n            color: '#00f5ff', border: '1px solid #00f5ff',\n            shadow: '0 0 15px rgba(0, 245, 255, 0.4)',\n        },\n        critical: {\n            emoji: '💥', label: 'CRITICAL',\n            background: 'linear-gradient(135deg, #000000 0%, #ff0040 100%)',\n            color: '#ff0040', border: '2px solid #ff0040',\n            shadow: '0 0 25px rgba(255, 0, 64, 0.8)',\n        },\n    },\n};","/**\n * @fileoverview Banner configurations for Advanced Logger\n */\n\nimport type { BannerType, ThemeVariant } from '../types/index.js';\n\n/**\n * Banner variants for different display capabilities\n */\nexport const BANNER_VARIANTS = {\n    simple: {\n        text: '🚀 ADVANCED LOGGER v2.0.0 - State-of-the-art Console Styling 🚀',\n        style: 'background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 12px 20px; border-radius: 8px; font-weight: bold; font-size: 14px;'\n    },\n    ascii: {\n        text: `\n   ___     ____  _   __   ___     _   __  _____ _____ ____     __     ___    _____ _____ _____ ____  \n  / _ \\\\   / __ \\\\| | / /  / _ \\\\   | \\\\ | |/ ____| ____|  _ \\\\   |  |   / _ \\\\  / ____|  ___|  _  |  _ \\\\ \n / /_\\\\ \\\\ / / _\\` | |/ /  / /_\\\\ \\\\  |  \\\\| | |   | |__  | | | |  |  |  / / \\\\ \\\\| |  __| |_  | |_| | |_) |\n |  _  || | (_| |   <   |  _  |  | . \\` | |   |  __| | | | |  |  | | |   | | | |_ |  _| |    /|  _ < \n | | | |\\\\ \\\\__,_|_|\\\\_\\\\  | | | |  | |\\\\  | |___| |____| |_| |  |  |__\\\\ \\\\_/ /| |__| | |___| |\\\\ \\\\| |_) |\n \\\\_| |_/ \\\\____/        \\\\_| |_/  |_| \\\\_|\\\\_____|______|____/   |_____/\\\\___/  \\\\_____|_____|_| \\\\_|____/\n\n                            Advanced Logger v2.0.0 - Console Excellence`,\n        style: 'font-family: \"Courier New\", Consolas, Monaco, monospace; color: #667eea; font-size: 11px; line-height: 1.2;'\n    },\n    unicode: {\n        text: `\n╔══════════════════════════════════════════════════════════════════════════╗\n║                         🚀 ADVANCED LOGGER v2.0.0                       ║\n║                      State-of-the-art Console Styling                    ║  \n╚══════════════════════════════════════════════════════════════════════════╝`,\n        style: 'font-family: \"Courier New\", Consolas, Monaco, monospace; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 15px; border-radius: 8px; font-size: 12px; line-height: 1.3;'\n    },\n    svg: {\n        text: '                    ',\n        style: `\n            background-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 80'><defs><linearGradient id='grad' x1='0%' y1='0%' x2='100%' y2='0%'><stop offset='0%' style='stop-color:%23667eea'/><stop offset='100%' style='stop-color:%23764ba2'/></linearGradient></defs><rect width='100%' height='100%' fill='url(%23grad)' rx='8'/><text x='200' y='30' text-anchor='middle' fill='white' font-family='monospace' font-size='14' font-weight='bold'>🚀 ADVANCED LOGGER</text><text x='200' y='50' text-anchor='middle' fill='white' font-family='monospace' font-size='12'>State-of-the-art Console Styling</text><text x='200' y='65' text-anchor='middle' fill='white' font-family='monospace' font-size='10'>v2.0.0</text></svg>\");\n            background-repeat: no-repeat;\n            background-size: 400px 80px;\n            padding: 40px 200px;\n            color: transparent;\n            display: inline-block;\n            border-radius: 8px;\n        `\n    },\n    animated: {\n        text: '         🚀 ADVANCED LOGGER v2.0.0         ',\n        style: `\n            background: linear-gradient(-45deg, #667eea, #764ba2, #667eea, #764ba2);\n            background-size: 400% 400%;\n            color: white;\n            padding: 15px 25px;\n            border-radius: 10px;\n            font-weight: bold;\n            font-size: 14px;\n            font-family: monospace;\n            animation: gradientShift 3s ease infinite;\n            display: inline-block;\n        `\n    }\n};\n\n/**\n * Theme-specific banners for enhanced visual theming\n */\nexport const THEME_BANNERS: Record<ThemeVariant, { simple: string; style: string }> = {\n    default: {\n        simple: '🚀 ADVANCED LOGGER v2.0.0 - State-of-the-art Console Styling 🚀',\n        style: 'background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 12px 20px; border-radius: 8px; font-weight: bold;'\n    },\n    dark: {\n        simple: '🌙 ADVANCED LOGGER v2.0.0 - Dark Mode Console Excellence 🌙',\n        style: 'background: linear-gradient(135deg, #1a202c 0%, #2d3748 100%); color: #e2e8f0; padding: 12px 20px; border-radius: 8px; font-weight: bold; border: 1px solid #4a5568;'\n    },\n    neon: {\n        simple: '⚡ ADVANCED LOGGER v2.0.0 - Cyberpunk Console Experience ⚡',\n        style: 'background: linear-gradient(135deg, #0f3460 0%, #e94560 100%); color: #00ffff; padding: 12px 20px; border-radius: 8px; font-weight: bold; text-shadow: 0 0 10px #00ffff;'\n    },\n    minimal: {\n        simple: 'ADVANCED LOGGER v2.0.0 - Clean Console Styling',\n        style: 'background: #f7fafc; color: #2d3748; padding: 8px 16px; border: 1px solid #e2e8f0; border-radius: 4px; font-weight: 500;'\n    },\n    light: {\n        simple: '☀️ ADVANCED LOGGER v2.0.0 - Bright Console Styling ☀️',\n        style: 'background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); color: #495057; padding: 12px 20px; border-radius: 8px; font-weight: bold; border: 1px solid #dee2e6;'\n    },\n    cyberpunk: {\n        simple: '🤖 ADVANCED LOGGER v2.0.0 - Neural Console Interface 🤖',\n        style: 'background: linear-gradient(135deg, #0d1b2a 0%, #415a77 100%); color: #00d4aa; padding: 12px 20px; border-radius: 8px; font-weight: bold; text-shadow: 0 0 10px #00d4aa; border: 1px solid #00d4aa;'\n    }\n};\n\n/**\n * Feature detection for banner capabilities. Returns `'simple'` immediately\n * if neither `navigator` nor `document` exist (Node, SSR, workers).\n *\n */\nexport function detectBannerCapabilities(): BannerType {\n    if (typeof navigator === 'undefined' || typeof document === 'undefined') {\n        return 'simple';\n    }\n\n    // Try to detect browser capabilities\n    const userAgent = navigator.userAgent;\n    const isChrome = /Chrome/.test(userAgent);\n    const isFirefox = /Firefox/.test(userAgent);\n    const isSafari = /Safari/.test(userAgent) && !/Chrome/.test(userAgent);\n\n    // Check for SVG support (most modern browsers)\n    const supportsSVG = !!document.createElementNS &&\n        !!document.createElementNS('http://www.w3.org/2000/svg', 'svg').createSVGRect;\n\n    // Check for CSS animation support\n    const supportsAnimations = 'animationName' in document.createElement('div').style;\n\n    // Progressive enhancement\n    if (supportsAnimations && isChrome) {\n        return 'animated';\n    } else if (supportsSVG && (isChrome || isFirefox)) {\n        return 'svg';\n    } else if (isChrome || isFirefox) {\n        return 'unicode';\n    } else if (isSafari) {\n        return 'ascii';\n    }\n\n    return 'simple';\n}\n\n/**\n * Display initialization banner with advanced styling. No-op in Node,\n * SSR, or Web Workers (DOM-guard at the top).\n *\n */\nexport function displayInitBanner(bannerType?: BannerType): void {\n    if (typeof document === 'undefined') return;\n\n    const selectedType = bannerType || detectBannerCapabilities();\n    const banner = BANNER_VARIANTS[selectedType];\n\n    // Add CSS animation keyframes if needed\n    if (selectedType === 'animated') {\n        const style = document.createElement('style');\n        style.textContent = `\n            @keyframes gradientShift {\n                0% { background-position: 0% 50%; }\n                50% { background-position: 100% 50%; }\n                100% { background-position: 0% 50%; }\n            }\n        `;\n        document.head.appendChild(style);\n    }\n\n    console.log(`%c${banner.text}`, banner.style);\n\n    // Show feature highlights\n    const features = [\n        '🎨 Advanced CSS Console Styling',\n        '📍 Automatic Stack Trace Parsing',\n        '🔧 Scoped Loggers & Prefixes',\n        '⚡ Performance Timers',\n        '🎯 Verbosity Filtering',\n        '🔌 Extensible Handlers',\n        '📱 Modern TypeScript Patterns',\n        '📤 Export & Clipboard Support'\n    ];\n\n    console.group(`%c✨ Features`, 'background: #f8f9fa; color: #495057; padding: 4px 8px; border-radius: 4px; font-weight: bold;');\n\n    features.forEach(feature => {\n        console.log(`%c${feature}`, 'color: #6c757d; font-size: 13px;');\n    });\n\n    console.groupEnd();\n    console.log(''); // Add spacing\n}","/**\n * @fileoverview Smart presets for simplified logger configuration\n */\n\nimport type { LogStyles, LogLayout } from '../types/index.js';\n\n/**\n * Smart presets that configure the entire log appearance\n */\nexport const SMART_PRESETS: Record<string, LogStyles> = {\n    /**\n     * Default preset - works perfectly out-of-the-box\n     * Clean, readable, automatically adaptive to dark/light themes\n     */\n    default: {\n        layout: {\n            spacing: 'normal',\n            innerPadding: '2px',\n            outerMargin: '1px'\n        },\n        timestamp: {\n            show: true,\n            color: 'auto', // Automatically adaptive\n            font: 'Monaco, Consolas, monospace',\n            size: '11px'\n        },\n        level: {\n            show: true,\n            style: 'badge',\n            uppercase: false,\n            padding: '2px 8px'\n        },\n        prefix: {\n            show: true,\n            style: 'dark', // Automatically adaptive\n            padding: '2px 6px'\n        },\n        message: {\n            show: true,\n            color: 'auto', // Automatically adaptive\n            font: 'system-ui, -apple-system, sans-serif',\n            size: '14px'\n        },\n        location: {\n            show: true,\n            color: 'auto', // Automatically adaptive\n            font: 'Monaco, Consolas, monospace',\n            size: '11px'\n        }\n    },\n\n    /**\n     * Cyberpunk preset - neon colors, glowing effects, dark theme\n     */\n    cyberpunk: {\n        layout: {\n            spacing: 'compact',\n            innerPadding: '1px',\n            outerMargin: '0px'\n        },\n        timestamp: {\n            show: true,\n            color: '#00ffff',\n            font: 'Monaco, Consolas, monospace',\n            size: '10px',\n            style: 'neon'\n        },\n        level: {\n            show: true,\n            style: 'glowing',\n            uppercase: true,\n            padding: '2px 8px'\n        },\n        prefix: {\n            show: true,\n            color: '#ff0080',\n            background: 'rgba(255, 0, 128, 0.1)',\n            border: '1px solid #ff0080',\n            style: 'neon'\n        },\n        message: {\n            show: true,\n            color: '#00ff41',\n            font: 'Monaco, Consolas, monospace',\n            size: '13px'\n        },\n        location: {\n            show: false // Hidden for cleaner look\n        },\n        backdrop: 'blur(2px)',\n        transparency: 0.9\n    },\n\n    /**\n     * Glassmorphism preset - modern blur effects, transparency\n     */\n    glassmorphism: {\n        layout: {\n            spacing: 'spacious',\n            innerPadding: '4px',\n            outerMargin: '2px'\n        },\n        timestamp: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '11px',\n            style: 'glassmorphic'\n        },\n        level: {\n            show: true,\n            style: 'glassmorphic',\n            uppercase: false,\n            padding: '4px 12px'\n        },\n        prefix: {\n            show: true,\n            style: 'glassmorphic',\n            padding: '3px 8px'\n        },\n        message: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '14px'\n        },\n        location: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '11px',\n            style: 'glassmorphic'\n        },\n        backdrop: 'blur(10px)',\n        transparency: 0.8\n    },\n\n    /**\n     * Minimal preset - clean, no decorations, maximum readability\n     */\n    minimal: {\n        layout: {\n            spacing: 'compact',\n            innerPadding: '0px',\n            outerMargin: '0px'\n        },\n        timestamp: {\n            show: false // Hidden for minimal look\n        },\n        level: {\n            show: true,\n            style: 'flat',\n            uppercase: true,\n            padding: '0px 4px',\n            border: 'none',\n            background: 'transparent'\n        },\n        prefix: {\n            show: true,\n            style: 'flat',\n            padding: '0px 4px',\n            border: 'none',\n            background: 'transparent'\n        },\n        message: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '14px'\n        },\n        location: {\n            show: false // Hidden for minimal look\n        }\n    },\n\n    /**\n     * Debug preset - monospace, detailed, compact for development\n     */\n    debug: {\n        layout: {\n            spacing: 'compact',\n            innerPadding: '1px',\n            outerMargin: '0px'\n        },\n        timestamp: {\n            show: true,\n            color: 'auto',\n            font: 'Monaco, Consolas, monospace',\n            size: '10px'\n        },\n        level: {\n            show: true,\n            style: 'compact',\n            uppercase: true,\n            padding: '1px 4px',\n            font: 'Monaco, Consolas, monospace',\n            size: '10px'\n        },\n        prefix: {\n            show: true,\n            style: 'compact',\n            padding: '1px 4px',\n            font: 'Monaco, Consolas, monospace',\n            size: '10px'\n        },\n        message: {\n            show: true,\n            color: 'auto',\n            font: 'Monaco, Consolas, monospace',\n            size: '12px'\n        },\n        location: {\n            show: true,\n            color: 'auto',\n            font: 'Monaco, Consolas, monospace',\n            size: '10px',\n            style: 'clickable'\n        }\n    },\n\n    /**\n     * Production preset - clean, essential info only\n     */\n    production: {\n        layout: {\n            spacing: 'normal',\n            innerPadding: '2px',\n            outerMargin: '1px'\n        },\n        timestamp: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '11px'\n        },\n        level: {\n            show: true,\n            style: 'badge',\n            uppercase: false,\n            padding: '2px 6px'\n        },\n        prefix: {\n            show: false // Hidden in production\n        },\n        message: {\n            show: true,\n            color: 'auto',\n            font: 'system-ui, sans-serif',\n            size: '14px'\n        },\n        location: {\n            show: false // Hidden in production\n        }\n    }\n};\n\n/**\n * Get a smart preset by name\n */\nexport function getSmartPreset(name: string): LogStyles | null {\n    return SMART_PRESETS[name] || null;\n}\n\n/**\n * List all available smart presets\n */\nexport function getAvailablePresets(): string[] {\n    return Object.keys(SMART_PRESETS);\n}\n\n/**\n * Check if a preset exists\n */\nexport function hasPreset(name: string): boolean {\n    return name in SMART_PRESETS;\n}\n\n/**\n * Preset descriptions for help/documentation\n */\nexport const PRESET_DESCRIPTIONS: Record<string, string> = {\n    default: 'Clean, readable, automatically adaptive to dark/light themes',\n    cyberpunk: 'Neon colors, glowing effects, perfect for dark themes',\n    glassmorphism: 'Modern blur effects with transparency and spacious layout',\n    minimal: 'Clean and simple, no decorations, maximum readability',\n    debug: 'Monospace fonts, detailed info, compact layout for development',\n    production: 'Professional look with essential information only'\n};"],"mappings":"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"}