@flanksource/clicky-ui 0.3.47 → 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 (255) hide show
  1. package/README.md +49 -0
  2. package/dist/comments/CommentSidePanel.cjs +10 -4
  3. package/dist/comments/CommentSidePanel.cjs.map +1 -1
  4. package/dist/comments/CommentSidePanel.d.ts +2 -0
  5. package/dist/comments/CommentSidePanel.d.ts.map +1 -1
  6. package/dist/comments/CommentSidePanel.js +10 -4
  7. package/dist/comments/CommentSidePanel.js.map +1 -1
  8. package/dist/comments/CommentThread.cjs +2 -0
  9. package/dist/comments/CommentThread.cjs.map +1 -1
  10. package/dist/comments/CommentThread.d.ts +2 -1
  11. package/dist/comments/CommentThread.d.ts.map +1 -1
  12. package/dist/comments/CommentThread.js +2 -0
  13. package/dist/comments/CommentThread.js.map +1 -1
  14. package/dist/comments/CommentThreadList.cjs +3 -0
  15. package/dist/comments/CommentThreadList.cjs.map +1 -1
  16. package/dist/comments/CommentThreadList.d.ts +3 -1
  17. package/dist/comments/CommentThreadList.d.ts.map +1 -1
  18. package/dist/comments/CommentThreadList.js +3 -0
  19. package/dist/comments/CommentThreadList.js.map +1 -1
  20. package/dist/data/CodeLine.cjs +4 -2
  21. package/dist/data/CodeLine.cjs.map +1 -1
  22. package/dist/data/CodeLine.d.ts.map +1 -1
  23. package/dist/data/CodeLine.js +4 -2
  24. package/dist/data/CodeLine.js.map +1 -1
  25. package/dist/data/DataTable.cjs +18 -8
  26. package/dist/data/DataTable.cjs.map +1 -1
  27. package/dist/data/DataTable.d.ts +4 -0
  28. package/dist/data/DataTable.d.ts.map +1 -1
  29. package/dist/data/DataTable.js +18 -8
  30. package/dist/data/DataTable.js.map +1 -1
  31. package/dist/data/SymbolBadge.cjs +61 -0
  32. package/dist/data/SymbolBadge.cjs.map +1 -0
  33. package/dist/data/SymbolBadge.d.ts +21 -0
  34. package/dist/data/SymbolBadge.d.ts.map +1 -0
  35. package/dist/data/SymbolBadge.js +61 -0
  36. package/dist/data/SymbolBadge.js.map +1 -0
  37. package/dist/data/TaskManager.cjs +183 -159
  38. package/dist/data/TaskManager.cjs.map +1 -1
  39. package/dist/data/TaskManager.d.ts +3 -1
  40. package/dist/data/TaskManager.d.ts.map +1 -1
  41. package/dist/data/TaskManager.js +185 -161
  42. package/dist/data/TaskManager.js.map +1 -1
  43. package/dist/data/TaskManagerButton.cjs +1 -0
  44. package/dist/data/TaskManagerButton.cjs.map +1 -1
  45. package/dist/data/TaskManagerButton.js +1 -0
  46. package/dist/data/TaskManagerButton.js.map +1 -1
  47. package/dist/data/TaskProgress.cjs +13 -7
  48. package/dist/data/TaskProgress.cjs.map +1 -1
  49. package/dist/data/TaskProgress.d.ts +3 -1
  50. package/dist/data/TaskProgress.d.ts.map +1 -1
  51. package/dist/data/TaskProgress.js +13 -7
  52. package/dist/data/TaskProgress.js.map +1 -1
  53. package/dist/data/test-runner/TestDetailPanel.cjs +26 -12
  54. package/dist/data/test-runner/TestDetailPanel.cjs.map +1 -1
  55. package/dist/data/test-runner/TestDetailPanel.d.ts.map +1 -1
  56. package/dist/data/test-runner/TestDetailPanel.js +27 -13
  57. package/dist/data/test-runner/TestDetailPanel.js.map +1 -1
  58. package/dist/data/test-runner/TestRunner.cjs +6 -0
  59. package/dist/data/test-runner/TestRunner.cjs.map +1 -1
  60. package/dist/data/test-runner/TestRunner.d.ts +3 -1
  61. package/dist/data/test-runner/TestRunner.d.ts.map +1 -1
  62. package/dist/data/test-runner/TestRunner.js +6 -0
  63. package/dist/data/test-runner/TestRunner.js.map +1 -1
  64. package/dist/data/test-runner/TestTreeNode.cjs +2 -1
  65. package/dist/data/test-runner/TestTreeNode.cjs.map +1 -1
  66. package/dist/data/test-runner/TestTreeNode.d.ts.map +1 -1
  67. package/dist/data/test-runner/TestTreeNode.js +2 -1
  68. package/dist/data/test-runner/TestTreeNode.js.map +1 -1
  69. package/dist/data/test-runner/adapter.cjs +4 -0
  70. package/dist/data/test-runner/adapter.cjs.map +1 -1
  71. package/dist/data/test-runner/adapter.d.ts +9 -0
  72. package/dist/data/test-runner/adapter.d.ts.map +1 -1
  73. package/dist/data/test-runner/adapter.js +4 -0
  74. package/dist/data/test-runner/adapter.js.map +1 -1
  75. package/dist/data/test-runner/context.cjs.map +1 -1
  76. package/dist/data/test-runner/context.d.ts +2 -0
  77. package/dist/data/test-runner/context.d.ts.map +1 -1
  78. package/dist/data/test-runner/context.js.map +1 -1
  79. package/dist/data/test-runner/index.d.ts +2 -2
  80. package/dist/data/test-runner/index.d.ts.map +1 -1
  81. package/dist/data/test-runner/marks.cjs +42 -1
  82. package/dist/data/test-runner/marks.cjs.map +1 -1
  83. package/dist/data/test-runner/marks.d.ts +10 -0
  84. package/dist/data/test-runner/marks.d.ts.map +1 -1
  85. package/dist/data/test-runner/marks.js +42 -1
  86. package/dist/data/test-runner/marks.js.map +1 -1
  87. package/dist/data/traces/ProcessTraceTree.cjs +93 -0
  88. package/dist/data/traces/ProcessTraceTree.cjs.map +1 -0
  89. package/dist/data/traces/ProcessTraceTree.d.ts +24 -0
  90. package/dist/data/traces/ProcessTraceTree.d.ts.map +1 -0
  91. package/dist/data/traces/ProcessTraceTree.js +93 -0
  92. package/dist/data/traces/ProcessTraceTree.js.map +1 -0
  93. package/dist/data/traces/Sparkline.cjs +23 -0
  94. package/dist/data/traces/Sparkline.cjs.map +1 -0
  95. package/dist/data/traces/Sparkline.d.ts +13 -0
  96. package/dist/data/traces/Sparkline.d.ts.map +1 -0
  97. package/dist/data/traces/Sparkline.js +23 -0
  98. package/dist/data/traces/Sparkline.js.map +1 -0
  99. package/dist/data/traces/SqlTraceTable.cjs +104 -0
  100. package/dist/data/traces/SqlTraceTable.cjs.map +1 -0
  101. package/dist/data/traces/SqlTraceTable.d.ts +19 -0
  102. package/dist/data/traces/SqlTraceTable.d.ts.map +1 -0
  103. package/dist/data/traces/SqlTraceTable.js +104 -0
  104. package/dist/data/traces/SqlTraceTable.js.map +1 -0
  105. package/dist/data/traces/TerminalCastPlayer.cjs +162 -0
  106. package/dist/data/traces/TerminalCastPlayer.cjs.map +1 -0
  107. package/dist/data/traces/TerminalCastPlayer.d.ts +21 -0
  108. package/dist/data/traces/TerminalCastPlayer.d.ts.map +1 -0
  109. package/dist/data/traces/TerminalCastPlayer.js +162 -0
  110. package/dist/data/traces/TerminalCastPlayer.js.map +1 -0
  111. package/dist/data/traces/TraceHarView.cjs +15 -0
  112. package/dist/data/traces/TraceHarView.cjs.map +1 -0
  113. package/dist/data/traces/TraceHarView.d.ts +13 -0
  114. package/dist/data/traces/TraceHarView.d.ts.map +1 -0
  115. package/dist/data/traces/TraceHarView.js +15 -0
  116. package/dist/data/traces/TraceHarView.js.map +1 -0
  117. package/dist/data/traces/TraceView.cjs +54 -0
  118. package/dist/data/traces/TraceView.cjs.map +1 -0
  119. package/dist/data/traces/TraceView.d.ts +18 -0
  120. package/dist/data/traces/TraceView.d.ts.map +1 -0
  121. package/dist/data/traces/TraceView.js +54 -0
  122. package/dist/data/traces/TraceView.js.map +1 -0
  123. package/dist/data/traces/cast.cjs +81 -0
  124. package/dist/data/traces/cast.cjs.map +1 -0
  125. package/dist/data/traces/cast.d.ts +9 -0
  126. package/dist/data/traces/cast.d.ts.map +1 -0
  127. package/dist/data/traces/cast.js +81 -0
  128. package/dist/data/traces/cast.js.map +1 -0
  129. package/dist/data/traces/fixtures.d.ts +8 -0
  130. package/dist/data/traces/fixtures.d.ts.map +1 -0
  131. package/dist/data/traces/har-adapter.cjs +83 -0
  132. package/dist/data/traces/har-adapter.cjs.map +1 -0
  133. package/dist/data/traces/har-adapter.d.ts +13 -0
  134. package/dist/data/traces/har-adapter.d.ts.map +1 -0
  135. package/dist/data/traces/har-adapter.js +83 -0
  136. package/dist/data/traces/har-adapter.js.map +1 -0
  137. package/dist/data/traces/index.d.ts +12 -0
  138. package/dist/data/traces/index.d.ts.map +1 -0
  139. package/dist/data/traces/process-tree.cjs +53 -0
  140. package/dist/data/traces/process-tree.cjs.map +1 -0
  141. package/dist/data/traces/process-tree.d.ts +21 -0
  142. package/dist/data/traces/process-tree.d.ts.map +1 -0
  143. package/dist/data/traces/process-tree.js +53 -0
  144. package/dist/data/traces/process-tree.js.map +1 -0
  145. package/dist/data/traces/sql-trace.cjs +39 -0
  146. package/dist/data/traces/sql-trace.cjs.map +1 -0
  147. package/dist/data/traces/sql-trace.d.ts +31 -0
  148. package/dist/data/traces/sql-trace.d.ts.map +1 -0
  149. package/dist/data/traces/sql-trace.js +39 -0
  150. package/dist/data/traces/sql-trace.js.map +1 -0
  151. package/dist/data/traces/terminal-screen.cjs +270 -0
  152. package/dist/data/traces/terminal-screen.cjs.map +1 -0
  153. package/dist/data/traces/terminal-screen.d.ts +45 -0
  154. package/dist/data/traces/terminal-screen.d.ts.map +1 -0
  155. package/dist/data/traces/terminal-screen.js +270 -0
  156. package/dist/data/traces/terminal-screen.js.map +1 -0
  157. package/dist/data/traces/terminal-timeline.cjs +48 -0
  158. package/dist/data/traces/terminal-timeline.cjs.map +1 -0
  159. package/dist/data/traces/terminal-timeline.d.ts +26 -0
  160. package/dist/data/traces/terminal-timeline.d.ts.map +1 -0
  161. package/dist/data/traces/terminal-timeline.js +48 -0
  162. package/dist/data/traces/terminal-timeline.js.map +1 -0
  163. package/dist/data/traces/types.d.ts +139 -0
  164. package/dist/data/traces/types.d.ts.map +1 -0
  165. package/dist/data/verification/VerificationResults.cjs +4 -0
  166. package/dist/data/verification/VerificationResults.cjs.map +1 -1
  167. package/dist/data/verification/VerificationResults.d.ts +3 -1
  168. package/dist/data/verification/VerificationResults.d.ts.map +1 -1
  169. package/dist/data/verification/VerificationResults.js +4 -0
  170. package/dist/data/verification/VerificationResults.js.map +1 -1
  171. package/dist/data/verification/adapterViews.cjs +12 -3
  172. package/dist/data/verification/adapterViews.cjs.map +1 -1
  173. package/dist/data/verification/adapterViews.d.ts +4 -1
  174. package/dist/data/verification/adapterViews.d.ts.map +1 -1
  175. package/dist/data/verification/adapterViews.js +12 -3
  176. package/dist/data/verification/adapterViews.js.map +1 -1
  177. package/dist/data/verification/adapters.cjs +53 -10
  178. package/dist/data/verification/adapters.cjs.map +1 -1
  179. package/dist/data/verification/adapters.d.ts +7 -1
  180. package/dist/data/verification/adapters.d.ts.map +1 -1
  181. package/dist/data/verification/adapters.js +53 -10
  182. package/dist/data/verification/adapters.js.map +1 -1
  183. package/dist/data/verification/index.d.ts +4 -2
  184. package/dist/data/verification/index.d.ts.map +1 -1
  185. package/dist/data/verification/stepKind.cjs +217 -0
  186. package/dist/data/verification/stepKind.cjs.map +1 -0
  187. package/dist/data/verification/stepKind.d.ts +87 -0
  188. package/dist/data/verification/stepKind.d.ts.map +1 -0
  189. package/dist/data/verification/stepKind.js +217 -0
  190. package/dist/data/verification/stepKind.js.map +1 -0
  191. package/dist/data/verification/stepKindViews.cjs +111 -0
  192. package/dist/data/verification/stepKindViews.cjs.map +1 -0
  193. package/dist/data/verification/stepKindViews.d.ts +18 -0
  194. package/dist/data/verification/stepKindViews.d.ts.map +1 -0
  195. package/dist/data/verification/stepKindViews.js +111 -0
  196. package/dist/data/verification/stepKindViews.js.map +1 -0
  197. package/dist/data/verification/verifyReportTests.cjs +1 -0
  198. package/dist/data/verification/verifyReportTests.cjs.map +1 -1
  199. package/dist/data/verification/verifyReportTests.d.ts +2 -1
  200. package/dist/data/verification/verifyReportTests.d.ts.map +1 -1
  201. package/dist/data/verification/verifyReportTests.js +1 -0
  202. package/dist/data/verification/verifyReportTests.js.map +1 -1
  203. package/dist/data/version-info.cjs +3 -3
  204. package/dist/data/version-info.cjs.map +1 -1
  205. package/dist/data/version-info.js +3 -3
  206. package/dist/data/version-info.js.map +1 -1
  207. package/dist/data.cjs +36 -0
  208. package/dist/data.cjs.map +1 -1
  209. package/dist/data.d.ts +2 -0
  210. package/dist/data.d.ts.map +1 -1
  211. package/dist/data.js +38 -2
  212. package/dist/data.js.map +1 -1
  213. package/dist/index.cjs +38 -0
  214. package/dist/index.cjs.map +1 -1
  215. package/dist/index.js +40 -2
  216. package/dist/index.js.map +1 -1
  217. package/dist/rpc/FilterForm.cjs +9 -0
  218. package/dist/rpc/FilterForm.cjs.map +1 -1
  219. package/dist/rpc/FilterForm.d.ts +5 -1
  220. package/dist/rpc/FilterForm.d.ts.map +1 -1
  221. package/dist/rpc/FilterForm.js +9 -0
  222. package/dist/rpc/FilterForm.js.map +1 -1
  223. package/dist/rpc/OperationArgsForm.cjs +153 -0
  224. package/dist/rpc/OperationArgsForm.cjs.map +1 -0
  225. package/dist/rpc/OperationArgsForm.d.ts +16 -0
  226. package/dist/rpc/OperationArgsForm.d.ts.map +1 -0
  227. package/dist/rpc/OperationArgsForm.js +153 -0
  228. package/dist/rpc/OperationArgsForm.js.map +1 -0
  229. package/dist/rpc/OperationScheduleDialog.cjs +61 -17
  230. package/dist/rpc/OperationScheduleDialog.cjs.map +1 -1
  231. package/dist/rpc/OperationScheduleDialog.d.ts +3 -0
  232. package/dist/rpc/OperationScheduleDialog.d.ts.map +1 -1
  233. package/dist/rpc/OperationScheduleDialog.js +62 -18
  234. package/dist/rpc/OperationScheduleDialog.js.map +1 -1
  235. package/dist/rpc/OperationSchedules.cjs +6 -1
  236. package/dist/rpc/OperationSchedules.cjs.map +1 -1
  237. package/dist/rpc/OperationSchedules.d.ts.map +1 -1
  238. package/dist/rpc/OperationSchedules.js +6 -1
  239. package/dist/rpc/OperationSchedules.js.map +1 -1
  240. package/dist/rpc/operation-schedule-model.cjs +0 -7
  241. package/dist/rpc/operation-schedule-model.cjs.map +1 -1
  242. package/dist/rpc/operation-schedule-model.d.ts +0 -2
  243. package/dist/rpc/operation-schedule-model.d.ts.map +1 -1
  244. package/dist/rpc/operation-schedule-model.js +0 -7
  245. package/dist/rpc/operation-schedule-model.js.map +1 -1
  246. package/dist/rpc/operation-schedule-types.d.ts +6 -1
  247. package/dist/rpc/operation-schedule-types.d.ts.map +1 -1
  248. package/dist/rpc.cjs +2 -0
  249. package/dist/rpc.cjs.map +1 -1
  250. package/dist/rpc.d.ts +1 -0
  251. package/dist/rpc.d.ts.map +1 -1
  252. package/dist/rpc.js +2 -0
  253. package/dist/rpc.js.map +1 -1
  254. package/dist/styles.css +1 -1
  255. package/package.json +1 -1
