xiaotime 0.5.0 → 0.5.3
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/dist/__tests__/ansi_tags.test.d.ts +9 -0
- package/dist/__tests__/ansi_tags.test.d.ts.map +1 -0
- package/dist/__tests__/ansi_tags.test.js +58 -0
- package/dist/__tests__/ansi_tags.test.js.map +1 -0
- package/dist/__tests__/paste_transform_submit.test.d.ts +2 -0
- package/dist/__tests__/paste_transform_submit.test.d.ts.map +1 -0
- package/dist/__tests__/paste_transform_submit.test.js +74 -0
- package/dist/__tests__/paste_transform_submit.test.js.map +1 -0
- package/dist/__tests__/session_match.test.d.ts +10 -0
- package/dist/__tests__/session_match.test.d.ts.map +1 -0
- package/dist/__tests__/session_match.test.js +55 -0
- package/dist/__tests__/session_match.test.js.map +1 -0
- package/dist/__tests__/tools.test.js +165 -0
- package/dist/__tests__/tools.test.js.map +1 -1
- package/dist/__tests__/ui_state_listener_lifecycle.test.d.ts +2 -0
- package/dist/__tests__/ui_state_listener_lifecycle.test.d.ts.map +1 -0
- package/dist/__tests__/ui_state_listener_lifecycle.test.js +152 -0
- package/dist/__tests__/ui_state_listener_lifecycle.test.js.map +1 -0
- package/dist/ansi_tags.d.ts +20 -0
- package/dist/ansi_tags.d.ts.map +1 -0
- package/dist/ansi_tags.js +38 -0
- package/dist/ansi_tags.js.map +1 -0
- package/dist/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/dist/display.d.ts +53 -22
- package/dist/display.d.ts.map +1 -1
- package/dist/display.js +773 -47
- package/dist/display.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -3
- package/dist/index.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +5 -2
- package/dist/session.js.map +1 -1
- package/dist/session_match.d.ts +19 -0
- package/dist/session_match.d.ts.map +1 -0
- package/dist/session_match.js +9 -0
- package/dist/session_match.js.map +1 -0
- package/dist/sidebar.d.ts +84 -0
- package/dist/sidebar.d.ts.map +1 -0
- package/dist/sidebar.js +310 -0
- package/dist/sidebar.js.map +1 -0
- package/dist/tools.d.ts +4 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +64 -49
- package/dist/tools.js.map +1 -1
- package/dist/ui_state.d.ts +41 -87
- package/dist/ui_state.d.ts.map +1 -1
- package/dist/ui_state.js +216 -162
- package/dist/ui_state.js.map +1 -1
- package/dist/ws.d.ts +10 -14
- package/dist/ws.d.ts.map +1 -1
- package/dist/ws.js +236 -119
- package/dist/ws.js.map +1 -1
- package/package.json +10 -5
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests for the ANSI → blessed {tags} converter.
|
|
3
|
+
*
|
|
4
|
+
* SPRINT-CLI-GRANDMA-UX (#8191 CodeReview follow-up):
|
|
5
|
+
* - Pins the supported chalk palette mapping and asserts unrecognized escape
|
|
6
|
+
* runs are stripped (never leaked as raw bytes into the blessed buffer).
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=ansi_tags.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ansi_tags.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/ansi_tags.test.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Tests for the ANSI → blessed {tags} converter.
|
|
4
|
+
*
|
|
5
|
+
* SPRINT-CLI-GRANDMA-UX (#8191 CodeReview follow-up):
|
|
6
|
+
* - Pins the supported chalk palette mapping and asserts unrecognized escape
|
|
7
|
+
* runs are stripped (never leaked as raw bytes into the blessed buffer).
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const vitest_1 = require("vitest");
|
|
11
|
+
const ansi_tags_js_1 = require("../ansi_tags.js");
|
|
12
|
+
(0, vitest_1.describe)("ansiToBlessedTags", () => {
|
|
13
|
+
(0, vitest_1.test)("translates the SGR reset", () => {
|
|
14
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("hi\x1b[0m")).toBe("hi{/}");
|
|
15
|
+
});
|
|
16
|
+
(0, vitest_1.test)("translates bold and italic", () => {
|
|
17
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[1mb\x1b[0m")).toBe("{bold}b{/}");
|
|
18
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[3mi\x1b[0m")).toBe("{italic}i{/}");
|
|
19
|
+
});
|
|
20
|
+
(0, vitest_1.test)("translates dim to the muted grey", () => {
|
|
21
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[2mdim")).toBe("{#45475a-fg}dim");
|
|
22
|
+
});
|
|
23
|
+
(0, vitest_1.test)("translates the brand red truecolour", () => {
|
|
24
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[38;2;192;56;75mX\x1b[0m")).toBe("{#c0384b-fg}X{/}");
|
|
25
|
+
});
|
|
26
|
+
(0, vitest_1.test)("translates each supported truecolour foreground", () => {
|
|
27
|
+
const cases = [
|
|
28
|
+
["\x1b[38;2;137;180;250m", "{#89b4fa-fg}"],
|
|
29
|
+
["\x1b[38;2;166;227;161m", "{#a6e3a1-fg}"],
|
|
30
|
+
["\x1b[38;2;243;139;168m", "{#f38ba8-fg}"],
|
|
31
|
+
["\x1b[38;2;148;226;213m", "{#94e2d5-fg}"],
|
|
32
|
+
["\x1b[38;2;249;226;175m", "{#f9e2af-fg}"],
|
|
33
|
+
["\x1b[38;2;205;214;244m", "{#cdd6f4-fg}"],
|
|
34
|
+
["\x1b[38;2;108;112;134m", "{#6c7086-fg}"],
|
|
35
|
+
];
|
|
36
|
+
for (const [ansi, tag] of cases) {
|
|
37
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)(`${ansi}z`)).toBe(`${tag}z`);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
(0, vitest_1.test)("strips unrecognized SGR codes rather than leaking raw escapes", () => {
|
|
41
|
+
// \x1b[22m (no-bold) is not mapped — it must be removed, not passed through.
|
|
42
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("a\x1b[22mb")).toBe("ab");
|
|
43
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[38;5;200mq")).toBe("q");
|
|
44
|
+
});
|
|
45
|
+
(0, vitest_1.test)("leaves plain text untouched", () => {
|
|
46
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("just words")).toBe("just words");
|
|
47
|
+
});
|
|
48
|
+
(0, vitest_1.test)("pins the current behavior for nested/overlapping sequences", () => {
|
|
49
|
+
// The converter does NOT model nesting (documented in ansi_tags.ts) — each
|
|
50
|
+
// recognized code maps independently. This locks in the observed output so
|
|
51
|
+
// a future change to the mapping order surfaces in review.
|
|
52
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[1m\x1b[3mbold+italic\x1b[0m")).toBe("{bold}{italic}bold+italic{/}");
|
|
53
|
+
// Partial reset (\x1b[22m no-bold) is unrecognized → stripped, leaving the
|
|
54
|
+
// opening {bold} tag unclosed. This is a known limitation, pinned here.
|
|
55
|
+
(0, vitest_1.expect)((0, ansi_tags_js_1.ansiToBlessedTags)("\x1b[1mbold\x1b[22mplain")).toBe("{bold}boldplain");
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=ansi_tags.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ansi_tags.test.js","sourceRoot":"","sources":["../../src/__tests__/ansi_tags.test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,mCAAgD;AAChD,kDAAoD;AAEpD,IAAA,iBAAQ,EAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAA,aAAI,EAAC,0BAA0B,EAAE,GAAG,EAAE;QACpC,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4BAA4B,EAAE,GAAG,EAAE;QACtC,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,kCAAkC,EAAE,GAAG,EAAE;QAC5C,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,qCAAqC,EAAE,GAAG,EAAE;QAC/C,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,8BAA8B,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,MAAM,KAAK,GAA4B;YACrC,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;YAC1C,CAAC,wBAAwB,EAAE,cAAc,CAAC;SAC3C,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;YAChC,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,+DAA+D,EAAE,GAAG,EAAE;QACzE,6EAA6E;QAC7E,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6BAA6B,EAAE,GAAG,EAAE;QACvC,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4DAA4D,EAAE,GAAG,EAAE;QACtE,2EAA2E;QAC3E,2EAA2E;QAC3E,2DAA2D;QAC3D,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,kCAAkC,CAAC,CAAC,CAAC,IAAI,CAChE,8BAA8B,CAC/B,CAAC;QACF,2EAA2E;QAC3E,wEAAwE;QACxE,IAAA,eAAM,EAAC,IAAA,gCAAiB,EAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paste_transform_submit.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/paste_transform_submit.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/**
|
|
4
|
+
* PasteTransform submission + paste-collapsing tests.
|
|
5
|
+
*
|
|
6
|
+
* SPRINT-CLI-INPUT-ENTER-SUBMIT-FIX:
|
|
7
|
+
* Guards the regression where a deliberate Enter (a lone CR/LF chunk) was
|
|
8
|
+
* routed into the rapid-paste buffer and collapsed to a space by
|
|
9
|
+
* _scheduleRapidFlush. readline never saw a line terminator, so NO prompt
|
|
10
|
+
* ever submitted — every message in `xiaotime dev` hung at "ready".
|
|
11
|
+
*
|
|
12
|
+
* The contract pinned here:
|
|
13
|
+
* - a bare Enter passes through unchanged → readline gets a line terminator
|
|
14
|
+
* - a multi-line paste (one chunk or a fast burst) still collapses to a
|
|
15
|
+
* single line with no embedded terminator
|
|
16
|
+
*/
|
|
17
|
+
const vitest_1 = require("vitest");
|
|
18
|
+
const ui_state_js_1 = require("../ui_state.js");
|
|
19
|
+
/** Write each chunk into a fresh PasteTransform and resolve with everything
|
|
20
|
+
* its `sink` emitted, after the rapid-flush idle window (60ms) has elapsed. */
|
|
21
|
+
function feed(chunks, waitMs = 150) {
|
|
22
|
+
return new Promise((resolve) => {
|
|
23
|
+
const pt = new ui_state_js_1.PasteTransform();
|
|
24
|
+
let out = "";
|
|
25
|
+
pt.sink.on("data", (b) => {
|
|
26
|
+
out += b.toString();
|
|
27
|
+
});
|
|
28
|
+
for (const c of chunks)
|
|
29
|
+
pt.write(Buffer.from(c));
|
|
30
|
+
setTimeout(() => resolve(out), waitMs);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
const hasTerminator = (s) => /[\r\n]/.test(s);
|
|
34
|
+
(0, vitest_1.describe)("PasteTransform — Enter submits, pastes collapse", () => {
|
|
35
|
+
(0, vitest_1.test)("a typed line followed by Enter passes a line terminator through", async () => {
|
|
36
|
+
const out = await feed(["h", "e", "y", "\r"]);
|
|
37
|
+
(0, vitest_1.expect)(out).toBe("hey\r");
|
|
38
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(true); // readline would emit `line` → submit
|
|
39
|
+
});
|
|
40
|
+
(0, vitest_1.test)("a lone Enter on an empty prompt still submits", async () => {
|
|
41
|
+
const out = await feed(["\r"]);
|
|
42
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(true);
|
|
43
|
+
});
|
|
44
|
+
(0, vitest_1.test)("a bare LF (\\n) also passes through", async () => {
|
|
45
|
+
const out = await feed(["\n"]);
|
|
46
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(true);
|
|
47
|
+
});
|
|
48
|
+
(0, vitest_1.test)("a multi-line paste in one chunk collapses to a single line", async () => {
|
|
49
|
+
const out = await feed(["line1\nline2\n"]);
|
|
50
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(false); // newlines replaced with spaces
|
|
51
|
+
(0, vitest_1.expect)(out).toBe("line1 line2 ");
|
|
52
|
+
});
|
|
53
|
+
(0, vitest_1.test)("a fast-typed line + Enter batched into ONE chunk submits on the first Enter", async () => {
|
|
54
|
+
// SSH clients (Termius/mosh) batch the line and its trailing Enter into a
|
|
55
|
+
// single read. The trailing \r must survive as a line terminator, or the
|
|
56
|
+
// first Enter does nothing and you have to press Enter twice.
|
|
57
|
+
const out = await feed(["hey junior\r"]);
|
|
58
|
+
(0, vitest_1.expect)(out).toBe("hey junior\r");
|
|
59
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(true);
|
|
60
|
+
});
|
|
61
|
+
(0, vitest_1.test)("a multi-line paste WITH a trailing newline still does NOT submit", async () => {
|
|
62
|
+
// An internal newline marks a genuine paste — it must collapse for review,
|
|
63
|
+
// never auto-submit, even though it ends in a newline.
|
|
64
|
+
const out = await feed(["alpha\nbeta\n"]);
|
|
65
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(false);
|
|
66
|
+
(0, vitest_1.expect)(out).toBe("alpha beta ");
|
|
67
|
+
});
|
|
68
|
+
(0, vitest_1.test)("plain typed characters with no Enter pass straight through", async () => {
|
|
69
|
+
const out = await feed(["h", "i"]);
|
|
70
|
+
(0, vitest_1.expect)(out).toBe("hi");
|
|
71
|
+
(0, vitest_1.expect)(hasTerminator(out)).toBe(false); // nothing submits until Enter
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
//# sourceMappingURL=paste_transform_submit.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paste_transform_submit.test.js","sourceRoot":"","sources":["../../src/__tests__/paste_transform_submit.test.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;GAaG;AACH,mCAAgD;AAChD,gDAAgD;AAEhD;+EAC+E;AAC/E,SAAS,IAAI,CAAC,MAAgB,EAAE,MAAM,GAAG,GAAG;IAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,EAAE,GAAG,IAAI,4BAAc,EAAE,CAAC;QAChC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE;YAC/B,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,MAAM;YAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEtD,IAAA,iBAAQ,EAAC,iDAAiD,EAAE,GAAG,EAAE;IAC/D,IAAA,aAAI,EAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,sCAAsC;IAC/E,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACrD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/B,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gCAAgC;QACxE,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC7F,0EAA0E;QAC1E,yEAAyE;QACzE,8DAA8D;QAC9D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;QACzC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACjC,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAClF,2EAA2E;QAC3E,uDAAuD;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1C,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACnC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,IAAA,eAAM,EAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,8BAA8B;IACxE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Precedence tests for the `xiaotime replay` session matcher.
|
|
3
|
+
*
|
|
4
|
+
* SPRINT-CLI-GRANDMA-UX (#8191 CodeReview follow-up):
|
|
5
|
+
* - Locks the exact-name → exact-id → prefix-id ordering so the original
|
|
6
|
+
* bug (a session name that is a prefix of another session's id shadowing
|
|
7
|
+
* the exact-id match) can't regress.
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=session_match.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session_match.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/session_match.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Precedence tests for the `xiaotime replay` session matcher.
|
|
4
|
+
*
|
|
5
|
+
* SPRINT-CLI-GRANDMA-UX (#8191 CodeReview follow-up):
|
|
6
|
+
* - Locks the exact-name → exact-id → prefix-id ordering so the original
|
|
7
|
+
* bug (a session name that is a prefix of another session's id shadowing
|
|
8
|
+
* the exact-id match) can't regress.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
const vitest_1 = require("vitest");
|
|
12
|
+
const session_match_js_1 = require("../session_match.js");
|
|
13
|
+
const mk = (id, session_name) => ({
|
|
14
|
+
id,
|
|
15
|
+
session_name,
|
|
16
|
+
});
|
|
17
|
+
(0, vitest_1.describe)("matchSession", () => {
|
|
18
|
+
(0, vitest_1.test)("matches by exact session_name", () => {
|
|
19
|
+
const sessions = [mk("abc123", "morning"), mk("def456", "evening")];
|
|
20
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "evening")?.id).toBe("def456");
|
|
21
|
+
});
|
|
22
|
+
(0, vitest_1.test)("matches by exact id", () => {
|
|
23
|
+
const sessions = [mk("abc123", "morning"), mk("def456", "evening")];
|
|
24
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "def456")?.session_name).toBe("evening");
|
|
25
|
+
});
|
|
26
|
+
(0, vitest_1.test)("matches by id prefix when no exact match exists", () => {
|
|
27
|
+
const sessions = [mk("abc123def", "morning"), mk("xyz789", "evening")];
|
|
28
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "abc")?.id).toBe("abc123def");
|
|
29
|
+
});
|
|
30
|
+
(0, vitest_1.test)("exact name wins over an id prefix collision", () => {
|
|
31
|
+
// "abc" is BOTH a real session name AND a prefix of another session's id.
|
|
32
|
+
// Exact-name must win — the original ordering returned the id-prefix match.
|
|
33
|
+
const sessions = [mk("zzz000", "abc"), mk("abc123", "other")];
|
|
34
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "abc")?.id).toBe("zzz000");
|
|
35
|
+
});
|
|
36
|
+
(0, vitest_1.test)("exact id wins over an id-prefix match (the regression)", () => {
|
|
37
|
+
// "abc" exactly identifies one session and is a prefix of another. The
|
|
38
|
+
// exact id must win — the pre-fix ordering put prefix before exact id.
|
|
39
|
+
const sessions = [mk("abc123", "longer"), mk("abc", "exact")];
|
|
40
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "abc")?.session_name).toBe("exact");
|
|
41
|
+
});
|
|
42
|
+
(0, vitest_1.test)("returns undefined when nothing matches", () => {
|
|
43
|
+
const sessions = [mk("abc123", "morning")];
|
|
44
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "nope")).toBeUndefined();
|
|
45
|
+
});
|
|
46
|
+
(0, vitest_1.test)("returns undefined for an empty session list", () => {
|
|
47
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)([], "anything")).toBeUndefined();
|
|
48
|
+
});
|
|
49
|
+
(0, vitest_1.test)("does not match a null session_name against an empty-ish query", () => {
|
|
50
|
+
const sessions = [mk("abc123", null)];
|
|
51
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)(sessions, "")?.id).toBe("abc123"); // "" is a prefix of every id
|
|
52
|
+
(0, vitest_1.expect)((0, session_match_js_1.matchSession)([mk("abc123", null)], "morning")).toBeUndefined();
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=session_match.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session_match.test.js","sourceRoot":"","sources":["../../src/__tests__/session_match.test.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAEH,mCAAgD;AAChD,0DAA0E;AAE1E,MAAM,EAAE,GAAG,CAAC,EAAU,EAAE,YAA2B,EAAyB,EAAE,CAAC,CAAC;IAC9E,EAAE;IACF,YAAY;CACb,CAAC,CAAC;AAEH,IAAA,iBAAQ,EAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,IAAA,aAAI,EAAC,+BAA+B,EAAE,GAAG,EAAE;QACzC,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,qBAAqB,EAAE,GAAG,EAAE;QAC/B,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QACvE,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,0EAA0E;QAC1E,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wDAAwD,EAAE,GAAG,EAAE;QAClE,uEAAuE;QACvE,uEAAuE;QACvE,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QAC9D,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,wCAAwC,EAAE,GAAG,EAAE;QAClD,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAI,EAAC,+DAA+D,EAAE,GAAG,EAAE;QACzE,MAAM,QAAQ,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QACtC,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,6BAA6B;QACpF,IAAA,eAAM,EAAC,IAAA,+BAAY,EAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -378,4 +378,169 @@ let origSettingsEnv;
|
|
|
378
378
|
}
|
|
379
379
|
});
|
|
380
380
|
});
|
|
381
|
+
// SPRINT-CLI-INPUT-AND-TOOL-HARDENING-1 (#7299) PR1 — list_directory
|
|
382
|
+
// entry cap + truncation marker. Pre-cap, calling on a 298k-entry
|
|
383
|
+
// directory built a multi-MB tool result that the downstream POST
|
|
384
|
+
// rejected as a bare `Error:` line. The cap defaults to 500 with a
|
|
385
|
+
// per-CLI env override (XIAOTIME_LIST_DIRECTORY_MAX); recursive walks
|
|
386
|
+
// early-exit at cap+1 so we don't enumerate huge trees.
|
|
387
|
+
(0, vitest_1.describe)("list_directory entry cap (ISC-7299-001, ISC-7299-002)", () => {
|
|
388
|
+
let origMaxEnv;
|
|
389
|
+
(0, vitest_1.beforeEach)(() => {
|
|
390
|
+
origMaxEnv = process.env.XIAOTIME_LIST_DIRECTORY_MAX;
|
|
391
|
+
});
|
|
392
|
+
(0, vitest_1.afterEach)(() => {
|
|
393
|
+
if (origMaxEnv === undefined) {
|
|
394
|
+
delete process.env.XIAOTIME_LIST_DIRECTORY_MAX;
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = origMaxEnv;
|
|
398
|
+
}
|
|
399
|
+
});
|
|
400
|
+
function _seedEntries(dir, count, ext = ".txt") {
|
|
401
|
+
for (let i = 0; i < count; i++) {
|
|
402
|
+
fs.writeFileSync(path.join(dir, `f${i}${ext}`), String(i));
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
(0, vitest_1.test)("under-cap directory returns the full list, no marker", async () => {
|
|
406
|
+
// 50 entries, cap default 500 — full content, no truncation note.
|
|
407
|
+
_seedEntries(tmpDir, 50);
|
|
408
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
409
|
+
try {
|
|
410
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
411
|
+
tool_use_id: "t-cap-under",
|
|
412
|
+
name: "list_directory",
|
|
413
|
+
input: { path: tmpDir },
|
|
414
|
+
}, ui);
|
|
415
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
416
|
+
(0, vitest_1.expect)(result.content).not.toContain("truncated");
|
|
417
|
+
// 50 entries → 50 newline-separated lines, no marker line.
|
|
418
|
+
const lines = result.content.split("\n").filter((l) => l.length > 0);
|
|
419
|
+
(0, vitest_1.expect)(lines).toHaveLength(50);
|
|
420
|
+
}
|
|
421
|
+
finally {
|
|
422
|
+
ui.getRl().close();
|
|
423
|
+
}
|
|
424
|
+
});
|
|
425
|
+
(0, vitest_1.test)("over-cap directory returns capped result + truncation marker", async () => {
|
|
426
|
+
// Lower the cap so the test stays fast — 600 entries with cap=100
|
|
427
|
+
// exercises the same code path as 300k entries with cap=500 but
|
|
428
|
+
// without the seeding cost.
|
|
429
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = "100";
|
|
430
|
+
_seedEntries(tmpDir, 600);
|
|
431
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
432
|
+
try {
|
|
433
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
434
|
+
tool_use_id: "t-cap-over",
|
|
435
|
+
name: "list_directory",
|
|
436
|
+
input: { path: tmpDir },
|
|
437
|
+
}, ui);
|
|
438
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
439
|
+
(0, vitest_1.expect)(result.content).toContain("truncated to 100");
|
|
440
|
+
(0, vitest_1.expect)(result.content).toContain("narrow with a pattern");
|
|
441
|
+
// 100 entries + 1 marker line = 101 non-empty lines.
|
|
442
|
+
const lines = result.content.split("\n").filter((l) => l.length > 0);
|
|
443
|
+
(0, vitest_1.expect)(lines).toHaveLength(101);
|
|
444
|
+
}
|
|
445
|
+
finally {
|
|
446
|
+
ui.getRl().close();
|
|
447
|
+
}
|
|
448
|
+
});
|
|
449
|
+
(0, vitest_1.test)("pattern filter applies BEFORE the cap (matching entries cap correctly)", async () => {
|
|
450
|
+
// 300 .py files + 300 .txt files; pattern *.py → 300 matches, cap
|
|
451
|
+
// truncates to 50. Pre-fix bug shape would have been "cap to 50
|
|
452
|
+
// raw, THEN filter by pattern" producing fewer (or zero) .py
|
|
453
|
+
// entries in the result.
|
|
454
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = "50";
|
|
455
|
+
_seedEntries(tmpDir, 300, ".py");
|
|
456
|
+
_seedEntries(tmpDir, 300, ".txt");
|
|
457
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
458
|
+
try {
|
|
459
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
460
|
+
tool_use_id: "t-cap-pattern",
|
|
461
|
+
name: "list_directory",
|
|
462
|
+
input: { path: tmpDir, pattern: "*.py" },
|
|
463
|
+
}, ui);
|
|
464
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
465
|
+
(0, vitest_1.expect)(result.content).toContain("truncated to 50");
|
|
466
|
+
const lines = result.content.split("\n").filter((l) => l.length > 0 && !l.startsWith("..."));
|
|
467
|
+
(0, vitest_1.expect)(lines).toHaveLength(50);
|
|
468
|
+
// Every retained entry MUST match the pattern.
|
|
469
|
+
for (const line of lines) {
|
|
470
|
+
(0, vitest_1.expect)(line).toMatch(/\.py$/);
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
finally {
|
|
474
|
+
ui.getRl().close();
|
|
475
|
+
}
|
|
476
|
+
});
|
|
477
|
+
(0, vitest_1.test)("recursive walk early-exits at cap (no full-tree enumeration)", async () => {
|
|
478
|
+
// Build a 3-level nested structure with 100 files per leaf. With
|
|
479
|
+
// cap=30 the walk must return only 30 entries — we assert this
|
|
480
|
+
// both via the result + via spying on fs.readdirSync to confirm
|
|
481
|
+
// we did NOT enumerate every directory.
|
|
482
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = "30";
|
|
483
|
+
const sub1 = path.join(tmpDir, "sub1");
|
|
484
|
+
const sub2 = path.join(sub1, "sub2");
|
|
485
|
+
fs.mkdirSync(sub2, { recursive: true });
|
|
486
|
+
_seedEntries(tmpDir, 100, ".log");
|
|
487
|
+
_seedEntries(sub1, 100, ".log");
|
|
488
|
+
_seedEntries(sub2, 100, ".log");
|
|
489
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
490
|
+
try {
|
|
491
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
492
|
+
tool_use_id: "t-cap-recursive",
|
|
493
|
+
name: "list_directory",
|
|
494
|
+
input: { path: tmpDir, recursive: true },
|
|
495
|
+
}, ui);
|
|
496
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
497
|
+
(0, vitest_1.expect)(result.content).toContain("truncated to 30");
|
|
498
|
+
const lines = result.content.split("\n").filter((l) => l.length > 0 && !l.startsWith("..."));
|
|
499
|
+
(0, vitest_1.expect)(lines).toHaveLength(30);
|
|
500
|
+
}
|
|
501
|
+
finally {
|
|
502
|
+
ui.getRl().close();
|
|
503
|
+
}
|
|
504
|
+
});
|
|
505
|
+
(0, vitest_1.test)("XIAOTIME_LIST_DIRECTORY_MAX env override is honored", async () => {
|
|
506
|
+
// 200 entries, override cap to 25 — result should have 25 + marker.
|
|
507
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = "25";
|
|
508
|
+
_seedEntries(tmpDir, 200);
|
|
509
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
510
|
+
try {
|
|
511
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
512
|
+
tool_use_id: "t-cap-env",
|
|
513
|
+
name: "list_directory",
|
|
514
|
+
input: { path: tmpDir },
|
|
515
|
+
}, ui);
|
|
516
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
517
|
+
(0, vitest_1.expect)(result.content).toContain("truncated to 25");
|
|
518
|
+
const lines = result.content.split("\n").filter((l) => l.length > 0 && !l.startsWith("..."));
|
|
519
|
+
(0, vitest_1.expect)(lines).toHaveLength(25);
|
|
520
|
+
}
|
|
521
|
+
finally {
|
|
522
|
+
ui.getRl().close();
|
|
523
|
+
}
|
|
524
|
+
});
|
|
525
|
+
(0, vitest_1.test)("malformed XIAOTIME_LIST_DIRECTORY_MAX falls back to default 500", async () => {
|
|
526
|
+
// Defensive: garbage env value, non-positive, etc. shouldn't crash;
|
|
527
|
+
// should fall back to 500. Test with a sub-default count so the
|
|
528
|
+
// fallback yields the full list with no truncation.
|
|
529
|
+
process.env.XIAOTIME_LIST_DIRECTORY_MAX = "not-a-number";
|
|
530
|
+
_seedEntries(tmpDir, 50);
|
|
531
|
+
const ui = new ui_state_js_1.SessionUI();
|
|
532
|
+
try {
|
|
533
|
+
const result = await (0, tools_js_1.executeTool)({
|
|
534
|
+
tool_use_id: "t-cap-bad-env",
|
|
535
|
+
name: "list_directory",
|
|
536
|
+
input: { path: tmpDir },
|
|
537
|
+
}, ui);
|
|
538
|
+
(0, vitest_1.expect)(result.is_error).toBe(false);
|
|
539
|
+
(0, vitest_1.expect)(result.content).not.toContain("truncated");
|
|
540
|
+
}
|
|
541
|
+
finally {
|
|
542
|
+
ui.getRl().close();
|
|
543
|
+
}
|
|
544
|
+
});
|
|
545
|
+
});
|
|
381
546
|
//# sourceMappingURL=tools.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/__tests__/tools.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/__tests__/tools.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui_state_listener_lifecycle.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/ui_state_listener_lifecycle.test.ts"],"names":[],"mappings":""}
|