@mks2508/better-logger 1.2.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/package.json +1 -1
  3. package/src/terminal/terminal-renderer.ts +12 -4
  4. package/src/utils/stackTrace.ts +54 -5
  5. package/bun.lock +0 -333
  6. package/dist/Logger.d.ts +0 -704
  7. package/dist/Logger.d.ts.map +0 -1
  8. package/dist/ScopedLogger.d.ts +0 -310
  9. package/dist/ScopedLogger.d.ts.map +0 -1
  10. package/dist/chunks/Logger-BynuRJQf.js +0 -3503
  11. package/dist/chunks/Logger-BynuRJQf.js.map +0 -1
  12. package/dist/chunks/Logger-DMjlVQWi.js +0 -2
  13. package/dist/chunks/Logger-DMjlVQWi.js.map +0 -1
  14. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js +0 -33
  15. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js.map +0 -1
  16. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js +0 -2
  17. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js.map +0 -1
  18. package/dist/chunks/ScopedLogger-Bl56WovH.js +0 -361
  19. package/dist/chunks/ScopedLogger-Bl56WovH.js.map +0 -1
  20. package/dist/chunks/ScopedLogger-D2HzayKH.js +0 -2
  21. package/dist/chunks/ScopedLogger-D2HzayKH.js.map +0 -1
  22. package/dist/chunks/environment--eaTrhRu.js +0 -4
  23. package/dist/chunks/environment--eaTrhRu.js.map +0 -1
  24. package/dist/chunks/environment-BanAyF-K.js +0 -1172
  25. package/dist/chunks/environment-BanAyF-K.js.map +0 -1
  26. package/dist/chunks/formatting-BSNvAxLK.js +0 -2
  27. package/dist/chunks/formatting-BSNvAxLK.js.map +0 -1
  28. package/dist/chunks/formatting-CgQSWgXR.js +0 -380
  29. package/dist/chunks/formatting-CgQSWgXR.js.map +0 -1
  30. package/dist/cli/CommandProcessor.d.ts +0 -100
  31. package/dist/cli/CommandProcessor.d.ts.map +0 -1
  32. package/dist/cli/commands/ConfigCommand.d.ts +0 -14
  33. package/dist/cli/commands/ConfigCommand.d.ts.map +0 -1
  34. package/dist/cli/commands/ExportCommand.d.ts +0 -48
  35. package/dist/cli/commands/ExportCommand.d.ts.map +0 -1
  36. package/dist/cli/commands/HistoryCommand.d.ts +0 -47
  37. package/dist/cli/commands/HistoryCommand.d.ts.map +0 -1
  38. package/dist/cli/commands/StatusCommand.d.ts +0 -30
  39. package/dist/cli/commands/StatusCommand.d.ts.map +0 -1
  40. package/dist/cli/commands/ThemeCommand.d.ts +0 -30
  41. package/dist/cli/commands/ThemeCommand.d.ts.map +0 -1
  42. package/dist/cli/help.d.ts +0 -12
  43. package/dist/cli/help.d.ts.map +0 -1
  44. package/dist/cli/index.d.ts +0 -15
  45. package/dist/cli/index.d.ts.map +0 -1
  46. package/dist/constants.d.ts +0 -227
  47. package/dist/constants.d.ts.map +0 -1
  48. package/dist/core.cjs +0 -2
  49. package/dist/core.cjs.map +0 -1
  50. package/dist/core.d.ts +0 -127
  51. package/dist/core.d.ts.map +0 -1
  52. package/dist/core.js +0 -291
  53. package/dist/core.js.map +0 -1
  54. package/dist/example.d.ts +0 -18
  55. package/dist/example.d.ts.map +0 -1
  56. package/dist/exports-module.d.ts +0 -196
  57. package/dist/exports-module.d.ts.map +0 -1
  58. package/dist/exports.cjs +0 -2
  59. package/dist/exports.cjs.map +0 -1
  60. package/dist/exports.js +0 -238
  61. package/dist/exports.js.map +0 -1
  62. package/dist/handlers/AnalyticsLogHandler.d.ts +0 -8
  63. package/dist/handlers/AnalyticsLogHandler.d.ts.map +0 -1
  64. package/dist/handlers/ExportLogHandler.d.ts +0 -100
  65. package/dist/handlers/ExportLogHandler.d.ts.map +0 -1
  66. package/dist/handlers/FileLogHandler.d.ts +0 -33
  67. package/dist/handlers/FileLogHandler.d.ts.map +0 -1
  68. package/dist/handlers/RemoteLogHandler.d.ts +0 -11
  69. package/dist/handlers/RemoteLogHandler.d.ts.map +0 -1
  70. package/dist/handlers/index.d.ts +0 -8
  71. package/dist/handlers/index.d.ts.map +0 -1
  72. package/dist/index.cjs +0 -2
  73. package/dist/index.cjs.map +0 -1
  74. package/dist/index.d.ts +0 -124
  75. package/dist/index.d.ts.map +0 -1
  76. package/dist/index.js +0 -247
  77. package/dist/index.js.map +0 -1
  78. package/dist/main.d.ts +0 -2
  79. package/dist/main.d.ts.map +0 -1
  80. package/dist/styling/LogStyleBuilder.d.ts +0 -146
  81. package/dist/styling/LogStyleBuilder.d.ts.map +0 -1
  82. package/dist/styling/SemanticStyles.d.ts +0 -178
  83. package/dist/styling/SemanticStyles.d.ts.map +0 -1
  84. package/dist/styling/SmartPresets.d.ts +0 -22
  85. package/dist/styling/SmartPresets.d.ts.map +0 -1
  86. package/dist/styling/StyleBuilder.d.ts +0 -140
  87. package/dist/styling/StyleBuilder.d.ts.map +0 -1
  88. package/dist/styling/banners.d.ts +0 -42
  89. package/dist/styling/banners.d.ts.map +0 -1
  90. package/dist/styling/index.d.ts +0 -10
  91. package/dist/styling/index.d.ts.map +0 -1
  92. package/dist/styling/themes.d.ts +0 -7
  93. package/dist/styling/themes.d.ts.map +0 -1
  94. package/dist/styling-module.d.ts +0 -178
  95. package/dist/styling-module.d.ts.map +0 -1
  96. package/dist/styling.cjs +0 -2
  97. package/dist/styling.cjs.map +0 -1
  98. package/dist/styling.js +0 -146
  99. package/dist/styling.js.map +0 -1
  100. package/dist/terminal/terminal-renderer.d.ts +0 -63
  101. package/dist/terminal/terminal-renderer.d.ts.map +0 -1
  102. package/dist/types/core.d.ts +0 -234
  103. package/dist/types/core.d.ts.map +0 -1
  104. package/dist/types/handlers.d.ts +0 -85
  105. package/dist/types/handlers.d.ts.map +0 -1
  106. package/dist/types/index.d.ts +0 -7
  107. package/dist/types/index.d.ts.map +0 -1
  108. package/dist/utils/adapter.d.ts +0 -48
  109. package/dist/utils/adapter.d.ts.map +0 -1
  110. package/dist/utils/ansi-colors.d.ts +0 -156
  111. package/dist/utils/ansi-colors.d.ts.map +0 -1
  112. package/dist/utils/environment-detector.d.ts +0 -35
  113. package/dist/utils/environment-detector.d.ts.map +0 -1
  114. package/dist/utils/environment.d.ts +0 -47
  115. package/dist/utils/environment.d.ts.map +0 -1
  116. package/dist/utils/formatting.d.ts +0 -58
  117. package/dist/utils/formatting.d.ts.map +0 -1
  118. package/dist/utils/index.d.ts +0 -8
  119. package/dist/utils/index.d.ts.map +0 -1
  120. package/dist/utils/opentui-detection.d.ts +0 -34
  121. package/dist/utils/opentui-detection.d.ts.map +0 -1
  122. package/dist/utils/output.d.ts +0 -46
  123. package/dist/utils/output.d.ts.map +0 -1
  124. package/dist/utils/stackTrace.d.ts +0 -6
  125. package/dist/utils/stackTrace.d.ts.map +0 -1
  126. package/dist/utils/timestamps.d.ts +0 -20
  127. package/dist/utils/timestamps.d.ts.map +0 -1
  128. package/dist/vite.svg +0 -1