@@ -0,0 +1,111 @@
1
+ import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { cn } from "../../lib/utils.js";
3
+ import { Badge } from "../Badge.js";
4
+ import { JsonView } from "../JsonView.js";
5
+ import { policySummary, formatDelay, formatExportValue } from "./stepKind.js";
6
+ function Section({ name, title, aside, children }) {
7
+ return /* @__PURE__ */ jsxs("section", { className: "min-w-0 space-y-1.5", "data-step-section": name, children: [
8
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
9
+ /* @__PURE__ */ jsx("div", { className: "text-[10px] uppercase tracking-wide text-muted-foreground", children: title }),
10
+ aside
11
+ ] }),
12
+ children
13
+ ] });
14
+ }
15
+ const OUTCOME_BADGE = {
16
+ satisfied: { label: "Satisfied", tone: "success" },
17
+ failed: { label: "Failed", tone: "danger" },
18
+ timeout: { label: "Timed out", tone: "warning" }
19
+ };
20
+ function StepWait({ wait }) {
21
+ const { label, tone } = OUTCOME_BADGE[wait.outcome];
22
+ const { policy } = wait;
23
+ const schedule = policySummary(policy);
24
+ return /* @__PURE__ */ jsxs("section", { className: "min-w-0 text-[11px]", "data-step-section": "wait", children: [
25
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-2", "data-wait-summary": "", children: [
26
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 text-muted-foreground", children: "Wait" }),
27
+ /* @__PURE__ */ jsx("code", { className: "min-w-0 shrink truncate font-mono", title: policy.until ?? "Service readiness", children: policy.until ?? "Service readiness" }),
28
+ /* @__PURE__ */ jsx(Badge, { size: "xs", clickToCopy: false, children: formatDelay(wait.durationMs) }),
29
+ /* @__PURE__ */ jsx(Badge, { size: "xs", clickToCopy: false, tone, children: label }),
30
+ wait.outputs !== void 0 && /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 truncate font-mono text-muted-foreground", "data-wait-output": "", title: "Full value in Outputs", children: formatExportValue(wait.outputs) })
31
+ ] }),
32
+ (schedule || policy.failWhen || wait.error || wait.trace) && /* @__PURE__ */ jsxs("details", { className: "mt-1 text-muted-foreground", children: [
33
+ /* @__PURE__ */ jsx("summary", { className: "cursor-pointer", children: "Wait details" }),
34
+ /* @__PURE__ */ jsxs("div", { className: "mt-1 space-y-1 break-words", children: [
35
+ schedule && /* @__PURE__ */ jsx("p", { children: schedule }),
36
+ policy.failWhen && /* @__PURE__ */ jsxs("p", { children: [
37
+ "failWhen: ",
38
+ /* @__PURE__ */ jsx("code", { children: policy.failWhen })
39
+ ] }),
40
+ wait.error && /* @__PURE__ */ jsx("p", { className: "text-destructive", children: wait.error }),
41
+ wait.trace && /* @__PURE__ */ jsx("pre", { className: "whitespace-pre-wrap", children: wait.trace })
42
+ ] })
43
+ ] })
44
+ ] });
45
+ }
46
+ function ExportsTable({ exports: exports$1 }) {
47
+ return /* @__PURE__ */ jsxs("table", { className: "w-full table-fixed border-collapse text-left text-[11px]", children: [
48
+ /* @__PURE__ */ jsx("thead", { className: "text-muted-foreground", children: /* @__PURE__ */ jsxs("tr", { className: "border-b border-border", children: [
49
+ /* @__PURE__ */ jsx("th", { className: "w-[28%] py-1 pr-2 font-medium", children: "Name" }),
50
+ /* @__PURE__ */ jsx("th", { className: "py-1 pr-2 font-medium", children: "Value" }),
51
+ /* @__PURE__ */ jsx("th", { className: "w-[18%] py-1 font-medium", children: "Step" })
52
+ ] }) }),
53
+ /* @__PURE__ */ jsx("tbody", { className: "font-mono", children: exports$1.map((entry) => /* @__PURE__ */ jsxs("tr", { className: "border-b border-border/60 align-top last:border-0", children: [
54
+ /* @__PURE__ */ jsx("td", { className: "break-words py-1 pr-2", children: entry.name }),
55
+ /* @__PURE__ */ jsx("td", { className: "break-all py-1 pr-2", children: formatExportValue(entry.value) }),
56
+ /* @__PURE__ */ jsx("td", { className: "break-words py-1 text-muted-foreground", children: entry.step })
57
+ ] }, entry.name)) })
58
+ ] });
59
+ }
60
+ const ALERT_ROW = "border-red-500/60 bg-red-500/10 text-red-700 dark:text-red-400";
61
+ function isAlarming(event) {
62
+ return event.type === "alert" || event.type === "pageerror" || event.type === "response" && (event.status ?? 0) >= 400;
63
+ }
64
+ function EventRow({ event }) {
65
+ const alarming = isAlarming(event);
66
+ return /* @__PURE__ */ jsxs(
67
+ "li",
68
+ {
69
+ className: cn("space-y-0.5 rounded border px-2 py-1 text-[11px]", alarming ? ALERT_ROW : "border-border"),
70
+ "data-event-type": event.type,
71
+ children: [
72
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [
73
+ /* @__PURE__ */ jsx(Badge, { size: "xs", clickToCopy: false, tone: alarming ? "danger" : "neutral", children: event.type }),
74
+ event.status !== void 0 && /* @__PURE__ */ jsx("span", { className: "font-mono", children: event.status }),
75
+ event.text && /* @__PURE__ */ jsx("span", { className: cn("min-w-0 break-words", event.type === "alert" && "font-medium"), children: event.text })
76
+ ] }),
77
+ event.url && /* @__PURE__ */ jsx("div", { className: "break-all font-mono text-[10px] opacity-80", children: event.url }),
78
+ event.detail && /* @__PURE__ */ jsx("p", { className: "whitespace-pre-wrap break-words", children: event.detail })
79
+ ]
80
+ }
81
+ );
82
+ }
83
+ function StepKindSections({ step, renderWait }) {
84
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
85
+ /* @__PURE__ */ jsxs("div", { className: "text-[11px] text-muted-foreground", "data-step-ref": "", children: [
86
+ step.step.kind,
87
+ " · ",
88
+ step.step.id,
89
+ step.background && " · background"
90
+ ] }),
91
+ step.wait && (renderWait ? renderWait(step.wait) : /* @__PURE__ */ jsx(StepWait, { wait: step.wait })),
92
+ step.events.length > 0 && /* @__PURE__ */ jsx(Section, { name: "events", title: "Events", children: /* @__PURE__ */ jsx("ul", { className: "space-y-1", children: step.events.map((event, index) => /* @__PURE__ */ jsx(EventRow, { event }, index)) }) }),
93
+ step.exports.length > 0 && /* @__PURE__ */ jsx(Section, { name: "exports", title: "Exports", children: /* @__PURE__ */ jsx(ExportsTable, { exports: step.exports }) })
94
+ ] });
95
+ }
96
+ function StepOutputs({ outputs }) {
97
+ return /* @__PURE__ */ jsx("div", { className: "min-w-0 p-density-4", "data-step-section": "outputs", children: /* @__PURE__ */ jsx(JsonView, { data: outputs }) });
98
+ }
99
+ function MalformedStepDetail({ error }) {
100
+ return /* @__PURE__ */ jsxs("div", { role: "alert", className: "rounded border border-red-500/60 bg-red-500/10 px-2 py-1 text-xs text-red-700 dark:text-red-400", children: [
101
+ "Malformed step detail: ",
102
+ error
103
+ ] });
104
+ }
105
+ export {
106
+ MalformedStepDetail,
107
+ StepKindSections,
108
+ StepOutputs,
109
+ StepWait
110
+ };
111
+ //# sourceMappingURL=stepKindViews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stepKindViews.js","sources":["../../../src/data/verification/stepKindViews.tsx"],"sourcesContent":["// Detail sections for a typed fixture step (see stepKind.ts): the wait\n// timeline, retry attempts, exported variables, outputs and a background\n// watcher's events. Rendered inside FixtureDetail; split out so adapterViews.tsx\n// stays focused on the command/CEL body.\n\nimport type { ReactNode } from \"react\";\nimport { cn } from \"../../lib/utils\";\nimport { Badge, type BadgeTone } from \"../Badge\";\nimport { JsonView } from \"../JsonView\";\nimport {\n formatDelay,\n formatExportValue,\n policySummary,\n type StepDetail,\n type StepExport,\n type WaitDetail,\n type WaitOutcome,\n type WatcherEvent,\n} from \"./stepKind\";\n\nfunction Section({ name, title, aside, children }: { name: string; title: string; aside?: ReactNode; children: ReactNode }) {\n return (\n <section className=\"min-w-0 space-y-1.5\" data-step-section={name}>\n <div className=\"flex items-center gap-2\">\n <div className=\"text-[10px] uppercase tracking-wide text-muted-foreground\">{title}</div>\n {aside}\n </div>\n {children}\n </section>\n );\n}\n\n// ── Wait ────────────────────────────────────────────────────────────────────\n\nconst OUTCOME_BADGE: Record<WaitOutcome, { label: string; tone: BadgeTone }> = {\n satisfied: { label: \"Satisfied\", tone: \"success\" },\n failed: { label: \"Failed\", tone: \"danger\" },\n timeout: { label: \"Timed out\", tone: \"warning\" },\n};\n\nexport function StepWait({ wait }: { wait: WaitDetail }) {\n const { label, tone } = OUTCOME_BADGE[wait.outcome];\n const { policy } = wait;\n const schedule = policySummary(policy);\n return (\n <section className=\"min-w-0 text-[11px]\" data-step-section=\"wait\">\n <div className=\"flex min-w-0 items-center gap-2\" data-wait-summary=\"\">\n <span className=\"shrink-0 text-muted-foreground\">Wait</span>\n <code className=\"min-w-0 shrink truncate font-mono\" title={policy.until ?? \"Service readiness\"}>{policy.until ?? \"Service readiness\"}</code>\n <Badge size=\"xs\" clickToCopy={false}>{formatDelay(wait.durationMs)}</Badge>\n <Badge size=\"xs\" clickToCopy={false} tone={tone}>{label}</Badge>\n {wait.outputs !== undefined && <span className=\"min-w-0 flex-1 truncate font-mono text-muted-foreground\" data-wait-output=\"\" title=\"Full value in Outputs\">{formatExportValue(wait.outputs)}</span>}\n </div>\n {(schedule || policy.failWhen || wait.error || wait.trace) && (\n <details className=\"mt-1 text-muted-foreground\">\n <summary className=\"cursor-pointer\">Wait details</summary>\n <div className=\"mt-1 space-y-1 break-words\">\n {schedule && <p>{schedule}</p>}\n {policy.failWhen && <p>failWhen: <code>{policy.failWhen}</code></p>}\n {wait.error && <p className=\"text-destructive\">{wait.error}</p>}\n {wait.trace && <pre className=\"whitespace-pre-wrap\">{wait.trace}</pre>}\n </div>\n </details>\n )}\n </section>\n );\n}\n\n// ── Exports ─────────────────────────────────────────────────────────────────\n\nfunction ExportsTable({ exports }: { exports: StepExport[] }) {\n return (\n <table className=\"w-full table-fixed border-collapse text-left text-[11px]\">\n <thead className=\"text-muted-foreground\">\n <tr className=\"border-b border-border\">\n <th className=\"w-[28%] py-1 pr-2 font-medium\">Name</th>\n <th className=\"py-1 pr-2 font-medium\">Value</th>\n <th className=\"w-[18%] py-1 font-medium\">Step</th>\n </tr>\n </thead>\n <tbody className=\"font-mono\">\n {exports.map((entry) => (\n <tr key={entry.name} className=\"border-b border-border/60 align-top last:border-0\">\n <td className=\"break-words py-1 pr-2\">{entry.name}</td>\n <td className=\"break-all py-1 pr-2\">{formatExportValue(entry.value)}</td>\n <td className=\"break-words py-1 text-muted-foreground\">{entry.step}</td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n}\n\n// ── Watcher events ──────────────────────────────────────────────────────────\n\nconst ALERT_ROW = \"border-red-500/60 bg-red-500/10 text-red-700 dark:text-red-400\";\n\nfunction isAlarming(event: WatcherEvent): boolean {\n return event.type === \"alert\" || event.type === \"pageerror\" || (event.type === \"response\" && (event.status ?? 0) >= 400);\n}\n\nfunction EventRow({ event }: { event: WatcherEvent }) {\n const alarming = isAlarming(event);\n return (\n <li\n className={cn(\"space-y-0.5 rounded border px-2 py-1 text-[11px]\", alarming ? ALERT_ROW : \"border-border\")}\n data-event-type={event.type}\n >\n <div className=\"flex min-w-0 items-center gap-2\">\n <Badge size=\"xs\" clickToCopy={false} tone={alarming ? \"danger\" : \"neutral\"}>{event.type}</Badge>\n {event.status !== undefined && <span className=\"font-mono\">{event.status}</span>}\n {event.text && <span className={cn(\"min-w-0 break-words\", event.type === \"alert\" && \"font-medium\")}>{event.text}</span>}\n </div>\n {event.url && <div className=\"break-all font-mono text-[10px] opacity-80\">{event.url}</div>}\n {event.detail && <p className=\"whitespace-pre-wrap break-words\">{event.detail}</p>}\n </li>\n );\n}\n\n// ── Whole step ──────────────────────────────────────────────────────────────\n\n/** Execution sections for a typed fixture step; final outputs render separately. */\nexport function StepKindSections({ step, renderWait }: { step: StepDetail; renderWait?: (wait: WaitDetail) => ReactNode }) {\n return (\n <>\n <div className=\"text-[11px] text-muted-foreground\" data-step-ref=\"\">\n {step.step.kind} · {step.step.id}\n {step.background && \" · background\"}\n </div>\n {step.wait && (renderWait ? renderWait(step.wait) : <StepWait wait={step.wait} />)}\n {step.events.length > 0 && (\n <Section name=\"events\" title=\"Events\">\n <ul className=\"space-y-1\">\n {step.events.map((event, index) => (\n <EventRow key={index} event={event} />\n ))}\n </ul>\n </Section>\n )}\n {step.exports.length > 0 && (\n <Section name=\"exports\" title=\"Exports\">\n <ExportsTable exports={step.exports} />\n </Section>\n )}\n </>\n );\n}\n\nexport function StepOutputs({ outputs }: { outputs: unknown }) {\n return (\n <div className=\"min-w-0 p-density-4\" data-step-section=\"outputs\">\n <JsonView data={outputs} />\n </div>\n );\n}\n\n/** Shown in place of the sections when `detail.step` is present but breaks the contract. */\nexport function MalformedStepDetail({ error }: { error: string }) {\n return (\n <div role=\"alert\" className=\"rounded border border-red-500/60 bg-red-500/10 px-2 py-1 text-xs text-red-700 dark:text-red-400\">\n Malformed step detail: {error}\n </div>\n );\n}\n"],"names":["exports"],"mappings":"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"}
@@ -79,6 +79,7 @@ function verifyReportTests(report) {
79
79
  function verifyReportCounts(report) {
80
80
  return status.aggregateStatusCounts(verifyReportTests(report));
81
81
  }
82
+ exports.verifyNodeTest = verifyNodeTest;
82
83
  exports.verifyReportCounts = verifyReportCounts;
83
84
  exports.verifyReportTests = verifyReportTests;
84
85
  //# sourceMappingURL=verifyReportTests.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifyReportTests.cjs","sources":["../../../src/data/verification/verifyReportTests.ts"],"sourcesContent":["// Projects a captain VerifyReport onto the shared test-runner Test model, so\n// VerificationResults can render it with the same TestRunner every other\n// fixture/test surface uses. Ported from gavel's verificationAttempts.ts\n// (executionNodeTest / checklistTest), adapted to VerifyReport's node shape\n// (which already carries boolean status flags, unlike gavel's execution\n// snapshot which carried a single `state` string to translate).\n\nimport { aggregateStatusCounts, type StatusCounts, type Test, type TestSummary } from \"../test-runner\";\nimport type { VerifyChecklistItem, VerifyNode, VerifyReport, VerifySummary } from \"./verify-report\";\n\nconst ACCEPTANCE_CRITERIA_ID = \"acceptance-criteria\";\n\nfunction coerceDuration(duration: unknown): number | undefined {\n return typeof duration === \"number\" && Number.isFinite(duration) ? duration : undefined;\n}\n\n/**\n * Projects a `VerifySummary` onto the test-runner's `TestSummary` shape (see\n * `test-runner/types.ts`), so `sum()`/`aggregateStatusCounts` (test-runner\n * `status.ts`) read a summary-carrying node's counts directly instead of\n * recursing into (possibly elided) children.\n *\n * `Duration` is not carried by `VerifySummary`, so it is reported as 0.\n */\nfunction verifySummaryToTestSummary(summary: VerifySummary): TestSummary {\n return {\n Total: summary.total,\n Passed: summary.passed,\n Failed: summary.failed,\n Warned: summary.warned,\n Skipped: summary.skipped,\n Pending: summary.pending,\n Running: summary.running,\n Timedout: summary.timedout,\n Duration: 0,\n };\n}\n\n// Every field below is optional on both VerifyNode and Test, and the project\n// compiles with exactOptionalPropertyTypes — so an absent field must be an\n// absent key, not a key explicitly set to undefined. Each is assigned only\n// when present rather than copied through in one object literal.\nfunction verifyNodeTest(node: VerifyNode): Test {\n const test: Test = { name: node.name };\n if (node.framework !== undefined) test.framework = node.framework;\n if (node.task_id !== undefined) test.task_id = node.task_id;\n if (node.file !== undefined) test.file = node.file;\n if (node.line !== undefined) test.line = node.line;\n if (node.message !== undefined) test.message = node.message;\n if (node.command !== undefined) test.command = node.command;\n if (node.work_dir !== undefined) test.work_dir = node.work_dir;\n if (node.stdout !== undefined) test.stdout = node.stdout;\n if (node.stderr !== undefined) test.stderr = node.stderr;\n const duration = coerceDuration(node.duration);\n if (duration !== undefined) test.duration = duration;\n if (node.passed !== undefined) test.passed = node.passed;\n if (node.failed !== undefined) test.failed = node.failed;\n if (node.warned !== undefined) test.warned = node.warned;\n if (node.skipped !== undefined) test.skipped = node.skipped;\n if (node.pending !== undefined) test.pending = node.pending;\n if (node.running !== undefined) test.running = node.running;\n if (node.timed_out !== undefined) test.timed_out = node.timed_out;\n if (node.progress !== undefined) test.progress = node.progress;\n if (node.context !== undefined) test.context = node.context;\n if (node.detail !== undefined) test.detail = node.detail;\n // A node carrying its own `summary` (elided children) contributes that\n // summary directly and is never recursed into, even if `children` is also\n // present — parity with Go's `SummarizeNodes` and `summarizeVerifyNodes`.\n if (node.summary !== undefined) {\n test.summary = verifySummaryToTestSummary(node.summary);\n } else if (node.children !== undefined) {\n test.children = node.children.map(verifyNodeTest);\n }\n return test;\n}\n\nfunction checklistItemTest(item: VerifyChecklistItem, index: number): Test {\n const test: Test = {\n name: item.item || `Criterion ${index + 1}`,\n framework: \"checklist\",\n task_id: `${ACCEPTANCE_CRITERIA_ID}:${index}`,\n passed: item.passed === true,\n failed: item.passed === false,\n pending: item.passed !== true && item.passed !== false,\n detail: item,\n };\n if (item.message !== undefined) test.message = item.message;\n return test;\n}\n\n/**\n * Synthesizes the \"Acceptance criteria\" parent node gavel's checklistTest\n * ports. Deliberately carries no status flags of its own — `status.ts`'s\n * `testStatus` checks `pending` before `failed`, so a container explicitly\n * flagged both `failed` and `pending` (one item failed, another is still\n * unjudged) would render as queued instead of failed. Leaving the container\n * status-less lets the shared roll-up (`outcomeFor`/`statusToneFor`: failed\n * → warned → running → pending → passed, via `sum()` over the children) decide\n * instead.\n */\nfunction checklistTest(checklist: VerifyChecklistItem[]): Test | null {\n if (checklist.length === 0) return null;\n const children = checklist.map(checklistItemTest);\n return {\n name: \"Acceptance criteria\",\n framework: \"checklist\",\n task_id: ACCEPTANCE_CRITERIA_ID,\n children,\n };\n}\n\n/** Maps a VerifyReport onto the TestRunner's Test forest, appending a\n * synthesized \"Acceptance criteria\" node for the checklist when present. */\nexport function verifyReportTests(report: VerifyReport): Test[] {\n const tests = (report.tests ?? []).map(verifyNodeTest);\n const checklist = checklistTest(report.checklist ?? []);\n return checklist ? [...tests, checklist] : tests;\n}\n\n/**\n * Status roll-up across the *rendered* forest: `report.tests` plus the\n * synthesized checklist leaves. This is **not** `report.summary` — the\n * producer's tests-only tally (see `summarizeVerifyNodes` in ./verify-report)\n * — since it also counts checklist items, which never appear in `tests`.\n */\nexport function verifyReportCounts(report: VerifyReport): StatusCounts {\n return aggregateStatusCounts(verifyReportTests(report));\n}\n"],"names":["aggregateStatusCounts"],"mappings":"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"}
1
+ {"version":3,"file":"verifyReportTests.cjs","sources":["../../../src/data/verification/verifyReportTests.ts"],"sourcesContent":["// Projects a captain VerifyReport onto the shared test-runner Test model, so\n// VerificationResults can render it with the same TestRunner every other\n// fixture/test surface uses. Ported from gavel's verificationAttempts.ts\n// (executionNodeTest / checklistTest), adapted to VerifyReport's node shape\n// (which already carries boolean status flags, unlike gavel's execution\n// snapshot which carried a single `state` string to translate).\n\nimport { aggregateStatusCounts, type StatusCounts, type Test, type TestSummary } from \"../test-runner\";\nimport type { VerifyChecklistItem, VerifyNode, VerifyReport, VerifySummary } from \"./verify-report\";\n\nconst ACCEPTANCE_CRITERIA_ID = \"acceptance-criteria\";\n\nfunction coerceDuration(duration: unknown): number | undefined {\n return typeof duration === \"number\" && Number.isFinite(duration) ? duration : undefined;\n}\n\n/**\n * Projects a `VerifySummary` onto the test-runner's `TestSummary` shape (see\n * `test-runner/types.ts`), so `sum()`/`aggregateStatusCounts` (test-runner\n * `status.ts`) read a summary-carrying node's counts directly instead of\n * recursing into (possibly elided) children.\n *\n * `Duration` is not carried by `VerifySummary`, so it is reported as 0.\n */\nfunction verifySummaryToTestSummary(summary: VerifySummary): TestSummary {\n return {\n Total: summary.total,\n Passed: summary.passed,\n Failed: summary.failed,\n Warned: summary.warned,\n Skipped: summary.skipped,\n Pending: summary.pending,\n Running: summary.running,\n Timedout: summary.timedout,\n Duration: 0,\n };\n}\n\n// Every field below is optional on both VerifyNode and Test, and the project\n// compiles with exactOptionalPropertyTypes — so an absent field must be an\n// absent key, not a key explicitly set to undefined. Each is assigned only\n// when present rather than copied through in one object literal.\nexport function verifyNodeTest(node: VerifyNode): Test {\n const test: Test = { name: node.name };\n if (node.framework !== undefined) test.framework = node.framework;\n if (node.task_id !== undefined) test.task_id = node.task_id;\n if (node.file !== undefined) test.file = node.file;\n if (node.line !== undefined) test.line = node.line;\n if (node.message !== undefined) test.message = node.message;\n if (node.command !== undefined) test.command = node.command;\n if (node.work_dir !== undefined) test.work_dir = node.work_dir;\n if (node.stdout !== undefined) test.stdout = node.stdout;\n if (node.stderr !== undefined) test.stderr = node.stderr;\n const duration = coerceDuration(node.duration);\n if (duration !== undefined) test.duration = duration;\n if (node.passed !== undefined) test.passed = node.passed;\n if (node.failed !== undefined) test.failed = node.failed;\n if (node.warned !== undefined) test.warned = node.warned;\n if (node.skipped !== undefined) test.skipped = node.skipped;\n if (node.pending !== undefined) test.pending = node.pending;\n if (node.running !== undefined) test.running = node.running;\n if (node.timed_out !== undefined) test.timed_out = node.timed_out;\n if (node.progress !== undefined) test.progress = node.progress;\n if (node.context !== undefined) test.context = node.context;\n if (node.detail !== undefined) test.detail = node.detail;\n // A node carrying its own `summary` (elided children) contributes that\n // summary directly and is never recursed into, even if `children` is also\n // present — parity with Go's `SummarizeNodes` and `summarizeVerifyNodes`.\n if (node.summary !== undefined) {\n test.summary = verifySummaryToTestSummary(node.summary);\n } else if (node.children !== undefined) {\n test.children = node.children.map(verifyNodeTest);\n }\n return test;\n}\n\nfunction checklistItemTest(item: VerifyChecklistItem, index: number): Test {\n const test: Test = {\n name: item.item || `Criterion ${index + 1}`,\n framework: \"checklist\",\n task_id: `${ACCEPTANCE_CRITERIA_ID}:${index}`,\n passed: item.passed === true,\n failed: item.passed === false,\n pending: item.passed !== true && item.passed !== false,\n detail: item,\n };\n if (item.message !== undefined) test.message = item.message;\n return test;\n}\n\n/**\n * Synthesizes the \"Acceptance criteria\" parent node gavel's checklistTest\n * ports. Deliberately carries no status flags of its own — `status.ts`'s\n * `testStatus` checks `pending` before `failed`, so a container explicitly\n * flagged both `failed` and `pending` (one item failed, another is still\n * unjudged) would render as queued instead of failed. Leaving the container\n * status-less lets the shared roll-up (`outcomeFor`/`statusToneFor`: failed\n * → warned → running → pending → passed, via `sum()` over the children) decide\n * instead.\n */\nfunction checklistTest(checklist: VerifyChecklistItem[]): Test | null {\n if (checklist.length === 0) return null;\n const children = checklist.map(checklistItemTest);\n return {\n name: \"Acceptance criteria\",\n framework: \"checklist\",\n task_id: ACCEPTANCE_CRITERIA_ID,\n children,\n };\n}\n\n/** Maps a VerifyReport onto the TestRunner's Test forest, appending a\n * synthesized \"Acceptance criteria\" node for the checklist when present. */\nexport function verifyReportTests(report: VerifyReport): Test[] {\n const tests = (report.tests ?? []).map(verifyNodeTest);\n const checklist = checklistTest(report.checklist ?? []);\n return checklist ? [...tests, checklist] : tests;\n}\n\n/**\n * Status roll-up across the *rendered* forest: `report.tests` plus the\n * synthesized checklist leaves. This is **not** `report.summary` — the\n * producer's tests-only tally (see `summarizeVerifyNodes` in ./verify-report)\n * — since it also counts checklist items, which never appear in `tests`.\n */\nexport function verifyReportCounts(report: VerifyReport): StatusCounts {\n return aggregateStatusCounts(verifyReportTests(report));\n}\n"],"names":["aggregateStatusCounts"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { StatusCounts, Test } from '../test-runner/index.js';
2
- import { VerifyReport } from './verify-report.js';
2
+ import { VerifyNode, VerifyReport } from './verify-report.js';
3
+ export declare function verifyNodeTest(node: VerifyNode): Test;
3
4
  /** Maps a VerifyReport onto the TestRunner's Test forest, appending a
4
5
  * synthesized "Acceptance criteria" node for the checklist when present. */
5
6
  export declare function verifyReportTests(report: VerifyReport): Test[];
@@ -1 +1 @@
1
- {"version":3,"file":"verifyReportTests.d.ts","sourceRoot":"","sources":["../../../src/data/verification/verifyReportTests.ts"],"names":[],"mappings":"AAOA,OAAO,EAAyB,KAAK,YAAY,EAAE,KAAK,IAAI,EAAoB,MAAM,gBAAgB,CAAC;AACvG,OAAO,KAAK,EAAmC,YAAY,EAAiB,MAAM,iBAAiB,CAAC;AAuGpG;6EAC6E;AAC7E,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAErE"}
1
+ {"version":3,"file":"verifyReportTests.d.ts","sourceRoot":"","sources":["../../../src/data/verification/verifyReportTests.ts"],"names":[],"mappings":"AAOA,OAAO,EAAyB,KAAK,YAAY,EAAE,KAAK,IAAI,EAAoB,MAAM,gBAAgB,CAAC;AACvG,OAAO,KAAK,EAAuB,UAAU,EAAE,YAAY,EAAiB,MAAM,iBAAiB,CAAC;AAkCpG,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAgCrD;AAqCD;6EAC6E;AAC7E,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,EAAE,CAI9D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAErE"}
@@ -78,6 +78,7 @@ function verifyReportCounts(report) {
78
78
  return aggregateStatusCounts(verifyReportTests(report));
79
79
  }
80
80
  export {
81
+ verifyNodeTest,
81
82
  verifyReportCounts,
82
83
  verifyReportTests
83
84
  };
@@ -1 +1 @@
1
- {"version":3,"file":"verifyReportTests.js","sources":["../../../src/data/verification/verifyReportTests.ts"],"sourcesContent":["// Projects a captain VerifyReport onto the shared test-runner Test model, so\n// VerificationResults can render it with the same TestRunner every other\n// fixture/test surface uses. Ported from gavel's verificationAttempts.ts\n// (executionNodeTest / checklistTest), adapted to VerifyReport's node shape\n// (which already carries boolean status flags, unlike gavel's execution\n// snapshot which carried a single `state` string to translate).\n\nimport { aggregateStatusCounts, type StatusCounts, type Test, type TestSummary } from \"../test-runner\";\nimport type { VerifyChecklistItem, VerifyNode, VerifyReport, VerifySummary } from \"./verify-report\";\n\nconst ACCEPTANCE_CRITERIA_ID = \"acceptance-criteria\";\n\nfunction coerceDuration(duration: unknown): number | undefined {\n return typeof duration === \"number\" && Number.isFinite(duration) ? duration : undefined;\n}\n\n/**\n * Projects a `VerifySummary` onto the test-runner's `TestSummary` shape (see\n * `test-runner/types.ts`), so `sum()`/`aggregateStatusCounts` (test-runner\n * `status.ts`) read a summary-carrying node's counts directly instead of\n * recursing into (possibly elided) children.\n *\n * `Duration` is not carried by `VerifySummary`, so it is reported as 0.\n */\nfunction verifySummaryToTestSummary(summary: VerifySummary): TestSummary {\n return {\n Total: summary.total,\n Passed: summary.passed,\n Failed: summary.failed,\n Warned: summary.warned,\n Skipped: summary.skipped,\n Pending: summary.pending,\n Running: summary.running,\n Timedout: summary.timedout,\n Duration: 0,\n };\n}\n\n// Every field below is optional on both VerifyNode and Test, and the project\n// compiles with exactOptionalPropertyTypes — so an absent field must be an\n// absent key, not a key explicitly set to undefined. Each is assigned only\n// when present rather than copied through in one object literal.\nfunction verifyNodeTest(node: VerifyNode): Test {\n const test: Test = { name: node.name };\n if (node.framework !== undefined) test.framework = node.framework;\n if (node.task_id !== undefined) test.task_id = node.task_id;\n if (node.file !== undefined) test.file = node.file;\n if (node.line !== undefined) test.line = node.line;\n if (node.message !== undefined) test.message = node.message;\n if (node.command !== undefined) test.command = node.command;\n if (node.work_dir !== undefined) test.work_dir = node.work_dir;\n if (node.stdout !== undefined) test.stdout = node.stdout;\n if (node.stderr !== undefined) test.stderr = node.stderr;\n const duration = coerceDuration(node.duration);\n if (duration !== undefined) test.duration = duration;\n if (node.passed !== undefined) test.passed = node.passed;\n if (node.failed !== undefined) test.failed = node.failed;\n if (node.warned !== undefined) test.warned = node.warned;\n if (node.skipped !== undefined) test.skipped = node.skipped;\n if (node.pending !== undefined) test.pending = node.pending;\n if (node.running !== undefined) test.running = node.running;\n if (node.timed_out !== undefined) test.timed_out = node.timed_out;\n if (node.progress !== undefined) test.progress = node.progress;\n if (node.context !== undefined) test.context = node.context;\n if (node.detail !== undefined) test.detail = node.detail;\n // A node carrying its own `summary` (elided children) contributes that\n // summary directly and is never recursed into, even if `children` is also\n // present — parity with Go's `SummarizeNodes` and `summarizeVerifyNodes`.\n if (node.summary !== undefined) {\n test.summary = verifySummaryToTestSummary(node.summary);\n } else if (node.children !== undefined) {\n test.children = node.children.map(verifyNodeTest);\n }\n return test;\n}\n\nfunction checklistItemTest(item: VerifyChecklistItem, index: number): Test {\n const test: Test = {\n name: item.item || `Criterion ${index + 1}`,\n framework: \"checklist\",\n task_id: `${ACCEPTANCE_CRITERIA_ID}:${index}`,\n passed: item.passed === true,\n failed: item.passed === false,\n pending: item.passed !== true && item.passed !== false,\n detail: item,\n };\n if (item.message !== undefined) test.message = item.message;\n return test;\n}\n\n/**\n * Synthesizes the \"Acceptance criteria\" parent node gavel's checklistTest\n * ports. Deliberately carries no status flags of its own — `status.ts`'s\n * `testStatus` checks `pending` before `failed`, so a container explicitly\n * flagged both `failed` and `pending` (one item failed, another is still\n * unjudged) would render as queued instead of failed. Leaving the container\n * status-less lets the shared roll-up (`outcomeFor`/`statusToneFor`: failed\n * → warned → running → pending → passed, via `sum()` over the children) decide\n * instead.\n */\nfunction checklistTest(checklist: VerifyChecklistItem[]): Test | null {\n if (checklist.length === 0) return null;\n const children = checklist.map(checklistItemTest);\n return {\n name: \"Acceptance criteria\",\n framework: \"checklist\",\n task_id: ACCEPTANCE_CRITERIA_ID,\n children,\n };\n}\n\n/** Maps a VerifyReport onto the TestRunner's Test forest, appending a\n * synthesized \"Acceptance criteria\" node for the checklist when present. */\nexport function verifyReportTests(report: VerifyReport): Test[] {\n const tests = (report.tests ?? []).map(verifyNodeTest);\n const checklist = checklistTest(report.checklist ?? []);\n return checklist ? [...tests, checklist] : tests;\n}\n\n/**\n * Status roll-up across the *rendered* forest: `report.tests` plus the\n * synthesized checklist leaves. This is **not** `report.summary` — the\n * producer's tests-only tally (see `summarizeVerifyNodes` in ./verify-report)\n * — since it also counts checklist items, which never appear in `tests`.\n */\nexport function verifyReportCounts(report: VerifyReport): StatusCounts {\n return aggregateStatusCounts(verifyReportTests(report));\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifyReportTests.js","sources":["../../../src/data/verification/verifyReportTests.ts"],"sourcesContent":["// Projects a captain VerifyReport onto the shared test-runner Test model, so\n// VerificationResults can render it with the same TestRunner every other\n// fixture/test surface uses. Ported from gavel's verificationAttempts.ts\n// (executionNodeTest / checklistTest), adapted to VerifyReport's node shape\n// (which already carries boolean status flags, unlike gavel's execution\n// snapshot which carried a single `state` string to translate).\n\nimport { aggregateStatusCounts, type StatusCounts, type Test, type TestSummary } from \"../test-runner\";\nimport type { VerifyChecklistItem, VerifyNode, VerifyReport, VerifySummary } from \"./verify-report\";\n\nconst ACCEPTANCE_CRITERIA_ID = \"acceptance-criteria\";\n\nfunction coerceDuration(duration: unknown): number | undefined {\n return typeof duration === \"number\" && Number.isFinite(duration) ? duration : undefined;\n}\n\n/**\n * Projects a `VerifySummary` onto the test-runner's `TestSummary` shape (see\n * `test-runner/types.ts`), so `sum()`/`aggregateStatusCounts` (test-runner\n * `status.ts`) read a summary-carrying node's counts directly instead of\n * recursing into (possibly elided) children.\n *\n * `Duration` is not carried by `VerifySummary`, so it is reported as 0.\n */\nfunction verifySummaryToTestSummary(summary: VerifySummary): TestSummary {\n return {\n Total: summary.total,\n Passed: summary.passed,\n Failed: summary.failed,\n Warned: summary.warned,\n Skipped: summary.skipped,\n Pending: summary.pending,\n Running: summary.running,\n Timedout: summary.timedout,\n Duration: 0,\n };\n}\n\n// Every field below is optional on both VerifyNode and Test, and the project\n// compiles with exactOptionalPropertyTypes — so an absent field must be an\n// absent key, not a key explicitly set to undefined. Each is assigned only\n// when present rather than copied through in one object literal.\nexport function verifyNodeTest(node: VerifyNode): Test {\n const test: Test = { name: node.name };\n if (node.framework !== undefined) test.framework = node.framework;\n if (node.task_id !== undefined) test.task_id = node.task_id;\n if (node.file !== undefined) test.file = node.file;\n if (node.line !== undefined) test.line = node.line;\n if (node.message !== undefined) test.message = node.message;\n if (node.command !== undefined) test.command = node.command;\n if (node.work_dir !== undefined) test.work_dir = node.work_dir;\n if (node.stdout !== undefined) test.stdout = node.stdout;\n if (node.stderr !== undefined) test.stderr = node.stderr;\n const duration = coerceDuration(node.duration);\n if (duration !== undefined) test.duration = duration;\n if (node.passed !== undefined) test.passed = node.passed;\n if (node.failed !== undefined) test.failed = node.failed;\n if (node.warned !== undefined) test.warned = node.warned;\n if (node.skipped !== undefined) test.skipped = node.skipped;\n if (node.pending !== undefined) test.pending = node.pending;\n if (node.running !== undefined) test.running = node.running;\n if (node.timed_out !== undefined) test.timed_out = node.timed_out;\n if (node.progress !== undefined) test.progress = node.progress;\n if (node.context !== undefined) test.context = node.context;\n if (node.detail !== undefined) test.detail = node.detail;\n // A node carrying its own `summary` (elided children) contributes that\n // summary directly and is never recursed into, even if `children` is also\n // present — parity with Go's `SummarizeNodes` and `summarizeVerifyNodes`.\n if (node.summary !== undefined) {\n test.summary = verifySummaryToTestSummary(node.summary);\n } else if (node.children !== undefined) {\n test.children = node.children.map(verifyNodeTest);\n }\n return test;\n}\n\nfunction checklistItemTest(item: VerifyChecklistItem, index: number): Test {\n const test: Test = {\n name: item.item || `Criterion ${index + 1}`,\n framework: \"checklist\",\n task_id: `${ACCEPTANCE_CRITERIA_ID}:${index}`,\n passed: item.passed === true,\n failed: item.passed === false,\n pending: item.passed !== true && item.passed !== false,\n detail: item,\n };\n if (item.message !== undefined) test.message = item.message;\n return test;\n}\n\n/**\n * Synthesizes the \"Acceptance criteria\" parent node gavel's checklistTest\n * ports. Deliberately carries no status flags of its own — `status.ts`'s\n * `testStatus` checks `pending` before `failed`, so a container explicitly\n * flagged both `failed` and `pending` (one item failed, another is still\n * unjudged) would render as queued instead of failed. Leaving the container\n * status-less lets the shared roll-up (`outcomeFor`/`statusToneFor`: failed\n * → warned → running → pending → passed, via `sum()` over the children) decide\n * instead.\n */\nfunction checklistTest(checklist: VerifyChecklistItem[]): Test | null {\n if (checklist.length === 0) return null;\n const children = checklist.map(checklistItemTest);\n return {\n name: \"Acceptance criteria\",\n framework: \"checklist\",\n task_id: ACCEPTANCE_CRITERIA_ID,\n children,\n };\n}\n\n/** Maps a VerifyReport onto the TestRunner's Test forest, appending a\n * synthesized \"Acceptance criteria\" node for the checklist when present. */\nexport function verifyReportTests(report: VerifyReport): Test[] {\n const tests = (report.tests ?? []).map(verifyNodeTest);\n const checklist = checklistTest(report.checklist ?? []);\n return checklist ? [...tests, checklist] : tests;\n}\n\n/**\n * Status roll-up across the *rendered* forest: `report.tests` plus the\n * synthesized checklist leaves. This is **not** `report.summary` — the\n * producer's tests-only tally (see `summarizeVerifyNodes` in ./verify-report)\n * — since it also counts checklist items, which never appear in `tests`.\n */\nexport function verifyReportCounts(report: VerifyReport): StatusCounts {\n return aggregateStatusCounts(verifyReportTests(report));\n}\n"],"names":[],"mappings":"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"}
@@ -15,9 +15,9 @@ function detectMode() {
15
15
  }
16
16
  function getVersionInfo() {
17
17
  return {
18
- commit: read(() => "9d48b408", ""),
19
- tag: read(() => "clicky-ui@0.3.46", ""),
20
- date: read(() => "2026-10-14T08:16:20.626Z", ""),
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(() => "9d48b408", ""),
17
- tag: read(() => "clicky-ui@0.3.46", ""),
18
- date: read(() => "2026-10-14T08:15:51.549Z", ""),
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
@@ -8,6 +8,7 @@ const Badge = require("./data/Badge.cjs");
8
8
  const CodeBlock = require("./data/CodeBlock.cjs");
9
9
  const CodeDiff = require("./data/CodeDiff.cjs");
10
10
  const CodeLine = require("./data/CodeLine.cjs");
11
+ const SymbolBadge = require("./data/SymbolBadge.cjs");
11
12
  const codeDiff = require("./data/code-diff.cjs");
12
13
  const dataTableUtils = require("./data/data-table-utils.cjs");
13
14
  const dataTableFilterValues = require("./data/data-table-filter-values.cjs");
@@ -132,9 +133,14 @@ const FixtureEditor = require("./data/FixtureEditor/FixtureEditor.cjs");
132
133
  const GitChangeList = require("./data/git/GitChangeList.cjs");
133
134
  const marks = require("./data/test-runner/marks.cjs");
134
135
  const MarkIcons = require("./data/test-runner/MarkIcons.cjs");
136
+ const ProcessTraceTree = require("./data/traces/ProcessTraceTree.cjs");
135
137
  const QueryBrowser = require("./data/query-browser/QueryBrowser.cjs");
136
138
  const QueryBrowser_types = require("./data/query-browser/QueryBrowser.types.cjs");
137
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");
142
+ const stepKindViews = require("./data/verification/stepKindViews.cjs");
143
+ const TerminalCastPlayer = require("./data/traces/TerminalCastPlayer.cjs");
138
144
  const TestFailureDetail = require("./data/test-runner/TestFailureDetail.cjs");
139
145
  const TestDetailPanel = require("./data/test-runner/TestDetailPanel.cjs");
140
146
  const TestFilterBar = require("./data/test-runner/TestFilterBar.cjs");
@@ -144,6 +150,8 @@ const TestRunner = require("./data/test-runner/TestRunner.cjs");
144
150
  const context = require("./data/test-runner/context.cjs");
145
151
  const TestTree = require("./data/test-runner/TestTree.cjs");
146
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");
147
155
  const UiAccessProtected = require("./icons/components/UiAccessProtected.cjs");
148
156
  const UiAccessPublic = require("./icons/components/UiAccessPublic.cjs");
149
157
  const UiActivity = require("./icons/components/UiActivity.cjs");
@@ -729,14 +737,19 @@ const VerificationResults = require("./data/verification/VerificationResults.cjs
729
737
  const routePath = require("./data/test-runner/routePath.cjs");
730
738
  const fixtureFrontmatter = require("./data/FixtureEditor/fixture-frontmatter.cjs");
731
739
  const copy = require("./data/test-runner/copy.cjs");
740
+ const processTree = require("./data/traces/process-tree.cjs");
732
741
  const api = require("./data/cache-browser/api.cjs");
733
742
  const changeIconAliases = require("./icons/changeIconAliases.cjs");
734
743
  const registry = require("./icons/registry.cjs");
744
+ const stepKind = require("./data/verification/stepKind.cjs");
735
745
  const fixtureBlocks = require("./data/FixtureEditor/fixture-blocks.cjs");
736
746
  const filterState = require("./data/test-runner/filterState.cjs");
737
747
  const verifyReport = require("./data/verification/verify-report.cjs");
748
+ const harAdapter = require("./data/traces/har-adapter.cjs");
738
749
  const gitDates = require("./data/git/git-dates.cjs");
750
+ const sqlTrace = require("./data/traces/sql-trace.cjs");
739
751
  const types$1 = require("./data/cache-browser/types.cjs");
752
+ const cast = require("./data/traces/cast.cjs");
740
753
  const programmingCatalog = require("./icons/programmingCatalog.cjs");
741
754
  const graphEdgeRouting = require("./data/graph-edge-routing.cjs");
742
755
  const useClickyExport = require("./data/clicky-export/useClickyExport.cjs");
@@ -750,6 +763,7 @@ exports.Badge = Badge.Badge;
750
763
  exports.CodeBlock = CodeBlock.CodeBlock;
751
764
  exports.CodeDiff = CodeDiff.CodeDiff;
752
765
  exports.CodeLine = CodeLine.CodeLine;
766
+ exports.SymbolBadge = SymbolBadge.SymbolBadge;
753
767
  exports.computeLineDiff = codeDiff.computeLineDiff;
754
768
  exports.parseUnifiedDiff = codeDiff.parseUnifiedDiff;
755
769
  exports.inferColumns = dataTableUtils.inferColumns;
@@ -1000,10 +1014,12 @@ exports.GitFileList = GitChangeList.GitFileList;
1000
1014
  exports.LINT_SEVERITIES = marks.LINT_SEVERITIES;
1001
1015
  exports.TEST_OUTCOMES = marks.TEST_OUTCOMES;
1002
1016
  exports.TEST_TOOLS = marks.TEST_TOOLS;
1017
+ exports.toolKeyFor = marks.toolKeyFor;
1003
1018
  exports.toolMark = marks.toolMark;
1004
1019
  exports.LintSeverityIcon = MarkIcons.LintSeverityIcon;
1005
1020
  exports.OutcomeIcon = MarkIcons.OutcomeIcon;
1006
1021
  exports.ToolIcon = MarkIcons.ToolIcon;
1022
+ exports.ProcessTraceTree = ProcessTraceTree.ProcessTraceTree;
1007
1023
  exports.QueryBrowser = QueryBrowser.QueryBrowser;
1008
1024
  exports.QueryBrowserExecutionError = QueryBrowser_types.QueryBrowserExecutionError;
1009
1025
  exports.STATUS_LABELS = status.STATUS_LABELS;
@@ -1022,6 +1038,12 @@ exports.sum = status.sum;
1022
1038
  exports.sumNonTaskTests = status.sumNonTaskTests;
1023
1039
  exports.testStatus = status.testStatus;
1024
1040
  exports.totalDuration = status.totalDuration;
1041
+ exports.Sparkline = Sparkline.Sparkline;
1042
+ exports.SqlTraceTable = SqlTraceTable.SqlTraceTable;
1043
+ exports.StepKindSections = stepKindViews.StepKindSections;
1044
+ exports.StepOutputs = stepKindViews.StepOutputs;
1045
+ exports.StepWait = stepKindViews.StepWait;
1046
+ exports.TerminalCastPlayer = TerminalCastPlayer.TerminalCastPlayer;
1025
1047
  exports.TestAttempts = TestFailureDetail.TestAttempts;
1026
1048
  exports.TestFailureDetail = TestFailureDetail.TestFailureDetail;
1027
1049
  exports.TestOutput = TestFailureDetail.TestOutput;
@@ -1035,6 +1057,8 @@ exports.TestRunnerProvider = context.TestRunnerProvider;
1035
1057
  exports.useTestRunner = context.useTestRunner;
1036
1058
  exports.TestTree = TestTree.TestTree;
1037
1059
  exports.TestTreeNode = TestTreeNode.TestTreeNode;
1060
+ exports.TraceHarView = TraceHarView.TraceHarView;
1061
+ exports.TraceView = TraceView.TraceView;
1038
1062
  exports.UiAccessProtected = UiAccessProtected.UiAccessProtected;
1039
1063
  exports.UiAccessProtectedDark = UiAccessProtected.UiAccessProtectedDark;
1040
1064
  exports.UiAccessPublic = UiAccessPublic.UiAccessPublic;
@@ -2120,12 +2144,19 @@ exports.buildNodeBrief = copy.buildNodeBrief;
2120
2144
  exports.buildNodeJson = copy.buildNodeJson;
2121
2145
  exports.genericCopySections = copy.genericCopySections;
2122
2146
  exports.mergeCopySections = copy.mergeCopySections;
2147
+ exports.buildProcessForest = processTree.buildProcessForest;
2148
+ exports.flattenForest = processTree.flattenForest;
2123
2149
  exports.cacheQueryKeys = api.cacheQueryKeys;
2124
2150
  exports.createCacheClient = api.createCacheClient;
2125
2151
  exports.changeIconAliases = changeIconAliases.changeIconAliases;
2126
2152
  exports.getChangeIcon = changeIconAliases.getChangeIcon;
2127
2153
  exports.clickyIconProvider = registry.clickyIconProvider;
2128
2154
  exports.iconsByConsumerName = registry.iconsByConsumerName;
2155
+ exports.clockTime = stepKind.clockTime;
2156
+ exports.formatDelay = stepKind.formatDelay;
2157
+ exports.formatExportValue = stepKind.formatExportValue;
2158
+ exports.policySummary = stepKind.policySummary;
2159
+ exports.readStepDetail = stepKind.readStepDetail;
2129
2160
  exports.createChecklistMarkdown = fixtureBlocks.createChecklistMarkdown;
2130
2161
  exports.createFenceMarkdown = fixtureBlocks.createFenceMarkdown;
2131
2162
  exports.fixtureFenceKind = fixtureBlocks.fixtureFenceKind;
@@ -2144,12 +2175,17 @@ exports.matchesFilterState = filterState.matchesFilterState;
2144
2175
  exports.recordToFilterState = filterState.recordToFilterState;
2145
2176
  exports.emptyVerifySummary = verifyReport.emptyVerifySummary;
2146
2177
  exports.summarizeVerifyNodes = verifyReport.summarizeVerifyNodes;
2178
+ exports.exchangeToHarEntry = harAdapter.exchangeToHarEntry;
2147
2179
  exports.formatGitCommitDateHeader = gitDates.formatGitCommitDateHeader;
2180
+ exports.formatStatementDuration = sqlTrace.formatStatementDuration;
2181
+ exports.groupStatements = sqlTrace.groupStatements;
2148
2182
  exports.isLeaf = types$1.isLeaf;
2183
+ exports.parseCast = cast.parseCast;
2149
2184
  exports.programmingIconCatalog = programmingCatalog.programmingIconCatalog;
2150
2185
  exports.routeEdges = graphEdgeRouting.routeEdges;
2151
2186
  exports.useClickyExport = useClickyExport.useClickyExport;
2152
2187
  exports.verificationAdapters = adapters.verificationAdapters;
2188
+ exports.verifyNodeTest = verifyReportTests.verifyNodeTest;
2153
2189
  exports.verifyReportCounts = verifyReportTests.verifyReportCounts;
2154
2190
  exports.verifyReportTests = verifyReportTests.verifyReportTests;
2155
2191
  //# sourceMappingURL=data.cjs.map
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
@@ -6,6 +6,7 @@ export { Badge, type BadgeProps, type BadgeShape, type BadgeSize, type BadgeStat
6
6
  export { CodeBlock, type CodeBlockProps } from './data/CodeBlock.js';
7
7
  export { CodeDiff, type CodeDiffProps, type CodeDiffView, type DiffLineTarget, type DiffLineWidget, type DiffSide, } from './data/CodeDiff.js';
8
8
  export { CodeLine, type CodeLineProps } from './data/CodeLine.js';
9
+ export { SymbolBadge, type SymbolBadgeProps, type SymbolBadgeStyle } from './data/SymbolBadge.js';
9
10
  export { computeLineDiff, parseUnifiedDiff, type DiffHunk, type DiffLine, type DiffLineType, } from './data/code-diff.js';
10
11
  export { inferColumns } from './data/data-table-utils.js';
11
12
  export { parseBoundsValue, parseDurationBoundsValue, parseMultiFilterValue, serializeBoundsValue, serializeDurationBoundsValue, serializeMultiFilterValue, splitCommaValues, updateFilterSelection, type DataTableFilterSelection, type FilterDefaultOperator, } from './data/data-table-filter-values.js';
@@ -124,4 +125,5 @@ export { ErrorDetails, PrettyStackTrace, CopyBadge, type ErrorDetailsProps, } fr
124
125
  export { normalizeErrorDiagnostics, parseDiagnosticsStackTrace, parseInlineJsonContextValue, compactStackPath, isApplicationStackFrame, type ErrorDiagnostics, type ErrorStackFrame, type ParsedErrorStackTrace, } from './data/diagnostics/error-diagnostics.js';
125
126
  export { HarPanel, HarEntryDetails, type HarPanelProps, type HarPanelBodySource, type HarEntryDetailsProps } from './data/har/HarPanel.js';
126
127
  export type { HAREntry, HARRequest, HARResponse, HARContent, HARCreator, HARFile, HARHeader, HARLog, HARPostData, } from './data/har/types.js';
128
+ export * from './data/traces/index.js';
127
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":"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"}