@mks2508/better-logger 0.0.2-alpha.2 → 0.3.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.
- package/.claude/settings.local.json +18 -2
- package/.github/workflows/ci-quality.yml +357 -0
- package/.github/workflows/docs-demo.yml +119 -0
- package/.github/workflows/releases-core.yml +512 -0
- package/.github/workflows/releases-full.yml +582 -0
- package/.github/{workflows → workflows-backup}/ci.yml +12 -110
- package/.github/workflows-backup/nightly.yml +196 -0
- package/.github/workflows-backup/release-optimized.yml +373 -0
- package/.release-notes-0.2.0.md +129 -0
- package/.yamllint +28 -0
- package/CHANGELOG.json +783 -0
- package/CLAUDE.md +92 -1
- package/README.md +198 -490
- package/bun.lock +323 -0
- package/demo.html +9 -2
- package/dist/.tsbuildinfo +1 -0
- package/dist/Logger.d.ts +272 -0
- package/dist/Logger.d.ts.map +1 -0
- package/dist/Logger.js +680 -0
- package/dist/ScopedLogger.d.ts +126 -0
- package/dist/ScopedLogger.d.ts.map +1 -0
- package/dist/ScopedLogger.js +234 -0
- package/dist/chunks/Logger-BpeuYIxR.js +2 -0
- package/dist/chunks/Logger-BpeuYIxR.js.map +1 -0
- package/dist/chunks/Logger-Didxtr23.js +3275 -0
- package/dist/chunks/Logger-Didxtr23.js.map +1 -0
- package/dist/chunks/RemoteLogHandler-CjWpWZGl.js +33 -0
- package/dist/chunks/RemoteLogHandler-CjWpWZGl.js.map +1 -0
- package/dist/chunks/RemoteLogHandler-ymkQ97xl.js +2 -0
- package/dist/chunks/RemoteLogHandler-ymkQ97xl.js.map +1 -0
- package/dist/chunks/environment-Bxbnw4pd.js +544 -0
- package/dist/chunks/environment-Bxbnw4pd.js.map +1 -0
- package/dist/chunks/environment-Dm66zOML.js +4 -0
- package/dist/chunks/environment-Dm66zOML.js.map +1 -0
- package/dist/chunks/formatting-C0riPC5_.js +95 -0
- package/dist/chunks/formatting-C0riPC5_.js.map +1 -0
- package/dist/chunks/formatting-DNCAV66-.js +2 -0
- package/dist/chunks/formatting-DNCAV66-.js.map +1 -0
- package/dist/cli/CommandProcessor.d.ts +103 -0
- package/dist/cli/CommandProcessor.d.ts.map +1 -0
- package/dist/cli/CommandProcessor.js +184 -0
- package/dist/cli/commands/ConfigCommand.d.ts +17 -0
- package/dist/cli/commands/ConfigCommand.d.ts.map +1 -0
- package/dist/cli/commands/ConfigCommand.js +88 -0
- package/dist/cli/commands/ExportCommand.d.ts +51 -0
- package/dist/cli/commands/ExportCommand.d.ts.map +1 -0
- package/dist/cli/commands/ExportCommand.js +243 -0
- package/dist/cli/commands/HistoryCommand.d.ts +50 -0
- package/dist/cli/commands/HistoryCommand.d.ts.map +1 -0
- package/dist/cli/commands/HistoryCommand.js +96 -0
- package/dist/cli/commands/StatusCommand.d.ts +33 -0
- package/dist/cli/commands/StatusCommand.d.ts.map +1 -0
- package/dist/cli/commands/StatusCommand.js +93 -0
- package/dist/cli/commands/ThemeCommand.d.ts +33 -0
- package/dist/cli/commands/ThemeCommand.d.ts.map +1 -0
- package/dist/cli/commands/ThemeCommand.js +79 -0
- package/dist/cli/help.d.ts +15 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +118 -0
- package/dist/cli/index.d.ts +15 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +46 -0
- package/dist/constants.d.ts +122 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +159 -0
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +134 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +315 -242
- package/dist/core.js.map +1 -1
- package/dist/example.d.ts +18 -0
- package/dist/example.d.ts.map +1 -0
- package/dist/example.js +154 -0
- package/dist/exports-module.d.ts +203 -0
- package/dist/exports-module.d.ts.map +1 -0
- package/dist/exports-module.js +260 -0
- package/dist/exports.cjs +1 -1
- package/dist/exports.cjs.map +1 -1
- package/dist/exports.js +5 -4
- package/dist/exports.js.map +1 -1
- package/dist/handlers/AnalyticsLogHandler.d.ts +11 -0
- package/dist/handlers/AnalyticsLogHandler.d.ts.map +1 -0
- package/dist/handlers/AnalyticsLogHandler.js +19 -0
- package/dist/handlers/ExportLogHandler.d.ts +103 -0
- package/dist/handlers/ExportLogHandler.d.ts.map +1 -0
- package/dist/handlers/ExportLogHandler.js +516 -0
- package/dist/handlers/FileLogHandler.d.ts +36 -0
- package/dist/handlers/FileLogHandler.d.ts.map +1 -0
- package/dist/handlers/FileLogHandler.js +156 -0
- package/dist/handlers/RemoteLogHandler.d.ts +14 -0
- package/dist/handlers/RemoteLogHandler.d.ts.map +1 -0
- package/dist/handlers/RemoteLogHandler.js +37 -0
- package/dist/handlers/index.d.ts +8 -0
- package/dist/handlers/index.d.ts.map +1 -0
- package/dist/handlers/index.js +7 -0
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +86 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +89 -103
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +139 -0
- package/dist/styling/LogStyleBuilder.d.ts +149 -0
- package/dist/styling/LogStyleBuilder.d.ts.map +1 -0
- package/dist/styling/LogStyleBuilder.js +289 -0
- package/dist/styling/SemanticStyles.d.ts +181 -0
- package/dist/styling/SemanticStyles.d.ts.map +1 -0
- package/dist/styling/SemanticStyles.js +339 -0
- package/dist/styling/SmartPresets.d.ts +25 -0
- package/dist/styling/SmartPresets.d.ts.map +1 -0
- package/dist/styling/SmartPresets.js +276 -0
- package/dist/styling/StyleBuilder.d.ts +140 -0
- package/dist/styling/StyleBuilder.d.ts.map +1 -0
- package/dist/styling/StyleBuilder.js +280 -0
- package/dist/styling/banners.d.ts +45 -0
- package/dist/styling/banners.d.ts.map +1 -0
- package/dist/styling/banners.js +155 -0
- package/dist/styling/index.d.ts +10 -0
- package/dist/styling/index.d.ts.map +1 -0
- package/dist/styling/index.js +9 -0
- package/dist/styling/themes.d.ts +10 -0
- package/dist/styling/themes.d.ts.map +1 -0
- package/dist/styling/themes.js +231 -0
- package/dist/styling-module.d.ts +185 -0
- package/dist/styling-module.d.ts.map +1 -0
- package/dist/styling-module.js +199 -0
- package/dist/styling.cjs +1 -1
- package/dist/styling.cjs.map +1 -1
- package/dist/styling.js +6 -6
- package/dist/styling.js.map +1 -1
- package/dist/types/Logger.d.ts +268 -0
- package/dist/types/Logger.d.ts.map +1 -0
- package/dist/types/ScopedLogger.d.ts +123 -0
- package/dist/types/ScopedLogger.d.ts.map +1 -0
- package/dist/types/cli/CommandProcessor.d.ts +100 -0
- package/dist/types/cli/CommandProcessor.d.ts.map +1 -0
- package/dist/types/cli/commands/ConfigCommand.d.ts +14 -0
- package/dist/types/cli/commands/ConfigCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/ExportCommand.d.ts +48 -0
- package/dist/types/cli/commands/ExportCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/HistoryCommand.d.ts +47 -0
- package/dist/types/cli/commands/HistoryCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/StatusCommand.d.ts +30 -0
- package/dist/types/cli/commands/StatusCommand.d.ts.map +1 -0
- package/dist/types/cli/commands/ThemeCommand.d.ts +30 -0
- package/dist/types/cli/commands/ThemeCommand.d.ts.map +1 -0
- package/dist/types/cli/help.d.ts +12 -0
- package/dist/types/cli/help.d.ts.map +1 -0
- package/dist/types/cli/index.d.ts +15 -0
- package/dist/types/cli/index.d.ts.map +1 -0
- package/dist/types/constants.d.ts +119 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/core.d.ts +125 -211
- package/dist/types/core.d.ts.map +1 -0
- package/dist/types/core.js +13 -0
- package/dist/types/example.d.ts +18 -0
- package/dist/types/example.d.ts.map +1 -0
- package/dist/types/exports-module.d.ts +196 -0
- package/dist/types/exports-module.d.ts.map +1 -0
- package/dist/types/handlers/AnalyticsLogHandler.d.ts +8 -0
- package/dist/types/handlers/AnalyticsLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/ExportLogHandler.d.ts +100 -0
- package/dist/types/handlers/ExportLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/FileLogHandler.d.ts +33 -0
- package/dist/types/handlers/FileLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/RemoteLogHandler.d.ts +11 -0
- package/dist/types/handlers/RemoteLogHandler.d.ts.map +1 -0
- package/dist/types/handlers/index.d.ts +8 -0
- package/dist/types/handlers/index.d.ts.map +1 -0
- package/dist/types/handlers.d.ts +88 -0
- package/dist/types/handlers.d.ts.map +1 -0
- package/dist/types/handlers.js +4 -0
- package/dist/types/index.d.ts +7 -675
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +4 -0
- package/dist/types/main.d.ts +2 -0
- package/dist/types/main.d.ts.map +1 -0
- package/dist/types/styling/LogStyleBuilder.d.ts +146 -0
- package/dist/types/styling/LogStyleBuilder.d.ts.map +1 -0
- package/dist/types/styling/SemanticStyles.d.ts +178 -0
- package/dist/types/styling/SemanticStyles.d.ts.map +1 -0
- package/dist/types/styling/SmartPresets.d.ts +22 -0
- package/dist/types/styling/SmartPresets.d.ts.map +1 -0
- package/dist/types/styling/StyleBuilder.d.ts +140 -0
- package/dist/types/styling/StyleBuilder.d.ts.map +1 -0
- package/dist/types/styling/banners.d.ts +42 -0
- package/dist/types/styling/banners.d.ts.map +1 -0
- package/dist/types/styling/index.d.ts +10 -0
- package/dist/types/styling/index.d.ts.map +1 -0
- package/dist/types/styling/themes.d.ts +7 -0
- package/dist/types/styling/themes.d.ts.map +1 -0
- package/dist/types/styling-module.d.ts +178 -0
- package/dist/types/styling-module.d.ts.map +1 -0
- package/dist/types/types/core.d.ts +125 -0
- package/dist/types/types/core.d.ts.map +1 -0
- package/dist/types/types/handlers.d.ts +85 -0
- package/dist/types/types/handlers.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +7 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/utils/environment.d.ts +47 -0
- package/dist/types/utils/environment.d.ts.map +1 -0
- package/dist/types/utils/formatting.d.ts +37 -0
- package/dist/types/utils/formatting.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/opentui-detection.d.ts +34 -0
- package/dist/types/utils/opentui-detection.d.ts.map +1 -0
- package/dist/types/utils/output.d.ts +41 -0
- package/dist/types/utils/output.d.ts.map +1 -0
- package/dist/types/utils/stackTrace.d.ts +6 -0
- package/dist/types/utils/stackTrace.d.ts.map +1 -0
- package/dist/types/utils/timestamps.d.ts +20 -0
- package/dist/types/utils/timestamps.d.ts.map +1 -0
- package/dist/utils/environment.d.ts +47 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +85 -0
- package/dist/utils/formatting.d.ts +40 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +117 -0
- package/dist/utils/index.d.ts +7 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/opentui-detection.d.ts +34 -0
- package/dist/utils/opentui-detection.d.ts.map +1 -0
- package/dist/utils/opentui-detection.js +116 -0
- package/dist/utils/output.d.ts +44 -0
- package/dist/utils/output.d.ts.map +1 -0
- package/dist/utils/output.js +150 -0
- package/dist/utils/stackTrace.d.ts +9 -0
- package/dist/utils/stackTrace.d.ts.map +1 -0
- package/dist/utils/stackTrace.js +81 -0
- package/dist/utils/timestamps.d.ts +20 -0
- package/dist/utils/timestamps.d.ts.map +1 -0
- package/dist/utils/timestamps.js +71 -0
- package/docs/API.md +691 -0
- package/docs/CORE.md +10 -10
- package/docs/DEVELOPMENT.md +731 -0
- package/docs/PACKAGES.md +244 -0
- package/docs/_config.yml +36 -0
- package/docs/index.md +179 -0
- package/examples/README.md +208 -0
- package/examples/basic-logging.js +75 -0
- package/examples/data-export.js +234 -0
- package/examples/package.json +16 -0
- package/examples/performance-timing.js +170 -0
- package/examples/simplified-api.js +124 -0
- package/examples/styling-themes.js +207 -0
- package/package.json +37 -21
- package/packages/core/package.json +57 -0
- package/packages/exports/package.json +41 -0
- package/packages/nodejs-opentui/README.md +232 -0
- package/packages/nodejs-opentui/package.json +72 -0
- package/packages/nodejs-opentui/src/LogRenderer.ts +171 -0
- package/packages/nodejs-opentui/src/OpenTUILogHandler.ts +178 -0
- package/packages/nodejs-opentui/src/components/LogBadge.tsx +131 -0
- package/packages/nodejs-opentui/src/index.ts +133 -0
- package/packages/nodejs-opentui/src/types.ts +158 -0
- package/packages/nodejs-opentui/tsconfig.json +20 -0
- package/packages/styling/package.json +41 -0
- package/project-utils/README.md +172 -0
- package/project-utils/auto-release-gemini.ts +1193 -0
- package/project-utils/auto-release-ui.ts +1329 -0
- package/project-utils/commit-generator.ts +1385 -0
- package/project-utils/commit-ui.ts +264 -0
- package/project-utils/git-utils.ts +199 -0
- package/project-utils/github-release-manager.ts +466 -0
- package/project-utils/project-config.ts +260 -0
- package/project-utils/prompt-templates.js +345 -0
- package/project-utils/prompt-templates.ts +422 -0
- package/project-utils/version-manager.ts +1078 -0
- package/src/Logger.ts +251 -16
- package/src/ScopedLogger.ts +262 -0
- package/src/cli/CommandProcessor.ts +173 -2
- package/src/cli/commands/HistoryCommand.ts +117 -0
- package/src/cli/index.ts +12 -0
- package/src/constants.ts +84 -2
- package/src/core.ts +119 -46
- package/src/example.ts +4 -4
- package/src/exports-module.ts +1 -1
- package/src/handlers/ExportLogHandler.ts +141 -0
- package/src/handlers/FileLogHandler.ts +144 -5
- package/src/index.ts +1 -1
- package/src/main.ts +3 -3
- package/src/styling/LogStyleBuilder.ts +355 -0
- package/src/styling/SemanticStyles.ts +380 -0
- package/src/styling/SmartPresets.ts +288 -0
- package/src/styling/StyleBuilder.ts +14 -0
- package/src/styling/index.ts +16 -1
- package/src/styling-module.ts +1 -1
- package/src/types/core.ts +60 -0
- package/src/types/index.ts +6 -0
- package/src/utils/environment.ts +94 -0
- package/src/utils/formatting.ts +142 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/opentui-detection.ts +138 -0
- package/src/utils/output.ts +66 -8
- package/test-core-browser.html +237 -0
- package/test-core-node.js +63 -0
- package/tests/test-conflict-resolution.ts +391 -0
- package/tests/validate-workflows.sh +131 -0
- package/tests/yaml-autofix.sh +146 -0
- package/vite.config.ts +189 -50
- package/.npmrc.bak +0 -1
- package/dist/chunks/Logger-BQhMKy_T.js +0 -2
- package/dist/chunks/Logger-BQhMKy_T.js.map +0 -1
- package/dist/chunks/Logger-BrFKFZcD.js +0 -978
- package/dist/chunks/Logger-BrFKFZcD.js.map +0 -1
- package/dist/chunks/core-2opW4Pi3.js +0 -194
- package/dist/chunks/core-2opW4Pi3.js.map +0 -1
- package/dist/chunks/core-DyugwSYZ.js +0 -4
- package/dist/chunks/core-DyugwSYZ.js.map +0 -1
- package/dist/chunks/exports-BNP3R7dp.js +0 -421
- package/dist/chunks/exports-BNP3R7dp.js.map +0 -1
- package/dist/chunks/exports-U1xLBXrY.js +0 -2
- package/dist/chunks/exports-U1xLBXrY.js.map +0 -1
- package/dist/chunks/styling-DhUDzwlE.js +0 -654
- package/dist/chunks/styling-DhUDzwlE.js.map +0 -1
- package/dist/chunks/styling-tmRDI28D.js +0 -2
- package/dist/chunks/styling-tmRDI28D.js.map +0 -1
- package/dist/types/exports.d.ts +0 -600
- package/dist/types/styling.d.ts +0 -751
- package/src/Logger.ts.backup +0 -1684
- /package/.github/{workflows → workflows-backup}/release.yml +0 -0
package/dist/types/exports.d.ts
DELETED
|
@@ -1,600 +0,0 @@
|
|
|
1
|
-
export declare const addHandler: (handler: ILogHandler) => void;
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Remote logging functionality
|
|
5
|
-
*/
|
|
6
|
-
export declare const addRemoteHandler: (endpoint: string, apiKey?: string) => void;
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Banner types for different visual approaches
|
|
10
|
-
*/
|
|
11
|
-
declare type BannerType = 'simple' | 'ascii' | 'unicode' | 'svg' | 'animated';
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Buffer statistics for log management
|
|
15
|
-
*/
|
|
16
|
-
declare interface BufferStats {
|
|
17
|
-
size: number;
|
|
18
|
-
maxSize: number;
|
|
19
|
-
usage: number;
|
|
20
|
-
oldestLog?: Date;
|
|
21
|
-
newestLog?: Date;
|
|
22
|
-
levelCounts: Record<LogLevel, number>;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export declare const clearLogs: () => void;
|
|
26
|
-
|
|
27
|
-
export declare const clearRemoteHandlers: () => void;
|
|
28
|
-
|
|
29
|
-
export declare const createScopedLogger: (prefix: string) => Logger;
|
|
30
|
-
|
|
31
|
-
export declare const critical: (...args: any[]) => void;
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Export individual logging methods with export capabilities
|
|
35
|
-
*/
|
|
36
|
-
export declare const debug: (...args: any[]) => void;
|
|
37
|
-
|
|
38
|
-
export declare const error: (...args: any[]) => void;
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Export filter options
|
|
42
|
-
*/
|
|
43
|
-
declare interface ExportFilters {
|
|
44
|
-
levels?: LogLevel[];
|
|
45
|
-
since?: Date | string | number;
|
|
46
|
-
until?: Date | string | number;
|
|
47
|
-
prefixes?: string[];
|
|
48
|
-
excludePrefixes?: string[];
|
|
49
|
-
withStackTrace?: boolean;
|
|
50
|
-
errorsOnly?: boolean;
|
|
51
|
-
last?: number;
|
|
52
|
-
first?: number;
|
|
53
|
-
search?: string;
|
|
54
|
-
groupBy?: 'level' | 'prefix' | 'hour' | 'date';
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* Export formats for log data
|
|
59
|
-
*/
|
|
60
|
-
declare type ExportFormat = 'json' | 'csv' | 'markdown' | 'plain' | 'html';
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Logger with export and remote capabilities
|
|
64
|
-
*
|
|
65
|
-
* @example
|
|
66
|
-
* ```typescript
|
|
67
|
-
* import { ExportLogger } from '@mks2508/better-logger/exports';
|
|
68
|
-
*
|
|
69
|
-
* const logger = new ExportLogger({ bufferSize: 1000 });
|
|
70
|
-
*
|
|
71
|
-
* // Log some data
|
|
72
|
-
* logger.info('User logged in', { userId: 123 });
|
|
73
|
-
* logger.error('Failed to process', { error: 'timeout' });
|
|
74
|
-
*
|
|
75
|
-
* // Export logs
|
|
76
|
-
* const csvData = await logger.exportLogs('csv');
|
|
77
|
-
* const jsonData = await logger.exportLogs('json');
|
|
78
|
-
*
|
|
79
|
-
* // Setup remote logging
|
|
80
|
-
* logger.addRemoteHandler('https://api.myapp.com/logs', 'api-key');
|
|
81
|
-
* ```
|
|
82
|
-
*/
|
|
83
|
-
export declare class ExportLogger extends Logger {
|
|
84
|
-
private exportLogHandler?;
|
|
85
|
-
private remoteHandlers;
|
|
86
|
-
constructor(config?: {
|
|
87
|
-
bufferSize?: number;
|
|
88
|
-
} & any);
|
|
89
|
-
/**
|
|
90
|
-
* Export logs in specified format
|
|
91
|
-
*
|
|
92
|
-
* @param format - Export format (csv, json, xml)
|
|
93
|
-
* @param options - Export options
|
|
94
|
-
* @returns Promise resolving to exported data
|
|
95
|
-
*
|
|
96
|
-
* @example
|
|
97
|
-
* ```typescript
|
|
98
|
-
* const csvData = await logger.exportLogs('csv');
|
|
99
|
-
* const jsonData = await logger.exportLogs('json', {
|
|
100
|
-
* filter: { level: 'error' },
|
|
101
|
-
* limit: 100
|
|
102
|
-
* });
|
|
103
|
-
* ```
|
|
104
|
-
*/
|
|
105
|
-
exportLogs(format: 'csv' | 'json' | 'xml', options?: {
|
|
106
|
-
filter?: {
|
|
107
|
-
level?: LogLevel;
|
|
108
|
-
from?: Date;
|
|
109
|
-
to?: Date;
|
|
110
|
-
};
|
|
111
|
-
limit?: number;
|
|
112
|
-
}): Promise<string>;
|
|
113
|
-
/**
|
|
114
|
-
* Get current log buffer
|
|
115
|
-
*
|
|
116
|
-
* @returns Array of log entries
|
|
117
|
-
*
|
|
118
|
-
* @example
|
|
119
|
-
* ```typescript
|
|
120
|
-
* const logs = logger.getLogs();
|
|
121
|
-
* console.log(`Buffered ${logs.length} log entries`);
|
|
122
|
-
* ```
|
|
123
|
-
*/
|
|
124
|
-
getLogs(): any[];
|
|
125
|
-
/**
|
|
126
|
-
* Clear the log buffer
|
|
127
|
-
*
|
|
128
|
-
* @example
|
|
129
|
-
* ```typescript
|
|
130
|
-
* logger.clearLogs();
|
|
131
|
-
* ```
|
|
132
|
-
*/
|
|
133
|
-
clearLogs(): void;
|
|
134
|
-
/**
|
|
135
|
-
* Get log statistics
|
|
136
|
-
*
|
|
137
|
-
* @returns Statistics object with counts by level
|
|
138
|
-
*
|
|
139
|
-
* @example
|
|
140
|
-
* ```typescript
|
|
141
|
-
* const stats = logger.getLogStats();
|
|
142
|
-
* console.log(`Errors: ${stats.error}, Warnings: ${stats.warn}`);
|
|
143
|
-
* ```
|
|
144
|
-
*/
|
|
145
|
-
getLogStats(): Record<string, number>;
|
|
146
|
-
/**
|
|
147
|
-
* Add remote logging handler
|
|
148
|
-
*
|
|
149
|
-
* @param endpoint - Remote endpoint URL
|
|
150
|
-
* @param apiKey - Optional API key for authentication
|
|
151
|
-
*
|
|
152
|
-
* @example
|
|
153
|
-
* ```typescript
|
|
154
|
-
* logger.addRemoteHandler('https://logs.myservice.com/api', 'secret-key');
|
|
155
|
-
* ```
|
|
156
|
-
*/
|
|
157
|
-
addRemoteHandler(endpoint: string, apiKey?: string): void;
|
|
158
|
-
/**
|
|
159
|
-
* Remove all remote handlers
|
|
160
|
-
*
|
|
161
|
-
* @example
|
|
162
|
-
* ```typescript
|
|
163
|
-
* logger.clearRemoteHandlers();
|
|
164
|
-
* ```
|
|
165
|
-
*/
|
|
166
|
-
clearRemoteHandlers(): void;
|
|
167
|
-
/**
|
|
168
|
-
* Flush all remote handlers (force send pending logs)
|
|
169
|
-
*
|
|
170
|
-
* @example
|
|
171
|
-
* ```typescript
|
|
172
|
-
* await logger.flushRemoteHandlers();
|
|
173
|
-
* ```
|
|
174
|
-
*/
|
|
175
|
-
flushRemoteHandlers(): Promise<void>;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
declare const exportLogger: ExportLogger;
|
|
179
|
-
export default exportLogger;
|
|
180
|
-
|
|
181
|
-
/**
|
|
182
|
-
* Export log handler with circular buffer and multiple export formats
|
|
183
|
-
*/
|
|
184
|
-
export declare class ExportLogHandler implements ILogHandler {
|
|
185
|
-
private buffer;
|
|
186
|
-
private maxSize;
|
|
187
|
-
private groupDepth;
|
|
188
|
-
private currentGroup?;
|
|
189
|
-
constructor(maxSize?: number);
|
|
190
|
-
/**
|
|
191
|
-
* Handle incoming log and store in buffer
|
|
192
|
-
*/
|
|
193
|
-
handle(level: LogLevel, message: string, args: any[], metadata: LogMetadata): void;
|
|
194
|
-
/**
|
|
195
|
-
* Set group tracking for nested logs
|
|
196
|
-
*/
|
|
197
|
-
setGroupInfo(depth: number, groupName?: string): void;
|
|
198
|
-
/**
|
|
199
|
-
* Get buffer statistics
|
|
200
|
-
*/
|
|
201
|
-
getBufferStats(): BufferStats;
|
|
202
|
-
/**
|
|
203
|
-
* Clear the buffer
|
|
204
|
-
*/
|
|
205
|
-
clearBuffer(): void;
|
|
206
|
-
/**
|
|
207
|
-
* Set buffer size (with limits)
|
|
208
|
-
*/
|
|
209
|
-
setBufferSize(size: number): void;
|
|
210
|
-
/**
|
|
211
|
-
* Filter logs based on criteria
|
|
212
|
-
*/
|
|
213
|
-
private filterLogs;
|
|
214
|
-
/**
|
|
215
|
-
* Export logs in JSON format
|
|
216
|
-
*/
|
|
217
|
-
private exportJSON;
|
|
218
|
-
/**
|
|
219
|
-
* Export logs in CSV format
|
|
220
|
-
*/
|
|
221
|
-
private exportCSV;
|
|
222
|
-
/**
|
|
223
|
-
* Export logs in Markdown format
|
|
224
|
-
*/
|
|
225
|
-
private exportMarkdown;
|
|
226
|
-
/**
|
|
227
|
-
* Export logs in plain text format
|
|
228
|
-
*/
|
|
229
|
-
private exportPlain;
|
|
230
|
-
/**
|
|
231
|
-
* Export logs in HTML format
|
|
232
|
-
*/
|
|
233
|
-
private exportHTML;
|
|
234
|
-
/**
|
|
235
|
-
* Get emoji for log level
|
|
236
|
-
*/
|
|
237
|
-
private getLevelEmoji;
|
|
238
|
-
/**
|
|
239
|
-
* Main export function
|
|
240
|
-
*/
|
|
241
|
-
export(format: ExportFormat, filters?: ExportFilters, options?: ExportOptions): ExportResult;
|
|
242
|
-
/**
|
|
243
|
-
* Copy to clipboard with fallback
|
|
244
|
-
*/
|
|
245
|
-
copyToClipboard(format: ExportFormat, filters?: ExportFilters, options?: ExportOptions): Promise<boolean>;
|
|
246
|
-
/**
|
|
247
|
-
* Get all logs (for debugging)
|
|
248
|
-
*/
|
|
249
|
-
getAllLogs(): LogEntry[];
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
/**
|
|
253
|
-
* Export functionality
|
|
254
|
-
*/
|
|
255
|
-
export declare const exportLogs: (format: "csv" | "json" | "xml", options?: any) => Promise<string>;
|
|
256
|
-
|
|
257
|
-
/**
|
|
258
|
-
* Export options for different formats
|
|
259
|
-
*/
|
|
260
|
-
declare interface ExportOptions {
|
|
261
|
-
minimal?: boolean;
|
|
262
|
-
compact?: boolean;
|
|
263
|
-
styled?: boolean;
|
|
264
|
-
includeMetadata?: boolean;
|
|
265
|
-
groupBy?: ExportFilters['groupBy'];
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
/**
|
|
269
|
-
* Export result with metadata
|
|
270
|
-
*/
|
|
271
|
-
declare interface ExportResult {
|
|
272
|
-
format: string;
|
|
273
|
-
data: string;
|
|
274
|
-
metadata: {
|
|
275
|
-
totalLogs: number;
|
|
276
|
-
filteredLogs: number;
|
|
277
|
-
exportedAt: string;
|
|
278
|
-
filters?: ExportFilters;
|
|
279
|
-
options?: ExportOptions;
|
|
280
|
-
};
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
/**
|
|
284
|
-
* Export management utilities
|
|
285
|
-
*/
|
|
286
|
-
export declare const exportUtils: {
|
|
287
|
-
/**
|
|
288
|
-
* Export current logs as CSV
|
|
289
|
-
*/
|
|
290
|
-
exportCSV(options?: any): Promise<string>;
|
|
291
|
-
/**
|
|
292
|
-
* Export current logs as JSON
|
|
293
|
-
*/
|
|
294
|
-
exportJSON(options?: any): Promise<string>;
|
|
295
|
-
/**
|
|
296
|
-
* Export current logs as XML
|
|
297
|
-
*/
|
|
298
|
-
exportXML(options?: any): Promise<string>;
|
|
299
|
-
/**
|
|
300
|
-
* Get log statistics
|
|
301
|
-
*/
|
|
302
|
-
getStats(): Record<string, number>;
|
|
303
|
-
/**
|
|
304
|
-
* Clear all logs
|
|
305
|
-
*/
|
|
306
|
-
clear(): void;
|
|
307
|
-
};
|
|
308
|
-
|
|
309
|
-
export declare const flushRemoteHandlers: () => Promise<void>;
|
|
310
|
-
|
|
311
|
-
export declare const getLogs: () => any[];
|
|
312
|
-
|
|
313
|
-
export declare const getLogStats: () => Record<string, number>;
|
|
314
|
-
|
|
315
|
-
export declare const group: (label: string, collapsed?: boolean) => void;
|
|
316
|
-
|
|
317
|
-
export declare const groupEnd: () => void;
|
|
318
|
-
|
|
319
|
-
/**
|
|
320
|
-
* Interface for custom log handlers (extensibility)
|
|
321
|
-
*/
|
|
322
|
-
export declare interface ILogHandler {
|
|
323
|
-
handle(level: LogLevel, message: string, args: any[], metadata: LogMetadata): void;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
export declare const info: (...args: any[]) => void;
|
|
327
|
-
|
|
328
|
-
/**
|
|
329
|
-
* Supported log levels in hierarchical order (debug < info < warn < error < critical)
|
|
330
|
-
*/
|
|
331
|
-
declare const LOG_LEVELS: {
|
|
332
|
-
readonly debug: 0;
|
|
333
|
-
readonly info: 1;
|
|
334
|
-
readonly warn: 2;
|
|
335
|
-
readonly error: 3;
|
|
336
|
-
readonly critical: 4;
|
|
337
|
-
};
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* Stored log entry for export functionality
|
|
341
|
-
*/
|
|
342
|
-
declare interface LogEntry {
|
|
343
|
-
id: string;
|
|
344
|
-
timestamp: string;
|
|
345
|
-
level: LogLevel;
|
|
346
|
-
prefix?: string;
|
|
347
|
-
message: string;
|
|
348
|
-
args: any[];
|
|
349
|
-
location?: StackInfo;
|
|
350
|
-
groupInfo?: {
|
|
351
|
-
depth: number;
|
|
352
|
-
groupName?: string;
|
|
353
|
-
};
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
/**
|
|
357
|
-
* Main Logger class implementing state-of-the-art logging capabilities
|
|
358
|
-
*/
|
|
359
|
-
declare class Logger {
|
|
360
|
-
private config;
|
|
361
|
-
private scopedPrefix?;
|
|
362
|
-
private handlers;
|
|
363
|
-
private timers;
|
|
364
|
-
private groupDepth;
|
|
365
|
-
private exportHandler?;
|
|
366
|
-
private cliProcessor?;
|
|
367
|
-
/**
|
|
368
|
-
* Creates a new Logger instance
|
|
369
|
-
*/
|
|
370
|
-
constructor(config?: Partial<LoggerConfig>);
|
|
371
|
-
/**
|
|
372
|
-
* Get current configuration
|
|
373
|
-
*/
|
|
374
|
-
getConfig(): LoggerConfig;
|
|
375
|
-
/**
|
|
376
|
-
* Update configuration
|
|
377
|
-
*/
|
|
378
|
-
updateConfig(updates: Partial<LoggerConfig>): void;
|
|
379
|
-
/**
|
|
380
|
-
* Sets the global prefix for all log messages
|
|
381
|
-
*/
|
|
382
|
-
setGlobalPrefix(prefix: string): void;
|
|
383
|
-
/**
|
|
384
|
-
* Sets the verbosity level for filtering log output
|
|
385
|
-
*/
|
|
386
|
-
setVerbosity(level: Verbosity): void;
|
|
387
|
-
/**
|
|
388
|
-
* Sets the logger theme
|
|
389
|
-
*/
|
|
390
|
-
setTheme(theme: ThemeVariant): void;
|
|
391
|
-
/**
|
|
392
|
-
* Set banner type for initialization display
|
|
393
|
-
*/
|
|
394
|
-
setBannerType(bannerType: BannerType): void;
|
|
395
|
-
/**
|
|
396
|
-
* Reset logger to default configuration
|
|
397
|
-
*/
|
|
398
|
-
resetConfig(): void;
|
|
399
|
-
/**
|
|
400
|
-
* Creates a scoped logger with a specific prefix
|
|
401
|
-
*/
|
|
402
|
-
createScopedLogger(prefix: string): Logger;
|
|
403
|
-
/**
|
|
404
|
-
* Adds a custom log handler for extensibility
|
|
405
|
-
*/
|
|
406
|
-
addHandler(handler: ILogHandler): void;
|
|
407
|
-
/**
|
|
408
|
-
* Get all registered handlers
|
|
409
|
-
*/
|
|
410
|
-
getHandlers(): ILogHandler[];
|
|
411
|
-
/**
|
|
412
|
-
* Get export handler if available
|
|
413
|
-
*/
|
|
414
|
-
getExportHandler(): ExportLogHandler | undefined;
|
|
415
|
-
/**
|
|
416
|
-
* Checks if a log level should be output based on current verbosity
|
|
417
|
-
*/
|
|
418
|
-
private shouldLog;
|
|
419
|
-
/**
|
|
420
|
-
* Gets the effective prefix (global + scoped)
|
|
421
|
-
*/
|
|
422
|
-
private getEffectivePrefix;
|
|
423
|
-
/**
|
|
424
|
-
* Core logging method that handles styling and formatting
|
|
425
|
-
*/
|
|
426
|
-
private log;
|
|
427
|
-
/**
|
|
428
|
-
* Logs debug information (lowest priority)
|
|
429
|
-
*/
|
|
430
|
-
debug(...args: any[]): void;
|
|
431
|
-
/**
|
|
432
|
-
* Logs informational messages
|
|
433
|
-
*/
|
|
434
|
-
info(...args: any[]): void;
|
|
435
|
-
/**
|
|
436
|
-
* Logs warning messages
|
|
437
|
-
*/
|
|
438
|
-
warn(...args: any[]): void;
|
|
439
|
-
/**
|
|
440
|
-
* Logs error messages
|
|
441
|
-
*/
|
|
442
|
-
error(...args: any[]): void;
|
|
443
|
-
/**
|
|
444
|
-
* Logs success messages (special info level)
|
|
445
|
-
*/
|
|
446
|
-
success(...args: any[]): void;
|
|
447
|
-
/**
|
|
448
|
-
* Logs trace information (detailed debugging)
|
|
449
|
-
*/
|
|
450
|
-
trace(...args: any[]): void;
|
|
451
|
-
/**
|
|
452
|
-
* Logs critical errors (highest priority)
|
|
453
|
-
*/
|
|
454
|
-
critical(...args: any[]): void;
|
|
455
|
-
/**
|
|
456
|
-
* Displays data in a table format
|
|
457
|
-
*/
|
|
458
|
-
table(data: any, columns?: string[]): void;
|
|
459
|
-
/**
|
|
460
|
-
* Starts a collapsible group in the console
|
|
461
|
-
*/
|
|
462
|
-
group(label: string, collapsed?: boolean): void;
|
|
463
|
-
/**
|
|
464
|
-
* Ends the current console group
|
|
465
|
-
*/
|
|
466
|
-
groupEnd(): void;
|
|
467
|
-
/**
|
|
468
|
-
* Starts a timer with the given label
|
|
469
|
-
*/
|
|
470
|
-
time(label: string): void;
|
|
471
|
-
/**
|
|
472
|
-
* Ends a timer and logs the elapsed time
|
|
473
|
-
*/
|
|
474
|
-
timeEnd(label: string): void;
|
|
475
|
-
/**
|
|
476
|
-
* Display banner with specified or configured type
|
|
477
|
-
*/
|
|
478
|
-
showBanner(bannerType?: BannerType): void;
|
|
479
|
-
/**
|
|
480
|
-
* Log with SVG background image
|
|
481
|
-
*/
|
|
482
|
-
logWithSVG(message: string, svgContent?: string, options?: StyleOptions): void;
|
|
483
|
-
/**
|
|
484
|
-
* Log with animated background gradient
|
|
485
|
-
*/
|
|
486
|
-
logAnimated(message: string, duration?: number): void;
|
|
487
|
-
/**
|
|
488
|
-
* Groups logs by a specific property using modern Object.groupBy (when available)
|
|
489
|
-
*/
|
|
490
|
-
logGrouped<T>(items: T[], groupBy: (item: T) => string): void;
|
|
491
|
-
/**
|
|
492
|
-
* CLI command processor for logger configuration and export
|
|
493
|
-
*/
|
|
494
|
-
cli(command: string): Promise<void>;
|
|
495
|
-
}
|
|
496
|
-
|
|
497
|
-
/**
|
|
498
|
-
* Configuration interface for logger instances
|
|
499
|
-
*/
|
|
500
|
-
declare interface LoggerConfig {
|
|
501
|
-
globalPrefix?: string;
|
|
502
|
-
verbosity: Verbosity;
|
|
503
|
-
enableColors: boolean;
|
|
504
|
-
enableTimestamps: boolean;
|
|
505
|
-
enableStackTrace: boolean;
|
|
506
|
-
theme?: ThemeVariant;
|
|
507
|
-
bannerType?: BannerType;
|
|
508
|
-
bufferSize?: number;
|
|
509
|
-
}
|
|
510
|
-
|
|
511
|
-
/**
|
|
512
|
-
* Log level type derived from LOG_LEVELS keys
|
|
513
|
-
*/
|
|
514
|
-
declare type LogLevel = keyof typeof LOG_LEVELS;
|
|
515
|
-
|
|
516
|
-
/**
|
|
517
|
-
* Metadata associated with each log entry
|
|
518
|
-
*/
|
|
519
|
-
declare interface LogMetadata {
|
|
520
|
-
timestamp: string;
|
|
521
|
-
level: LogLevel;
|
|
522
|
-
prefix?: string;
|
|
523
|
-
stackInfo?: StackInfo;
|
|
524
|
-
group?: string;
|
|
525
|
-
}
|
|
526
|
-
|
|
527
|
-
/**
|
|
528
|
-
* Remote log handler for sending logs to external services
|
|
529
|
-
*/
|
|
530
|
-
export declare class RemoteLogHandler implements ILogHandler {
|
|
531
|
-
private endpoint;
|
|
532
|
-
private apiKey?;
|
|
533
|
-
constructor(endpoint: string, apiKey?: string);
|
|
534
|
-
handle(level: LogLevel, message: string, args: any[], metadata: LogMetadata): Promise<void>;
|
|
535
|
-
}
|
|
536
|
-
|
|
537
|
-
/**
|
|
538
|
-
* Remote logging utilities
|
|
539
|
-
*/
|
|
540
|
-
export declare const remoteUtils: {
|
|
541
|
-
/**
|
|
542
|
-
* Add remote logging endpoint
|
|
543
|
-
*/
|
|
544
|
-
addEndpoint(url: string, apiKey?: string): void;
|
|
545
|
-
/**
|
|
546
|
-
* Clear all remote endpoints
|
|
547
|
-
*/
|
|
548
|
-
clearEndpoints(): void;
|
|
549
|
-
/**
|
|
550
|
-
* Flush all remote logs
|
|
551
|
-
*/
|
|
552
|
-
flush(): Promise<void>;
|
|
553
|
-
};
|
|
554
|
-
|
|
555
|
-
export declare const setGlobalPrefix: (prefix: string) => void;
|
|
556
|
-
|
|
557
|
-
export declare const setVerbosity: (level: Verbosity) => void;
|
|
558
|
-
|
|
559
|
-
/**
|
|
560
|
-
* Parsed stack trace information
|
|
561
|
-
*/
|
|
562
|
-
declare interface StackInfo {
|
|
563
|
-
file: string;
|
|
564
|
-
line: number;
|
|
565
|
-
column: number;
|
|
566
|
-
function?: string;
|
|
567
|
-
}
|
|
568
|
-
|
|
569
|
-
/**
|
|
570
|
-
* Options for styling components
|
|
571
|
-
*/
|
|
572
|
-
declare interface StyleOptions {
|
|
573
|
-
width?: number;
|
|
574
|
-
height?: number;
|
|
575
|
-
padding?: string;
|
|
576
|
-
}
|
|
577
|
-
|
|
578
|
-
export declare const success: (...args: any[]) => void;
|
|
579
|
-
|
|
580
|
-
export declare const table: (data: any, columns?: string[]) => void;
|
|
581
|
-
|
|
582
|
-
/**
|
|
583
|
-
* Theme variants for different visual styles
|
|
584
|
-
*/
|
|
585
|
-
declare type ThemeVariant = 'default' | 'dark' | 'light' | 'neon' | 'minimal' | 'cyberpunk';
|
|
586
|
-
|
|
587
|
-
export declare const time: (label: string) => void;
|
|
588
|
-
|
|
589
|
-
export declare const timeEnd: (label: string) => void;
|
|
590
|
-
|
|
591
|
-
export declare const trace: (...args: any[]) => void;
|
|
592
|
-
|
|
593
|
-
/**
|
|
594
|
-
* Verbosity level type for filtering logs
|
|
595
|
-
*/
|
|
596
|
-
declare type Verbosity = LogLevel | 'silent';
|
|
597
|
-
|
|
598
|
-
export declare const warn: (...args: any[]) => void;
|
|
599
|
-
|
|
600
|
-
export { }
|