@flanksource/clicky-ui 0.3.48 → 0.3.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/data/DataTable.cjs +18 -8
  2. package/dist/data/DataTable.cjs.map +1 -1
  3. package/dist/data/DataTable.d.ts +4 -0
  4. package/dist/data/DataTable.d.ts.map +1 -1
  5. package/dist/data/DataTable.js +18 -8
  6. package/dist/data/DataTable.js.map +1 -1
  7. package/dist/data/TaskManager.cjs +183 -159
  8. package/dist/data/TaskManager.cjs.map +1 -1
  9. package/dist/data/TaskManager.d.ts +3 -1
  10. package/dist/data/TaskManager.d.ts.map +1 -1
  11. package/dist/data/TaskManager.js +185 -161
  12. package/dist/data/TaskManager.js.map +1 -1
  13. package/dist/data/TaskManagerButton.cjs +1 -0
  14. package/dist/data/TaskManagerButton.cjs.map +1 -1
  15. package/dist/data/TaskManagerButton.js +1 -0
  16. package/dist/data/TaskManagerButton.js.map +1 -1
  17. package/dist/data/TaskProgress.cjs +13 -7
  18. package/dist/data/TaskProgress.cjs.map +1 -1
  19. package/dist/data/TaskProgress.d.ts +3 -1
  20. package/dist/data/TaskProgress.d.ts.map +1 -1
  21. package/dist/data/TaskProgress.js +13 -7
  22. package/dist/data/TaskProgress.js.map +1 -1
  23. package/dist/data/traces/ProcessTraceTree.cjs +93 -0
  24. package/dist/data/traces/ProcessTraceTree.cjs.map +1 -0
  25. package/dist/data/traces/ProcessTraceTree.d.ts +24 -0
  26. package/dist/data/traces/ProcessTraceTree.d.ts.map +1 -0
  27. package/dist/data/traces/ProcessTraceTree.js +93 -0
  28. package/dist/data/traces/ProcessTraceTree.js.map +1 -0
  29. package/dist/data/traces/Sparkline.cjs +23 -0
  30. package/dist/data/traces/Sparkline.cjs.map +1 -0
  31. package/dist/data/traces/Sparkline.d.ts +13 -0
  32. package/dist/data/traces/Sparkline.d.ts.map +1 -0
  33. package/dist/data/traces/Sparkline.js +23 -0
  34. package/dist/data/traces/Sparkline.js.map +1 -0
  35. package/dist/data/traces/SqlTraceTable.cjs +104 -0
  36. package/dist/data/traces/SqlTraceTable.cjs.map +1 -0
  37. package/dist/data/traces/SqlTraceTable.d.ts +19 -0
  38. package/dist/data/traces/SqlTraceTable.d.ts.map +1 -0
  39. package/dist/data/traces/SqlTraceTable.js +104 -0
  40. package/dist/data/traces/SqlTraceTable.js.map +1 -0
  41. package/dist/data/traces/TerminalCastPlayer.cjs +162 -0
  42. package/dist/data/traces/TerminalCastPlayer.cjs.map +1 -0
  43. package/dist/data/traces/TerminalCastPlayer.js +162 -0
  44. package/dist/data/traces/TerminalCastPlayer.js.map +1 -0
  45. package/dist/data/traces/TraceHarView.cjs +15 -0
  46. package/dist/data/traces/TraceHarView.cjs.map +1 -0
  47. package/dist/data/traces/TraceHarView.js +15 -0
  48. package/dist/data/traces/TraceHarView.js.map +1 -0
  49. package/dist/data/traces/TraceView.cjs +54 -0
  50. package/dist/data/traces/TraceView.cjs.map +1 -0
  51. package/dist/data/traces/TraceView.d.ts +18 -0
  52. package/dist/data/traces/TraceView.d.ts.map +1 -0
  53. package/dist/data/traces/TraceView.js +54 -0
  54. package/dist/data/traces/TraceView.js.map +1 -0
  55. package/dist/data/traces/cast.cjs +81 -0
  56. package/dist/data/traces/cast.cjs.map +1 -0
  57. package/dist/data/traces/cast.js +81 -0
  58. package/dist/data/traces/cast.js.map +1 -0
  59. package/dist/data/traces/har-adapter.cjs +83 -0
  60. package/dist/data/traces/har-adapter.cjs.map +1 -0
  61. package/dist/data/traces/har-adapter.js +83 -0
  62. package/dist/data/traces/har-adapter.js.map +1 -0
  63. package/dist/data/traces/index.d.ts +12 -0
  64. package/dist/data/traces/index.d.ts.map +1 -0
  65. package/dist/data/traces/process-tree.cjs +53 -0
  66. package/dist/data/traces/process-tree.cjs.map +1 -0
  67. package/dist/data/traces/process-tree.d.ts +21 -0
  68. package/dist/data/traces/process-tree.d.ts.map +1 -0
  69. package/dist/data/traces/process-tree.js +53 -0
  70. package/dist/data/traces/process-tree.js.map +1 -0
  71. package/dist/data/traces/sql-trace.cjs +39 -0
  72. package/dist/data/traces/sql-trace.cjs.map +1 -0
  73. package/dist/data/traces/sql-trace.d.ts +31 -0
  74. package/dist/data/traces/sql-trace.d.ts.map +1 -0
  75. package/dist/data/traces/sql-trace.js +39 -0
  76. package/dist/data/traces/sql-trace.js.map +1 -0
  77. package/dist/data/traces/terminal-screen.cjs +270 -0
  78. package/dist/data/traces/terminal-screen.cjs.map +1 -0
  79. package/dist/data/traces/terminal-screen.js +270 -0
  80. package/dist/data/traces/terminal-screen.js.map +1 -0
  81. package/dist/data/traces/terminal-timeline.cjs +48 -0
  82. package/dist/data/traces/terminal-timeline.cjs.map +1 -0
  83. package/dist/data/traces/terminal-timeline.js +48 -0
  84. package/dist/data/traces/terminal-timeline.js.map +1 -0
  85. package/dist/data/traces/types.d.ts +1 -3
  86. package/dist/data/traces/types.d.ts.map +1 -1
  87. package/dist/data/version-info.cjs +3 -3
  88. package/dist/data/version-info.cjs.map +1 -1
  89. package/dist/data/version-info.js +3 -3
  90. package/dist/data/version-info.js.map +1 -1
  91. package/dist/data.cjs +22 -0
  92. package/dist/data.cjs.map +1 -1
  93. package/dist/data.d.ts +1 -0
  94. package/dist/data.d.ts.map +1 -1
  95. package/dist/data.js +22 -0
  96. package/dist/data.js.map +1 -1
  97. package/dist/index.cjs +22 -0
  98. package/dist/index.cjs.map +1 -1
  99. package/dist/index.js +22 -0
  100. package/dist/index.js.map +1 -1
  101. package/dist/styles.css +1 -1
  102. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-screen.js","sources":["../../../src/data/traces/terminal-screen.ts"],"sourcesContent":["/**\n * A deliberately minimal terminal screen for replaying a `terminal` trace: it\n * settles the sequences a build or test run emits (CR/LF/BS/TAB, cursor moves,\n * erase, SGR colour and weight) into a grid, and serialises the grid back to\n * ANSI text for AnsiHtml. Everything else (OSC, private modes, character sets,\n * backgrounds, 256/truecolour) is consumed and ignored, as AnsiHtml cannot draw\n * it.\n */\n\ntype Cell = { ch: string; sgr: string };\n\ntype SgrState = { bold: boolean; dim: boolean; italic: boolean; underline: boolean; fg: number | null };\n\nexport type TerminalScreen = {\n width: number;\n height: number;\n rows: Cell[][];\n row: number;\n col: number;\n style: SgrState;\n /** `style` serialised as SGR parameters, stored on each cell written. */\n sgr: string;\n saved: { row: number; col: number } | null;\n /** An escape sequence cut off at the end of the last write. */\n pending: string;\n};\n\nconst BLANK: Cell = { ch: \" \", sgr: \"\" };\nconst TAB_STOP = 8;\n/** A sequence this long without a terminator is garbage; its ESC is dropped. */\nconst MAX_PENDING = 4096;\n\nconst clamp = (value: number, min: number, max: number) => Math.min(Math.max(value, min), max);\n\nexport function createScreen(width: number, height: number): TerminalScreen {\n if (!(width > 0) || !(height > 0)) throw new Error(`terminal screen needs a positive size, got ${width}x${height}`);\n return {\n width,\n height,\n rows: Array.from({ length: height }, () => []),\n row: 0,\n col: 0,\n style: { bold: false, dim: false, italic: false, underline: false, fg: null },\n sgr: \"\",\n saved: null,\n pending: \"\",\n };\n}\n\nexport function resizeScreen(screen: TerminalScreen, width: number, height: number): void {\n if (!(width > 0) || !(height > 0)) throw new Error(`terminal screen needs a positive size, got ${width}x${height}`);\n if (height < screen.rows.length) {\n const dropFromTop = Math.max(0, screen.row - height + 1);\n screen.rows.splice(0, dropFromTop);\n screen.row -= dropFromTop;\n screen.rows.length = height;\n }\n while (screen.rows.length < height) screen.rows.push([]);\n for (const row of screen.rows) if (row.length > width) row.length = width;\n screen.width = width;\n screen.height = height;\n screen.row = clamp(screen.row, 0, height - 1);\n screen.col = clamp(screen.col, 0, width - 1);\n}\n\nfunction lineFeed(screen: TerminalScreen): void {\n if (screen.row < screen.height - 1) {\n screen.row++;\n return;\n }\n screen.rows.shift();\n screen.rows.push([]);\n}\n\nfunction putChar(screen: TerminalScreen, ch: string): void {\n if (screen.col >= screen.width) {\n screen.col = 0;\n lineFeed(screen);\n }\n const line = screen.rows[screen.row]!;\n while (line.length < screen.col) line.push(BLANK);\n line[screen.col] = { ch, sgr: screen.sgr };\n screen.col++;\n}\n\nfunction eraseLine(screen: TerminalScreen, mode: number): void {\n const line = screen.rows[screen.row]!;\n if (mode === 0) {\n line.length = Math.min(line.length, screen.col);\n return;\n }\n if (mode === 2) {\n line.length = 0;\n return;\n }\n const end = Math.min(screen.col + 1, screen.width);\n while (line.length < end) line.push(BLANK);\n for (let i = 0; i < end; i++) line[i] = BLANK;\n}\n\nfunction eraseDisplay(screen: TerminalScreen, mode: number): void {\n if (mode === 0) {\n eraseLine(screen, 0);\n for (let r = screen.row + 1; r < screen.height; r++) screen.rows[r] = [];\n } else if (mode === 1) {\n for (let r = 0; r < screen.row; r++) screen.rows[r] = [];\n eraseLine(screen, 1);\n } else {\n for (let r = 0; r < screen.height; r++) screen.rows[r] = [];\n }\n}\n\nfunction applySgr(screen: TerminalScreen, tokens: string[]): void {\n const style = screen.style;\n const codes = tokens.length === 0 ? [\"\"] : tokens;\n for (let i = 0; i < codes.length; i++) {\n const token = codes[i]!;\n if (token.includes(\":\")) continue;\n const code = token === \"\" ? 0 : Number.parseInt(token, 10);\n if (code === 0) {\n style.bold = style.dim = style.italic = style.underline = false;\n style.fg = null;\n } else if (code === 1) style.bold = true;\n else if (code === 2) style.dim = true;\n else if (code === 3) style.italic = true;\n else if (code === 4) style.underline = true;\n else if (code === 22) style.bold = style.dim = false;\n else if (code === 23) style.italic = false;\n else if (code === 24) style.underline = false;\n else if ((code >= 30 && code <= 37) || (code >= 90 && code <= 97)) style.fg = code;\n else if (code === 39) style.fg = null;\n else if (code === 38 || code === 48 || code === 58) {\n const mode = codes[i + 1];\n i += mode === \"5\" ? 2 : mode === \"2\" ? 4 : 0;\n }\n }\n screen.sgr = [\n style.bold ? \"1\" : \"\",\n style.dim ? \"2\" : \"\",\n style.italic ? \"3\" : \"\",\n style.underline ? \"4\" : \"\",\n style.fg === null ? \"\" : String(style.fg),\n ]\n .filter(Boolean)\n .join(\";\");\n}\n\nfunction csi(screen: TerminalScreen, params: string, final: string): void {\n if (/^[?>=<!]/.test(params)) return;\n const tokens = params === \"\" ? [] : params.split(\";\");\n const arg = (index: number, fallback: number): number => {\n const value = Number.parseInt(tokens[index] ?? \"\", 10);\n return Number.isNaN(value) || value === 0 ? fallback : value;\n };\n const mode = Number.parseInt(tokens[0] ?? \"0\", 10) || 0;\n const line = screen.rows[screen.row]!;\n switch (final) {\n case \"m\":\n applySgr(screen, tokens);\n break;\n case \"A\":\n screen.row = Math.max(0, screen.row - arg(0, 1));\n break;\n case \"B\":\n screen.row = Math.min(screen.height - 1, screen.row + arg(0, 1));\n break;\n case \"C\":\n screen.col = Math.min(screen.width - 1, screen.col + arg(0, 1));\n break;\n case \"D\":\n screen.col = Math.max(0, screen.col - arg(0, 1));\n break;\n case \"E\":\n screen.row = Math.min(screen.height - 1, screen.row + arg(0, 1));\n screen.col = 0;\n break;\n case \"F\":\n screen.row = Math.max(0, screen.row - arg(0, 1));\n screen.col = 0;\n break;\n case \"G\":\n screen.col = clamp(arg(0, 1) - 1, 0, screen.width - 1);\n break;\n case \"d\":\n screen.row = clamp(arg(0, 1) - 1, 0, screen.height - 1);\n break;\n case \"H\":\n case \"f\":\n screen.row = clamp(arg(0, 1) - 1, 0, screen.height - 1);\n screen.col = clamp(arg(1, 1) - 1, 0, screen.width - 1);\n break;\n case \"J\":\n eraseDisplay(screen, mode);\n break;\n case \"K\":\n eraseLine(screen, mode);\n break;\n case \"P\":\n line.splice(screen.col, arg(0, 1));\n break;\n case \"X\":\n for (let i = 0; i < arg(0, 1) && screen.col + i < line.length; i++) line[screen.col + i] = BLANK;\n break;\n case \"@\":\n if (line.length > screen.col) line.splice(screen.col, 0, ...Array.from({ length: arg(0, 1) }, () => BLANK));\n line.length = Math.min(line.length, screen.width);\n break;\n case \"L\":\n screen.rows.splice(screen.row, 0, ...Array.from({ length: arg(0, 1) }, (): Cell[] => []));\n screen.rows.length = screen.height;\n break;\n case \"M\":\n screen.rows.splice(screen.row, arg(0, 1));\n while (screen.rows.length < screen.height) screen.rows.push([]);\n break;\n case \"s\":\n screen.saved = { row: screen.row, col: screen.col };\n break;\n case \"u\":\n if (screen.saved) ({ row: screen.row, col: screen.col } = screen.saved);\n break;\n default:\n break;\n }\n}\n\n/** Consumes the escape sequence at `start`; returns the index after it, or -1 when it is cut off. */\nfunction consumeEscape(screen: TerminalScreen, input: string, start: number): number {\n const kind = input[start + 1];\n if (kind === undefined) return -1;\n if (kind === \"[\") {\n let end = start + 2;\n while (end < input.length && /[\\x20-\\x3f]/.test(input[end]!)) end++;\n if (end >= input.length) return -1;\n csi(screen, input.slice(start + 2, end).replace(/[\\x20-\\x2f]/g, \"\"), input[end]!);\n return end + 1;\n }\n if (kind === \"]\") {\n for (let end = start + 2; end < input.length; end++) {\n if (input[end] === \"\\u0007\") return end + 1;\n if (input[end] === \"\\u001b\" && input[end + 1] === \"\\\\\") return end + 2;\n }\n return -1;\n }\n if (\"()*+\".includes(kind)) return start + 3 > input.length ? -1 : start + 3;\n if (kind === \"7\") screen.saved = { row: screen.row, col: screen.col };\n else if (kind === \"8\" && screen.saved) ({ row: screen.row, col: screen.col } = screen.saved);\n else if (kind === \"M\") screen.row = Math.max(0, screen.row - 1);\n return start + 2;\n}\n\n/** Feeds output to the screen; an escape sequence cut off at the end waits for the next write. */\nexport function writeScreen(screen: TerminalScreen, data: string): void {\n const input = screen.pending + data;\n screen.pending = \"\";\n let i = 0;\n while (i < input.length) {\n const ch = input[i]!;\n if (ch === \"\\u001b\") {\n const next = consumeEscape(screen, input, i);\n if (next === -1) {\n if (input.length - i <= MAX_PENDING) {\n screen.pending = input.slice(i);\n return;\n }\n i++;\n continue;\n }\n i = next;\n continue;\n }\n i++;\n if (ch === \"\\r\") screen.col = 0;\n else if (ch === \"\\n\") lineFeed(screen);\n else if (ch === \"\\b\") screen.col = Math.max(0, screen.col - 1);\n else if (ch === \"\\t\") screen.col = Math.min(screen.width - 1, (Math.floor(screen.col / TAB_STOP) + 1) * TAB_STOP);\n else if (ch < \" \" || ch === \"\\u007f\") continue;\n else {\n const codePoint = input.codePointAt(i - 1)!;\n const full = String.fromCodePoint(codePoint);\n i += full.length - 1;\n putChar(screen, full);\n }\n }\n}\n\nfunction trimmed(row: Cell[]): Cell[] {\n let end = row.length;\n while (end > 0 && row[end - 1]!.ch === \" \") end--;\n return row.slice(0, end);\n}\n\n/** The screen as plain text, one line per row, trailing blanks trimmed. */\nexport function screenText(screen: TerminalScreen): string {\n return screen.rows.map((row) => trimmed(row).map((cell) => cell.ch).join(\"\")).join(\"\\n\");\n}\n\nfunction transition(from: string, to: string): string {\n if (to === \"\") return \"\\u001b[0m\";\n return from === \"\" ? `\\u001b[${to}m` : `\\u001b[0;${to}m`;\n}\n\n/** The screen as ANSI text (weight, italic, underline, foreground) for AnsiHtml. */\nexport function screenToAnsi(screen: TerminalScreen): string {\n let current = \"\";\n return screen.rows\n .map((row) => {\n let line = \"\";\n for (const cell of trimmed(row)) {\n if (cell.sgr !== current) {\n line += transition(current, cell.sgr);\n current = cell.sgr;\n }\n line += cell.ch;\n }\n return line;\n })\n .join(\"\\n\");\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const terminalScreen = require("./terminal-screen.cjs");
4
+ const KINDS = ["o", "r", "snapshot", "exit"];
5
+ const DEFAULT_SIZE = { width: 80, height: 24 };
6
+ function buildTimeline(events) {
7
+ var _a;
8
+ events.forEach((event, index) => {
9
+ if (!KINDS.includes(event.kind)) throw new Error(`terminal event ${index} has unknown kind "${event.kind}"`);
10
+ });
11
+ const ordered = events.map((event, index) => ({ event, index })).sort((a, b) => a.event.offset - b.event.offset || a.index - b.index).map(({ event }) => event);
12
+ const first = ordered[0];
13
+ if (first && !(first.width > 0 && first.height > 0)) {
14
+ throw new Error(`terminal events carry no terminal size (first row is ${first.width}x${first.height})`);
15
+ }
16
+ return {
17
+ steps: ordered.filter((event) => event.kind === "o" || event.kind === "r"),
18
+ settled: (_a = ordered.findLast((event) => event.kind === "snapshot")) == null ? void 0 : _a.data,
19
+ exit: ordered.findLast((event) => event.kind === "exit"),
20
+ duration: ordered.reduce((latest, event) => Math.max(latest, event.offset), 0),
21
+ width: (first == null ? void 0 : first.width) ?? DEFAULT_SIZE.width,
22
+ height: (first == null ? void 0 : first.height) ?? DEFAULT_SIZE.height
23
+ };
24
+ }
25
+ function stepCountAt(steps, position) {
26
+ let low = 0;
27
+ let high = steps.length;
28
+ while (low < high) {
29
+ const mid = low + high >>> 1;
30
+ if (steps[mid].offset <= position) low = mid + 1;
31
+ else high = mid;
32
+ }
33
+ return low;
34
+ }
35
+ function replayTo(replay, timeline, count) {
36
+ const reuse = replay !== void 0 && replay.applied <= count;
37
+ const screen = reuse ? replay.screen : terminalScreen.createScreen(timeline.width, timeline.height);
38
+ for (let i = reuse ? replay.applied : 0; i < count; i++) {
39
+ const step = timeline.steps[i];
40
+ if (step.kind === "r") terminalScreen.resizeScreen(screen, step.width, step.height);
41
+ else terminalScreen.writeScreen(screen, step.data);
42
+ }
43
+ return reuse && replay.applied === count ? replay : { screen, applied: count };
44
+ }
45
+ exports.buildTimeline = buildTimeline;
46
+ exports.replayTo = replayTo;
47
+ exports.stepCountAt = stepCountAt;
48
+ //# sourceMappingURL=terminal-timeline.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-timeline.cjs","sources":["../../../src/data/traces/terminal-timeline.ts"],"sourcesContent":["import { createScreen, resizeScreen, writeScreen, type TerminalScreen } from \"./terminal-screen\";\nimport type { TerminalEvent, TerminalEventKind } from \"./types\";\n\nconst KINDS: readonly TerminalEventKind[] = [\"o\", \"r\", \"snapshot\", \"exit\"];\nconst DEFAULT_SIZE = { width: 80, height: 24 };\n\nexport type TerminalTimeline = {\n /** Output and resize events in playback order. */\n steps: TerminalEvent[];\n /** The screen of the last snapshot, when the capture settled one. */\n settled: string | undefined;\n exit: TerminalEvent | undefined;\n /** Seconds from the first byte to the last event. */\n duration: number;\n /** The terminal size at the start of the session. */\n width: number;\n height: number;\n};\n\n/** Orders a session's rows and splits them into what playback, the settled screen and the badge need. */\nexport function buildTimeline(events: TerminalEvent[]): TerminalTimeline {\n events.forEach((event, index) => {\n if (!KINDS.includes(event.kind)) throw new Error(`terminal event ${index} has unknown kind \"${event.kind}\"`);\n });\n const ordered = events\n .map((event, index) => ({ event, index }))\n .sort((a, b) => a.event.offset - b.event.offset || a.index - b.index)\n .map(({ event }) => event);\n\n const first = ordered[0];\n if (first && !(first.width > 0 && first.height > 0)) {\n throw new Error(`terminal events carry no terminal size (first row is ${first.width}x${first.height})`);\n }\n return {\n steps: ordered.filter((event) => event.kind === \"o\" || event.kind === \"r\"),\n settled: ordered.findLast((event) => event.kind === \"snapshot\")?.data,\n exit: ordered.findLast((event) => event.kind === \"exit\"),\n duration: ordered.reduce((latest, event) => Math.max(latest, event.offset), 0),\n width: first?.width ?? DEFAULT_SIZE.width,\n height: first?.height ?? DEFAULT_SIZE.height,\n };\n}\n\n/** How many steps have happened by `position` seconds (steps are sorted by offset). */\nexport function stepCountAt(steps: TerminalEvent[], position: number): number {\n let low = 0;\n let high = steps.length;\n while (low < high) {\n const mid = (low + high) >>> 1;\n if (steps[mid]!.offset <= position) low = mid + 1;\n else high = mid;\n }\n return low;\n}\n\n/** A screen and how many steps of its timeline it has applied, so playback only feeds the new ones. */\nexport type ScreenReplay = { screen: TerminalScreen; applied: number };\n\n/** Brings the replay to exactly `count` applied steps, continuing when moving forward and rebuilding when moving back. */\nexport function replayTo(replay: ScreenReplay | undefined, timeline: TerminalTimeline, count: number): ScreenReplay {\n const reuse = replay !== undefined && replay.applied <= count;\n const screen = reuse ? replay.screen : createScreen(timeline.width, timeline.height);\n for (let i = reuse ? replay.applied : 0; i < count; i++) {\n const step = timeline.steps[i]!;\n if (step.kind === \"r\") resizeScreen(screen, step.width, step.height);\n else writeScreen(screen, step.data);\n }\n return reuse && replay.applied === count ? replay : { screen, applied: count };\n}\n"],"names":["createScreen","resizeScreen","writeScreen"],"mappings":";;;AAGA,MAAM,QAAsC,CAAC,KAAK,KAAK,YAAY,MAAM;AACzE,MAAM,eAAe,EAAE,OAAO,IAAI,QAAQ,GAAA;AAgBnC,SAAS,cAAc,QAA2C;;AACvE,SAAO,QAAQ,CAAC,OAAO,UAAU;AAC/B,QAAI,CAAC,MAAM,SAAS,MAAM,IAAI,EAAG,OAAM,IAAI,MAAM,kBAAkB,KAAK,sBAAsB,MAAM,IAAI,GAAG;AAAA,EAC7G,CAAC;AACD,QAAM,UAAU,OACb,IAAI,CAAC,OAAO,WAAW,EAAE,OAAO,MAAA,EAAQ,EACxC,KAAK,CAAC,GAAG,MAAM,EAAE,MAAM,SAAS,EAAE,MAAM,UAAU,EAAE,QAAQ,EAAE,KAAK,EACnE,IAAI,CAAC,EAAE,MAAA,MAAY,KAAK;AAE3B,QAAM,QAAQ,QAAQ,CAAC;AACvB,MAAI,SAAS,EAAE,MAAM,QAAQ,KAAK,MAAM,SAAS,IAAI;AACnD,UAAM,IAAI,MAAM,wDAAwD,MAAM,KAAK,IAAI,MAAM,MAAM,GAAG;AAAA,EACxG;AACA,SAAO;AAAA,IACL,OAAO,QAAQ,OAAO,CAAC,UAAU,MAAM,SAAS,OAAO,MAAM,SAAS,GAAG;AAAA,IACzE,UAAS,aAAQ,SAAS,CAAC,UAAU,MAAM,SAAS,UAAU,MAArD,mBAAwD;AAAA,IACjE,MAAM,QAAQ,SAAS,CAAC,UAAU,MAAM,SAAS,MAAM;AAAA,IACvD,UAAU,QAAQ,OAAO,CAAC,QAAQ,UAAU,KAAK,IAAI,QAAQ,MAAM,MAAM,GAAG,CAAC;AAAA,IAC7E,QAAO,+BAAO,UAAS,aAAa;AAAA,IACpC,SAAQ,+BAAO,WAAU,aAAa;AAAA,EAAA;AAE1C;AAGO,SAAS,YAAY,OAAwB,UAA0B;AAC5E,MAAI,MAAM;AACV,MAAI,OAAO,MAAM;AACjB,SAAO,MAAM,MAAM;AACjB,UAAM,MAAO,MAAM,SAAU;AAC7B,QAAI,MAAM,GAAG,EAAG,UAAU,gBAAgB,MAAM;AAAA,QAC3C,QAAO;AAAA,EACd;AACA,SAAO;AACT;AAMO,SAAS,SAAS,QAAkC,UAA4B,OAA6B;AAClH,QAAM,QAAQ,WAAW,UAAa,OAAO,WAAW;AACxD,QAAM,SAAS,QAAQ,OAAO,SAASA,eAAAA,aAAa,SAAS,OAAO,SAAS,MAAM;AACnF,WAAS,IAAI,QAAQ,OAAO,UAAU,GAAG,IAAI,OAAO,KAAK;AACvD,UAAM,OAAO,SAAS,MAAM,CAAC;AAC7B,QAAI,KAAK,SAAS,IAAKC,gBAAAA,aAAa,QAAQ,KAAK,OAAO,KAAK,MAAM;AAAA,QAC9DC,4BAAY,QAAQ,KAAK,IAAI;AAAA,EACpC;AACA,SAAO,SAAS,OAAO,YAAY,QAAQ,SAAS,EAAE,QAAQ,SAAS,MAAA;AACzE;;;;"}
@@ -0,0 +1,48 @@
1
+ import { createScreen, resizeScreen, writeScreen } from "./terminal-screen.js";
2
+ const KINDS = ["o", "r", "snapshot", "exit"];
3
+ const DEFAULT_SIZE = { width: 80, height: 24 };
4
+ function buildTimeline(events) {
5
+ var _a;
6
+ events.forEach((event, index) => {
7
+ if (!KINDS.includes(event.kind)) throw new Error(`terminal event ${index} has unknown kind "${event.kind}"`);
8
+ });
9
+ const ordered = events.map((event, index) => ({ event, index })).sort((a, b) => a.event.offset - b.event.offset || a.index - b.index).map(({ event }) => event);
10
+ const first = ordered[0];
11
+ if (first && !(first.width > 0 && first.height > 0)) {
12
+ throw new Error(`terminal events carry no terminal size (first row is ${first.width}x${first.height})`);
13
+ }
14
+ return {
15
+ steps: ordered.filter((event) => event.kind === "o" || event.kind === "r"),
16
+ settled: (_a = ordered.findLast((event) => event.kind === "snapshot")) == null ? void 0 : _a.data,
17
+ exit: ordered.findLast((event) => event.kind === "exit"),
18
+ duration: ordered.reduce((latest, event) => Math.max(latest, event.offset), 0),
19
+ width: (first == null ? void 0 : first.width) ?? DEFAULT_SIZE.width,
20
+ height: (first == null ? void 0 : first.height) ?? DEFAULT_SIZE.height
21
+ };
22
+ }
23
+ function stepCountAt(steps, position) {
24
+ let low = 0;
25
+ let high = steps.length;
26
+ while (low < high) {
27
+ const mid = low + high >>> 1;
28
+ if (steps[mid].offset <= position) low = mid + 1;
29
+ else high = mid;
30
+ }
31
+ return low;
32
+ }
33
+ function replayTo(replay, timeline, count) {
34
+ const reuse = replay !== void 0 && replay.applied <= count;
35
+ const screen = reuse ? replay.screen : createScreen(timeline.width, timeline.height);
36
+ for (let i = reuse ? replay.applied : 0; i < count; i++) {
37
+ const step = timeline.steps[i];
38
+ if (step.kind === "r") resizeScreen(screen, step.width, step.height);
39
+ else writeScreen(screen, step.data);
40
+ }
41
+ return reuse && replay.applied === count ? replay : { screen, applied: count };
42
+ }
43
+ export {
44
+ buildTimeline,
45
+ replayTo,
46
+ stepCountAt
47
+ };
48
+ //# sourceMappingURL=terminal-timeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal-timeline.js","sources":["../../../src/data/traces/terminal-timeline.ts"],"sourcesContent":["import { createScreen, resizeScreen, writeScreen, type TerminalScreen } from \"./terminal-screen\";\nimport type { TerminalEvent, TerminalEventKind } from \"./types\";\n\nconst KINDS: readonly TerminalEventKind[] = [\"o\", \"r\", \"snapshot\", \"exit\"];\nconst DEFAULT_SIZE = { width: 80, height: 24 };\n\nexport type TerminalTimeline = {\n /** Output and resize events in playback order. */\n steps: TerminalEvent[];\n /** The screen of the last snapshot, when the capture settled one. */\n settled: string | undefined;\n exit: TerminalEvent | undefined;\n /** Seconds from the first byte to the last event. */\n duration: number;\n /** The terminal size at the start of the session. */\n width: number;\n height: number;\n};\n\n/** Orders a session's rows and splits them into what playback, the settled screen and the badge need. */\nexport function buildTimeline(events: TerminalEvent[]): TerminalTimeline {\n events.forEach((event, index) => {\n if (!KINDS.includes(event.kind)) throw new Error(`terminal event ${index} has unknown kind \"${event.kind}\"`);\n });\n const ordered = events\n .map((event, index) => ({ event, index }))\n .sort((a, b) => a.event.offset - b.event.offset || a.index - b.index)\n .map(({ event }) => event);\n\n const first = ordered[0];\n if (first && !(first.width > 0 && first.height > 0)) {\n throw new Error(`terminal events carry no terminal size (first row is ${first.width}x${first.height})`);\n }\n return {\n steps: ordered.filter((event) => event.kind === \"o\" || event.kind === \"r\"),\n settled: ordered.findLast((event) => event.kind === \"snapshot\")?.data,\n exit: ordered.findLast((event) => event.kind === \"exit\"),\n duration: ordered.reduce((latest, event) => Math.max(latest, event.offset), 0),\n width: first?.width ?? DEFAULT_SIZE.width,\n height: first?.height ?? DEFAULT_SIZE.height,\n };\n}\n\n/** How many steps have happened by `position` seconds (steps are sorted by offset). */\nexport function stepCountAt(steps: TerminalEvent[], position: number): number {\n let low = 0;\n let high = steps.length;\n while (low < high) {\n const mid = (low + high) >>> 1;\n if (steps[mid]!.offset <= position) low = mid + 1;\n else high = mid;\n }\n return low;\n}\n\n/** A screen and how many steps of its timeline it has applied, so playback only feeds the new ones. */\nexport type ScreenReplay = { screen: TerminalScreen; applied: number };\n\n/** Brings the replay to exactly `count` applied steps, continuing when moving forward and rebuilding when moving back. */\nexport function replayTo(replay: ScreenReplay | undefined, timeline: TerminalTimeline, count: number): ScreenReplay {\n const reuse = replay !== undefined && replay.applied <= count;\n const screen = reuse ? replay.screen : createScreen(timeline.width, timeline.height);\n for (let i = reuse ? replay.applied : 0; i < count; i++) {\n const step = timeline.steps[i]!;\n if (step.kind === \"r\") resizeScreen(screen, step.width, step.height);\n else writeScreen(screen, step.data);\n }\n return reuse && replay.applied === count ? replay : { screen, applied: count };\n}\n"],"names":[],"mappings":";AAGA,MAAM,QAAsC,CAAC,KAAK,KAAK,YAAY,MAAM;AACzE,MAAM,eAAe,EAAE,OAAO,IAAI,QAAQ,GAAA;AAgBnC,SAAS,cAAc,QAA2C;;AACvE,SAAO,QAAQ,CAAC,OAAO,UAAU;AAC/B,QAAI,CAAC,MAAM,SAAS,MAAM,IAAI,EAAG,OAAM,IAAI,MAAM,kBAAkB,KAAK,sBAAsB,MAAM,IAAI,GAAG;AAAA,EAC7G,CAAC;AACD,QAAM,UAAU,OACb,IAAI,CAAC,OAAO,WAAW,EAAE,OAAO,MAAA,EAAQ,EACxC,KAAK,CAAC,GAAG,MAAM,EAAE,MAAM,SAAS,EAAE,MAAM,UAAU,EAAE,QAAQ,EAAE,KAAK,EACnE,IAAI,CAAC,EAAE,MAAA,MAAY,KAAK;AAE3B,QAAM,QAAQ,QAAQ,CAAC;AACvB,MAAI,SAAS,EAAE,MAAM,QAAQ,KAAK,MAAM,SAAS,IAAI;AACnD,UAAM,IAAI,MAAM,wDAAwD,MAAM,KAAK,IAAI,MAAM,MAAM,GAAG;AAAA,EACxG;AACA,SAAO;AAAA,IACL,OAAO,QAAQ,OAAO,CAAC,UAAU,MAAM,SAAS,OAAO,MAAM,SAAS,GAAG;AAAA,IACzE,UAAS,aAAQ,SAAS,CAAC,UAAU,MAAM,SAAS,UAAU,MAArD,mBAAwD;AAAA,IACjE,MAAM,QAAQ,SAAS,CAAC,UAAU,MAAM,SAAS,MAAM;AAAA,IACvD,UAAU,QAAQ,OAAO,CAAC,QAAQ,UAAU,KAAK,IAAI,QAAQ,MAAM,MAAM,GAAG,CAAC;AAAA,IAC7E,QAAO,+BAAO,UAAS,aAAa;AAAA,IACpC,SAAQ,+BAAO,WAAU,aAAa;AAAA,EAAA;AAE1C;AAGO,SAAS,YAAY,OAAwB,UAA0B;AAC5E,MAAI,MAAM;AACV,MAAI,OAAO,MAAM;AACjB,SAAO,MAAM,MAAM;AACjB,UAAM,MAAO,MAAM,SAAU;AAC7B,QAAI,MAAM,GAAG,EAAG,UAAU,gBAAgB,MAAM;AAAA,QAC3C,QAAO;AAAA,EACd;AACA,SAAO;AACT;AAMO,SAAS,SAAS,QAAkC,UAA4B,OAA6B;AAClH,QAAM,QAAQ,WAAW,UAAa,OAAO,WAAW;AACxD,QAAM,SAAS,QAAQ,OAAO,SAAS,aAAa,SAAS,OAAO,SAAS,MAAM;AACnF,WAAS,IAAI,QAAQ,OAAO,UAAU,GAAG,IAAI,OAAO,KAAK;AACvD,UAAM,OAAO,SAAS,MAAM,CAAC;AAC7B,QAAI,KAAK,SAAS,IAAK,cAAa,QAAQ,KAAK,OAAO,KAAK,MAAM;AAAA,QAC9D,aAAY,QAAQ,KAAK,IAAI;AAAA,EACpC;AACA,SAAO,SAAS,OAAO,YAAY,QAAQ,SAAS,EAAE,QAAQ,SAAS,MAAA;AACzE;"}
@@ -134,8 +134,6 @@ export type ProcessSampleRow = {
134
134
  memoryPercent: number;
135
135
  rssBytes: number;
136
136
  };
137
+ /** A record of a kind `TraceView` has no dedicated viewer for. */
137
138
  export type TraceRow = Record<string, unknown>;
138
- /** The trace kinds `TraceView` has a dedicated viewer for. */
139
- export declare const TRACE_KINDS: readonly ["http", "http_proxy", "pg_proxy", "sql_statements", "terminal", "process_tree"];
140
- export type TraceKind = (typeof TRACE_KINDS)[number];
141
139
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/traces/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/traces/types.ts"],"names":[],"mappings":"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"}
@@ -15,9 +15,9 @@ function detectMode() {
15
15
  }
16
16
  function getVersionInfo() {
17
17
  return {
18
- commit: read(() => "f9879aa9", ""),
19
- tag: read(() => "clicky-ui@0.3.47", ""),
20
- date: read(() => "2026-10-15T09:20:40.620Z", ""),
18
+ commit: read(() => "187d13f6c", ""),
19
+ tag: read(() => "clicky-ui@0.3.48", ""),
20
+ date: read(() => "2026-10-16T04:15:25.882Z", ""),
21
21
  dirty: read(() => true, false),
22
22
  mode: detectMode()
23
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"version-info.cjs","sources":["../../src/data/version-info.ts"],"sourcesContent":["// Build-time constants injected by Vite `define` (see packages/ui/vite.config.ts).\n// They are absent in dev (Vite serves source without the library build), so every\n// read falls back to a runtime-safe default.\ndeclare const __CLICKY_COMMIT__: string;\ndeclare const __CLICKY_TAG__: string;\ndeclare const __CLICKY_DATE__: string;\ndeclare const __CLICKY_DIRTY__: boolean;\n\nfunction read<T>(getter: () => T, fallback: T): T {\n try {\n return getter();\n } catch {\n return fallback;\n }\n}\n\nexport type RuntimeMode = \"production\" | \"dev\" | \"storybook\";\n\nexport interface VersionInfo {\n commit: string;\n tag: string;\n date: string;\n dirty: boolean;\n mode: RuntimeMode;\n}\n\nfunction detectMode(): RuntimeMode {\n if (read(() => Boolean((import.meta as ImportMeta).env?.STORYBOOK), false)) return \"storybook\";\n if (read(() => Boolean((import.meta as ImportMeta).env?.DEV), false)) return \"dev\";\n return \"production\";\n}\n\n/** Resolve build + runtime version metadata. */\nexport function getVersionInfo(): VersionInfo {\n return {\n commit: read(() => __CLICKY_COMMIT__, \"\"),\n tag: read(() => __CLICKY_TAG__, \"\"),\n date: read(() => __CLICKY_DATE__, \"\"),\n dirty: read(() => __CLICKY_DIRTY__, false),\n mode: detectMode(),\n };\n}\n"],"names":[],"mappings":";;;AAQA,SAAS,KAAQ,QAAiB,UAAgB;AAChD,MAAI;AACF,WAAO,OAAA;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAYA,SAAS,aAA0B;AACjC,MAAI,KAAK,MAAM,QAAS,qEAAgC,SAAS,GAAG,KAAK,EAAG,QAAO;AACnF,MAAI,KAAK,MAAM,QAAS,KAAmC,GAAG,KAAK,EAAG,QAAO;AAC7E,SAAO;AACT;AAGO,SAAS,iBAA8B;AAC5C,SAAO;AAAA,IACL,QAAQ,KAAK,MAAM,YAAmB,EAAE;AAAA,IACxC,KAAK,KAAK,MAAM,oBAAgB,EAAE;AAAA,IAClC,MAAM,KAAK,MAAM,4BAAiB,EAAE;AAAA,IACpC,OAAO,KAAK,MAAM,MAAkB,KAAK;AAAA,IACzC,MAAM,WAAA;AAAA,EAAW;AAErB;;"}
1
+ {"version":3,"file":"version-info.cjs","sources":["../../src/data/version-info.ts"],"sourcesContent":["// Build-time constants injected by Vite `define` (see packages/ui/vite.config.ts).\n// They are absent in dev (Vite serves source without the library build), so every\n// read falls back to a runtime-safe default.\ndeclare const __CLICKY_COMMIT__: string;\ndeclare const __CLICKY_TAG__: string;\ndeclare const __CLICKY_DATE__: string;\ndeclare const __CLICKY_DIRTY__: boolean;\n\nfunction read<T>(getter: () => T, fallback: T): T {\n try {\n return getter();\n } catch {\n return fallback;\n }\n}\n\nexport type RuntimeMode = \"production\" | \"dev\" | \"storybook\";\n\nexport interface VersionInfo {\n commit: string;\n tag: string;\n date: string;\n dirty: boolean;\n mode: RuntimeMode;\n}\n\nfunction detectMode(): RuntimeMode {\n if (read(() => Boolean((import.meta as ImportMeta).env?.STORYBOOK), false)) return \"storybook\";\n if (read(() => Boolean((import.meta as ImportMeta).env?.DEV), false)) return \"dev\";\n return \"production\";\n}\n\n/** Resolve build + runtime version metadata. */\nexport function getVersionInfo(): VersionInfo {\n return {\n commit: read(() => __CLICKY_COMMIT__, \"\"),\n tag: read(() => __CLICKY_TAG__, \"\"),\n date: read(() => __CLICKY_DATE__, \"\"),\n dirty: read(() => __CLICKY_DIRTY__, false),\n mode: detectMode(),\n };\n}\n"],"names":[],"mappings":";;;AAQA,SAAS,KAAQ,QAAiB,UAAgB;AAChD,MAAI;AACF,WAAO,OAAA;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAYA,SAAS,aAA0B;AACjC,MAAI,KAAK,MAAM,QAAS,qEAAgC,SAAS,GAAG,KAAK,EAAG,QAAO;AACnF,MAAI,KAAK,MAAM,QAAS,KAAmC,GAAG,KAAK,EAAG,QAAO;AAC7E,SAAO;AACT;AAGO,SAAS,iBAA8B;AAC5C,SAAO;AAAA,IACL,QAAQ,KAAK,MAAM,aAAmB,EAAE;AAAA,IACxC,KAAK,KAAK,MAAM,oBAAgB,EAAE;AAAA,IAClC,MAAM,KAAK,MAAM,4BAAiB,EAAE;AAAA,IACpC,OAAO,KAAK,MAAM,MAAkB,KAAK;AAAA,IACzC,MAAM,WAAA;AAAA,EAAW;AAErB;;"}
@@ -13,9 +13,9 @@ function detectMode() {
13
13
  }
14
14
  function getVersionInfo() {
15
15
  return {
16
- commit: read(() => "f9879aa9", ""),
17
- tag: read(() => "clicky-ui@0.3.47", ""),
18
- date: read(() => "2026-10-15T09:19:57.913Z", ""),
16
+ commit: read(() => "187d13f6c", ""),
17
+ tag: read(() => "clicky-ui@0.3.48", ""),
18
+ date: read(() => "2026-10-16T04:14:41.824Z", ""),
19
19
  dirty: read(() => true, false),
20
20
  mode: detectMode()
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"version-info.js","sources":["../../src/data/version-info.ts"],"sourcesContent":["// Build-time constants injected by Vite `define` (see packages/ui/vite.config.ts).\n// They are absent in dev (Vite serves source without the library build), so every\n// read falls back to a runtime-safe default.\ndeclare const __CLICKY_COMMIT__: string;\ndeclare const __CLICKY_TAG__: string;\ndeclare const __CLICKY_DATE__: string;\ndeclare const __CLICKY_DIRTY__: boolean;\n\nfunction read<T>(getter: () => T, fallback: T): T {\n try {\n return getter();\n } catch {\n return fallback;\n }\n}\n\nexport type RuntimeMode = \"production\" | \"dev\" | \"storybook\";\n\nexport interface VersionInfo {\n commit: string;\n tag: string;\n date: string;\n dirty: boolean;\n mode: RuntimeMode;\n}\n\nfunction detectMode(): RuntimeMode {\n if (read(() => Boolean((import.meta as ImportMeta).env?.STORYBOOK), false)) return \"storybook\";\n if (read(() => Boolean((import.meta as ImportMeta).env?.DEV), false)) return \"dev\";\n return \"production\";\n}\n\n/** Resolve build + runtime version metadata. */\nexport function getVersionInfo(): VersionInfo {\n return {\n commit: read(() => __CLICKY_COMMIT__, \"\"),\n tag: read(() => __CLICKY_TAG__, \"\"),\n date: read(() => __CLICKY_DATE__, \"\"),\n dirty: read(() => __CLICKY_DIRTY__, false),\n mode: detectMode(),\n };\n}\n"],"names":[],"mappings":";AAQA,SAAS,KAAQ,QAAiB,UAAgB;AAChD,MAAI;AACF,WAAO,OAAA;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAYA,SAAS,aAA0B;AACjC,MAAI,KAAK,MAAM,QAAS,qEAAgC,SAAS,GAAG,KAAK,EAAG,QAAO;AACnF,MAAI,KAAK,MAAM,QAAS,KAAmC,GAAG,KAAK,EAAG,QAAO;AAC7E,SAAO;AACT;AAGO,SAAS,iBAA8B;AAC5C,SAAO;AAAA,IACL,QAAQ,KAAK,MAAM,YAAmB,EAAE;AAAA,IACxC,KAAK,KAAK,MAAM,oBAAgB,EAAE;AAAA,IAClC,MAAM,KAAK,MAAM,4BAAiB,EAAE;AAAA,IACpC,OAAO,KAAK,MAAM,MAAkB,KAAK;AAAA,IACzC,MAAM,WAAA;AAAA,EAAW;AAErB;"}
1
+ {"version":3,"file":"version-info.js","sources":["../../src/data/version-info.ts"],"sourcesContent":["// Build-time constants injected by Vite `define` (see packages/ui/vite.config.ts).\n// They are absent in dev (Vite serves source without the library build), so every\n// read falls back to a runtime-safe default.\ndeclare const __CLICKY_COMMIT__: string;\ndeclare const __CLICKY_TAG__: string;\ndeclare const __CLICKY_DATE__: string;\ndeclare const __CLICKY_DIRTY__: boolean;\n\nfunction read<T>(getter: () => T, fallback: T): T {\n try {\n return getter();\n } catch {\n return fallback;\n }\n}\n\nexport type RuntimeMode = \"production\" | \"dev\" | \"storybook\";\n\nexport interface VersionInfo {\n commit: string;\n tag: string;\n date: string;\n dirty: boolean;\n mode: RuntimeMode;\n}\n\nfunction detectMode(): RuntimeMode {\n if (read(() => Boolean((import.meta as ImportMeta).env?.STORYBOOK), false)) return \"storybook\";\n if (read(() => Boolean((import.meta as ImportMeta).env?.DEV), false)) return \"dev\";\n return \"production\";\n}\n\n/** Resolve build + runtime version metadata. */\nexport function getVersionInfo(): VersionInfo {\n return {\n commit: read(() => __CLICKY_COMMIT__, \"\"),\n tag: read(() => __CLICKY_TAG__, \"\"),\n date: read(() => __CLICKY_DATE__, \"\"),\n dirty: read(() => __CLICKY_DIRTY__, false),\n mode: detectMode(),\n };\n}\n"],"names":[],"mappings":";AAQA,SAAS,KAAQ,QAAiB,UAAgB;AAChD,MAAI;AACF,WAAO,OAAA;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAYA,SAAS,aAA0B;AACjC,MAAI,KAAK,MAAM,QAAS,qEAAgC,SAAS,GAAG,KAAK,EAAG,QAAO;AACnF,MAAI,KAAK,MAAM,QAAS,KAAmC,GAAG,KAAK,EAAG,QAAO;AAC7E,SAAO;AACT;AAGO,SAAS,iBAA8B;AAC5C,SAAO;AAAA,IACL,QAAQ,KAAK,MAAM,aAAmB,EAAE;AAAA,IACxC,KAAK,KAAK,MAAM,oBAAgB,EAAE;AAAA,IAClC,MAAM,KAAK,MAAM,4BAAiB,EAAE;AAAA,IACpC,OAAO,KAAK,MAAM,MAAkB,KAAK;AAAA,IACzC,MAAM,WAAA;AAAA,EAAW;AAErB;"}
package/dist/data.cjs CHANGED
@@ -133,10 +133,14 @@ const FixtureEditor = require("./data/FixtureEditor/FixtureEditor.cjs");
133
133
  const GitChangeList = require("./data/git/GitChangeList.cjs");
134
134
  const marks = require("./data/test-runner/marks.cjs");
135
135
  const MarkIcons = require("./data/test-runner/MarkIcons.cjs");
136
+ const ProcessTraceTree = require("./data/traces/ProcessTraceTree.cjs");
136
137
  const QueryBrowser = require("./data/query-browser/QueryBrowser.cjs");
137
138
  const QueryBrowser_types = require("./data/query-browser/QueryBrowser.types.cjs");
138
139
  const status = require("./data/test-runner/status.cjs");
140
+ const Sparkline = require("./data/traces/Sparkline.cjs");
141
+ const SqlTraceTable = require("./data/traces/SqlTraceTable.cjs");
139
142
  const stepKindViews = require("./data/verification/stepKindViews.cjs");
143
+ const TerminalCastPlayer = require("./data/traces/TerminalCastPlayer.cjs");
140
144
  const TestFailureDetail = require("./data/test-runner/TestFailureDetail.cjs");
141
145
  const TestDetailPanel = require("./data/test-runner/TestDetailPanel.cjs");
142
146
  const TestFilterBar = require("./data/test-runner/TestFilterBar.cjs");
@@ -146,6 +150,8 @@ const TestRunner = require("./data/test-runner/TestRunner.cjs");
146
150
  const context = require("./data/test-runner/context.cjs");
147
151
  const TestTree = require("./data/test-runner/TestTree.cjs");
148
152
  const TestTreeNode = require("./data/test-runner/TestTreeNode.cjs");
153
+ const TraceHarView = require("./data/traces/TraceHarView.cjs");
154
+ const TraceView = require("./data/traces/TraceView.cjs");
149
155
  const UiAccessProtected = require("./icons/components/UiAccessProtected.cjs");
150
156
  const UiAccessPublic = require("./icons/components/UiAccessPublic.cjs");
151
157
  const UiActivity = require("./icons/components/UiActivity.cjs");
@@ -731,6 +737,7 @@ const VerificationResults = require("./data/verification/VerificationResults.cjs
731
737
  const routePath = require("./data/test-runner/routePath.cjs");
732
738
  const fixtureFrontmatter = require("./data/FixtureEditor/fixture-frontmatter.cjs");
733
739
  const copy = require("./data/test-runner/copy.cjs");
740
+ const processTree = require("./data/traces/process-tree.cjs");
734
741
  const api = require("./data/cache-browser/api.cjs");
735
742
  const changeIconAliases = require("./icons/changeIconAliases.cjs");
736
743
  const registry = require("./icons/registry.cjs");
@@ -738,8 +745,11 @@ const stepKind = require("./data/verification/stepKind.cjs");
738
745
  const fixtureBlocks = require("./data/FixtureEditor/fixture-blocks.cjs");
739
746
  const filterState = require("./data/test-runner/filterState.cjs");
740
747
  const verifyReport = require("./data/verification/verify-report.cjs");
748
+ const harAdapter = require("./data/traces/har-adapter.cjs");
741
749
  const gitDates = require("./data/git/git-dates.cjs");
750
+ const sqlTrace = require("./data/traces/sql-trace.cjs");
742
751
  const types$1 = require("./data/cache-browser/types.cjs");
752
+ const cast = require("./data/traces/cast.cjs");
743
753
  const programmingCatalog = require("./icons/programmingCatalog.cjs");
744
754
  const graphEdgeRouting = require("./data/graph-edge-routing.cjs");
745
755
  const useClickyExport = require("./data/clicky-export/useClickyExport.cjs");
@@ -1009,6 +1019,7 @@ exports.toolMark = marks.toolMark;
1009
1019
  exports.LintSeverityIcon = MarkIcons.LintSeverityIcon;
1010
1020
  exports.OutcomeIcon = MarkIcons.OutcomeIcon;
1011
1021
  exports.ToolIcon = MarkIcons.ToolIcon;
1022
+ exports.ProcessTraceTree = ProcessTraceTree.ProcessTraceTree;
1012
1023
  exports.QueryBrowser = QueryBrowser.QueryBrowser;
1013
1024
  exports.QueryBrowserExecutionError = QueryBrowser_types.QueryBrowserExecutionError;
1014
1025
  exports.STATUS_LABELS = status.STATUS_LABELS;
@@ -1027,9 +1038,12 @@ exports.sum = status.sum;
1027
1038
  exports.sumNonTaskTests = status.sumNonTaskTests;
1028
1039
  exports.testStatus = status.testStatus;
1029
1040
  exports.totalDuration = status.totalDuration;
1041
+ exports.Sparkline = Sparkline.Sparkline;
1042
+ exports.SqlTraceTable = SqlTraceTable.SqlTraceTable;
1030
1043
  exports.StepKindSections = stepKindViews.StepKindSections;
1031
1044
  exports.StepOutputs = stepKindViews.StepOutputs;
1032
1045
  exports.StepWait = stepKindViews.StepWait;
1046
+ exports.TerminalCastPlayer = TerminalCastPlayer.TerminalCastPlayer;
1033
1047
  exports.TestAttempts = TestFailureDetail.TestAttempts;
1034
1048
  exports.TestFailureDetail = TestFailureDetail.TestFailureDetail;
1035
1049
  exports.TestOutput = TestFailureDetail.TestOutput;
@@ -1043,6 +1057,8 @@ exports.TestRunnerProvider = context.TestRunnerProvider;
1043
1057
  exports.useTestRunner = context.useTestRunner;
1044
1058
  exports.TestTree = TestTree.TestTree;
1045
1059
  exports.TestTreeNode = TestTreeNode.TestTreeNode;
1060
+ exports.TraceHarView = TraceHarView.TraceHarView;
1061
+ exports.TraceView = TraceView.TraceView;
1046
1062
  exports.UiAccessProtected = UiAccessProtected.UiAccessProtected;
1047
1063
  exports.UiAccessProtectedDark = UiAccessProtected.UiAccessProtectedDark;
1048
1064
  exports.UiAccessPublic = UiAccessPublic.UiAccessPublic;
@@ -2128,6 +2144,8 @@ exports.buildNodeBrief = copy.buildNodeBrief;
2128
2144
  exports.buildNodeJson = copy.buildNodeJson;
2129
2145
  exports.genericCopySections = copy.genericCopySections;
2130
2146
  exports.mergeCopySections = copy.mergeCopySections;
2147
+ exports.buildProcessForest = processTree.buildProcessForest;
2148
+ exports.flattenForest = processTree.flattenForest;
2131
2149
  exports.cacheQueryKeys = api.cacheQueryKeys;
2132
2150
  exports.createCacheClient = api.createCacheClient;
2133
2151
  exports.changeIconAliases = changeIconAliases.changeIconAliases;
@@ -2157,8 +2175,12 @@ exports.matchesFilterState = filterState.matchesFilterState;
2157
2175
  exports.recordToFilterState = filterState.recordToFilterState;
2158
2176
  exports.emptyVerifySummary = verifyReport.emptyVerifySummary;
2159
2177
  exports.summarizeVerifyNodes = verifyReport.summarizeVerifyNodes;
2178
+ exports.exchangeToHarEntry = harAdapter.exchangeToHarEntry;
2160
2179
  exports.formatGitCommitDateHeader = gitDates.formatGitCommitDateHeader;
2180
+ exports.formatStatementDuration = sqlTrace.formatStatementDuration;
2181
+ exports.groupStatements = sqlTrace.groupStatements;
2161
2182
  exports.isLeaf = types$1.isLeaf;
2183
+ exports.parseCast = cast.parseCast;
2162
2184
  exports.programmingIconCatalog = programmingCatalog.programmingIconCatalog;
2163
2185
  exports.routeEdges = graphEdgeRouting.routeEdges;
2164
2186
  exports.useClickyExport = useClickyExport.useClickyExport;
package/dist/data.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"data.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"data.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/data.d.ts CHANGED
@@ -125,4 +125,5 @@ export { ErrorDetails, PrettyStackTrace, CopyBadge, type ErrorDetailsProps, } fr
125
125
  export { normalizeErrorDiagnostics, parseDiagnosticsStackTrace, parseInlineJsonContextValue, compactStackPath, isApplicationStackFrame, type ErrorDiagnostics, type ErrorStackFrame, type ParsedErrorStackTrace, } from './data/diagnostics/error-diagnostics.js';
126
126
  export { HarPanel, HarEntryDetails, type HarPanelProps, type HarPanelBodySource, type HarEntryDetailsProps } from './data/har/HarPanel.js';
127
127
  export type { HAREntry, HARRequest, HARResponse, HARContent, HARCreator, HARFile, HARHeader, HARLog, HARPostData, } from './data/har/types.js';
128
+ export * from './data/traces/index.js';
128
129
  //# sourceMappingURL=data.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EACL,KAAK,EACL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EACL,QAAQ,EACR,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,QAAQ,GACd,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACb,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,4BAA4B,EAC5B,yBAAyB,EACzB,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,GAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,8BAA8B,EAC9B,+BAA+B,EAC/B,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,qBAAqB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,SAAS,EACT,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,KAAK,eAAe,EACpB,KAAK,aAAa,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACtF,OAAO,EACL,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,aAAa,EACb,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,SAAS,GACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EACL,UAAU,EACV,eAAe,EACf,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,UAAU,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,IAAI,EACJ,SAAS,EACT,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,uBAAuB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,YAAY,EACZ,YAAY,IAAI,aAAa,EAC7B,eAAe,EACf,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,IAAI,kBAAkB,EAC5C,KAAK,yBAAyB,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,KAAK,UAAU,EACf,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,GAChC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,UAAU,EACV,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EACL,SAAS,EACT,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,mBAAmB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjF,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,+BAA+B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,GACjC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,KAAK,qBAAqB,GAC3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,qBAAqB,GAC3B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzF,OAAO,EACL,eAAe,EACf,KAAK,oBAAoB,GAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,GACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,UAAU,EACV,QAAQ,EACR,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,QAAQ,GACd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,YAAY,EACZ,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,kBAAkB,EAClB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,aAAa,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,kBAAkB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC5H,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,KAAK,WAAW,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,KAAK,eAAe,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,EACL,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAClF,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,EAC/B,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,mBAAmB,GACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EACL,cAAc,EACd,cAAc,EACd,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,eAAe,EACf,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EACf,cAAc,EACd,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,YAAY,GACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,aAAa,EACb,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EACL,UAAU,EACV,YAAY,EACZ,KAAK,cAAc,EACnB,KAAK,YAAY,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAChG,OAAO,EACL,sBAAsB,EACtB,KAAK,2BAA2B,GACjC,MAAM,2CAA2C,CAAC;AACnD,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,UAAU,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,GAC5B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,aAAa,EACb,KAAK,iBAAiB,EACtB,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,aAAa,GACd,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,iBAAiB,GAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,cAAc,EACd,KAAK,WAAW,GACjB,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAC9B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,mBAAmB,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,KAAK,iBAAiB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACxI,YAAY,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,UAAU,EACV,UAAU,EACV,OAAO,EACP,SAAS,EACT,MAAM,EACN,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAE1B,cAAc,eAAe,CAAC"}
package/dist/data.js CHANGED
@@ -131,10 +131,14 @@ import { FixtureEditor } from "./data/FixtureEditor/FixtureEditor.js";
131
131
  import { GitChangedFilesSummary, GitCommitList, GitDiffPanel, GitFileList } from "./data/git/GitChangeList.js";
132
132
  import { LINT_SEVERITIES, TEST_OUTCOMES, TEST_TOOLS, toolKeyFor, toolMark } from "./data/test-runner/marks.js";
133
133
  import { LintSeverityIcon, OutcomeIcon, ToolIcon } from "./data/test-runner/MarkIcons.js";
134
+ import { ProcessTraceTree } from "./data/traces/ProcessTraceTree.js";
134
135
  import { QueryBrowser } from "./data/query-browser/QueryBrowser.js";
135
136
  import { QueryBrowserExecutionError } from "./data/query-browser/QueryBrowser.types.js";
136
137
  import { STATUS_LABELS, aggregateStatusCounts, collapseSingleChildChains, collectFrameworks, filterTests, formatCount, formatTestDuration, hasFailed, hasPending, humanizeName, outcomeFor, statusToneFor, sum, sumNonTaskTests, testStatus, totalDuration } from "./data/test-runner/status.js";
138
+ import { Sparkline } from "./data/traces/Sparkline.js";
139
+ import { SqlTraceTable } from "./data/traces/SqlTraceTable.js";
137
140
  import { StepKindSections, StepOutputs, StepWait } from "./data/verification/stepKindViews.js";
141
+ import { TerminalCastPlayer } from "./data/traces/TerminalCastPlayer.js";
138
142
  import { TestAttempts, TestFailureDetail, TestOutput } from "./data/test-runner/TestFailureDetail.js";
139
143
  import { TestDetailPanel } from "./data/test-runner/TestDetailPanel.js";
140
144
  import { TestFilterBar } from "./data/test-runner/TestFilterBar.js";
@@ -144,6 +148,8 @@ import { TestRunner } from "./data/test-runner/TestRunner.js";
144
148
  import { TestRunnerProvider, useTestRunner } from "./data/test-runner/context.js";
145
149
  import { TestTree } from "./data/test-runner/TestTree.js";
146
150
  import { TestTreeNode } from "./data/test-runner/TestTreeNode.js";
151
+ import { TraceHarView } from "./data/traces/TraceHarView.js";
152
+ import { TraceView } from "./data/traces/TraceView.js";
147
153
  import { UiAccessProtected, UiAccessProtectedDark } from "./icons/components/UiAccessProtected.js";
148
154
  import { UiAccessPublic, UiAccessPublicDark } from "./icons/components/UiAccessPublic.js";
149
155
  import { UiActivity } from "./icons/components/UiActivity.js";
@@ -729,6 +735,7 @@ import { VerificationResults } from "./data/verification/VerificationResults.js"
729
735
  import { annotateRoutePaths, findNodeByRoutePath, slugify } from "./data/test-runner/routePath.js";
730
736
  import { applyFixtureFrontmatterRaw, applyFixtureFrontmatterState, fixtureFrontmatterState, parseFixtureFrontmatter } from "./data/FixtureEditor/fixture-frontmatter.js";
731
737
  import { buildBrief, buildNodeBrief, buildNodeJson, genericCopySections, mergeCopySections } from "./data/test-runner/copy.js";
738
+ import { buildProcessForest, flattenForest } from "./data/traces/process-tree.js";
732
739
  import { cacheQueryKeys, createCacheClient } from "./data/cache-browser/api.js";
733
740
  import { changeIconAliases, getChangeIcon } from "./icons/changeIconAliases.js";
734
741
  import { clickyIconProvider, iconsByConsumerName } from "./icons/registry.js";
@@ -736,8 +743,11 @@ import { clockTime, formatDelay, formatExportValue, policySummary, readStepDetai
736
743
  import { createChecklistMarkdown, createFenceMarkdown, fixtureFenceKind, fixtureFenceSchemaAliases, fixtureFenceSnippetInfo, parseFixtureYaml, resolveFixtureFenceSchema, schemaKeys, stringifyFixtureYaml } from "./data/FixtureEditor/fixture-blocks.js";
737
744
  import { cycleFilterState, decodeFilterState, emptyTestFilters, encodeFilterState, filterStateToRecord, matchesFilterState, recordToFilterState } from "./data/test-runner/filterState.js";
738
745
  import { emptyVerifySummary, summarizeVerifyNodes } from "./data/verification/verify-report.js";
746
+ import { exchangeToHarEntry } from "./data/traces/har-adapter.js";
739
747
  import { formatGitCommitDateHeader } from "./data/git/git-dates.js";
748
+ import { formatStatementDuration, groupStatements } from "./data/traces/sql-trace.js";
740
749
  import { isLeaf } from "./data/cache-browser/types.js";
750
+ import { parseCast } from "./data/traces/cast.js";
741
751
  import { programmingIconCatalog } from "./icons/programmingCatalog.js";
742
752
  import { routeEdges } from "./data/graph-edge-routing.js";
743
753
  import { useClickyExport } from "./data/clicky-export/useClickyExport.js";
@@ -820,6 +830,7 @@ export {
820
830
  ObjectGraph,
821
831
  OutcomeIcon,
822
832
  PrettyStackTrace,
833
+ ProcessTraceTree,
823
834
  ProgressBar,
824
835
  ProgressBars,
825
836
  PromptBanner,
@@ -839,6 +850,8 @@ export {
839
850
  ServerTimingBadge,
840
851
  SignedDeltaBar,
841
852
  SortableHeader,
853
+ Sparkline,
854
+ SqlTraceTable,
842
855
  StackFrameRow,
843
856
  StackTrace,
844
857
  StackedStatusBar,
@@ -860,6 +873,7 @@ export {
860
873
  TaskMetadataChips,
861
874
  TaskProgress,
862
875
  TaskStreamTabs,
876
+ TerminalCastPlayer,
863
877
  TestAttempts,
864
878
  TestDetailPanel,
865
879
  TestFailureDetail,
@@ -878,6 +892,8 @@ export {
878
892
  TimeseriesPanel,
879
893
  Timestamp,
880
894
  ToolIcon,
895
+ TraceHarView,
896
+ TraceView,
881
897
  Tree,
882
898
  TreeGroupHeader,
883
899
  TreeNode,
@@ -1973,6 +1989,7 @@ export {
1973
1989
  buildMarkdownPreviewUrl,
1974
1990
  buildNodeBrief,
1975
1991
  buildNodeJson,
1992
+ buildProcessForest,
1976
1993
  buildSchemaTree,
1977
1994
  buildSchemaViewerTree,
1978
1995
  buildStepBranchTree,
@@ -2015,6 +2032,7 @@ export {
2015
2032
  emptyTestFilters,
2016
2033
  emptyVerifySummary,
2017
2034
  encodeFilterState,
2035
+ exchangeToHarEntry,
2018
2036
  filterStateToRecord,
2019
2037
  filterTests,
2020
2038
  findNodeByRoutePath,
@@ -2023,6 +2041,7 @@ export {
2023
2041
  fixtureFenceSchemaAliases,
2024
2042
  fixtureFenceSnippetInfo,
2025
2043
  fixtureFrontmatterState,
2044
+ flattenForest,
2026
2045
  formatExclude as formatCallGraphExclude,
2027
2046
  formatCount,
2028
2047
  formatDateTimeRelative,
@@ -2033,6 +2052,7 @@ export {
2033
2052
  formatRelativeTime,
2034
2053
  formatReplicaCounts,
2035
2054
  formatServerTimingDuration,
2055
+ formatStatementDuration,
2036
2056
  formatTestDuration,
2037
2057
  formatTimestamp,
2038
2058
  frameHasSource,
@@ -2041,6 +2061,7 @@ export {
2041
2061
  getChangeIcon,
2042
2062
  getVersionInfo,
2043
2063
  groupRecords,
2064
+ groupStatements,
2044
2065
  hasFailed,
2045
2066
  hasHoverMeta,
2046
2067
  hasPending,
@@ -2077,6 +2098,7 @@ export {
2077
2098
  outcomeFor,
2078
2099
  parseBoundsValue,
2079
2100
  parseExclude as parseCallGraphExclude,
2101
+ parseCast,
2080
2102
  parseDiagnosticsStackTrace,
2081
2103
  parseDurationBoundsValue,
2082
2104
  parseFixtureFrontmatter,
package/dist/data.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"data.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"data.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}