{"version":3,"file":"costlydeveloper-easy-peasy-logger.mjs","sources":["../../src/rules.ts","../../src/logger.ts"],"sourcesContent":["export class LogRules {\n  static #isLogEnabled = true;\n\n  static enableLog(): void {\n    this.#isLogEnabled = true;\n  }\n  static disableLog(): void {\n    this.#isLogEnabled = false;\n  }\n  static isLogEnabled(): boolean {\n    return this.#isLogEnabled;\n  }\n}\n","import { LogRules } from './rules';\n\ntype TitleOptions = 'B' | 'bold' | 'I' | 'italic' | 'S' | 'strikethrough' | 'U' | 'underline' | number;\n\nexport class Log {\n  static customColor(color: string, title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console(color, title, titleOptions);\n  }\n\n  static green(title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console('#31A821', title, titleOptions);\n  }\n\n  static red(title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console('#DA5555', title, titleOptions);\n  }\n\n  static blue(title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console('#5560DA', title, titleOptions);\n  }\n\n  static purple(title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console('#A955DA', title, titleOptions);\n  }\n\n  static yellow(title: string, ...titleOptions: TitleOptions[]): (...args: any) => void {\n    return this.#console('#EFEC47', title, titleOptions);\n  }\n\n  static #console(color: string, title: string, titleOptions: TitleOptions[]): any {\n    if (LogRules.isLogEnabled()) {\n      return console.log.bind(console, `%c${title}`, `${this.#titleOptionsToCss(titleOptions)} color: ${color}`);\n    } else {\n      return () => {};\n    }\n  }\n\n  static #titleOptionsToCss(titleOptions?: TitleOptions[]): string {\n    let resp = ``;\n    let textDecorationRule = '';\n    if (titleOptions) {\n      titleOptions.forEach(item => {\n        if (item === 'B' || item === 'bold') {\n          resp += 'font-weight: bold; ';\n        }\n        if (item === 'S' || item === 'strikethrough' || item === 'U' || item === 'underline') {\n          textDecorationRule += item === 'S' || item === 'strikethrough' ? 'line-through ' : '';\n          textDecorationRule += item === 'U' || item === 'underline' ? 'underline ' : '';\n        }\n        if (item === 'I' || item === 'italic') {\n          resp += 'font-style: italic; ';\n        }\n        if (typeof item === 'number') {\n          resp += `font-size: ${item}px; `;\n        }\n      });\n\n      if (textDecorationRule) {\n        resp += `text-decoration: ${textDecorationRule}; `;\n      }\n    }\n\n    return resp;\n  }\n}\n"],"names":["_a"],"mappings":"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"}