@@ -1,234 +0,0 @@
1
- /**
2
- * @fileoverview Definiciones de tipos principales para Better Logger
3
- * @version 0.3.0
4
- * @since 2024
5
- */
6
- /**
7
- * Niveles de log soportados en orden jerárquico (debug < info < warn < error < critical)
8
- *
9
- * @constant {Object} LOG_LEVELS
10
- * @property {number} debug - Nivel 0: Información de depuración detallada
11
- * @property {number} info - Nivel 1: Mensajes informativos generales
12
- * @property {number} warn - Nivel 2: Advertencias que no detienen la ejecución
13
- * @property {number} error - Nivel 3: Errores que pueden afectar funcionalidad
14
- * @property {number} critical - Nivel 4: Errores críticos que requieren atención inmediata
15
- *
16
- * @example
17
- * // Verificar si un nivel debe mostrarse
18
- * if (LOG_LEVELS[currentLevel] >= LOG_LEVELS.warn) {
19
- * // Mostrar solo warn, error y critical
20
- * }
21
- */
22
- export declare const LOG_LEVELS: {
23
- readonly debug: 0;
24
- readonly info: 1;
25
- readonly warn: 2;
26
- readonly error: 3;
27
- readonly critical: 4;
28
- };
29
- /**
30
- * Tipo de nivel de log derivado de las claves de LOG_LEVELS
31
- * @typedef {'debug' | 'info' | 'warn' | 'error' | 'critical'} LogLevel
32
- */
33
- export type LogLevel = keyof typeof LOG_LEVELS;
34
- /**
35
- * Tipo de nivel de verbosidad para filtrar logs
36
- * @typedef {LogLevel | 'silent'} Verbosity
37
- * @description 'silent' desactiva completamente todos los logs
38
- */
39
- export type Verbosity = LogLevel | 'silent';
40
- /**
41
- * Variantes de tema para diferentes estilos visuales
42
- * @typedef {'default' | 'dark' | 'light' | 'neon' | 'minimal' | 'cyberpunk'} ThemeVariant
43
- *
44
- * @description
45
- * - default: Tema adaptativo automático (claro/oscuro)
46
- * - dark: Tema oscuro con colores vibrantes
47
- * - light: Tema claro con colores suaves
48
- * - neon: Colores neón brillantes con efectos de resplandor
49
- * - minimal: Diseño minimalista y limpio
50
- * - cyberpunk: Estilo futurista con neón y efectos
51
- */
52
- export type ThemeVariant = 'default' | 'dark' | 'light' | 'neon' | 'minimal' | 'cyberpunk';
53
- /**
54
- * Detección de tema de DevTools del navegador
55
- * @typedef {'light' | 'dark'} DevToolsTheme
56
- */
57
- export type DevToolsTheme = 'light' | 'dark';
58
- /**
59
- * Tipos de banner para diferentes enfoques visuales
60
- * @typedef {'simple' | 'ascii' | 'unicode' | 'svg' | 'animated'} BannerType
61
- *
62
- * @description
63
- * - simple: Texto simple sin decoración
64
- * - ascii: Arte ASCII tradicional
65
- * - unicode: Caracteres Unicode decorativos
66
- * - svg: Gráfico SVG embebido
67
- * - animated: Banner con animación CSS
68
- */
69
- export type BannerType = 'simple' | 'ascii' | 'unicode' | 'svg' | 'animated';
70
- /**
71
- * Formatos de exportación para datos de log
72
- * @typedef {'json' | 'csv' | 'markdown' | 'plain' | 'html'} ExportFormat
73
- *
74
- * @description
75
- * - json: Formato JSON estructurado
76
- * - csv: Valores separados por comas para Excel/Sheets
77
- * - markdown: Formato Markdown para documentación
78
- * - plain: Texto plano sin formato
79
- * - html: HTML con estilos para visualización web
80
- */
81
- export type ExportFormat = 'json' | 'csv' | 'markdown' | 'plain' | 'html';
82
- /**
83
- * Formatos de salida para diferentes entornos
84
- * @typedef {'auto' | 'plain' | 'ansi' | 'build' | 'ci'} OutputFormat
85
- *
86
- * @description
87
- * - auto: Detección automática basada en entorno (recomendado)
88
- * - plain: Texto plano sin colores (máxima compatibilidad)
89
- * - ansi: Colores ANSI para terminales modernos
90
- * - build: Formato optimizado para builds (Next.js, webpack, etc.)
91
- * - ci: Formato optimizado para CI/CD (sin emojis, texto simple)
92
- */
93
- export type OutputFormat = 'auto' | 'plain' | 'ansi' | 'build' | 'ci';
94
- /**
95
- * Interfaz de configuración para instancias del logger
96
- *
97
- * @interface LoggerConfig
98
- * @since 0.3.0
99
- *
100
- * @example
101
- * const config: LoggerConfig = {
102
- * globalPrefix: 'MiApp',
103
- * verbosity: 'info',
104
- * enableColors: true,
105
- * enableTimestamps: true,
106
- * enableStackTrace: false,
107
- * theme: 'cyberpunk',
108
- * bannerType: 'animated',
109
- * bufferSize: 500,
110
- * autoDetectTheme: true
111
- * };
112
- */
113
- export interface LoggerConfig {
114
- globalPrefix?: string;
115
- verbosity: Verbosity;
116
- enableColors: boolean;
117
- enableTimestamps: boolean;
118
- enableStackTrace: boolean;
119
- theme?: ThemeVariant;
120
- bannerType?: BannerType;
121
- bufferSize?: number;
122
- autoDetectTheme?: boolean;
123
- outputFormat?: OutputFormat;
124
- }
125
- /**
126
- * Información parseada del stack trace
127
- *
128
- * @interface StackInfo
129
- * @description Contiene la ubicación exacta donde se originó el log
130
- */
131
- export interface StackInfo {
132
- file: string;
133
- line: number;
134
- column: number;
135
- function?: string;
136
- }
137
- /**
138
- * Entrada de temporizador para medición de rendimiento
139
- *
140
- * @interface TimerEntry
141
- * @description Usado internamente para rastrear temporizadores activos
142
- */
143
- export interface TimerEntry {
144
- label: string;
145
- startTime: number;
146
- }
147
- /**
148
- * Opciones para estilizar componentes
149
- *
150
- * @interface StyleOptions
151
- * @description Configuración de dimensiones y espaciado para elementos visuales
152
- */
153
- export interface StyleOptions {
154
- width?: number;
155
- height?: number;
156
- padding?: string;
157
- }
158
- /**
159
- * Configuración de colores adaptativos para temas claro/oscuro
160
- *
161
- * @interface AdaptiveColors
162
- * @description Define colores que se ajustan automáticamente al tema del navegador
163
- */
164
- export interface AdaptiveColors {
165
- light: string;
166
- dark: string;
167
- }
168
- /**
169
- * Configuración de espaciado para elementos del log
170
- * @typedef {'compact' | 'normal' | 'spacious'} SpacingType
171
- *
172
- * @description
173
- * - compact: Espaciado mínimo para más densidad
174
- * - normal: Espaciado estándar balanceado
175
- * - spacious: Espaciado amplio para mejor legibilidad
176
- */
177
- export type SpacingType = 'compact' | 'normal' | 'spacious';
178
- /**
179
- * Configuración de layout para la estructura del log
180
- *
181
- * @interface LogLayout
182
- * @description Define cómo se organizan visualmente los elementos del log
183
- */
184
- export interface LogLayout {
185
- spacing: SpacingType;
186
- innerPadding?: string;
187
- outerMargin?: string;
188
- separator?: string;
189
- }
190
- /**
191
- * Configuración para partes individuales del log
192
- *
193
- * @interface LogPartConfig
194
- * @description Permite personalizar cada elemento del log por separado
195
- *
196
- * @example
197
- * const timestampConfig: LogPartConfig = {
198
- * show: true,
199
- * color: '#888',
200
- * font: 'Monaco',
201
- * size: '11px'
202
- * };
203
- */
204
- export interface LogPartConfig {
205
- show?: boolean;
206
- style?: string;
207
- font?: string;
208
- size?: string;
209
- color?: string;
210
- background?: string;
211
- padding?: string;
212
- margin?: string;
213
- border?: string;
214
- shadow?: string;
215
- uppercase?: boolean;
216
- }
217
- /**
218
- * Configuración completa de estilos del log
219
- *
220
- * @interface LogStyles
221
- * @description Agrupa todas las opciones de estilo en una sola configuración
222
- * @since 0.3.0
223
- */
224
- export interface LogStyles {
225
- layout?: LogLayout;
226
- timestamp?: LogPartConfig;
227
- level?: LogPartConfig;
228
- prefix?: LogPartConfig;
229
- message?: LogPartConfig;
230
- location?: LogPartConfig;
231
- backdrop?: string;
232
- transparency?: number;
233
- }
234
- //# sourceMappingURL=core.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"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"}
@@ -1,85 +0,0 @@
1
- import { LogLevel, StackInfo } from './core.js';
2
- /**
3
- * Metadata associated with each log entry
4
- */
5
- export interface LogMetadata {
6
- timestamp: string;
7
- level: LogLevel;
8
- prefix?: string;
9
- stackInfo?: StackInfo;
10
- group?: string;
11
- }
12
- /**
13
- * Interface for custom log handlers (extensibility)
14
- */
15
- export interface ILogHandler {
16
- handle(level: LogLevel, message: string, args: any[], metadata: LogMetadata): void;
17
- }
18
- /**
19
- * Stored log entry for export functionality
20
- */
21
- export interface LogEntry {
22
- id: string;
23
- timestamp: string;
24
- level: LogLevel;
25
- prefix?: string;
26
- message: string;
27
- args: any[];
28
- location?: StackInfo;
29
- groupInfo?: {
30
- depth: number;
31
- groupName?: string;
32
- };
33
- }
34
- /**
35
- * Export filter options
36
- */
37
- export interface ExportFilters {
38
- levels?: LogLevel[];
39
- since?: Date | string | number;
40
- until?: Date | string | number;
41
- prefixes?: string[];
42
- excludePrefixes?: string[];
43
- withStackTrace?: boolean;
44
- errorsOnly?: boolean;
45
- last?: number;
46
- first?: number;
47
- search?: string;
48
- groupBy?: 'level' | 'prefix' | 'hour' | 'date';
49
- }
50
- /**
51
- * Export options for different formats
52
- */
53
- export interface ExportOptions {
54
- minimal?: boolean;
55
- compact?: boolean;
56
- styled?: boolean;
57
- includeMetadata?: boolean;
58
- groupBy?: ExportFilters['groupBy'];
59
- }
60
- /**
61
- * Export result with metadata
62
- */
63
- export interface ExportResult {
64
- format: string;
65
- data: string;
66
- metadata: {
67
- totalLogs: number;
68
- filteredLogs: number;
69
- exportedAt: string;
70
- filters?: ExportFilters;
71
- options?: ExportOptions;
72
- };
73
- }
74
- /**
75
- * Buffer statistics for log management
76
- */
77
- export interface BufferStats {
78
- size: number;
79
- maxSize: number;
80
- usage: number;
81
- oldestLog?: Date;
82
- newestLog?: Date;
83
- levelCounts: Record<LogLevel, number>;
84
- }
85
- //# sourceMappingURL=handlers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/types/handlers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CACtF;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC/B,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;CAClD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,aAAa,CAAC;QACxB,OAAO,CAAC,EAAE,aAAa,CAAC;KAC3B,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;CACzC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * @fileoverview Type definitions exports for Advanced Logger
3
- */
4
- export type { LogLevel, Verbosity, ThemeVariant, DevToolsTheme, BannerType, ExportFormat, OutputFormat, LoggerConfig, StackInfo, TimerEntry, StyleOptions, AdaptiveColors, SpacingType, LogLayout, LogPartConfig, LogStyles, } from './core.js';
5
- export { LOG_LEVELS } from './core.js';
6
- export type { LogMetadata, ILogHandler, LogEntry, ExportFilters, ExportOptions, ExportResult, BufferStats, } from './handlers.js';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACR,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,aAAa,EACb,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,UAAU,EACV,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,EACT,aAAa,EACb,SAAS,GACZ,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,YAAY,EACR,WAAW,EACX,WAAW,EACX,QAAQ,EACR,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,GACd,MAAM,eAAe,CAAC"}
@@ -1,48 +0,0 @@
1
- import { LogStyles, LogLevel } from '../types/index.js';
2
- import { ANSIStyle, TerminalRenderer } from '../terminal/terminal-renderer.js';
3
- export declare class CSS2ANSIAdapter {
4
- private renderer;
5
- constructor();
6
- /**
7
- * Convert LogStyles to ANSIStyle for terminal rendering
8
- */
9
- adaptStyles(level: LogLevel, message: string, timestamp?: string, prefix?: string, location?: string, styles?: LogStyles, presetName?: string): ANSIStyle;
10
- /**
11
- * Adapt production preset for terminal
12
- */
13
- private adaptProductionStyles;
14
- /**
15
- * Adapt debug preset for terminal
16
- */
17
- private adaptDebugStyles;
18
- /**
19
- * Adapt glassmorphism preset for terminal
20
- */
21
- private adaptGlassmorphismStyles;
22
- /**
23
- * Convert CSS color values to ANSI-friendly colors
24
- */
25
- adaptColor(cssColor: string): string;
26
- /**
27
- * Extract primary color from CSS gradient
28
- */
29
- private extractColorFromGradient;
30
- /**
31
- * Convert CSS color names to ANSI-compatible names
32
- */
33
- private cssNameToANSI;
34
- /**
35
- * Check if a style should be rendered in terminal
36
- */
37
- shouldRenderStyle(styleType: string, styles?: LogStyles): boolean;
38
- /**
39
- * Get renderer instance for advanced usage
40
- */
41
- getRenderer(): TerminalRenderer;
42
- }
43
- export declare const css2ansiAdapter: CSS2ANSIAdapter;
44
- /**
45
- * Convenience function for quick style adaptation
46
- */
47
- export declare function adaptToTerminal(level: LogLevel, message: string, timestamp?: string, prefix?: string, location?: string, styles?: LogStyles, presetName?: string): ANSIStyle;
48
- //# sourceMappingURL=adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/utils/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD,qBAAa,eAAe;IACxB,OAAO,CAAC,QAAQ,CAAmB;;IAOnC;;OAEG;IACH,WAAW,CACP,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,SAAS,EAClB,UAAU,CAAC,EAAE,MAAM,GACpB,SAAS;IAqBZ;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA0C7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAqDxB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAyChC;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAoBpC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAMhC;;OAEG;IACH,OAAO,CAAC,aAAa;IAyBrB;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO;IAOjE;;OAEG;IACH,WAAW,IAAI,gBAAgB;CAGlC;AAGD,eAAO,MAAM,eAAe,iBAAwB,CAAC;AAErD;;GAEG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,SAAS,EAClB,UAAU,CAAC,EAAE,MAAM,GACpB,SAAS,CAEX"}
@@ -1,156 +0,0 @@
1
- import { LogLevel } from '../types/index.js';
2
- /**
3
- * ANSI color codes for terminal styling
4
- */
5
- export declare const ANSI_CODES: {
6
- readonly black: 30;
7
- readonly red: 31;
8
- readonly green: 32;
9
- readonly yellow: 33;
10
- readonly blue: 34;
11
- readonly magenta: 35;
12
- readonly cyan: 36;
13
- readonly white: 37;
14
- readonly brightBlack: 90;
15
- readonly brightRed: 91;
16
- readonly brightGreen: 92;
17
- readonly brightYellow: 93;
18
- readonly brightBlue: 94;
19
- readonly brightMagenta: 95;
20
- readonly brightCyan: 96;
21
- readonly brightWhite: 97;
22
- readonly bgBlack: 40;
23
- readonly bgRed: 41;
24
- readonly bgGreen: 42;
25
- readonly bgYellow: 43;
26
- readonly bgBlue: 44;
27
- readonly bgMagenta: 45;
28
- readonly bgCyan: 46;
29
- readonly bgWhite: 47;
30
- readonly bgBrightBlack: 100;
31
- readonly bgBrightRed: 101;
32
- readonly bgBrightGreen: 102;
33
- readonly bgBrightYellow: 103;
34
- readonly bgBrightBlue: 104;
35
- readonly bgBrightMagenta: 105;
36
- readonly bgBrightCyan: 106;
37
- readonly bgBrightWhite: 107;
38
- readonly reset: 0;
39
- readonly bold: 1;
40
- readonly dim: 2;
41
- readonly italic: 3;
42
- readonly underline: 4;
43
- readonly blink: 5;
44
- readonly inverse: 7;
45
- readonly hidden: 8;
46
- readonly strikethrough: 9;
47
- readonly resetBold: 22;
48
- readonly resetDim: 22;
49
- readonly resetItalic: 23;
50
- readonly resetUnderline: 24;
51
- readonly resetBlink: 25;
52
- readonly resetInverse: 27;
53
- readonly resetHidden: 28;
54
- readonly resetStrikethrough: 29;
55
- };
56
- /**
57
- * ANSI color presets for different log levels
58
- */
59
- export declare const ANSI_LEVEL_STYLES: Record<LogLevel | 'success', {
60
- color: number;
61
- background?: number;
62
- styles: number[];
63
- emoji: string;
64
- }>;
65
- /**
66
- * Applies ANSI styling to text
67
- */
68
- export declare function ansiStyle(text: string, codes: number[]): string;
69
- /**
70
- * Applies color to text
71
- */
72
- export declare function ansiColor(text: string, color: number): string;
73
- /**
74
- * Applies background color to text
75
- */
76
- export declare function ansiBackground(text: string, bg: number, color?: number): string;
77
- /**
78
- * Makes text bold
79
- */
80
- export declare function ansiBold(text: string): string;
81
- /**
82
- * Makes text dim
83
- */
84
- export declare function ansiDim(text: string): string;
85
- /**
86
- * Underlines text
87
- */
88
- export declare function ansiUnderline(text: string): string;
89
- /**
90
- * Specialized formatters for different contexts
91
- */
92
- /**
93
- * Format timestamp for terminal
94
- */
95
- export declare function formatTimestampANSI(timestamp: string): string;
96
- /**
97
- * Format log level for terminal
98
- */
99
- export declare function formatLogLevelANSI(level: LogLevel, useEmojis?: boolean): string;
100
- /**
101
- * Format success message for terminal
102
- */
103
- export declare function formatSuccessANSI(message: string, useEmojis?: boolean): string;
104
- /**
105
- * Format prefix for terminal
106
- */
107
- export declare function formatPrefixANSI(prefix: string): string;
108
- /**
109
- * Format file location for terminal
110
- */
111
- export declare function formatLocationANSI(location: string): string;
112
- /**
113
- * Format build-specific messages
114
- */
115
- export declare const BUILD_FORMATTERS: {
116
- /**
117
- * Format compilation step
118
- */
119
- compilation: (step: string, status?: "starting" | "completed" | "failed") => string;
120
- /**
121
- * Format warning message
122
- */
123
- warning: (message: string) => string;
124
- /**
125
- * Format error message
126
- */
127
- error: (message: string) => string;
128
- /**
129
- * Format success message
130
- */
131
- success: (message: string) => string;
132
- /**
133
- * Format info message
134
- */
135
- info: (message: string) => string;
136
- };
137
- /**
138
- * Terminal-friendly emoji alternatives for environments that don't support them
139
- */
140
- export declare const EMOJI_ALTERNATIVES: {
141
- '\uD83D\uDD0D': string;
142
- ℹ️: string;
143
- '\u26A0\uFE0F': string;
144
- '\u274C': string;
145
- '\uD83D\uDEA8': string;
146
- '\u2705': string;
147
- '\u2713': string;
148
- '\u2717': string;
149
- '\u2699\uFE0F': string;
150
- '\uD83D\uDCE6': string;
151
- };
152
- /**
153
- * Replace emojis with text alternatives for non-emoji terminals
154
- */
155
- export declare function sanitizeEmojis(text: string): string;
156
- //# sourceMappingURL=ansi-colors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ansi-colors.d.ts","sourceRoot":"","sources":["../../src/utils/ansi-colors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6Db,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,QAAQ,GAAG,SAAS,EAAE;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACjB,CAmCA,CAAC;AAUF;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAG/D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAK/E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;GAEG;AAEH;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,GAAE,OAAc,GAAG,MAAM,CAerF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,OAAc,GAAG,MAAM,CAUpF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB;IACzB;;OAEG;wBACiB,MAAM,WAAU,UAAU,GAAG,WAAW,GAAG,QAAQ;IAevE;;OAEG;uBACgB,MAAM;IAIzB;;OAEG;qBACc,MAAM;IAIvB;;OAEG;uBACgB,MAAM;IAIzB;;OAEG;oBACa,MAAM;CAGzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;CAW9B,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAqBnD"}
@@ -1,35 +0,0 @@
1
- /**
2
- * Environment Detector - Robust environment detection for logger
3
- * Detects browser, terminal, server, and other runtime environments
4
- */
5
- export type Environment = 'browser' | 'terminal' | 'server' | 'webworker' | 'deno' | 'unknown';
6
- /**
7
- * Main environment detection function
8
- */
9
- export declare function getEnvironment(): Environment;
10
- /**
11
- * Check if running in an interactive terminal
12
- */
13
- export declare function isRunningInTerminal(): boolean;
14
- /**
15
- * Check if environment supports ANSI colors
16
- */
17
- export declare function supportsANSI(): boolean;
18
- /**
19
- * Get environment-specific color capability
20
- */
21
- export declare function getColorCapability(): 'full' | 'basic' | 'none';
22
- /**
23
- * Environment information for debugging
24
- */
25
- export declare function getEnvironmentInfo(): {
26
- environment: Environment;
27
- supportsANSI: boolean;
28
- colorCapability: "none" | "full" | "basic";
29
- isTTY: boolean;
30
- platform: string;
31
- nodeVersion: string | null;
32
- term: string | null | undefined;
33
- colorTerm: string | null | undefined;
34
- };
35
- //# sourceMappingURL=environment-detector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment-detector.d.ts","sourceRoot":"","sources":["../../src/utils/environment-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAAC;AAE/F;;GAEG;AACH,wBAAgB,cAAc,IAAI,WAAW,CA0B5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAiC7C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAQtC;AAmBD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,OAAO,GAAG,MAAM,CAsB9D;AAED;;GAEG;AACH,wBAAgB,kBAAkB;;;;;;;;;EAWjC"}
@@ -1,47 +0,0 @@
1
- /**
2
- * @fileoverview Environment detection utilities for Universal Logger
3
- */
4
- /**
5
- * Checks if running in Node.js environment
6
- */
7
- export declare const isNode: string | false;
8
- /**
9
- * Checks if running in browser environment
10
- */
11
- export declare const isBrowser: boolean;
12
- /**
13
- * Checks if running in web worker environment
14
- */
15
- export declare const isWebWorker: boolean;
16
- /**
17
- * Checks if running in Deno environment
18
- */
19
- export declare const isDeno: boolean;
20
- /**
21
- * Gets the current runtime environment
22
- */
23
- export declare function getRuntimeEnvironment(): 'node' | 'browser' | 'webworker' | 'deno' | 'unknown';
24
- /**
25
- * Checks if colors/styling should be supported in current environment
26
- */
27
- export declare function supportsColors(): boolean;
28
- /**
29
- * Checks if CSS styling is supported (browser-only feature)
30
- */
31
- export declare function supportsCSSColors(): boolean;
32
- /**
33
- * Checks if ANSI colors are supported (terminal environments)
34
- */
35
- export declare function supportsANSIColors(): boolean;
36
- /**
37
- * Gets environment-specific information
38
- */
39
- export declare function getEnvironmentInfo(): {
40
- runtime: "unknown" | "browser" | "webworker" | "deno" | "node";
41
- supportsColors: boolean;
42
- supportsCSSColors: boolean;
43
- supportsANSIColors: boolean;
44
- isProduction: boolean;
45
- version: string;
46
- };
47
- //# sourceMappingURL=environment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/utils/environment.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,MAAM,gBAEwB,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,SAAS,SACmC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,WAAW,SACqD,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,MAAM,SACuB,CAAC;AAE3C;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,CAM7F;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAcxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAQ5C;AAED;;GAEG;AACH,wBAAgB,kBAAkB;;;;;;;EAWjC"}