@mks2508/better-logger 2.0.1 → 3.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 (172) hide show
  1. package/.claude/settings.local.json +6 -1
  2. package/CHANGELOG.json +93 -1
  3. package/CHANGELOG.md +127 -0
  4. package/CLAUDE.md +14 -1
  5. package/README.md +111 -20
  6. package/bun.lock +333 -0
  7. package/dist/Logger.d.ts +851 -0
  8. package/dist/Logger.d.ts.map +1 -0
  9. package/dist/ScopedLogger.d.ts +57 -0
  10. package/dist/ScopedLogger.d.ts.map +1 -0
  11. package/dist/chunks/Logger-BCfx_yCK.js +2 -0
  12. package/dist/chunks/Logger-BCfx_yCK.js.map +1 -0
  13. package/dist/chunks/Logger-C126NTrD.js +4269 -0
  14. package/dist/chunks/Logger-C126NTrD.js.map +1 -0
  15. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js +33 -0
  16. package/dist/chunks/RemoteLogHandler-CjWpWZGl.js.map +1 -0
  17. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js +2 -0
  18. package/dist/chunks/RemoteLogHandler-ymkQ97xl.js.map +1 -0
  19. package/dist/chunks/environment-Ba5kShbx.js +4 -0
  20. package/dist/chunks/environment-Ba5kShbx.js.map +1 -0
  21. package/dist/chunks/environment-TI2ByCPT.js +1209 -0
  22. package/dist/chunks/environment-TI2ByCPT.js.map +1 -0
  23. package/dist/chunks/formatting-Blwy-f0W.js +2 -0
  24. package/dist/chunks/formatting-Blwy-f0W.js.map +1 -0
  25. package/dist/chunks/formatting-CuNUqGks.js +380 -0
  26. package/dist/chunks/formatting-CuNUqGks.js.map +1 -0
  27. package/dist/cli/CommandProcessor.d.ts +100 -0
  28. package/dist/cli/CommandProcessor.d.ts.map +1 -0
  29. package/dist/cli/commands/ConfigCommand.d.ts +14 -0
  30. package/dist/cli/commands/ConfigCommand.d.ts.map +1 -0
  31. package/dist/cli/commands/ExportCommand.d.ts +48 -0
  32. package/dist/cli/commands/ExportCommand.d.ts.map +1 -0
  33. package/dist/cli/commands/HistoryCommand.d.ts +47 -0
  34. package/dist/cli/commands/HistoryCommand.d.ts.map +1 -0
  35. package/dist/cli/commands/StatusCommand.d.ts +30 -0
  36. package/dist/cli/commands/StatusCommand.d.ts.map +1 -0
  37. package/dist/cli/commands/ThemeCommand.d.ts +30 -0
  38. package/dist/cli/commands/ThemeCommand.d.ts.map +1 -0
  39. package/dist/cli/help.d.ts +12 -0
  40. package/dist/cli/help.d.ts.map +1 -0
  41. package/dist/cli/index.d.ts +15 -0
  42. package/dist/cli/index.d.ts.map +1 -0
  43. package/dist/constants.d.ts +227 -0
  44. package/dist/constants.d.ts.map +1 -0
  45. package/dist/core.cjs +2 -0
  46. package/dist/core.cjs.map +1 -0
  47. package/dist/core.d.ts +127 -0
  48. package/dist/core.d.ts.map +1 -0
  49. package/dist/core.js +291 -0
  50. package/dist/core.js.map +1 -0
  51. package/dist/example.d.ts +18 -0
  52. package/dist/example.d.ts.map +1 -0
  53. package/dist/exports-module.d.ts +196 -0
  54. package/dist/exports-module.d.ts.map +1 -0
  55. package/dist/exports.cjs +2 -0
  56. package/dist/exports.cjs.map +1 -0
  57. package/dist/exports.js +238 -0
  58. package/dist/exports.js.map +1 -0
  59. package/dist/handlers/AnalyticsLogHandler.d.ts +8 -0
  60. package/dist/handlers/AnalyticsLogHandler.d.ts.map +1 -0
  61. package/dist/handlers/ExportLogHandler.d.ts +100 -0
  62. package/dist/handlers/ExportLogHandler.d.ts.map +1 -0
  63. package/dist/handlers/FileLogHandler.d.ts +33 -0
  64. package/dist/handlers/FileLogHandler.d.ts.map +1 -0
  65. package/dist/handlers/RemoteLogHandler.d.ts +11 -0
  66. package/dist/handlers/RemoteLogHandler.d.ts.map +1 -0
  67. package/dist/handlers/index.d.ts +8 -0
  68. package/dist/handlers/index.d.ts.map +1 -0
  69. package/dist/hooks/HookManager.d.ts +21 -0
  70. package/dist/hooks/HookManager.d.ts.map +1 -0
  71. package/dist/hooks/index.d.ts +2 -0
  72. package/dist/hooks/index.d.ts.map +1 -0
  73. package/dist/index.cjs +2 -0
  74. package/dist/index.cjs.map +1 -0
  75. package/dist/index.d.ts +144 -0
  76. package/dist/index.d.ts.map +1 -0
  77. package/dist/index.js +478 -0
  78. package/dist/index.js.map +1 -0
  79. package/dist/main.d.ts +2 -0
  80. package/dist/main.d.ts.map +1 -0
  81. package/dist/serializers/SerializerRegistry.d.ts +16 -0
  82. package/dist/serializers/SerializerRegistry.d.ts.map +1 -0
  83. package/dist/serializers/index.d.ts +2 -0
  84. package/dist/serializers/index.d.ts.map +1 -0
  85. package/dist/styling/LogStyleBuilder.d.ts +146 -0
  86. package/dist/styling/LogStyleBuilder.d.ts.map +1 -0
  87. package/dist/styling/SemanticStyles.d.ts +178 -0
  88. package/dist/styling/SemanticStyles.d.ts.map +1 -0
  89. package/dist/styling/SmartPresets.d.ts +22 -0
  90. package/dist/styling/SmartPresets.d.ts.map +1 -0
  91. package/dist/styling/StyleBuilder.d.ts +140 -0
  92. package/dist/styling/StyleBuilder.d.ts.map +1 -0
  93. package/dist/styling/StyleCache.d.ts +42 -0
  94. package/dist/styling/StyleCache.d.ts.map +1 -0
  95. package/dist/styling/banners.d.ts +42 -0
  96. package/dist/styling/banners.d.ts.map +1 -0
  97. package/dist/styling/index.d.ts +10 -0
  98. package/dist/styling/index.d.ts.map +1 -0
  99. package/dist/styling/themes.d.ts +7 -0
  100. package/dist/styling/themes.d.ts.map +1 -0
  101. package/dist/styling-module.d.ts +178 -0
  102. package/dist/styling-module.d.ts.map +1 -0
  103. package/dist/styling.cjs +2 -0
  104. package/dist/styling.cjs.map +1 -0
  105. package/dist/styling.js +146 -0
  106. package/dist/styling.js.map +1 -0
  107. package/dist/terminal/terminal-renderer.d.ts +63 -0
  108. package/dist/terminal/terminal-renderer.d.ts.map +1 -0
  109. package/dist/transports/ConsoleTransport.d.ts +9 -0
  110. package/dist/transports/ConsoleTransport.d.ts.map +1 -0
  111. package/dist/transports/FileTransport.d.ts +15 -0
  112. package/dist/transports/FileTransport.d.ts.map +1 -0
  113. package/dist/transports/HttpTransport.d.ts +16 -0
  114. package/dist/transports/HttpTransport.d.ts.map +1 -0
  115. package/dist/transports/TransportManager.d.ts +14 -0
  116. package/dist/transports/TransportManager.d.ts.map +1 -0
  117. package/dist/transports/index.d.ts +5 -0
  118. package/dist/transports/index.d.ts.map +1 -0
  119. package/dist/types/core.d.ts +272 -0
  120. package/dist/types/core.d.ts.map +1 -0
  121. package/dist/types/handlers.d.ts +85 -0
  122. package/dist/types/handlers.d.ts.map +1 -0
  123. package/dist/types/hooks.d.ts +36 -0
  124. package/dist/types/hooks.d.ts.map +1 -0
  125. package/dist/types/index.d.ts +11 -0
  126. package/dist/types/index.d.ts.map +1 -0
  127. package/dist/types/serializers.d.ts +25 -0
  128. package/dist/types/serializers.d.ts.map +1 -0
  129. package/dist/types/transports.d.ts +47 -0
  130. package/dist/types/transports.d.ts.map +1 -0
  131. package/dist/utils/adapter.d.ts +48 -0
  132. package/dist/utils/adapter.d.ts.map +1 -0
  133. package/dist/utils/ansi-colors.d.ts +156 -0
  134. package/dist/utils/ansi-colors.d.ts.map +1 -0
  135. package/dist/utils/environment-detector.d.ts +35 -0
  136. package/dist/utils/environment-detector.d.ts.map +1 -0
  137. package/dist/utils/environment.d.ts +47 -0
  138. package/dist/utils/environment.d.ts.map +1 -0
  139. package/dist/utils/formatting.d.ts +58 -0
  140. package/dist/utils/formatting.d.ts.map +1 -0
  141. package/dist/utils/index.d.ts +8 -0
  142. package/dist/utils/index.d.ts.map +1 -0
  143. package/dist/utils/opentui-detection.d.ts +34 -0
  144. package/dist/utils/opentui-detection.d.ts.map +1 -0
  145. package/dist/utils/output.d.ts +46 -0
  146. package/dist/utils/output.d.ts.map +1 -0
  147. package/dist/utils/stackTrace.d.ts +6 -0
  148. package/dist/utils/stackTrace.d.ts.map +1 -0
  149. package/dist/utils/timestamps.d.ts +20 -0
  150. package/dist/utils/timestamps.d.ts.map +1 -0
  151. package/dist/vite.svg +1 -0
  152. package/docs/API.md +227 -0
  153. package/package.json +1 -1
  154. package/packages/core/package.json +1 -1
  155. package/src/Logger.ts +391 -102
  156. package/src/ScopedLogger.ts +78 -318
  157. package/src/hooks/HookManager.ts +177 -0
  158. package/src/hooks/index.ts +1 -0
  159. package/src/index.ts +77 -2
  160. package/src/serializers/SerializerRegistry.ts +173 -0
  161. package/src/serializers/index.ts +1 -0
  162. package/src/styling/StyleCache.ts +131 -0
  163. package/src/transports/ConsoleTransport.ts +28 -0
  164. package/src/transports/FileTransport.ts +53 -0
  165. package/src/transports/HttpTransport.ts +56 -0
  166. package/src/transports/TransportManager.ts +130 -0
  167. package/src/transports/index.ts +4 -0
  168. package/src/types/core.ts +46 -0
  169. package/src/types/hooks.ts +45 -0
  170. package/src/types/index.ts +39 -1
  171. package/src/types/serializers.ts +30 -0
  172. package/src/types/transports.ts +52 -0
