@void.01/advanced-logger 0.0.0-stage → 0.4.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/ARCHITECTURE.md +342 -0
- package/CHANGELOG.md +108 -0
- package/README.md +304 -2
- package/dist/actions.d.ts +79 -0
- package/dist/actions.d.ts.map +1 -0
- package/dist/actions.js +337 -0
- package/dist/actions.js.map +1 -0
- package/dist/ansi.d.ts +144 -0
- package/dist/ansi.d.ts.map +1 -0
- package/dist/ansi.js +219 -0
- package/dist/ansi.js.map +1 -0
- package/dist/caller.d.ts +21 -0
- package/dist/caller.d.ts.map +1 -0
- package/dist/caller.js +129 -0
- package/dist/caller.js.map +1 -0
- package/dist/config.d.ts +152 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +398 -0
- package/dist/config.js.map +1 -0
- package/dist/configFile.d.ts +31 -0
- package/dist/configFile.d.ts.map +1 -0
- package/dist/configFile.js +211 -0
- package/dist/configFile.js.map +1 -0
- package/dist/core.d.ts +17 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +89 -0
- package/dist/core.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +60 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +7 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +10 -0
- package/dist/logger.js.map +1 -0
- package/dist/playwright.d.ts +15 -0
- package/dist/playwright.d.ts.map +1 -0
- package/dist/playwright.js +47 -0
- package/dist/playwright.js.map +1 -0
- package/dist/redact.d.ts +8 -0
- package/dist/redact.d.ts.map +1 -0
- package/dist/redact.js +36 -0
- package/dist/redact.js.map +1 -0
- package/dist/sinks.d.ts +80 -0
- package/dist/sinks.d.ts.map +1 -0
- package/dist/sinks.js +461 -0
- package/dist/sinks.js.map +1 -0
- package/dist/theme.d.ts +71 -0
- package/dist/theme.d.ts.map +1 -0
- package/dist/theme.js +115 -0
- package/dist/theme.js.map +1 -0
- package/package.json +50 -4
package/dist/ansi.js
ADDED
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ANSI escape factory + named color catalog.
|
|
4
|
+
* Port of core.logging.ansi.AnsiEscape and AnsiColors.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.RGB_BG = exports.RGB_FG = exports.BG_256 = exports.FG_256 = exports.BG_BRIGHT_WHITE = exports.BG_BRIGHT_CYAN = exports.BG_BRIGHT_MAGENTA = exports.BG_BRIGHT_BLUE = exports.BG_BRIGHT_YELLOW = exports.BG_BRIGHT_GREEN = exports.BG_BRIGHT_RED = exports.BG_BRIGHT_BLACK = exports.BG_WHITE = exports.BG_CYAN = exports.BG_MAGENTA = exports.BG_BLUE = exports.BG_YELLOW = exports.BG_GREEN = exports.BG_RED = exports.BG_BLACK = exports.FG_BRIGHT_WHITE = exports.FG_BRIGHT_CYAN = exports.FG_BRIGHT_MAGENTA = exports.FG_BRIGHT_BLUE = exports.FG_BRIGHT_YELLOW = exports.FG_BRIGHT_GREEN = exports.FG_BRIGHT_RED = exports.FG_BRIGHT_BLACK = exports.FG_WHITE = exports.FG_CYAN = exports.FG_MAGENTA = exports.FG_BLUE = exports.FG_YELLOW = exports.FG_GREEN = exports.FG_RED = exports.FG_BLACK = exports.colorize = exports.ITALIC = exports.DIM = exports.BOLD = exports.RESET = exports.bg256 = exports.fg256 = exports.rgbBgHex = exports.rgbFgHex = exports.rgbBg = exports.rgbFg = void 0;
|
|
8
|
+
exports.sgr = sgr;
|
|
9
|
+
exports.fg16 = fg16;
|
|
10
|
+
exports.bg16 = bg16;
|
|
11
|
+
exports.stripAnsi = stripAnsi;
|
|
12
|
+
exports.fgFromStyle = fgFromStyle;
|
|
13
|
+
const ESC = '\u001b[';
|
|
14
|
+
// -- Escape factory ----------------------------------------------------------
|
|
15
|
+
function sgr(...codes) {
|
|
16
|
+
if (codes.length === 0)
|
|
17
|
+
throw new RangeError('sgr() requires at least one code');
|
|
18
|
+
return `${ESC}${codes.join(';')}m`;
|
|
19
|
+
}
|
|
20
|
+
function fg16(code) {
|
|
21
|
+
if (!((code >= 30 && code <= 37) || (code >= 90 && code <= 97))) {
|
|
22
|
+
throw new RangeError(`16-color FG code must be in 30-37 or 90-97 (got ${code})`);
|
|
23
|
+
}
|
|
24
|
+
return sgr(code);
|
|
25
|
+
}
|
|
26
|
+
function bg16(code) {
|
|
27
|
+
if (!((code >= 40 && code <= 47) || (code >= 100 && code <= 107))) {
|
|
28
|
+
throw new RangeError(`16-color BG code must be in 40-47 or 100-107 (got ${code})`);
|
|
29
|
+
}
|
|
30
|
+
return sgr(code);
|
|
31
|
+
}
|
|
32
|
+
function validateRgb(r, g, b) {
|
|
33
|
+
for (const c of [r, g, b]) {
|
|
34
|
+
if (!Number.isInteger(c) || c < 0 || c > 255) {
|
|
35
|
+
throw new RangeError(`RGB components must be in 0-255 (got r=${r}, g=${g}, b=${b})`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function validate256(code) {
|
|
40
|
+
if (!Number.isInteger(code) || code < 0 || code > 255) {
|
|
41
|
+
throw new RangeError(`256-color code must be in 0-255 (got ${code})`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const rgbFg = (r, g, b) => {
|
|
45
|
+
validateRgb(r, g, b);
|
|
46
|
+
return `${ESC}38;2;${r};${g};${b}m`;
|
|
47
|
+
};
|
|
48
|
+
exports.rgbFg = rgbFg;
|
|
49
|
+
const rgbBg = (r, g, b) => {
|
|
50
|
+
validateRgb(r, g, b);
|
|
51
|
+
return `${ESC}48;2;${r};${g};${b}m`;
|
|
52
|
+
};
|
|
53
|
+
exports.rgbBg = rgbBg;
|
|
54
|
+
/** 0xRRGGBB overloads. */
|
|
55
|
+
const rgbFgHex = (rgb) => (0, exports.rgbFg)((rgb >> 16) & 0xff, (rgb >> 8) & 0xff, rgb & 0xff);
|
|
56
|
+
exports.rgbFgHex = rgbFgHex;
|
|
57
|
+
const rgbBgHex = (rgb) => (0, exports.rgbBg)((rgb >> 16) & 0xff, (rgb >> 8) & 0xff, rgb & 0xff);
|
|
58
|
+
exports.rgbBgHex = rgbBgHex;
|
|
59
|
+
const fg256 = (code) => {
|
|
60
|
+
validate256(code);
|
|
61
|
+
return `${ESC}38;5;${code}m`;
|
|
62
|
+
};
|
|
63
|
+
exports.fg256 = fg256;
|
|
64
|
+
const bg256 = (code) => {
|
|
65
|
+
validate256(code);
|
|
66
|
+
return `${ESC}48;5;${code}m`;
|
|
67
|
+
};
|
|
68
|
+
exports.bg256 = bg256;
|
|
69
|
+
exports.RESET = sgr(0);
|
|
70
|
+
exports.BOLD = sgr(1);
|
|
71
|
+
exports.DIM = sgr(2);
|
|
72
|
+
exports.ITALIC = sgr(3);
|
|
73
|
+
const colorize = (text, ansi, bg = '') => `${ansi}${bg}${text}${exports.RESET}`;
|
|
74
|
+
exports.colorize = colorize;
|
|
75
|
+
// -- Strip / extract ---------------------------------------------------------
|
|
76
|
+
const ANSI_RE = /\u001b\[[;\d]*m/g;
|
|
77
|
+
function stripAnsi(str) {
|
|
78
|
+
return str == null ? '' : str.replace(ANSI_RE, '');
|
|
79
|
+
}
|
|
80
|
+
/** Derive a foreground escape from a style string (bg-only styles map to their matching fg). */
|
|
81
|
+
function fgFromStyle(style) {
|
|
82
|
+
if (style == null)
|
|
83
|
+
return exports.FG_BRIGHT_WHITE;
|
|
84
|
+
const fg = /(\u001b\[3\d{1,2}(;\d{1,2})?m)/.exec(style);
|
|
85
|
+
if (fg)
|
|
86
|
+
return fg[1];
|
|
87
|
+
const m8 = /(\u001b\[4)(\d)(m)/.exec(style);
|
|
88
|
+
if (m8) {
|
|
89
|
+
const c = `\u001b[3${m8[2]}m`;
|
|
90
|
+
return c === exports.FG_BLACK ? exports.FG_BRIGHT_WHITE : c;
|
|
91
|
+
}
|
|
92
|
+
const m256 = /(\u001b\[48;5;)(\d+)(m)/.exec(style);
|
|
93
|
+
if (m256)
|
|
94
|
+
return `\u001b[38;5;${m256[2]}m`;
|
|
95
|
+
return exports.FG_BRIGHT_WHITE;
|
|
96
|
+
}
|
|
97
|
+
// -- Color catalog (data only) ----------------------------------------------
|
|
98
|
+
exports.FG_BLACK = fg16(30);
|
|
99
|
+
exports.FG_RED = fg16(31);
|
|
100
|
+
exports.FG_GREEN = fg16(32);
|
|
101
|
+
exports.FG_YELLOW = fg16(33);
|
|
102
|
+
exports.FG_BLUE = fg16(34);
|
|
103
|
+
exports.FG_MAGENTA = fg16(35);
|
|
104
|
+
exports.FG_CYAN = fg16(36);
|
|
105
|
+
exports.FG_WHITE = fg16(37);
|
|
106
|
+
exports.FG_BRIGHT_BLACK = fg16(90);
|
|
107
|
+
exports.FG_BRIGHT_RED = fg16(91);
|
|
108
|
+
exports.FG_BRIGHT_GREEN = fg16(92);
|
|
109
|
+
exports.FG_BRIGHT_YELLOW = fg16(93);
|
|
110
|
+
exports.FG_BRIGHT_BLUE = fg16(94);
|
|
111
|
+
exports.FG_BRIGHT_MAGENTA = fg16(95);
|
|
112
|
+
exports.FG_BRIGHT_CYAN = fg16(96);
|
|
113
|
+
exports.FG_BRIGHT_WHITE = fg16(97);
|
|
114
|
+
exports.BG_BLACK = bg16(40);
|
|
115
|
+
exports.BG_RED = bg16(41);
|
|
116
|
+
exports.BG_GREEN = bg16(42);
|
|
117
|
+
exports.BG_YELLOW = bg16(43);
|
|
118
|
+
exports.BG_BLUE = bg16(44);
|
|
119
|
+
exports.BG_MAGENTA = bg16(45);
|
|
120
|
+
exports.BG_CYAN = bg16(46);
|
|
121
|
+
exports.BG_WHITE = bg16(47);
|
|
122
|
+
exports.BG_BRIGHT_BLACK = bg16(100);
|
|
123
|
+
exports.BG_BRIGHT_RED = bg16(101);
|
|
124
|
+
exports.BG_BRIGHT_GREEN = bg16(102);
|
|
125
|
+
exports.BG_BRIGHT_YELLOW = bg16(103);
|
|
126
|
+
exports.BG_BRIGHT_BLUE = bg16(104);
|
|
127
|
+
exports.BG_BRIGHT_MAGENTA = bg16(105);
|
|
128
|
+
exports.BG_BRIGHT_CYAN = bg16(106);
|
|
129
|
+
exports.BG_BRIGHT_WHITE = bg16(107);
|
|
130
|
+
exports.FG_256 = {
|
|
131
|
+
ORANGE: (0, exports.fg256)(208),
|
|
132
|
+
GOLD: (0, exports.fg256)(220),
|
|
133
|
+
LIME: (0, exports.fg256)(118),
|
|
134
|
+
SKY: (0, exports.fg256)(117),
|
|
135
|
+
VIOLET: (0, exports.fg256)(135),
|
|
136
|
+
PINK: (0, exports.fg256)(205),
|
|
137
|
+
TEAL: (0, exports.fg256)(80),
|
|
138
|
+
SALMON: (0, exports.fg256)(209),
|
|
139
|
+
GREY_DARK: (0, exports.fg256)(240),
|
|
140
|
+
GREY_MID: (0, exports.fg256)(246),
|
|
141
|
+
GREY_LIGHT: (0, exports.fg256)(252),
|
|
142
|
+
NAVY: (0, exports.fg256)(17),
|
|
143
|
+
MAROON: (0, exports.fg256)(88),
|
|
144
|
+
OLIVE: (0, exports.fg256)(100),
|
|
145
|
+
INDIGO: (0, exports.fg256)(54),
|
|
146
|
+
};
|
|
147
|
+
exports.BG_256 = {
|
|
148
|
+
ORANGE: (0, exports.bg256)(208),
|
|
149
|
+
DARK_GREY: (0, exports.bg256)(235),
|
|
150
|
+
MID_GREY: (0, exports.bg256)(238),
|
|
151
|
+
NAVY: (0, exports.bg256)(17),
|
|
152
|
+
DARK_GREEN: (0, exports.bg256)(22),
|
|
153
|
+
DARK_TEAL: (0, exports.bg256)(23),
|
|
154
|
+
DARK_PURPLE: (0, exports.bg256)(53),
|
|
155
|
+
DARK_OLIVE: (0, exports.bg256)(94),
|
|
156
|
+
DARK_RED: (0, exports.bg256)(52),
|
|
157
|
+
MAROON: (0, exports.bg256)(88),
|
|
158
|
+
INDIGO: (0, exports.bg256)(54),
|
|
159
|
+
};
|
|
160
|
+
exports.RGB_FG = {
|
|
161
|
+
SNOW_WHITE: (0, exports.rgbFg)(240, 242, 245),
|
|
162
|
+
SOFT_WHITE: (0, exports.rgbFg)(210, 215, 220),
|
|
163
|
+
COOL_GREY: (0, exports.rgbFg)(140, 150, 165),
|
|
164
|
+
WARM_GREY: (0, exports.rgbFg)(160, 158, 150),
|
|
165
|
+
DEEP_CHARCOAL: (0, exports.rgbFg)(28, 30, 38),
|
|
166
|
+
GOLD: (0, exports.rgbFg)(255, 200, 50),
|
|
167
|
+
AMBER: (0, exports.rgbFg)(255, 170, 0),
|
|
168
|
+
PEACH: (0, exports.rgbFg)(255, 185, 110),
|
|
169
|
+
CORAL: (0, exports.rgbFg)(255, 105, 85),
|
|
170
|
+
SALMON: (0, exports.rgbFg)(255, 140, 105),
|
|
171
|
+
HOT_PINK: (0, exports.rgbFg)(255, 75, 170),
|
|
172
|
+
SKY_BLUE: (0, exports.rgbFg)(80, 185, 255),
|
|
173
|
+
ELECTRIC_BLUE: (0, exports.rgbFg)(50, 140, 255),
|
|
174
|
+
STEEL_CYAN: (0, exports.rgbFg)(90, 220, 220),
|
|
175
|
+
MINT: (0, exports.rgbFg)(60, 220, 175),
|
|
176
|
+
LIME_GREEN: (0, exports.rgbFg)(100, 240, 120),
|
|
177
|
+
NEON_GREEN: (0, exports.rgbFg)(80, 255, 120),
|
|
178
|
+
LAVENDER: (0, exports.rgbFg)(185, 155, 255),
|
|
179
|
+
VIOLET: (0, exports.rgbFg)(160, 100, 255),
|
|
180
|
+
PURPLE: (0, exports.rgbFg)(155, 111, 224),
|
|
181
|
+
DARKER_PURPLE: (0, exports.rgbFg)(122, 79, 196),
|
|
182
|
+
DEEP_PURPLE: (0, exports.rgbFg)(90, 54, 163),
|
|
183
|
+
DEEP_RED: (0, exports.rgbFg)(210, 48, 48),
|
|
184
|
+
DEEP_GREEN: (0, exports.rgbFg)(38, 185, 72),
|
|
185
|
+
DEEP_CYAN: (0, exports.rgbFg)(28, 188, 196),
|
|
186
|
+
DEEP_AMBER: (0, exports.rgbFg)(200, 155, 20),
|
|
187
|
+
DEEP_VIOLET: (0, exports.rgbFg)(152, 88, 210),
|
|
188
|
+
DEEP_ORANGE: (0, exports.rgbFg)(205, 88, 18),
|
|
189
|
+
DEEP_PINK: (0, exports.rgbFg)(210, 40, 125),
|
|
190
|
+
};
|
|
191
|
+
exports.RGB_BG = {
|
|
192
|
+
CHARCOAL: (0, exports.rgbBg)(35, 38, 46),
|
|
193
|
+
DARK_SLATE: (0, exports.rgbBg)(28, 32, 42),
|
|
194
|
+
MIDNIGHT: (0, exports.rgbBg)(16, 18, 26),
|
|
195
|
+
NEAR_BLACK: (0, exports.rgbBg)(20, 22, 30),
|
|
196
|
+
CARBON: (0, exports.rgbBg)(28, 28, 32),
|
|
197
|
+
STEEL_DARK: (0, exports.rgbBg)(48, 52, 62),
|
|
198
|
+
DARK_AMBER: (0, exports.rgbBg)(95, 62, 0),
|
|
199
|
+
VIVID_AMBER: (0, exports.rgbBg)(170, 105, 0),
|
|
200
|
+
RUST: (0, exports.rgbBg)(110, 48, 20),
|
|
201
|
+
CRIMSON: (0, exports.rgbBg)(100, 20, 25),
|
|
202
|
+
DARK_WINE: (0, exports.rgbBg)(90, 16, 36),
|
|
203
|
+
MAROON: (0, exports.rgbBg)(110, 22, 22),
|
|
204
|
+
ORANGE_VIVID: (0, exports.rgbBg)(200, 100, 0),
|
|
205
|
+
DARK_FOREST: (0, exports.rgbBg)(18, 52, 28),
|
|
206
|
+
DARK_OCEAN: (0, exports.rgbBg)(14, 38, 72),
|
|
207
|
+
DARK_TEAL: (0, exports.rgbBg)(14, 66, 66),
|
|
208
|
+
DARK_INDIGO: (0, exports.rgbBg)(28, 24, 68),
|
|
209
|
+
DARK_PURPLE: (0, exports.rgbBg)(45, 22, 72),
|
|
210
|
+
DARK_CYAN: (0, exports.rgbBg)(0, 80, 100),
|
|
211
|
+
SOFT_WHITE: (0, exports.rgbBg)(238, 240, 245),
|
|
212
|
+
LIGHT_GREY: (0, exports.rgbBg)(205, 210, 218),
|
|
213
|
+
WARM_AMBER_LT: (0, exports.rgbBg)(190, 140, 15),
|
|
214
|
+
TOMATO_RED: (0, exports.rgbBg)(190, 45, 45),
|
|
215
|
+
HOT_PINK: (0, exports.rgbBg)(195, 38, 115),
|
|
216
|
+
NEON_PURPLE: (0, exports.rgbBg)(115, 18, 175),
|
|
217
|
+
ELECTRIC_TEAL: (0, exports.rgbBg)(0, 150, 170),
|
|
218
|
+
};
|
|
219
|
+
//# sourceMappingURL=ansi.js.map
|
package/dist/ansi.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ansi.js","sourceRoot":"","sources":["../src/ansi.ts"],"names":[],"mappings":"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"}
|
package/dist/caller.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { LogConfig } from './config';
|
|
2
|
+
/**
|
|
3
|
+
* Stack-based caller resolution. Port of getCallerString / getProjectCallChain.
|
|
4
|
+
* Parses V8 stack text; the logger's own folder is always excluded, which replaces
|
|
5
|
+
* Java's name-prefix suppression (and avoids dropping user methods such as `login`).
|
|
6
|
+
*/
|
|
7
|
+
interface Frame {
|
|
8
|
+
display: string;
|
|
9
|
+
file: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function parseStack(stack: string | undefined): Frame[];
|
|
12
|
+
export interface CallerInfo {
|
|
13
|
+
/** "Callee.method <- Caller.method" (arrow is U+2190), plain text. Empty when unknown. */
|
|
14
|
+
caller: string;
|
|
15
|
+
/** Full in-project chain, leaf first, joined by " <- ". */
|
|
16
|
+
chain: string;
|
|
17
|
+
}
|
|
18
|
+
export declare const ARROW = " \u2190 ";
|
|
19
|
+
export declare function resolveCaller(cfg: LogConfig): CallerInfo;
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=caller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caller.d.ts","sourceRoot":"","sources":["../src/caller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;;GAIG;AAEH,UAAU,KAAK;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAsCD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,EAAE,CAU7D;AAiCD,MAAM,WAAW,UAAU;IACzB,0FAA0F;IAC1F,MAAM,EAAE,MAAM,CAAC;IACf,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,KAAK,aAAQ,CAAC;AAE3B,wBAAgB,aAAa,CAAC,GAAG,EAAE,SAAS,GAAG,UAAU,CAgCxD"}
|
package/dist/caller.js
ADDED
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ARROW = void 0;
|
|
4
|
+
exports.parseStack = parseStack;
|
|
5
|
+
exports.resolveCaller = resolveCaller;
|
|
6
|
+
const FRAME_RE = /^\s*at\s+(?:(async)\s+)?(?:(new)\s+)?(?:(.+?)\s+\()?(.+?):(\d+):(\d+)\)?\s*$/;
|
|
7
|
+
const PLAIN_OBJECT_TYPES = new Set(['Object', 'Module', 'Function', 'Promise', 'Array']);
|
|
8
|
+
function normalizeFile(raw) {
|
|
9
|
+
let f = raw;
|
|
10
|
+
if (f.startsWith('file://')) {
|
|
11
|
+
f = f.slice('file://'.length);
|
|
12
|
+
if (/^\/[A-Za-z]:/.test(f))
|
|
13
|
+
f = f.slice(1);
|
|
14
|
+
try {
|
|
15
|
+
f = decodeURIComponent(f);
|
|
16
|
+
}
|
|
17
|
+
catch {
|
|
18
|
+
/* keep raw */
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return f.replace(/\\/g, '/');
|
|
22
|
+
}
|
|
23
|
+
function fileBase(file) {
|
|
24
|
+
const name = file.slice(file.lastIndexOf('/') + 1);
|
|
25
|
+
const dot = name.lastIndexOf('.');
|
|
26
|
+
return dot > 0 ? name.slice(0, dot) : name;
|
|
27
|
+
}
|
|
28
|
+
function displayName(fn, file, isNew) {
|
|
29
|
+
const base = fileBase(file);
|
|
30
|
+
if (!fn)
|
|
31
|
+
return base;
|
|
32
|
+
const name = fn.replace(/\s*\[as [^\]]*\]$/, '');
|
|
33
|
+
if (isNew)
|
|
34
|
+
return `${name.split('.').pop()}.(constructor)`;
|
|
35
|
+
const dot = name.lastIndexOf('.');
|
|
36
|
+
if (dot < 0)
|
|
37
|
+
return name === '<anonymous>' ? base : `${base}.${name}`;
|
|
38
|
+
const type = name.slice(0, dot);
|
|
39
|
+
const method = name.slice(dot + 1);
|
|
40
|
+
const owner = PLAIN_OBJECT_TYPES.has(type) ? base : type;
|
|
41
|
+
return method === '<anonymous>' ? owner : `${owner}.${method}`;
|
|
42
|
+
}
|
|
43
|
+
function parseStack(stack) {
|
|
44
|
+
if (!stack)
|
|
45
|
+
return [];
|
|
46
|
+
const frames = [];
|
|
47
|
+
for (const line of stack.split('\n')) {
|
|
48
|
+
const m = FRAME_RE.exec(line);
|
|
49
|
+
if (!m)
|
|
50
|
+
continue;
|
|
51
|
+
const file = normalizeFile(m[4]);
|
|
52
|
+
frames.push({ display: displayName(m[3], file, m[2] === 'new'), file });
|
|
53
|
+
}
|
|
54
|
+
return frames;
|
|
55
|
+
}
|
|
56
|
+
// Folder holding this logger (src/ or dist/). Any frame inside it is logger-internal.
|
|
57
|
+
const SELF_DIR = (() => {
|
|
58
|
+
const first = parseStack(new Error().stack)[0];
|
|
59
|
+
if (!first)
|
|
60
|
+
return '\u0000';
|
|
61
|
+
return first.file.slice(0, first.file.lastIndexOf('/') + 1);
|
|
62
|
+
})();
|
|
63
|
+
function filteredOut(f, cfg) {
|
|
64
|
+
if (f.file.startsWith(SELF_DIR))
|
|
65
|
+
return true;
|
|
66
|
+
const method = f.display.slice(f.display.lastIndexOf('.') + 1);
|
|
67
|
+
for (const p of cfg.suppressMethodPrefixes)
|
|
68
|
+
if (method.startsWith(p))
|
|
69
|
+
return true;
|
|
70
|
+
if (cfg.includeOnlyPrefixes.size > 0) {
|
|
71
|
+
let hit = false;
|
|
72
|
+
for (const p of cfg.includeOnlyPrefixes) {
|
|
73
|
+
if (f.file.includes(p) || f.display.startsWith(p)) {
|
|
74
|
+
hit = true;
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (!hit)
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
for (const s of cfg.suppressContains)
|
|
82
|
+
if (f.display.includes(s) || f.file.includes(s))
|
|
83
|
+
return true;
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
function isProjectFrame(f, cfg) {
|
|
87
|
+
if (f.file.startsWith(SELF_DIR) || f.file.includes('node_modules') || f.file.startsWith('node:'))
|
|
88
|
+
return false;
|
|
89
|
+
const roots = cfg.projectRoots.map((r) => r.replace(/\\/g, '/'));
|
|
90
|
+
return roots.some((r) => f.file.startsWith(r));
|
|
91
|
+
}
|
|
92
|
+
exports.ARROW = ' ← ';
|
|
93
|
+
function resolveCaller(cfg) {
|
|
94
|
+
const prev = Error.stackTraceLimit;
|
|
95
|
+
Error.stackTraceLimit = 60;
|
|
96
|
+
let frames;
|
|
97
|
+
try {
|
|
98
|
+
frames = parseStack(new Error().stack);
|
|
99
|
+
}
|
|
100
|
+
finally {
|
|
101
|
+
Error.stackTraceLimit = prev;
|
|
102
|
+
}
|
|
103
|
+
// caller: first surviving frame is the callee; next with a different display is the caller
|
|
104
|
+
let callee;
|
|
105
|
+
let caller;
|
|
106
|
+
for (const f of frames) {
|
|
107
|
+
if (filteredOut(f, cfg))
|
|
108
|
+
continue;
|
|
109
|
+
if (!callee) {
|
|
110
|
+
callee = f;
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
if (f.display === callee.display)
|
|
114
|
+
continue;
|
|
115
|
+
caller = f;
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
const callerText = !callee ? '' : caller ? callee.display + exports.ARROW + caller.display : callee.display;
|
|
119
|
+
// chain: every project frame that survives filters, consecutive duplicates collapsed
|
|
120
|
+
const chain = [];
|
|
121
|
+
for (const f of frames) {
|
|
122
|
+
if (!isProjectFrame(f, cfg) || filteredOut(f, cfg))
|
|
123
|
+
continue;
|
|
124
|
+
if (chain[chain.length - 1] !== f.display)
|
|
125
|
+
chain.push(f.display);
|
|
126
|
+
}
|
|
127
|
+
return { caller: callerText, chain: chain.join(exports.ARROW) };
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=caller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caller.js","sourceRoot":"","sources":["../src/caller.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import type { LevelName } from './theme';
|
|
2
|
+
export type RootLevel = 'debug' | 'info' | 'warn' | 'error' | 'off';
|
|
3
|
+
export type AttachPolicy = 'on-failure' | 'always' | 'never';
|
|
4
|
+
export interface FileToggles {
|
|
5
|
+
/** Everything (all levels) plus caller suffix. */
|
|
6
|
+
debugTrace: boolean;
|
|
7
|
+
/** Console-visible lines only, no caller suffix. */
|
|
8
|
+
partialTrace: boolean;
|
|
9
|
+
/** Everything plus [CHAIN] suffix. */
|
|
10
|
+
fullTrace: boolean;
|
|
11
|
+
/** One structured JSON record per log call (QoL addition, off by default). */
|
|
12
|
+
jsonl: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* For every rendered table, a CSV and a JSON copy at <logDir>/<date>/attachments/{csv,json}/<runId>-<worker>/
|
|
15
|
+
* <NNN>-<title>.{csv,json}: one folder per parent log. Full cell values (no tableCellLimit), redacted like the console.
|
|
16
|
+
*/
|
|
17
|
+
tables: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface LogConfig {
|
|
20
|
+
/** Root threshold for console + partial-trace. Debug/full traces always capture everything. */
|
|
21
|
+
level: RootLevel;
|
|
22
|
+
/** ANSI output on/off. This is the theme toggle: on = HIGH_CONTRAST, off = plain text. Overrides fg and bg. */
|
|
23
|
+
ansi: boolean;
|
|
24
|
+
/** Intent-based foreground colors (plus the level foreground on BASE lines). Only matters when ansi is on. */
|
|
25
|
+
fg: boolean;
|
|
26
|
+
/** The theme background (one constant, BG_BLACK, for every level). Only matters when ansi is on. */
|
|
27
|
+
bg: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Max log files kept per trace kind (partial-trace, debug-trace, full-trace, jsonl); older ones are deleted by
|
|
30
|
+
* mtime. Files of the current run, and of any run written to in the last recentRunMinutes, are never deleted, so
|
|
31
|
+
* this is not a hard cap. null (or 0) keeps everything. Prefer maxRuns: a file count can keep part of a parallel run.
|
|
32
|
+
*/
|
|
33
|
+
maxLogFiles: number | null;
|
|
34
|
+
/**
|
|
35
|
+
* Max runs kept per trace kind, the current run included. Older runs are deleted whole, oldest first. A run written
|
|
36
|
+
* to in the last recentRunMinutes is never deleted. null (or 0) keeps everything.
|
|
37
|
+
*/
|
|
38
|
+
maxRuns: number | null;
|
|
39
|
+
/**
|
|
40
|
+
* Retention never deletes a run with a file modified this many minutes ago or less (another runner or CI shard may
|
|
41
|
+
* still be writing it). Default 60. 0 turns the guard off, so only the current run is protected.
|
|
42
|
+
*/
|
|
43
|
+
recentRunMinutes: number;
|
|
44
|
+
/**
|
|
45
|
+
* Max chars for an INFO log (tables excluded). Longer ones print truncated with the total char count, followed by a
|
|
46
|
+
* WARN and a DEBUG line holding the full text. null (or 0) means no limit.
|
|
47
|
+
*/
|
|
48
|
+
infoLogsCharLimit: number | null;
|
|
49
|
+
/** Console-only: prefix each line with the worker (w<N>, or main outside Playwright), as the trace files do. */
|
|
50
|
+
consoleWorker: boolean;
|
|
51
|
+
/** Console-only: prefix each line with the running test's title (set by the Playwright fixture), max 40 chars. */
|
|
52
|
+
consoleTest: boolean;
|
|
53
|
+
/** Console-only: color the caller suffix separately. Breaks one-ANSI-block-per-line. Independent of fg and bg. */
|
|
54
|
+
callerColor: boolean;
|
|
55
|
+
/** Java-style pattern (yyyy MM dd HH mm ss SSS) or a formatter function. */
|
|
56
|
+
tsFormat: string | ((d: Date) => string);
|
|
57
|
+
segmentDivider: string;
|
|
58
|
+
tableCellLimit: number;
|
|
59
|
+
tableCellLimitEnabled: boolean;
|
|
60
|
+
/** Frames whose class or file path contains any of these are dropped from caller/chain. */
|
|
61
|
+
suppressContains: Set<string>;
|
|
62
|
+
suppressMethodPrefixes: Set<string>;
|
|
63
|
+
/** When non-empty, only frames whose file path contains / class starts with one of these are kept. */
|
|
64
|
+
includeOnlyPrefixes: Set<string>;
|
|
65
|
+
/** Frames under these roots (and not in node_modules) form the [CHAIN]. */
|
|
66
|
+
projectRoots: string[];
|
|
67
|
+
console: boolean;
|
|
68
|
+
files: FileToggles;
|
|
69
|
+
logDir: string;
|
|
70
|
+
/** Emit ::error:: / ::warning:: workflow commands when running under GitHub Actions. */
|
|
71
|
+
githubAnnotations: boolean;
|
|
72
|
+
/** Mask values of these field keys (case-insensitive substring match) in tree/table/row output, at any depth. */
|
|
73
|
+
redactKeys: string[];
|
|
74
|
+
/**
|
|
75
|
+
* Also mask secrets written into message text: `key=value`, `key: value` and `"key":"value"` where the key contains
|
|
76
|
+
* one of redactKeys, plus `Bearer <token>` / `Basic <credentials>`. Applies to every sink.
|
|
77
|
+
*/
|
|
78
|
+
redactText: boolean;
|
|
79
|
+
/** Playwright integration: when to attach the per-test log to the report. */
|
|
80
|
+
attach: AttachPolicy;
|
|
81
|
+
}
|
|
82
|
+
export declare const levelEnabled: (root: RootLevel, level: LevelName) => boolean;
|
|
83
|
+
/** Explicit env wins, then NO_COLOR/FORCE_COLOR, then TTY/terminal hints, then CI renderers that show ANSI. */
|
|
84
|
+
export declare function detectAnsiSupport(env?: NodeJS.ProcessEnv, isTTY?: boolean): boolean;
|
|
85
|
+
/** Built lazily on first use, so the project config file is read once in every process (every Playwright worker included). */
|
|
86
|
+
export declare const config: () => LogConfig;
|
|
87
|
+
export type LogConfigPatch = Partial<Omit<LogConfig, 'files' | 'suppressContains' | 'suppressMethodPrefixes' | 'includeOnlyPrefixes'>> & {
|
|
88
|
+
files?: Partial<FileToggles>;
|
|
89
|
+
suppressContains?: Iterable<string>;
|
|
90
|
+
suppressMethodPrefixes?: Iterable<string>;
|
|
91
|
+
includeOnlyPrefixes?: Iterable<string>;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Merge a patch, or mutate in place with a callback. Set-typed fields accept arrays in a patch.
|
|
95
|
+
* Both forms are checked like a config file, but a problem never throws (a logger must not fail a test): an unknown
|
|
96
|
+
* option or a wrong-typed value prints one stderr warning and is skipped, and the rest still applies. For the
|
|
97
|
+
* callback, "skipped" means the bad option is put back to its value from before the call (an unknown one removed).
|
|
98
|
+
*/
|
|
99
|
+
export declare function configure(patch: LogConfigPatch | ((cfg: LogConfig) => void)): LogConfig;
|
|
100
|
+
/** Print a warning to stderr once per process (reset by resetConfig()). Internal: used for misuse that must not throw. */
|
|
101
|
+
export declare function warnOnce(msg: string): void;
|
|
102
|
+
/** Tells the reader where to raise infoLogsCharLimit, based on which layer set the active value. */
|
|
103
|
+
export declare function infoLimitHint(): string;
|
|
104
|
+
/** Types a logger.config.* file. Returns its argument unchanged; the type is exactly LogConfigPatch. */
|
|
105
|
+
export declare function defineConfig(patch: LogConfigPatch): LogConfigPatch;
|
|
106
|
+
export declare function defineConfig(fn: (config: LogConfig) => LogConfigPatch): (config: LogConfig) => LogConfigPatch;
|
|
107
|
+
/** Restore defaults and re-read env and the config file. Mainly for tests. */
|
|
108
|
+
export declare function resetConfig(): LogConfig;
|
|
109
|
+
export declare const enableAnsi: () => void;
|
|
110
|
+
export declare const disableAnsi: () => void;
|
|
111
|
+
export declare const isAnsiEnabled: () => boolean;
|
|
112
|
+
export declare const enableFg: () => void;
|
|
113
|
+
export declare const disableFg: () => void;
|
|
114
|
+
export declare const isFgEnabled: () => boolean;
|
|
115
|
+
export declare const enableBg: () => void;
|
|
116
|
+
export declare const disableBg: () => void;
|
|
117
|
+
export declare const isBgEnabled: () => boolean;
|
|
118
|
+
export declare const enableCallerColor: () => void;
|
|
119
|
+
export declare const disableCallerColor: () => void;
|
|
120
|
+
export declare const isCallerColorEnabled: () => boolean;
|
|
121
|
+
export declare const isDebugEnabled: () => boolean;
|
|
122
|
+
export declare function includeOnlyPackages(...prefixes: string[]): void;
|
|
123
|
+
export declare function suppressClassContains(...substrings: string[]): void;
|
|
124
|
+
export declare function suppressMethodPrefix(...prefixes: string[]): void;
|
|
125
|
+
export declare const clearIncludes: () => void;
|
|
126
|
+
export declare const LINE_BREAKS: RegExp;
|
|
127
|
+
export declare const LINE_BREAKS_NO_G: RegExp;
|
|
128
|
+
export declare function truncateCell(s: unknown): string;
|
|
129
|
+
/** Set a table cell limit (min 4) and enable it. */
|
|
130
|
+
export declare function setTableCellLimit(limit: number): void;
|
|
131
|
+
export declare const disableTableCellLimit: () => void;
|
|
132
|
+
export declare function formatTs(cfg: LogConfig, d: Date): string;
|
|
133
|
+
/**
|
|
134
|
+
* Set VOID_RUN_ID / VOID_RUN_DATE if absent so every Playwright worker (which inherits the runner's env)
|
|
135
|
+
* shares one run id. Call from globalSetup. Idempotent.
|
|
136
|
+
*/
|
|
137
|
+
export declare function initRun(): {
|
|
138
|
+
runId: string;
|
|
139
|
+
runDate: string;
|
|
140
|
+
};
|
|
141
|
+
export declare function getRun(): {
|
|
142
|
+
runId: string;
|
|
143
|
+
runDate: string;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* True in a Playwright worker whose runner never called initRun(). Each such worker falls back to its own pid-based
|
|
147
|
+
* run id, so its files are split from its siblings' and retention would see their live files as an older run.
|
|
148
|
+
*/
|
|
149
|
+
export declare function runIdMissing(env?: NodeJS.ProcessEnv): boolean;
|
|
150
|
+
/** Worker label for the thread column: w<TEST_WORKER_INDEX> under Playwright, else "main". */
|
|
151
|
+
export declare function workerLabel(env?: NodeJS.ProcessEnv): string;
|
|
152
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|