@@ -0,0 +1,272 @@
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
+ export interface TimerResult {
235
+ label: string;
236
+ duration: number;
237
+ startTime: number;
238
+ endTime: number;
239
+ }
240
+ export interface IScopedLogger {
241
+ debug(...args: any[]): void;
242
+ info(...args: any[]): void;
243
+ warn(...args: any[]): void;
244
+ error(...args: any[]): void;
245
+ success(...args: any[]): void;
246
+ critical(...args: any[]): void;
247
+ trace(...args: any[]): void;
248
+ badges(badges: string[]): this;
249
+ badge(badge: string): this;
250
+ clearBadges(): this;
251
+ time(label: string): void;
252
+ timeEnd(label: string): number | undefined;
253
+ style(presetName: string): this;
254
+ }
255
+ export interface IAPILogger extends IScopedLogger {
256
+ slow(message: string, duration?: number): void;
257
+ rateLimit(message: string): void;
258
+ auth(message: string): void;
259
+ deprecated(message: string): void;
260
+ }
261
+ export interface IComponentLogger extends IScopedLogger {
262
+ lifecycle(event: string, message?: string): void;
263
+ stateChange(from: string, to: string, data?: any): void;
264
+ propsChange(changes: Record<string, any>): void;
265
+ }
266
+ export interface Bindings {
267
+ scope?: string;
268
+ badges?: string[];
269
+ type?: 'scope' | 'api' | 'component';
270
+ context?: string[];
271
+ }
272
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/types/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,36 @@
1
+ import { LogLevel, StackInfo } from './core.js';
2
+ export interface HookLogEntry {
3
+ level: LogLevel;
4
+ message: string;
5
+ args: any[];
6
+ timestamp: string;
7
+ prefix?: string;
8
+ stackInfo?: StackInfo;
9
+ correlationId?: string;
10
+ context?: Record<string, any>;
11
+ [key: string]: any;
12
+ }
13
+ export type HookEvent = 'beforeLog' | 'afterLog' | 'onError';
14
+ export type HookCallback = (entry: HookLogEntry) => void | HookLogEntry | Promise<void | HookLogEntry>;
15
+ export type MiddlewareFn = (entry: HookLogEntry, next: () => void | Promise<void>) => void | Promise<void>;
16
+ export interface HookRegistration {
17
+ id: string;
18
+ event: HookEvent;
19
+ callback: HookCallback;
20
+ priority: number;
21
+ once: boolean;
22
+ }
23
+ export interface MiddlewareRegistration {
24
+ id: string;
25
+ fn: MiddlewareFn;
26
+ priority: number;
27
+ }
28
+ export interface IHookManager {
29
+ on(event: HookEvent, callback: HookCallback, priority?: number): () => void;
30
+ once(event: HookEvent, callback: HookCallback, priority?: number): () => void;
31
+ off(event: HookEvent, callback: HookCallback): boolean;
32
+ use(middleware: MiddlewareFn, priority?: number): () => void;
33
+ emit(event: HookEvent, entry: HookLogEntry): Promise<HookLogEntry>;
34
+ process(entry: HookLogEntry): Promise<HookLogEntry>;
35
+ }
36
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/types/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAErD,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC,CAAC;AAEvG,MAAM,MAAM,YAAY,GAAG,CACvB,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAC/B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,YAAY,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IACzB,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;IAC5E,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;IAC9E,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;IACvD,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;IAC7D,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACnE,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CACvD"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview Type definitions exports for Advanced Logger
3
+ */
4
+ export type { LogLevel, Verbosity, ThemeVariant, DevToolsTheme, BannerType, ExportFormat, OutputFormat, LoggerConfig, StackInfo, TimerEntry, TimerResult, StyleOptions, AdaptiveColors, SpacingType, LogLayout, LogPartConfig, LogStyles, IScopedLogger, IAPILogger, IComponentLogger, Bindings, } from './core.js';
5
+ export { LOG_LEVELS } from './core.js';
6
+ export type { LogMetadata, ILogHandler, LogEntry, ExportFilters, ExportOptions, ExportResult, BufferStats, } from './handlers.js';
7
+ export type { SerializerFn, SerializerContext, SerializerEntry, SerializerConfig, ISerializerRegistry, } from './serializers.js';
8
+ export type { HookLogEntry, HookEvent, HookCallback, MiddlewareFn, HookRegistration, MiddlewareRegistration, IHookManager, } from './hooks.js';
9
+ export type { TransportRecord, TransportOptions, TransportTarget, ITransport, IBufferedTransport, ITransportManager, } from './transports.js';
10
+ export type { StyleCacheConfig } from '../styling/StyleCache.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
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,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,EACT,aAAa,EACb,SAAS,EACT,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,QAAQ,GACX,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;AAGvB,YAAY,EACR,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,mBAAmB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACR,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,GACf,MAAM,YAAY,CAAC;AAGpB,YAAY,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,kBAAkB,EAClB,iBAAiB,GACpB,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,25 @@
1
+ export type SerializerFn<T = any> = (value: T, context: SerializerContext) => any;
2
+ export interface SerializerContext {
3
+ depth: number;
4
+ maxDepth: number;
5
+ path: string[];
6
+ seen: WeakSet<object>;
7
+ }
8
+ export interface SerializerEntry<T = any> {
9
+ type: new (...args: any[]) => T;
10
+ serializer: SerializerFn<T>;
11
+ priority: number;
12
+ }
13
+ export interface SerializerConfig {
14
+ maxDepth?: number;
15
+ circular?: 'error' | 'skip' | 'placeholder';
16
+ preserveUndefined?: boolean;
17
+ }
18
+ export interface ISerializerRegistry {
19
+ add<T>(type: new (...args: any[]) => T, serializer: SerializerFn<T>, priority?: number): void;
20
+ remove<T>(type: new (...args: any[]) => T): boolean;
21
+ has<T>(type: new (...args: any[]) => T): boolean;
22
+ serialize(value: any, config?: SerializerConfig): any;
23
+ getAll(): SerializerEntry[];
24
+ }
25
+ //# sourceMappingURL=serializers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializers.d.ts","sourceRoot":"","sources":["../../src/types/serializers.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,KAAK,GAAG,CAAC;AAElF,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACpC,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAChC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,aAAa,CAAC;IAC5C,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAChC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9F,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;IACpD,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;IACjD,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,GAAG,CAAC;IACtD,MAAM,IAAI,eAAe,EAAE,CAAC;CAC/B"}
@@ -0,0 +1,47 @@
1
+ import { LogLevel } from './core.js';
2
+ export interface TransportRecord {
3
+ level: LogLevel;
4
+ levelValue: number;
5
+ time: number;
6
+ msg: string;
7
+ prefix?: string;
8
+ location?: {
9
+ file: string;
10
+ line: number;
11
+ column: number;
12
+ function?: string;
13
+ };
14
+ [key: string]: any;
15
+ }
16
+ export interface TransportOptions {
17
+ level?: LogLevel;
18
+ transform?: (record: TransportRecord) => TransportRecord | null;
19
+ batchSize?: number;
20
+ flushInterval?: number;
21
+ [key: string]: any;
22
+ }
23
+ export interface TransportTarget {
24
+ target: string | ITransport;
25
+ options?: TransportOptions;
26
+ level?: LogLevel;
27
+ }
28
+ export interface ITransport {
29
+ readonly name: string;
30
+ write(record: TransportRecord): void | Promise<void>;
31
+ flush?(): void | Promise<void>;
32
+ close?(): void | Promise<void>;
33
+ isReady?(): boolean;
34
+ }
35
+ export interface IBufferedTransport extends ITransport {
36
+ readonly bufferSize: number;
37
+ readonly maxBufferSize: number;
38
+ flush(): Promise<void>;
39
+ }
40
+ export interface ITransportManager {
41
+ add(target: TransportTarget): string;
42
+ remove(id: string): boolean;
43
+ write(record: TransportRecord): Promise<void>;
44
+ flush(): Promise<void>;
45
+ close(): Promise<void>;
46
+ }
47
+ //# sourceMappingURL=transports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transports.d.ts","sourceRoot":"","sources":["../../src/types/transports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,WAAW,CAAC;AAErD,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,QAAQ,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,eAAe,GAAG,IAAI,CAAC;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;IAC5B,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,KAAK,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,CAAC,IAAI,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAC9B,GAAG,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,CAAC;IACrC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,KAAK,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B"}
@@ -0,0 +1,48 @@
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
@@ -0,0 +1 @@
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"}