@tangle-network/sandbox-cli 0.21.22 → 0.21.24

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 (534) hide show
  1. package/dist/graph-viewer/Analytics-DocMpB6T.js +953 -0
  2. package/dist/graph-viewer/AnswerStrip-DhwqOyxI.js +112 -0
  3. package/dist/graph-viewer/Checks-CbnY4tuh.js +113 -0
  4. package/dist/graph-viewer/Conversations-CISiWrR9.js +513 -0
  5. package/dist/graph-viewer/Files-Dh8p_Fpw.js +435 -0
  6. package/dist/graph-viewer/LiveRun-C-yKwkKs.js +190 -0
  7. package/dist/graph-viewer/Outputs-QET3nPPp.js +803 -0
  8. package/dist/graph-viewer/Overview-BaXPdCFC.js +477 -0
  9. package/dist/graph-viewer/RunOverview-DJQDAMIx.js +1720 -0
  10. package/dist/graph-viewer/RunPage-nJwCsArn.js +258 -0
  11. package/dist/graph-viewer/Timeline-bPjhV3il.js +293 -0
  12. package/dist/graph-viewer/Today-pebCsPJ1.js +653 -0
  13. package/dist/graph-viewer/Topology-CyhuK6XW.js +550 -0
  14. package/dist/graph-viewer/Traces-C5x2UvJh.js +232 -0
  15. package/dist/graph-viewer/WallPages-DSmRm2v3.js +658 -0
  16. package/dist/graph-viewer/agent-runtime.js +2293 -0
  17. package/dist/graph-viewer/anchor-C4i5SrB9.js +23 -0
  18. package/dist/graph-viewer/assessment.js +117 -0
  19. package/dist/graph-viewer/data-BJmP7F1M.js +247 -0
  20. package/dist/graph-viewer/harness-sessions.js +165 -0
  21. package/dist/graph-viewer/index.js +14991 -0
  22. package/dist/graph-viewer/lazy-pages-CpmkG5o2.js +19 -0
  23. package/dist/graph-viewer/outputs-model-CGdvjkQh.js +553 -0
  24. package/dist/graph-viewer/part-events-BrLrg_EV.js +276 -0
  25. package/dist/graph-viewer/plain-words-CgvxtEOa.js +17 -0
  26. package/dist/graph-viewer/publication.js +111 -0
  27. package/dist/graph-viewer/receipt.js +25 -0
  28. package/dist/graph-viewer/record-part-Cx9GDQeo.js +1378 -0
  29. package/dist/graph-viewer/record.js +336 -0
  30. package/dist/graph-viewer/report-viewer.js +557 -0
  31. package/dist/graph-viewer/report.js +392 -0
  32. package/dist/graph-viewer/research-publication.js +35 -0
  33. package/dist/graph-viewer/run-files-C1NgzM0l.js +82 -0
  34. package/dist/graph-viewer/run-receipt-Bvi4-KVM.js +1112 -0
  35. package/dist/graph-viewer/schemas/agent-record.bundle.v1.json +157 -0
  36. package/dist/graph-viewer/schemas/agent-record.v1.json +1025 -0
  37. package/dist/graph-viewer/schemas/agent-trace-assessment.v1.json +302 -0
  38. package/dist/graph-viewer/schemas/agent-trace-assessments.v1.json +335 -0
  39. package/dist/graph-viewer/schemas/agent-trace-dimensions.v1.json +131 -0
  40. package/dist/graph-viewer/schemas/agent-workspace.play.v1.json +8149 -0
  41. package/dist/graph-viewer/schemas/agent-workspace.plays.v1.json +1295 -0
  42. package/dist/graph-viewer/schemas/agent-workspace.run.v1.json +10907 -0
  43. package/dist/graph-viewer/schemas/agent-workspace.version-graph.json +1131 -0
  44. package/dist/graph-viewer/schemas/discovery-lab.profile-graph.json +2628 -0
  45. package/dist/graph-viewer/schemas/evidence.snapshot.v1.json +71 -0
  46. package/dist/graph-viewer/styles.css +13976 -0
  47. package/dist/graph-viewer/trace-spans.js +157 -0
  48. package/dist/graph-viewer/ui-CEhDqce8.js +906 -0
  49. package/dist/graph-viewer/use-file-text-BaE98QxE.js +47 -0
  50. package/dist/graph-viewer/viewer/AgentGraphCanvas-D7jjAE6i-DecKyUGA.js +8808 -0
  51. package/dist/graph-viewer/viewer/Analytics-CtKucZjs.js +954 -0
  52. package/dist/graph-viewer/viewer/AnswerStrip-DsI9aF-i.js +45 -0
  53. package/dist/graph-viewer/viewer/Checks-DZTgeYlV.js +114 -0
  54. package/dist/graph-viewer/viewer/Conversations-DQBCyko6.js +787 -0
  55. package/dist/graph-viewer/viewer/Files-B-g25gSO.js +433 -0
  56. package/dist/graph-viewer/viewer/LiveRun-BMQnTpTZ.js +6713 -0
  57. package/dist/graph-viewer/viewer/Outputs-DXnN1wEQ.js +929 -0
  58. package/dist/graph-viewer/viewer/Overview-u7-8-rGx.js +478 -0
  59. package/dist/graph-viewer/viewer/RunPage-ChipoSdO.js +257 -0
  60. package/dist/graph-viewer/viewer/Scores-CjriXjf_.js +414 -0
  61. package/dist/graph-viewer/viewer/Timeline-DzEzobA0.js +294 -0
  62. package/dist/graph-viewer/viewer/Today-DLHe_wTA.js +653 -0
  63. package/dist/graph-viewer/viewer/Topology-Dsmuu27J.js +551 -0
  64. package/dist/graph-viewer/viewer/Traces-BWBulSPE.js +232 -0
  65. package/dist/graph-viewer/viewer/WallPages-Crj-qPoK.js +657 -0
  66. package/dist/graph-viewer/viewer/WorkflowGraph-DYsP_Kcg-C0O7M5iH.js +1559 -0
  67. package/dist/graph-viewer/viewer/abap-DF4NaQCD.js +3 -0
  68. package/dist/graph-viewer/viewer/actionscript-3-O89o1DyQ.js +3 -0
  69. package/dist/graph-viewer/viewer/ada-UiOHRbSd.js +3 -0
  70. package/dist/graph-viewer/viewer/agent-record-Dw772ROs.css +2 -0
  71. package/dist/graph-viewer/viewer/agent-timeline-C-UIhXgu.js +1786 -0
  72. package/dist/graph-viewer/viewer/ahk-7eXkLipS.js +3 -0
  73. package/dist/graph-viewer/viewer/ahk2-BRygvKjG.js +3 -0
  74. package/dist/graph-viewer/viewer/andromeeda-CXE6Hd_y.js +4 -0
  75. package/dist/graph-viewer/viewer/andromeeda-D4hkA5d4.js +135 -0
  76. package/dist/graph-viewer/viewer/angular-html-CH3lfmUV.js +16 -0
  77. package/dist/graph-viewer/viewer/angular-ts-B687Yw-e.js +18 -0
  78. package/dist/graph-viewer/viewer/apache-zsgjHeYU.js +3 -0
  79. package/dist/graph-viewer/viewer/apex-DvIWVZE0.js +3 -0
  80. package/dist/graph-viewer/viewer/apl-MlL-eOOA.js +16 -0
  81. package/dist/graph-viewer/viewer/applescript-D_ETOzPj.js +3 -0
  82. package/dist/graph-viewer/viewer/ara-CXdsJbD3.js +3 -0
  83. package/dist/graph-viewer/viewer/asciidoc-CpqrUCBV.js +3 -0
  84. package/dist/graph-viewer/viewer/asm-DLrPCi7c.js +3 -0
  85. package/dist/graph-viewer/viewer/astro-CEu262ke.js +18 -0
  86. package/dist/graph-viewer/viewer/aurora-x-ByDc5ddl.js +4 -0
  87. package/dist/graph-viewer/viewer/aurora-x-DR-LXA3G.js +149 -0
  88. package/dist/graph-viewer/viewer/awk-452npsTH.js +3 -0
  89. package/dist/graph-viewer/viewer/ayu-dark-AY3FJIQr.js +125 -0
  90. package/dist/graph-viewer/viewer/ayu-dark-Bwg9SdAf.js +4 -0
  91. package/dist/graph-viewer/viewer/ayu-light-CDT1HkHg.js +125 -0
  92. package/dist/graph-viewer/viewer/ayu-light-DPCSrH1e.js +4 -0
  93. package/dist/graph-viewer/viewer/ayu-mirage-BrWHc4Mk.js +125 -0
  94. package/dist/graph-viewer/viewer/ayu-mirage-CArVigxm.js +4 -0
  95. package/dist/graph-viewer/viewer/ballerina-8wA0eHgr.js +3 -0
  96. package/dist/graph-viewer/viewer/bash-B3Pt0-io.js +2 -0
  97. package/dist/graph-viewer/viewer/bat-D5zNUOf1.js +3 -0
  98. package/dist/graph-viewer/viewer/beancount-BXtNUIgX.js +3 -0
  99. package/dist/graph-viewer/viewer/berry-oDXeVIfk.js +3 -0
  100. package/dist/graph-viewer/viewer/bibtex-CAeObnSR.js +3 -0
  101. package/dist/graph-viewer/viewer/bicep-udSZHxea.js +3 -0
  102. package/dist/graph-viewer/viewer/bird2-CeHO9zcD.js +3 -0
  103. package/dist/graph-viewer/viewer/blade-6Y8QadpX.js +20 -0
  104. package/dist/graph-viewer/viewer/bot-Bivadvxn.js +40 -0
  105. package/dist/graph-viewer/viewer/bsl-BYwMGpx9.js +5 -0
  106. package/dist/graph-viewer/viewer/c-CSBSx-ud.js +2 -0
  107. package/dist/graph-viewer/viewer/c-DAvbji88.js +5 -0
  108. package/dist/graph-viewer/viewer/c3-CWnhEhIf.js +3 -0
  109. package/dist/graph-viewer/viewer/cadence-C2DNIpxD.js +3 -0
  110. package/dist/graph-viewer/viewer/cairo-Be_WUhk8.js +5 -0
  111. package/dist/graph-viewer/viewer/catppuccin-frappe-BOyy9syt.js +254 -0
  112. package/dist/graph-viewer/viewer/catppuccin-frappe-XWBMtHoj.js +4 -0
  113. package/dist/graph-viewer/viewer/catppuccin-latte-BTeMSDF4.js +254 -0
  114. package/dist/graph-viewer/viewer/catppuccin-latte-CYOvCvxh.js +4 -0
  115. package/dist/graph-viewer/viewer/catppuccin-macchiato-BdFrVtzY.js +254 -0
  116. package/dist/graph-viewer/viewer/catppuccin-macchiato-Bl-TAIIg.js +4 -0
  117. package/dist/graph-viewer/viewer/catppuccin-mocha-BkEo6vVC.js +4 -0
  118. package/dist/graph-viewer/viewer/catppuccin-mocha-nwxgrdZf.js +254 -0
  119. package/dist/graph-viewer/viewer/ccount-8lyDUwnq.js +1116 -0
  120. package/dist/graph-viewer/viewer/chapel-BipHs2dR.js +5 -0
  121. package/dist/graph-viewer/viewer/chevron-right-WW7tFY6B.js +14 -0
  122. package/dist/graph-viewer/viewer/clarity-CYwjxkRS.js +3 -0
  123. package/dist/graph-viewer/viewer/clojure-g5hblQ59.js +3 -0
  124. package/dist/graph-viewer/viewer/cmake-D30WusUY.js +3 -0
  125. package/dist/graph-viewer/viewer/cobol-BSufitvZ.js +10 -0
  126. package/dist/graph-viewer/viewer/codeowners-a_Z0p9_y.js +3 -0
  127. package/dist/graph-viewer/viewer/codeql-BkSUw1F6.js +3 -0
  128. package/dist/graph-viewer/viewer/coffee-Cq8545xS.js +5 -0
  129. package/dist/graph-viewer/viewer/common-lisp-D2PkvS4V.js +3 -0
  130. package/dist/graph-viewer/viewer/coq-BLTGLocz.js +3 -0
  131. package/dist/graph-viewer/viewer/core-I74i0Bj-.js +3283 -0
  132. package/dist/graph-viewer/viewer/cpp--S2jMQNE.js +16 -0
  133. package/dist/graph-viewer/viewer/cpp-D1SvvKgJ.js +2 -0
  134. package/dist/graph-viewer/viewer/createLucideIcon-Z6KTw8ff.js +132 -0
  135. package/dist/graph-viewer/viewer/crystal-CwAQylTf.js +18 -0
  136. package/dist/graph-viewer/viewer/csharp--dn-Xz3x.js +3 -0
  137. package/dist/graph-viewer/viewer/csharp-CFNIW_9w.js +2 -0
  138. package/dist/graph-viewer/viewer/css-DDvgy_Pj.js +2 -0
  139. package/dist/graph-viewer/viewer/css-OZkJJXvy.js +5 -0
  140. package/dist/graph-viewer/viewer/csv-DFU5sVkH.js +3 -0
  141. package/dist/graph-viewer/viewer/cue-cdFZcSz0.js +3 -0
  142. package/dist/graph-viewer/viewer/cypher-DRjO_s97.js +3 -0
  143. package/dist/graph-viewer/viewer/d-BTgKsJ9x.js +3 -0
  144. package/dist/graph-viewer/viewer/dark-plus-C3f5UfGH.js +4 -0
  145. package/dist/graph-viewer/viewer/dark-plus-DpxqFdZb.js +133 -0
  146. package/dist/graph-viewer/viewer/dart-D4omMRdb.js +3 -0
  147. package/dist/graph-viewer/viewer/data-azhapQrS.js +5459 -0
  148. package/dist/graph-viewer/viewer/dax-DMzovUnU.js +3 -0
  149. package/dist/graph-viewer/viewer/desktop-0YG2NeB2.js +3 -0
  150. package/dist/graph-viewer/viewer/diff-Bqcnq92f.js +2 -0
  151. package/dist/graph-viewer/viewer/diff-D0WgTNQn.js +3 -0
  152. package/dist/graph-viewer/viewer/dist-CyOc-K4O.js +488 -0
  153. package/dist/graph-viewer/viewer/docker-DzSfvS0u.js +5 -0
  154. package/dist/graph-viewer/viewer/dockerfile-CM1sLMN0.js +2 -0
  155. package/dist/graph-viewer/viewer/dotenv-BSNpOEA3.js +3 -0
  156. package/dist/graph-viewer/viewer/dracula-BfBOnDty.js +4 -0
  157. package/dist/graph-viewer/viewer/dracula-DhjcxBGE.js +153 -0
  158. package/dist/graph-viewer/viewer/dracula-soft-C8OuVugS.js +103 -0
  159. package/dist/graph-viewer/viewer/dracula-soft-D6ffXinY.js +4 -0
  160. package/dist/graph-viewer/viewer/dream-maker-Br_aTy0D.js +3 -0
  161. package/dist/graph-viewer/viewer/edge-BXg6ZoA5.js +12 -0
  162. package/dist/graph-viewer/viewer/elixir-BP4dycnf.js +5 -0
  163. package/dist/graph-viewer/viewer/elk.bundled-ZJBRnwyo.js +46151 -0
  164. package/dist/graph-viewer/viewer/elm-XJ6BGRhm.js +5 -0
  165. package/dist/graph-viewer/viewer/emacs-lisp-CaNYORYC.js +3 -0
  166. package/dist/graph-viewer/viewer/engine-javascript-CuJOa50W.js +2400 -0
  167. package/dist/graph-viewer/viewer/engine-oniguruma-CUxoKLbG.js +238 -0
  168. package/dist/graph-viewer/viewer/erb-Cny7ijxm.js +10 -0
  169. package/dist/graph-viewer/viewer/erlang-CcYvFpBd.js +5 -0
  170. package/dist/graph-viewer/viewer/everforest-dark-1Qcrb-nR.js +4 -0
  171. package/dist/graph-viewer/viewer/everforest-dark-B8sohDPe.js +87 -0
  172. package/dist/graph-viewer/viewer/everforest-light-CwMdzDa5.js +87 -0
  173. package/dist/graph-viewer/viewer/everforest-light-pWd_20u5.js +4 -0
  174. package/dist/graph-viewer/viewer/fennel-XqmdNU54.js +3 -0
  175. package/dist/graph-viewer/viewer/file-text-B34N7Soo.js +47 -0
  176. package/dist/graph-viewer/viewer/final-output-Db2D9cMT.js +112 -0
  177. package/dist/graph-viewer/viewer/fish-DnIfDEl-.js +3 -0
  178. package/dist/graph-viewer/viewer/fluent-Dv7iXi9Q.js +3 -0
  179. package/dist/graph-viewer/viewer/fortran-fixed-form-CclFI1c1.js +5 -0
  180. package/dist/graph-viewer/viewer/fortran-free-form-B6CnEX04.js +3 -0
  181. package/dist/graph-viewer/viewer/fsharp-KngoBKg1.js +5 -0
  182. package/dist/graph-viewer/viewer/gdresource-DmwEW6Q8.js +10 -0
  183. package/dist/graph-viewer/viewer/gdscript-DZvGV2HF.js +3 -0
  184. package/dist/graph-viewer/viewer/gdshader-C-YpNGc4.js +3 -0
  185. package/dist/graph-viewer/viewer/genie-eGJU5Fha.js +3 -0
  186. package/dist/graph-viewer/viewer/gherkin-DPafK1RH.js +3 -0
  187. package/dist/graph-viewer/viewer/git-commit-ic1koML8.js +5 -0
  188. package/dist/graph-viewer/viewer/git-rebase-Cv1EDRHu.js +5 -0
  189. package/dist/graph-viewer/viewer/github-dark-DDdIZDt9.js +4 -0
  190. package/dist/graph-viewer/viewer/github-dark-JXVciwdu.js +130 -0
  191. package/dist/graph-viewer/viewer/github-dark-default-BdQpbWGL.js +76 -0
  192. package/dist/graph-viewer/viewer/github-dark-default-Dqlx6Tfn.js +4 -0
  193. package/dist/graph-viewer/viewer/github-dark-dimmed-Cf-YKaPv.js +4 -0
  194. package/dist/graph-viewer/viewer/github-dark-dimmed-W_ejuONg.js +125 -0
  195. package/dist/graph-viewer/viewer/github-dark-high-contrast-BfhJh7Fv.js +4 -0
  196. package/dist/graph-viewer/viewer/github-dark-high-contrast-Dta6H4l1.js +125 -0
  197. package/dist/graph-viewer/viewer/github-light-D4EN-pJE.js +130 -0
  198. package/dist/graph-viewer/viewer/github-light-D7vUnDjY.js +4 -0
  199. package/dist/graph-viewer/viewer/github-light-default-CA96ogap.js +125 -0
  200. package/dist/graph-viewer/viewer/github-light-default-CbQ7dbx-.js +4 -0
  201. package/dist/graph-viewer/viewer/github-light-high-contrast-CWkjO7j1.js +125 -0
  202. package/dist/graph-viewer/viewer/github-light-high-contrast-Oc7ptxOl.js +4 -0
  203. package/dist/graph-viewer/viewer/gleam-DDi89CaZ.js +3 -0
  204. package/dist/graph-viewer/viewer/glimmer-js-B4XGl72Q.js +14 -0
  205. package/dist/graph-viewer/viewer/glimmer-ts-Cd-JLCfl.js +14 -0
  206. package/dist/graph-viewer/viewer/glsl-gcTBSfUq.js +6 -0
  207. package/dist/graph-viewer/viewer/gn-DMs_IqO4.js +3 -0
  208. package/dist/graph-viewer/viewer/gnuplot-Dwu09Wsa.js +3 -0
  209. package/dist/graph-viewer/viewer/go-BEdBk4fh.js +3 -0
  210. package/dist/graph-viewer/viewer/go-DHVK1MDf.js +2 -0
  211. package/dist/graph-viewer/viewer/graphql-CLsas7pB.js +15 -0
  212. package/dist/graph-viewer/viewer/graphql-hf2jeRF3.js +2 -0
  213. package/dist/graph-viewer/viewer/groovy-CmZ205Qh.js +3 -0
  214. package/dist/graph-viewer/viewer/gruvbox-dark-hard-C03xMCtB.js +4 -0
  215. package/dist/graph-viewer/viewer/gruvbox-dark-hard-D6fxqIcJ.js +128 -0
  216. package/dist/graph-viewer/viewer/gruvbox-dark-medium-CC6ndC01.js +128 -0
  217. package/dist/graph-viewer/viewer/gruvbox-dark-medium-ZTNTOYs1.js +4 -0
  218. package/dist/graph-viewer/viewer/gruvbox-dark-soft-1zGnpoEy.js +4 -0
  219. package/dist/graph-viewer/viewer/gruvbox-dark-soft-DBjjA89e.js +128 -0
  220. package/dist/graph-viewer/viewer/gruvbox-light-hard-CNtKpSCc.js +128 -0
  221. package/dist/graph-viewer/viewer/gruvbox-light-hard-Rq8jWy-t.js +4 -0
  222. package/dist/graph-viewer/viewer/gruvbox-light-medium-DT10IcB_.js +128 -0
  223. package/dist/graph-viewer/viewer/gruvbox-light-medium-qoNn8l_N.js +4 -0
  224. package/dist/graph-viewer/viewer/gruvbox-light-soft-BugAsRiM.js +128 -0
  225. package/dist/graph-viewer/viewer/gruvbox-light-soft-Dnxtmee2.js +4 -0
  226. package/dist/graph-viewer/viewer/hack-CDch_7MP.js +10 -0
  227. package/dist/graph-viewer/viewer/haml-BqkvTyZm.js +11 -0
  228. package/dist/graph-viewer/viewer/handlebars-RDj3fZHz.js +14 -0
  229. package/dist/graph-viewer/viewer/haskell-DSSJ-2AO.js +3 -0
  230. package/dist/graph-viewer/viewer/haxe-DrA0Xrjd.js +3 -0
  231. package/dist/graph-viewer/viewer/hcl-BxX70ue-.js +3 -0
  232. package/dist/graph-viewer/viewer/highlights-Bgg6O5ub.js +1351 -0
  233. package/dist/graph-viewer/viewer/hjson-Znrrrv1t.js +3 -0
  234. package/dist/graph-viewer/viewer/hlsl-D-dP8z1U.js +3 -0
  235. package/dist/graph-viewer/viewer/horizon-CE4Yvsia.js +4 -0
  236. package/dist/graph-viewer/viewer/horizon-EI29cEvA.js +85 -0
  237. package/dist/graph-viewer/viewer/horizon-bright-BOLA2YFR.js +4 -0
  238. package/dist/graph-viewer/viewer/horizon-bright-hHpSmrYh.js +85 -0
  239. package/dist/graph-viewer/viewer/houston-CiDLA2oo.js +4 -0
  240. package/dist/graph-viewer/viewer/houston-CiUxf-HU.js +195 -0
  241. package/dist/graph-viewer/viewer/html-9DDE6S-h.js +2 -0
  242. package/dist/graph-viewer/viewer/html-D0TTaG52.js +11 -0
  243. package/dist/graph-viewer/viewer/html-derivative-Gg3E-n-U.js +5 -0
  244. package/dist/graph-viewer/viewer/http-BPgEi3D2.js +14 -0
  245. package/dist/graph-viewer/viewer/hurl-Sfhn3XgM.js +12 -0
  246. package/dist/graph-viewer/viewer/hxml-Dv3Zqri9.js +5 -0
  247. package/dist/graph-viewer/viewer/hy-Cd4h6N3W.js +3 -0
  248. package/dist/graph-viewer/viewer/imba-DdhTsO9l.js +3 -0
  249. package/dist/graph-viewer/viewer/ini-CmgEGOBJ.js +3 -0
  250. package/dist/graph-viewer/viewer/java-CgzoQF6Y.js +5 -0
  251. package/dist/graph-viewer/viewer/java-DnKlCRJQ.js +2 -0
  252. package/dist/graph-viewer/viewer/javascript-CHiBfg7Q.js +2 -0
  253. package/dist/graph-viewer/viewer/javascript-Du25Lw0B.js +5 -0
  254. package/dist/graph-viewer/viewer/jinja-CmKrofRU.js +5 -0
  255. package/dist/graph-viewer/viewer/jison-Bh7j04oA.js +5 -0
  256. package/dist/graph-viewer/viewer/json-Cd131axV.js +2 -0
  257. package/dist/graph-viewer/viewer/json-Cd3mvCHu.js +5 -0
  258. package/dist/graph-viewer/viewer/json5-D2Eltym1.js +3 -0
  259. package/dist/graph-viewer/viewer/jsonc-BPIJyZ7u.js +3 -0
  260. package/dist/graph-viewer/viewer/jsonc-DyuEwhdL.js +2 -0
  261. package/dist/graph-viewer/viewer/jsonl-BGkjXns2.js +3 -0
  262. package/dist/graph-viewer/viewer/jsonnet-DsRfEVPr.js +3 -0
  263. package/dist/graph-viewer/viewer/jssm-DP2pbfxn.js +3 -0
  264. package/dist/graph-viewer/viewer/jsx-BC18Lfga.js +5 -0
  265. package/dist/graph-viewer/viewer/jsx-CDweqMY2.js +2 -0
  266. package/dist/graph-viewer/viewer/jsx-runtime-BSzbUOFc.js +2136 -0
  267. package/dist/graph-viewer/viewer/julia-DWXGq3n5.js +16 -0
  268. package/dist/graph-viewer/viewer/just-CPEDqFxc.js +18 -0
  269. package/dist/graph-viewer/viewer/kanagawa-dragon-D5ZXvoAT.js +147 -0
  270. package/dist/graph-viewer/viewer/kanagawa-dragon-m178euzh.js +4 -0
  271. package/dist/graph-viewer/viewer/kanagawa-lotus-BUmV0rdY.js +147 -0
  272. package/dist/graph-viewer/viewer/kanagawa-lotus-C4yCdgdL.js +4 -0
  273. package/dist/graph-viewer/viewer/kanagawa-wave-B6YTgVPM.js +4 -0
  274. package/dist/graph-viewer/viewer/kanagawa-wave-C4G5CGrn.js +147 -0
  275. package/dist/graph-viewer/viewer/kdl-BdIUXyK8.js +3 -0
  276. package/dist/graph-viewer/viewer/kotlin-BYbH5_qW.js +2 -0
  277. package/dist/graph-viewer/viewer/kotlin-CQsNEM2o.js +3 -0
  278. package/dist/graph-viewer/viewer/kusto-UWPUoeE5.js +3 -0
  279. package/dist/graph-viewer/viewer/langs-DKPMizJR.js +1323 -0
  280. package/dist/graph-viewer/viewer/laserwave-BHOyZkaw.js +72 -0
  281. package/dist/graph-viewer/viewer/laserwave-CWOG7haO.js +4 -0
  282. package/dist/graph-viewer/viewer/latex-H1oLZZMa.js +5 -0
  283. package/dist/graph-viewer/viewer/lazy-pages-fgtpXQ00.js +20 -0
  284. package/dist/graph-viewer/viewer/lean-D3P_r_z_.js +3 -0
  285. package/dist/graph-viewer/viewer/less-9LYkHheD.js +3 -0
  286. package/dist/graph-viewer/viewer/lib-YfRUb5Qz.js +633 -0
  287. package/dist/graph-viewer/viewer/light-plus-BqoAVMwn.js +4 -0
  288. package/dist/graph-viewer/viewer/light-plus-mr4QmlNu.js +134 -0
  289. package/dist/graph-viewer/viewer/liquid-BIl6scjw.js +14 -0
  290. package/dist/graph-viewer/viewer/llvm-eWADufTp.js +3 -0
  291. package/dist/graph-viewer/viewer/loader-CJrlDBKq.js +80 -0
  292. package/dist/graph-viewer/viewer/log-DvQMOE69.js +3 -0
  293. package/dist/graph-viewer/viewer/logo-Cl5E_QyH.js +3 -0
  294. package/dist/graph-viewer/viewer/lua-2MenSe50.js +6 -0
  295. package/dist/graph-viewer/viewer/luau-7dQCidxK.js +3 -0
  296. package/dist/graph-viewer/viewer/make-CE9Hryyp.js +3 -0
  297. package/dist/graph-viewer/viewer/markdown-BpJEJUTW.js +8504 -0
  298. package/dist/graph-viewer/viewer/markdown-CSNMIXpG.js +2 -0
  299. package/dist/graph-viewer/viewer/markdown-nUtTZkU8.js +3 -0
  300. package/dist/graph-viewer/viewer/marko-C5vBSh9z.js +14 -0
  301. package/dist/graph-viewer/viewer/material-theme-B36kIseS.js +93 -0
  302. package/dist/graph-viewer/viewer/material-theme-D46aZ2Q0.js +4 -0
  303. package/dist/graph-viewer/viewer/material-theme-darker-DPrN5MJM.js +4 -0
  304. package/dist/graph-viewer/viewer/material-theme-darker-iFXeHXKD.js +93 -0
  305. package/dist/graph-viewer/viewer/material-theme-lighter-2HJjoQcP.js +4 -0
  306. package/dist/graph-viewer/viewer/material-theme-lighter-BBaTLa5v.js +93 -0
  307. package/dist/graph-viewer/viewer/material-theme-ocean-D1aXUM1Z.js +4 -0
  308. package/dist/graph-viewer/viewer/material-theme-ocean-Dj5vMPI8.js +93 -0
  309. package/dist/graph-viewer/viewer/material-theme-palenight-B6DS-lbj.js +4 -0
  310. package/dist/graph-viewer/viewer/material-theme-palenight-EjN7Wy3X.js +93 -0
  311. package/dist/graph-viewer/viewer/matlab-fM7rwTZt.js +3 -0
  312. package/dist/graph-viewer/viewer/mdc-IFxaehab.js +12 -0
  313. package/dist/graph-viewer/viewer/mdx-DswfiFg4.js +3 -0
  314. package/dist/graph-viewer/viewer/mdx-e70j-_I5.js +2 -0
  315. package/dist/graph-viewer/viewer/mermaid-CAl3BhSL.js +3 -0
  316. package/dist/graph-viewer/viewer/min-dark-BAW8Cmrn.js +4 -0
  317. package/dist/graph-viewer/viewer/min-dark-BMrfDL-S.js +110 -0
  318. package/dist/graph-viewer/viewer/min-light-DMqORsIf.js +110 -0
  319. package/dist/graph-viewer/viewer/min-light-PpFL3JTA.js +4 -0
  320. package/dist/graph-viewer/viewer/mipsasm-DbPELTlh.js +3 -0
  321. package/dist/graph-viewer/viewer/model-brand-bTcMjQtB-C9bHPsPk.js +723 -0
  322. package/dist/graph-viewer/viewer/mojo-B8iEg1Sv.js +3 -0
  323. package/dist/graph-viewer/viewer/monokai-2mdc1PFC.js +4 -0
  324. package/dist/graph-viewer/viewer/monokai-b6RWCwKp.js +150 -0
  325. package/dist/graph-viewer/viewer/moonbit-BR88EIMx.js +3 -0
  326. package/dist/graph-viewer/viewer/move-CpCLo8d1.js +3 -0
  327. package/dist/graph-viewer/viewer/narrat-9pGDjQTI.js +3 -0
  328. package/dist/graph-viewer/viewer/nextflow-BEOXmhnx.js +5 -0
  329. package/dist/graph-viewer/viewer/nextflow-groovy-Cvo9WVFK.js +3 -0
  330. package/dist/graph-viewer/viewer/nginx-Dx1JJUel.js +5 -0
  331. package/dist/graph-viewer/viewer/night-owl-B66IhhIZ.js +4 -0
  332. package/dist/graph-viewer/viewer/night-owl-Dgg_EwNf.js +176 -0
  333. package/dist/graph-viewer/viewer/night-owl-light-C6oRQ1ih.js +177 -0
  334. package/dist/graph-viewer/viewer/night-owl-light-D2RFQCtQ.js +4 -0
  335. package/dist/graph-viewer/viewer/nim-CpR9PfF3.js +20 -0
  336. package/dist/graph-viewer/viewer/nix-CwcLdFnB.js +3 -0
  337. package/dist/graph-viewer/viewer/nord-BD48P4mW.js +116 -0
  338. package/dist/graph-viewer/viewer/nord-Sih_lPjv.js +4 -0
  339. package/dist/graph-viewer/viewer/nsis-Dn88_Onr.js +3 -0
  340. package/dist/graph-viewer/viewer/nushell-DDaptVCJ.js +3 -0
  341. package/dist/graph-viewer/viewer/objective-c-DK-EKgyd.js +3 -0
  342. package/dist/graph-viewer/viewer/objective-cpp-CXtEgxjw.js +3 -0
  343. package/dist/graph-viewer/viewer/ocaml-BO-0Wjtk.js +3 -0
  344. package/dist/graph-viewer/viewer/odin-BDNmOx6H.js +3 -0
  345. package/dist/graph-viewer/viewer/one-dark-pro-DFN4GD0H.js +4 -0
  346. package/dist/graph-viewer/viewer/one-dark-pro-MBgmHRam.js +112 -0
  347. package/dist/graph-viewer/viewer/one-light-Bi4vf2dv.js +138 -0
  348. package/dist/graph-viewer/viewer/one-light-zI0r8mzs.js +4 -0
  349. package/dist/graph-viewer/viewer/openscad-B8gTrm-E.js +3 -0
  350. package/dist/graph-viewer/viewer/org-SBzxSGZD.js +100 -0
  351. package/dist/graph-viewer/viewer/page-header-C6YCPkzJ.js +72 -0
  352. package/dist/graph-viewer/viewer/pascal-CRtegPzh.js +3 -0
  353. package/dist/graph-viewer/viewer/perl-Cotj8Fvk.js +16 -0
  354. package/dist/graph-viewer/viewer/php-BCjZGKW5.js +2 -0
  355. package/dist/graph-viewer/viewer/php-DuQlfgak.js +18 -0
  356. package/dist/graph-viewer/viewer/pierre-dark-Dc3Ll6Hl.js +154 -0
  357. package/dist/graph-viewer/viewer/pierre-dark-eM2ca6q-.js +4 -0
  358. package/dist/graph-viewer/viewer/pierre-dark-protanopia-deuteranopia-FuOdjT6t.js +4 -0
  359. package/dist/graph-viewer/viewer/pierre-dark-protanopia-deuteranopia-h_4QkzS0.js +154 -0
  360. package/dist/graph-viewer/viewer/pierre-dark-soft-BFXGcQOC.js +4 -0
  361. package/dist/graph-viewer/viewer/pierre-dark-soft-DlFiKlWf.js +154 -0
  362. package/dist/graph-viewer/viewer/pierre-dark-tritanopia-D8Wgm6MB.js +154 -0
  363. package/dist/graph-viewer/viewer/pierre-dark-tritanopia-HphJrMfv.js +4 -0
  364. package/dist/graph-viewer/viewer/pierre-dark-vibrant-BxJmNTpB.js +154 -0
  365. package/dist/graph-viewer/viewer/pierre-dark-vibrant-CJwaYoBu.js +4 -0
  366. package/dist/graph-viewer/viewer/pierre-light-Bd7oPgtx.js +4 -0
  367. package/dist/graph-viewer/viewer/pierre-light-CFLGbwCM.js +154 -0
  368. package/dist/graph-viewer/viewer/pierre-light-protanopia-deuteranopia-BlBh_kV-.js +154 -0
  369. package/dist/graph-viewer/viewer/pierre-light-protanopia-deuteranopia-fUFGoRe8.js +4 -0
  370. package/dist/graph-viewer/viewer/pierre-light-soft-Ah2itsu1.js +154 -0
  371. package/dist/graph-viewer/viewer/pierre-light-soft-DobqmynA.js +4 -0
  372. package/dist/graph-viewer/viewer/pierre-light-tritanopia-Bpej1qhn.js +154 -0
  373. package/dist/graph-viewer/viewer/pierre-light-tritanopia-BrKH6xXA.js +4 -0
  374. package/dist/graph-viewer/viewer/pierre-light-vibrant-BjCO0blv.js +154 -0
  375. package/dist/graph-viewer/viewer/pierre-light-vibrant-COFDSNWf.js +4 -0
  376. package/dist/graph-viewer/viewer/pkl-C53Sb050.js +3 -0
  377. package/dist/graph-viewer/viewer/plain-words-CgvxtEOa.js +17 -0
  378. package/dist/graph-viewer/viewer/plastic-BKBSI3T4.js +4 -0
  379. package/dist/graph-viewer/viewer/plastic-BtQ0IfLu.js +125 -0
  380. package/dist/graph-viewer/viewer/plsql-Bx7tup_v.js +3 -0
  381. package/dist/graph-viewer/viewer/po-DSTB2Mz9.js +3 -0
  382. package/dist/graph-viewer/viewer/poimandres-DaSN2vl7.js +112 -0
  383. package/dist/graph-viewer/viewer/poimandres-Dbcm0FXZ.js +4 -0
  384. package/dist/graph-viewer/viewer/polar-E3hAEXm5.js +3 -0
  385. package/dist/graph-viewer/viewer/popover-DrLB9iar.js +5329 -0
  386. package/dist/graph-viewer/viewer/postcss-BZib8l4b.js +3 -0
  387. package/dist/graph-viewer/viewer/powerquery-CJblX2B2.js +3 -0
  388. package/dist/graph-viewer/viewer/powershell-jc6OXU_u.js +3 -0
  389. package/dist/graph-viewer/viewer/prisma-CBAWJppo.js +3 -0
  390. package/dist/graph-viewer/viewer/prolog-Ce1YjgEP.js +3 -0
  391. package/dist/graph-viewer/viewer/proto-DGLklcji.js +3 -0
  392. package/dist/graph-viewer/viewer/pug-CPAFvvT7.js +12 -0
  393. package/dist/graph-viewer/viewer/puppet-B2qoEJs2.js +3 -0
  394. package/dist/graph-viewer/viewer/purescript-Cq_6EhvO.js +3 -0
  395. package/dist/graph-viewer/viewer/python-BgSzeAZt.js +2 -0
  396. package/dist/graph-viewer/viewer/python-D0AaDoWC.js +3 -0
  397. package/dist/graph-viewer/viewer/qml-CAJAZclz.js +5 -0
  398. package/dist/graph-viewer/viewer/qmldir-BSWsNKCW.js +3 -0
  399. package/dist/graph-viewer/viewer/qss-CT2jsqXX.js +3 -0
  400. package/dist/graph-viewer/viewer/r-gNt6i8Zf.js +5 -0
  401. package/dist/graph-viewer/viewer/racket-B0_wXtli.js +3 -0
  402. package/dist/graph-viewer/viewer/raku-DKDZy5Ck.js +3 -0
  403. package/dist/graph-viewer/viewer/razor-CmVjd-Dh.js +10 -0
  404. package/dist/graph-viewer/viewer/rbs-DvNU-OQ_.js +3 -0
  405. package/dist/graph-viewer/viewer/react-CisnW4fB.js +4262 -0
  406. package/dist/graph-viewer/viewer/react-dom-C5NDYQCD.js +143 -0
  407. package/dist/graph-viewer/viewer/record-part-d0gKKrMI.js +1299 -0
  408. package/dist/graph-viewer/viewer/red-D-VJz2zz.js +154 -0
  409. package/dist/graph-viewer/viewer/red-DidxQpA-.js +4 -0
  410. package/dist/graph-viewer/viewer/reg-D6txjqBF.js +3 -0
  411. package/dist/graph-viewer/viewer/regexp-CJmLSLYE.js +5 -0
  412. package/dist/graph-viewer/viewer/rel-CY3GbSca.js +3 -0
  413. package/dist/graph-viewer/viewer/riscv-BKjM5F1V.js +3 -0
  414. package/dist/graph-viewer/viewer/rolldown-runtime-DArdT4gl.js +23 -0
  415. package/dist/graph-viewer/viewer/ron-DJgcWJZU.js +3 -0
  416. package/dist/graph-viewer/viewer/rose-pine-DN0mhTLO.js +4 -0
  417. package/dist/graph-viewer/viewer/rose-pine-dawn-C7BTe7Qj.js +124 -0
  418. package/dist/graph-viewer/viewer/rose-pine-dawn-wShSQEG_.js +4 -0
  419. package/dist/graph-viewer/viewer/rose-pine-moon-CXZ0x-tN.js +4 -0
  420. package/dist/graph-viewer/viewer/rose-pine-moon-DpdAjsWi.js +124 -0
  421. package/dist/graph-viewer/viewer/rose-pine-ndHcBYxH.js +124 -0
  422. package/dist/graph-viewer/viewer/rosmsg-BTByjkSH.js +3 -0
  423. package/dist/graph-viewer/viewer/rst-BNLuumiw.js +22 -0
  424. package/dist/graph-viewer/viewer/ruby-BPTDv07s.js +30 -0
  425. package/dist/graph-viewer/viewer/ruby-Dgthgv0F.js +2 -0
  426. package/dist/graph-viewer/viewer/rust-DCdaqFaU.js +2 -0
  427. package/dist/graph-viewer/viewer/rust-Dj2n2rl0.js +3 -0
  428. package/dist/graph-viewer/viewer/sas-DViflgLe.js +5 -0
  429. package/dist/graph-viewer/viewer/sass-CL6GLiPQ.js +3 -0
  430. package/dist/graph-viewer/viewer/scala-D9AnhX7I.js +3 -0
  431. package/dist/graph-viewer/viewer/scheme-BksZ4zIw.js +3 -0
  432. package/dist/graph-viewer/viewer/scss-7wpnG0B9.js +2 -0
  433. package/dist/graph-viewer/viewer/scss-DR3BWwkk.js +6 -0
  434. package/dist/graph-viewer/viewer/sdbl-CLOIgNSF.js +3 -0
  435. package/dist/graph-viewer/viewer/segmented-control-ChhLMa6h.js +142 -0
  436. package/dist/graph-viewer/viewer/shaderlab-BNI6l0C5.js +5 -0
  437. package/dist/graph-viewer/viewer/shellscript-JaF_7KS2.js +5 -0
  438. package/dist/graph-viewer/viewer/shellsession-BpXPWCuv.js +5 -0
  439. package/dist/graph-viewer/viewer/shiki-BwlTRTY6.js +488 -0
  440. package/dist/graph-viewer/viewer/slack-dark-BxRxM-DA.js +72 -0
  441. package/dist/graph-viewer/viewer/slack-dark-eYrSWFNQ.js +4 -0
  442. package/dist/graph-viewer/viewer/slack-ochin-BkYWF81M.js +95 -0
  443. package/dist/graph-viewer/viewer/slack-ochin-DnDV13wS.js +4 -0
  444. package/dist/graph-viewer/viewer/smalltalk-OVt5uEUD.js +3 -0
  445. package/dist/graph-viewer/viewer/smithy-CseSvY8s.js +3 -0
  446. package/dist/graph-viewer/viewer/snazzy-light-CY4buyRs.js +4 -0
  447. package/dist/graph-viewer/viewer/snazzy-light-nzcYE5KK.js +81 -0
  448. package/dist/graph-viewer/viewer/solarized-dark-CJ28ehED.js +4 -0
  449. package/dist/graph-viewer/viewer/solarized-dark-CNL-YE5C.js +148 -0
  450. package/dist/graph-viewer/viewer/solarized-light-CPffzncm.js +4 -0
  451. package/dist/graph-viewer/viewer/solarized-light-CkLaeXvs.js +148 -0
  452. package/dist/graph-viewer/viewer/solidity-CGi7NMBq.js +2 -0
  453. package/dist/graph-viewer/viewer/solidity-CXjfwKeT.js +3 -0
  454. package/dist/graph-viewer/viewer/soy-BgMg3QC4.js +5 -0
  455. package/dist/graph-viewer/viewer/sparql-RY7y0-Jf.js +5 -0
  456. package/dist/graph-viewer/viewer/splunk-MGILMmew.js +3 -0
  457. package/dist/graph-viewer/viewer/sql-BIIYxsxo.js +5 -0
  458. package/dist/graph-viewer/viewer/sql-bbpzmmG9.js +2 -0
  459. package/dist/graph-viewer/viewer/ssh-config-CFmUyPR7.js +3 -0
  460. package/dist/graph-viewer/viewer/stata-W40nJXFi.js +5 -0
  461. package/dist/graph-viewer/viewer/stream-tokenizer-CaVb21TO.js +99 -0
  462. package/dist/graph-viewer/viewer/stylus-Kh83dApl.js +3 -0
  463. package/dist/graph-viewer/viewer/surrealql-BvdRuViV.js +5 -0
  464. package/dist/graph-viewer/viewer/svelte-BIpAIvXq.js +14 -0
  465. package/dist/graph-viewer/viewer/swift-B7Z-rXzN.js +3 -0
  466. package/dist/graph-viewer/viewer/swift-CITNSfj8.js +2 -0
  467. package/dist/graph-viewer/viewer/synthwave-84-k9mB1wtO.js +4 -0
  468. package/dist/graph-viewer/viewer/synthwave-84-kUO_gAph.js +398 -0
  469. package/dist/graph-viewer/viewer/system-verilog-CQoMYllC.js +3 -0
  470. package/dist/graph-viewer/viewer/systemd-ArfzIYBi.js +3 -0
  471. package/dist/graph-viewer/viewer/talonscript-SIE54PtE.js +3 -0
  472. package/dist/graph-viewer/viewer/tasl-Ck4PO08m.js +3 -0
  473. package/dist/graph-viewer/viewer/tcl-DfkVwqLO.js +3 -0
  474. package/dist/graph-viewer/viewer/templ-CcrsYqs3.js +12 -0
  475. package/dist/graph-viewer/viewer/terminal-BxRacTx0.js +52 -0
  476. package/dist/graph-viewer/viewer/terraform-DccThf6s.js +3 -0
  477. package/dist/graph-viewer/viewer/tex-OxWF-6wM.js +6 -0
  478. package/dist/graph-viewer/viewer/themes-BxrCCwH5.js +238 -0
  479. package/dist/graph-viewer/viewer/tokyo-night-pVep8RHB.js +141 -0
  480. package/dist/graph-viewer/viewer/tokyo-night-wSZ66vL4.js +4 -0
  481. package/dist/graph-viewer/viewer/toml-CIQJnU5u.js +3 -0
  482. package/dist/graph-viewer/viewer/toml-D2vAS7BS.js +2 -0
  483. package/dist/graph-viewer/viewer/ts-tags-CBuzNYes.js +38 -0
  484. package/dist/graph-viewer/viewer/tsv-AfvsdcL-.js +3 -0
  485. package/dist/graph-viewer/viewer/tsx-BjEV2c_V.js +2 -0
  486. package/dist/graph-viewer/viewer/tsx-utlJ2eBd.js +5 -0
  487. package/dist/graph-viewer/viewer/turtle-D1NNZBgy.js +3 -0
  488. package/dist/graph-viewer/viewer/twig-BojFE3iW.js +18 -0
  489. package/dist/graph-viewer/viewer/typescript-S9qHhxTN.js +5 -0
  490. package/dist/graph-viewer/viewer/typescript-ekZNylIf.js +2 -0
  491. package/dist/graph-viewer/viewer/typespec-M_tZhO7D.js +3 -0
  492. package/dist/graph-viewer/viewer/typst-D2koCOEy.js +120 -0
  493. package/dist/graph-viewer/viewer/ui-ByOBsvk7.js +5 -0
  494. package/dist/graph-viewer/viewer/ui-CxK41KO5.js +5 -0
  495. package/dist/graph-viewer/viewer/ui-DZiGjPwl.js +906 -0
  496. package/dist/graph-viewer/viewer/v-DbYZLS97.js +3 -0
  497. package/dist/graph-viewer/viewer/vala-i5OYwFuH.js +3 -0
  498. package/dist/graph-viewer/viewer/vb-DRaXf86R.js +3 -0
  499. package/dist/graph-viewer/viewer/verilog-Dl3uFuBh.js +3 -0
  500. package/dist/graph-viewer/viewer/vesper-B2HI-Qu1.js +84 -0
  501. package/dist/graph-viewer/viewer/vesper-DgN5ShJZ.js +4 -0
  502. package/dist/graph-viewer/viewer/vhdl-UepOATuw.js +3 -0
  503. package/dist/graph-viewer/viewer/viml-DgaHry3T.js +3 -0
  504. package/dist/graph-viewer/viewer/vitesse-black-B09teiUx.js +4 -0
  505. package/dist/graph-viewer/viewer/vitesse-black-BLUtFdIS.js +184 -0
  506. package/dist/graph-viewer/viewer/vitesse-dark-CSebpMf5.js +184 -0
  507. package/dist/graph-viewer/viewer/vitesse-dark-CkA3-NtU.js +4 -0
  508. package/dist/graph-viewer/viewer/vitesse-light-DECVT8fj.js +4 -0
  509. package/dist/graph-viewer/viewer/vitesse-light-DJPcjfyV.js +184 -0
  510. package/dist/graph-viewer/viewer/vue-CiFPO7R5.js +21 -0
  511. package/dist/graph-viewer/viewer/vue-html-BZL30ZyU.js +5 -0
  512. package/dist/graph-viewer/viewer/vue-vine-CVQkz-vV.js +18 -0
  513. package/dist/graph-viewer/viewer/vyper-BiyGiCmH.js +3 -0
  514. package/dist/graph-viewer/viewer/wasm-BXdtUMGf.js +4 -0
  515. package/dist/graph-viewer/viewer/wasm-DXa1gtBd.js +3 -0
  516. package/dist/graph-viewer/viewer/wenyan-Ke6AN0BI.js +3 -0
  517. package/dist/graph-viewer/viewer/wgsl-Vcm3Lg52.js +3 -0
  518. package/dist/graph-viewer/viewer/wikitext-C4uDiSA9.js +3 -0
  519. package/dist/graph-viewer/viewer/wit-hbIPZwZR.js +3 -0
  520. package/dist/graph-viewer/viewer/wolfram-DGFnG0I5.js +3 -0
  521. package/dist/graph-viewer/viewer/workspace-DalRxssx.js +25100 -0
  522. package/dist/graph-viewer/viewer/x-B_F8B4lq.js +56 -0
  523. package/dist/graph-viewer/viewer/xml-C4j_mOgu.js +6 -0
  524. package/dist/graph-viewer/viewer/xml-SfvhYhbQ.js +2 -0
  525. package/dist/graph-viewer/viewer/xsl-CNv6nqtA.js +5 -0
  526. package/dist/graph-viewer/viewer/yaml-CS1e8wnG.js +5 -0
  527. package/dist/graph-viewer/viewer/yaml-CudzZ2m4.js +2 -0
  528. package/dist/graph-viewer/viewer/zenscript-BtXHY1aa.js +3 -0
  529. package/dist/graph-viewer/viewer/zig-BaU1vZRj.js +3 -0
  530. package/dist/graph-viewer/workspace-model-Ewf17pTW.js +1541 -0
  531. package/dist/graph-viewer/workspace-viewer.js +24443 -0
  532. package/dist/graph-viewer/workspace.js +2 -0
  533. package/dist/index.mjs +11 -11
  534. package/package.json +5 -5
@@ -0,0 +1,1299 @@
1
+ import { i as e } from "./rolldown-runtime-DArdT4gl.js";
2
+ import { i as t, t as n } from "./jsx-runtime-BSzbUOFc.js";
3
+ import { d as r, f as i } from "./markdown-BpJEJUTW.js";
4
+ import { a, i as o, n as s, r as c, t as l } from "./agent-timeline-C-UIhXgu.js";
5
+ import { l as u, p as d } from "./data-azhapQrS.js";
6
+ //#region src/viewer/StructuredContent.tsx
7
+ var f = /* @__PURE__ */ e(t(), 1), p = n();
8
+ function m(e) {
9
+ try {
10
+ return JSON.parse(e);
11
+ } catch {
12
+ return e;
13
+ }
14
+ }
15
+ function h({ text: e, resolveHref: t }) {
16
+ return /* @__PURE__ */ (0, p.jsx)("div", {
17
+ className: "activity-prose",
18
+ children: /* @__PURE__ */ (0, p.jsx)(i, {
19
+ skipHtml: !0,
20
+ remarkPlugins: [r],
21
+ components: {
22
+ a: ({ href: e, children: n }) => {
23
+ let r = /^https?:\/\//i.test(e ?? "") ? e : t?.(e ?? "");
24
+ return r && (/^https?:\/\//i.test(r) || /^\/(?!\/)/.test(r)) ? /* @__PURE__ */ (0, p.jsx)("a", {
25
+ href: r,
26
+ target: "_blank",
27
+ rel: "noreferrer",
28
+ children: n
29
+ }) : /* @__PURE__ */ (0, p.jsx)("span", { children: n });
30
+ },
31
+ img: ({ alt: e }) => /* @__PURE__ */ (0, p.jsx)("span", { children: e || "Image omitted" }),
32
+ table: ({ children: e }) => /* @__PURE__ */ (0, p.jsx)("div", {
33
+ className: "rr-table-scroll",
34
+ children: /* @__PURE__ */ (0, p.jsx)("table", { children: e })
35
+ })
36
+ },
37
+ children: e
38
+ })
39
+ });
40
+ }
41
+ function g({ value: e, depth: t = 0, field: n }) {
42
+ let [r, i] = (0, f.useState)(!1);
43
+ if (e == null) return /* @__PURE__ */ (0, p.jsx)("span", {
44
+ className: "small",
45
+ children: "Not supplied"
46
+ });
47
+ if (typeof e == "string") {
48
+ if (n && /^(command|cmd|code|script|stdout|stderr)$/i.test(n)) return /* @__PURE__ */ (0, p.jsx)("pre", {
49
+ className: "activity-code",
50
+ children: /* @__PURE__ */ (0, p.jsx)("code", { children: e })
51
+ });
52
+ let r = t < 3 ? m(e) : e;
53
+ return typeof r == "string" ? /* @__PURE__ */ (0, p.jsx)(h, { text: e }) : /* @__PURE__ */ (0, p.jsx)(g, {
54
+ value: r,
55
+ depth: t + 1
56
+ });
57
+ }
58
+ if (typeof e != "object") return /* @__PURE__ */ (0, p.jsx)("span", { children: String(e) });
59
+ if (Array.isArray(e)) {
60
+ let n = r ? e : e.slice(0, 12);
61
+ return /* @__PURE__ */ (0, p.jsxs)("div", {
62
+ className: "structured-items",
63
+ children: [n.map((e, n) => /* @__PURE__ */ (0, p.jsx)("div", { children: /* @__PURE__ */ (0, p.jsx)(g, {
64
+ value: e,
65
+ depth: t + 1
66
+ }) }, n)), e.length > n.length && /* @__PURE__ */ (0, p.jsxs)("button", {
67
+ className: "ui-button",
68
+ onClick: () => i(!0),
69
+ children: [
70
+ "Show all ",
71
+ e.length,
72
+ " items"
73
+ ]
74
+ })]
75
+ });
76
+ }
77
+ let a = e;
78
+ if (a.type === "text" && typeof a.text == "string") return /* @__PURE__ */ (0, p.jsx)(g, {
79
+ value: a.text,
80
+ depth: t + 1
81
+ });
82
+ let o = Object.entries(a), s = r ? o : o.slice(0, 16);
83
+ return t > 4 ? /* @__PURE__ */ (0, p.jsxs)("details", { children: [/* @__PURE__ */ (0, p.jsx)("summary", { children: "Nested data" }), /* @__PURE__ */ (0, p.jsx)("pre", { children: JSON.stringify(e, null, 2) })] }) : /* @__PURE__ */ (0, p.jsxs)("dl", {
84
+ className: "structured-fields",
85
+ children: [s.map(([e, n]) => /* @__PURE__ */ (0, p.jsxs)("div", { children: [/* @__PURE__ */ (0, p.jsx)("dt", { children: e.replace(/([a-z])([A-Z])/g, "$1 $2").replaceAll("_", " ") }), /* @__PURE__ */ (0, p.jsx)("dd", { children: /* @__PURE__ */ (0, p.jsx)(g, {
86
+ value: n,
87
+ depth: t + 1,
88
+ field: e
89
+ }) })] }, e)), o.length > s.length && /* @__PURE__ */ (0, p.jsxs)("button", {
90
+ className: "ui-button",
91
+ onClick: () => i(!0),
92
+ children: [
93
+ "Show all ",
94
+ o.length,
95
+ " fields"
96
+ ]
97
+ })]
98
+ });
99
+ }
100
+ function _({ text: e, rawLabel: t = "Raw data" }) {
101
+ let n = m(e);
102
+ return /* @__PURE__ */ (0, p.jsxs)("div", {
103
+ className: "structured-content",
104
+ children: [/* @__PURE__ */ (0, p.jsx)(g, { value: n }), typeof n != "string" && /* @__PURE__ */ (0, p.jsxs)("details", {
105
+ className: "raw-data",
106
+ children: [/* @__PURE__ */ (0, p.jsx)("summary", { children: t }), /* @__PURE__ */ (0, p.jsx)("pre", { children: e })]
107
+ })]
108
+ });
109
+ }
110
+ var v = /^(command|cmd|code|script|content|new_string|old_string|patch|text|stdout|stderr|output|query|prompt)$/i;
111
+ function y(e, t = [], n = []) {
112
+ if (n.length >= 24 || t.length > 8) return n;
113
+ if (typeof e == "string") (e.includes("\n") || e.length > 120 || v.test(t.at(-1) ?? "")) && n.push({
114
+ path: t.join(" › ") || "text",
115
+ text: e
116
+ });
117
+ else if (Array.isArray(e)) e.forEach((e, r) => y(e, [...t, String(r)], n));
118
+ else if (e && typeof e == "object") for (let [r, i] of Object.entries(e)) y(i, [...t, r], n);
119
+ return n;
120
+ }
121
+ function b({ text: e, rawLabel: t = "Raw data" }) {
122
+ let n = m(e);
123
+ if (typeof n != "object" || !n) return /* @__PURE__ */ (0, p.jsx)("pre", {
124
+ className: "activity-code verbatim",
125
+ "data-verbatim": !0,
126
+ children: /* @__PURE__ */ (0, p.jsx)("code", { children: e })
127
+ });
128
+ let r = y(n);
129
+ return /* @__PURE__ */ (0, p.jsxs)("div", {
130
+ className: "structured-content verbatim",
131
+ "data-verbatim": !0,
132
+ children: [r.map((e, t) => /* @__PURE__ */ (0, p.jsxs)("section", {
133
+ className: "verbatim-block",
134
+ children: [/* @__PURE__ */ (0, p.jsx)("span", {
135
+ className: "verbatim-path mono",
136
+ children: e.path
137
+ }), /* @__PURE__ */ (0, p.jsx)("pre", {
138
+ className: "activity-code",
139
+ children: /* @__PURE__ */ (0, p.jsx)("code", { children: e.text })
140
+ })]
141
+ }, t)), /* @__PURE__ */ (0, p.jsxs)("details", {
142
+ className: "raw-data",
143
+ open: !r.length,
144
+ children: [/* @__PURE__ */ (0, p.jsx)("summary", { children: t }), /* @__PURE__ */ (0, p.jsx)("pre", {
145
+ className: "activity-code",
146
+ children: /* @__PURE__ */ (0, p.jsx)("code", { children: JSON.stringify(n, null, 2) })
147
+ })]
148
+ })]
149
+ });
150
+ }
151
+ //#endregion
152
+ //#region src/viewer/model.ts
153
+ var x = (e) => Date.parse(e);
154
+ function S(e, t = !1) {
155
+ let n = new Date(e);
156
+ if (!Number.isFinite(n.valueOf())) return "Unknown time";
157
+ let r = n.toISOString();
158
+ return `${t ? r.slice(0, 19).replace("T", " ") : r.slice(11, 19)} UTC`;
159
+ }
160
+ var C = (e) => e.replace(/\s+/g, " ").trim(), w = /\/(?:home|Users)\/[^/\s"'`]+(?:\/\.cache\/disco\/host\/[^/\s"'`]+(?:\/sessions\/[^/\s"'`]+)?)?(\/?)/g;
161
+ function T(e) {
162
+ return !e || !(e.includes("/home/") || e.includes("/Users/")) ? e : e.replace(w, (e, t, n, r) => {
163
+ if (!e.includes("/.cache/disco/host/")) return t ? "~/" : "~";
164
+ let i = r[n + e.length];
165
+ return t && i !== void 0 && !/[\s"'`)]/.test(i) ? "" : "./";
166
+ });
167
+ }
168
+ function E(e) {
169
+ let t = e.detail, n = T(t.publicText), r = T(t.reasoning), i = t.publicToolCalls?.map((e) => e.input && T(e.input) !== e.input ? {
170
+ ...e,
171
+ input: T(e.input)
172
+ } : e);
173
+ return n === t.publicText && r === t.reasoning && i?.every((e, n) => e === t.publicToolCalls[n]) !== !1 ? e : {
174
+ ...e,
175
+ detail: {
176
+ ...t,
177
+ ...n === void 0 ? {} : { publicText: n },
178
+ ...r === void 0 ? {} : { reasoning: r },
179
+ ...i ? { publicToolCalls: i } : {}
180
+ }
181
+ };
182
+ }
183
+ var D = (e) => e.detail.publicText ?? e.detail.recordedClaim ?? "", O = (e, t) => JSON.stringify([e, t]);
184
+ function k(e) {
185
+ let t = e.detail.publicToolCalls ?? [], n = new Map(t.map((e) => [e.id, e]));
186
+ return [.../* @__PURE__ */ new Set([...e.detail.toolCallIds ?? [], ...t.map((e) => e.id)])].map((t) => n.get(t) ?? {
187
+ id: t,
188
+ name: e.detail.toolNames?.length === 1 ? e.detail.toolNames[0] : "Tool call"
189
+ });
190
+ }
191
+ var A = (e) => e.replace(/^[a-z0-9][\w.-]*-\d{8}[a-z]?:/i, "");
192
+ function j(e) {
193
+ if (e.input === void 0) return "args not captured";
194
+ try {
195
+ let t = JSON.parse(e.input);
196
+ if (t && typeof t == "object" && !Array.isArray(t)) {
197
+ let e = t;
198
+ for (let t of [
199
+ "command",
200
+ "cmd",
201
+ "filePath",
202
+ "file_path",
203
+ "path",
204
+ "query",
205
+ "question",
206
+ "pattern",
207
+ "url",
208
+ "pageId",
209
+ "title",
210
+ "task",
211
+ "prompt",
212
+ "message"
213
+ ]) if (typeof e[t] == "string" && e[t]) return C(A(e[t]));
214
+ let n = Object.values(e).filter((e) => [
215
+ "string",
216
+ "number",
217
+ "boolean"
218
+ ].includes(typeof e));
219
+ if (n.length) return C(n.map((e) => A(String(e))).join(" · "));
220
+ }
221
+ } catch {}
222
+ return C(e.input);
223
+ }
224
+ function M(e) {
225
+ let t = new Map(e.nodes.map((e) => [e.id, e])), n = (e) => t.get(e)?.agentId ?? e, r = e.nodes.filter((e) => e.kind !== "session" || !e.agentId), i = e.events.map(E).sort((e, t) => x(e.at) - x(t.at)), a = new Map(i.map((e) => [e.id, e])), o = new Map(e.events.map((e, t) => [e.id, t])), s = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Map();
226
+ for (let e of i) {
227
+ let t = n(e.node), r = s.get(t) ?? [];
228
+ r.push(e), s.set(t, r);
229
+ for (let t of k(e)) {
230
+ let n = O(e.node, t.id), r = l.get(n) ?? [];
231
+ r.push({
232
+ event: e,
233
+ call: t
234
+ }), l.set(n, r);
235
+ }
236
+ if (e.detail.toolCallId !== void 0) {
237
+ let t = O(e.node, e.detail.toolCallId), n = c.get(t) ?? [];
238
+ n.push(e), c.set(t, n);
239
+ }
240
+ }
241
+ let u = i.map((e) => x(e.at)), d = u[0] ?? 0;
242
+ return {
243
+ nodes: t,
244
+ canonical: n,
245
+ actors: r,
246
+ events: i,
247
+ byEvent: a,
248
+ recordedOrder: o,
249
+ byActor: s,
250
+ calls: l,
251
+ results: c,
252
+ start: d,
253
+ end: i.reduce((e, t) => Math.max(e, t.end ? x(t.end) : x(t.at)), u.at(-1) ?? d)
254
+ };
255
+ }
256
+ function N(e, t) {
257
+ return (e.byActor.get(t) ?? []).some((e) => typeof e.detail.costListUsd == "number" || Object.values(e.detail.usage ?? {}).some((e) => typeof e == "number" && e > 0));
258
+ }
259
+ function P(e, t, n) {
260
+ if (!e?.status && n) return n === "running" ? "working" : n.replaceAll("-", " ");
261
+ let r = e?.status ?? "no terminal state recorded";
262
+ if (t) return r;
263
+ let i = e?.capture?.status;
264
+ return `${r} · no usage recorded${i === "absent" ? "; capture missing" : i === "lossy" ? "; capture partial" : ""}`;
265
+ }
266
+ function F(e, t, n, r) {
267
+ return (r === "all" || r === "prompts" && (e.detail.promptKind === "initial" || e.detail.promptKind === "steering") || e.category === r || r === "findings" && (e.kind === "finding-record" || e.detail.recordedClaim !== void 0)) && (!n || JSON.stringify({
268
+ label: e.label,
269
+ node: t.nodes.get(t.canonical(e.node)),
270
+ detail: e.detail
271
+ }).toLowerCase().includes(n));
272
+ }
273
+ //#endregion
274
+ //#region src/viewer/VirtualList.tsx
275
+ function I({ items: e, keyOf: t, render: n, scroller: r, estimate: i = 96, overscan: a = 900, target: o }) {
276
+ let s = (0, f.useRef)(/* @__PURE__ */ new Map()), [c, l] = (0, f.useState)(0), [u, d] = (0, f.useState)({
277
+ top: 0,
278
+ height: 900
279
+ }), m = (0, f.useRef)(null), h = (0, f.useRef)(/* @__PURE__ */ new Map()), g = (0, f.useRef)(0), _ = (e) => {
280
+ !m.current && typeof ResizeObserver < "u" && (m.current = new ResizeObserver((e) => {
281
+ let t = !1;
282
+ for (let n of e) {
283
+ let e = h.current.get(n.target);
284
+ if (!e) continue;
285
+ let r = Math.ceil(n.borderBoxSize?.[0]?.blockSize ?? n.target.offsetHeight);
286
+ r > 0 && s.current.get(e) !== r && (s.current.set(e, r), t = !0);
287
+ }
288
+ t && !g.current && (g.current = requestAnimationFrame(() => {
289
+ g.current = 0, l((e) => e + 1);
290
+ }));
291
+ })), m.current?.observe(e);
292
+ };
293
+ (0, f.useEffect)(() => () => {
294
+ cancelAnimationFrame(g.current), m.current?.disconnect(), m.current = null, h.current.clear();
295
+ }, []), (0, f.useEffect)(() => {
296
+ let e = r.current;
297
+ if (!e) return;
298
+ let t = 0, n = () => {
299
+ t = 0, d((t) => t.top === e.scrollTop && t.height === e.clientHeight ? t : {
300
+ top: e.scrollTop,
301
+ height: e.clientHeight
302
+ });
303
+ }, i = () => {
304
+ t ||= requestAnimationFrame(n);
305
+ };
306
+ n(), e.addEventListener("scroll", i, { passive: !0 });
307
+ let a = new ResizeObserver(i);
308
+ return a.observe(e), () => {
309
+ cancelAnimationFrame(t), e.removeEventListener("scroll", i), a.disconnect();
310
+ };
311
+ }, [r]);
312
+ let v = (0, f.useMemo)(() => {
313
+ let n = new Float64Array(e.length + 1), r = typeof i == "function" ? i : () => i;
314
+ for (let i = 0; i < e.length; i++) n[i + 1] = n[i] + (s.current.get(t(e[i])) ?? r(e[i]));
315
+ return n;
316
+ }, [
317
+ e,
318
+ t,
319
+ i,
320
+ c
321
+ ]), y = (t) => {
322
+ let n = 0, r = e.length;
323
+ for (; n < r;) {
324
+ let e = n + r >> 1;
325
+ v[e + 1] <= t ? n = e + 1 : r = e;
326
+ }
327
+ return n;
328
+ }, b = Math.max(0, y(u.top - a)), x = Math.min(e.length, y(u.top + u.height + a) + 1), S = (0, f.useCallback)((n, i) => {
329
+ let a = r.current, o = e.findIndex((e) => t(e) === n);
330
+ if (!a || o < 0) return !1;
331
+ let s = v[o], c = v[o + 1];
332
+ return (i || s < a.scrollTop || c > a.scrollTop + a.clientHeight) && (a.scrollTop = Math.max(0, s - 8)), !0;
333
+ }, [
334
+ e,
335
+ t,
336
+ v,
337
+ r
338
+ ]), C = (0, f.useRef)(null), w = (0, f.useRef)(/* @__PURE__ */ new Map()), T = () => {
339
+ let e = C.current;
340
+ if (!e) return;
341
+ if (performance.now() > e.until) {
342
+ C.current = null;
343
+ return;
344
+ }
345
+ if (!S(e.key, !0)) return;
346
+ let t = w.current.get(e.key);
347
+ if (t?.isConnected) {
348
+ let e = t.getBoundingClientRect();
349
+ (e.top < 72 || e.top > window.innerHeight - 96) && window.scrollBy({ top: e.top - 120 });
350
+ }
351
+ };
352
+ (0, f.useLayoutEffect)(() => {
353
+ C.current = o ? {
354
+ key: o,
355
+ until: performance.now() + 2e3
356
+ } : null, T();
357
+ }, [o]), (0, f.useLayoutEffect)(T, [
358
+ c,
359
+ u,
360
+ e
361
+ ]), (0, f.useEffect)(() => {
362
+ let e = r.current;
363
+ if (!e) return;
364
+ let t = () => {
365
+ C.current = null;
366
+ };
367
+ return e.addEventListener("wheel", t, { passive: !0 }), e.addEventListener("touchstart", t, { passive: !0 }), e.addEventListener("pointerdown", t), e.addEventListener("keydown", t), () => {
368
+ e.removeEventListener("wheel", t), e.removeEventListener("touchstart", t), e.removeEventListener("pointerdown", t), e.removeEventListener("keydown", t);
369
+ };
370
+ }, [r]);
371
+ let E = (e) => (t) => {
372
+ if (!t) {
373
+ w.current.delete(e);
374
+ return;
375
+ }
376
+ w.current.set(e, t);
377
+ for (let [n, r] of h.current) r === e && n !== t && (m.current?.unobserve(n), h.current.delete(n));
378
+ h.current.has(t) || (h.current.set(t, e), _(t));
379
+ };
380
+ return (0, f.useEffect)(() => {
381
+ for (let e of [...h.current.keys()]) e.isConnected || (m.current?.unobserve(e), h.current.delete(e));
382
+ }), /* @__PURE__ */ (0, p.jsxs)(p.Fragment, { children: [
383
+ /* @__PURE__ */ (0, p.jsx)("div", {
384
+ style: { height: v[b] },
385
+ "aria-hidden": "true"
386
+ }),
387
+ e.slice(b, x).map((e, r) => {
388
+ let i = t(e);
389
+ return /* @__PURE__ */ (0, p.jsx)("div", {
390
+ ref: E(i),
391
+ className: "virtual-row",
392
+ children: n(e, b + r)
393
+ }, i);
394
+ }),
395
+ /* @__PURE__ */ (0, p.jsx)("div", {
396
+ style: { height: v[e.length] - v[x] },
397
+ "aria-hidden": "true"
398
+ })
399
+ ] });
400
+ }
401
+ //#endregion
402
+ //#region src/viewer/conversation-rows.ts
403
+ function L(e) {
404
+ let t = e.source, n = e.detail.nativeRecordId;
405
+ return typeof n == "string" && n ? JSON.stringify([
406
+ e.node,
407
+ "native",
408
+ n,
409
+ e.kind,
410
+ t?.item ?? null
411
+ ]) : t?.path ? JSON.stringify([
412
+ e.node,
413
+ t.path,
414
+ t.line ?? null,
415
+ t.pointer ?? null,
416
+ t.item ?? null
417
+ ]) : e.id;
418
+ }
419
+ function R(e) {
420
+ let t = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
421
+ for (let r of e) {
422
+ let e = L(r), i = t.get(e) ?? 0;
423
+ t.set(e, i + 1), n.set(r.id, i ? `${e}#${i}` : e);
424
+ }
425
+ return n;
426
+ }
427
+ var z = (e) => e === void 0 || /^\s*(\{\s*\}|null)?\s*$/.test(e);
428
+ function B(e) {
429
+ return e === void 0 ? "args not captured" : z(e) ? "empty args" : null;
430
+ }
431
+ function V(e, t) {
432
+ switch (e) {
433
+ case "error": return "Error";
434
+ case "returned": return "Returned";
435
+ case "pending": return "Not returned";
436
+ case "ambiguous": return "Ambiguous";
437
+ default: return t ? "Pending" : "Result not captured";
438
+ }
439
+ }
440
+ function H(e) {
441
+ let t = e.usage;
442
+ return typeof t?.output == "number" && Number.isFinite(t.output) ? t.output : null;
443
+ }
444
+ function ee(e) {
445
+ let t = H(e);
446
+ return t !== null && t < 2e3;
447
+ }
448
+ function U(e) {
449
+ let t = (e) => typeof e == "number" && Number.isFinite(e) && e > 0 ? Math.floor(e) : 0, n = t(e.reasoningOmitted), r = t(e.reasoningRedacted), i = [];
450
+ return n && i.push(n === 1 ? "thinking not returned by provider" : `${n} thinking blocks not returned by provider`), r && i.push(r === 1 ? "thinking redacted (encrypted)" : `${r} thinking blocks redacted (encrypted)`), i;
451
+ }
452
+ var te = /await|wait|poll|sleep|observe|status/i;
453
+ function ne(e) {
454
+ if (typeof e != "string" || !e.trimStart().startsWith("{")) return !1;
455
+ try {
456
+ let t = JSON.parse(e);
457
+ return !!t && typeof t == "object" && !Array.isArray(t) && t.pending === !0;
458
+ } catch {
459
+ return !1;
460
+ }
461
+ }
462
+ var re = (e) => (e ?? []).some((e) => !ne(e.detail.publicText));
463
+ function ie(e, t, n) {
464
+ let r = e.detail;
465
+ if (r.role !== "assistant" || e.category === "lifecycle" || r.lifecycle !== void 0 || r.publicText || r.recordedClaim || r.reasoning || r.responseStatus === "error" || r.contentOmitted || r.publicationNote || r.clip || U(r).length || t.length !== 1) return null;
466
+ let i = t[0];
467
+ return i.clip || i.publicationNote || n(i.id) || !z(i.input) && !te.test(i.name) ? null : i;
468
+ }
469
+ function ae(e, t, n) {
470
+ let r = e.detail;
471
+ return r.role !== "assistant" || e.category === "lifecycle" || r.lifecycle !== void 0 || r.publicText || r.recordedClaim || r.reasoning || r.responseStatus === "error" || r.contentOmitted || r.publicationNote || r.clip || U(r).length || !t.length || t.some((t) => t.input !== void 0 || t.clip || t.publicationNote || n(e, t.id)) ? null : t;
472
+ }
473
+ function oe(e, { callsOf: t, captured: n, keyOf: r, min: i = 2 }) {
474
+ let a = [], o = null, s = () => {
475
+ if (o) {
476
+ if (o.events.length >= i) a.push({
477
+ kind: "hollow",
478
+ key: `hollow:${r(o.events[0])}`,
479
+ events: o.events,
480
+ calls: [...o.calls.entries()].map(([e, t]) => ({
481
+ name: e,
482
+ count: t
483
+ })),
484
+ spanMs: o.spanMs
485
+ });
486
+ else for (let e of o.events) a.push({
487
+ kind: "event",
488
+ key: r(e),
489
+ event: e
490
+ });
491
+ o = null;
492
+ }
493
+ };
494
+ for (let r of e) {
495
+ if (r.kind !== "event") {
496
+ s(), a.push(r);
497
+ continue;
498
+ }
499
+ let e = ae(r.event, t(r.event), n);
500
+ if (!e) {
501
+ s(), a.push(r);
502
+ continue;
503
+ }
504
+ o ??= {
505
+ events: [],
506
+ calls: /* @__PURE__ */ new Map(),
507
+ spanMs: 0
508
+ }, o.events.push(r.event);
509
+ for (let t of e) o.calls.set(t.name, (o.calls.get(t.name) ?? 0) + 1);
510
+ }
511
+ s();
512
+ for (let e of a) {
513
+ if (e.kind !== "hollow") continue;
514
+ let t = e.events.map((e) => Date.parse(e.at)).filter(Number.isFinite);
515
+ e.spanMs = t.length > 1 ? Math.max(...t) - Math.min(...t) : 0;
516
+ }
517
+ return a;
518
+ }
519
+ function se(e) {
520
+ let t = e.reduce((e, t) => e + t.count, 0), n = e.map((e) => e.count > 1 ? `${e.name} ×${e.count}` : e.name);
521
+ return `${t} tool call${t === 1 ? "" : "s"} · ${n.join(" · ")}`;
522
+ }
523
+ function ce(e, { callsOf: t, answered: n, keyOf: r, min: i = 2 }) {
524
+ let a = [], o = null, s = () => {
525
+ if (o) {
526
+ if (o.events.length >= i) a.push({
527
+ kind: "polls",
528
+ key: `polls:${r(o.events[0])}`,
529
+ name: o.name,
530
+ input: o.input,
531
+ events: o.events
532
+ });
533
+ else for (let e of o.events) a.push({
534
+ kind: "event",
535
+ key: r(e),
536
+ event: e
537
+ });
538
+ o = null;
539
+ }
540
+ };
541
+ for (let i of e) {
542
+ let e = ie(i, t(i), (e) => n(i, e));
543
+ if (!e) {
544
+ s(), a.push({
545
+ kind: "event",
546
+ key: r(i),
547
+ event: i
548
+ });
549
+ continue;
550
+ }
551
+ let c = z(e.input) ? "" : e.input.trim();
552
+ o && (o.name !== e.name || o.args !== c) && s(), o ??= {
553
+ name: e.name,
554
+ args: c,
555
+ input: e.input,
556
+ events: []
557
+ }, o.events.push(i);
558
+ }
559
+ return s(), a;
560
+ }
561
+ function W(e) {
562
+ let t = Math.max(0, Math.round(e / 1e3));
563
+ if (t < 60) return `${t}s`;
564
+ let n = Math.floor(t / 60);
565
+ return n < 60 ? `${n}m ${t % 60}s` : `${Math.floor(n / 60)}h ${n % 60}m`;
566
+ }
567
+ function le(e) {
568
+ let t = e.map((e) => Date.parse(e.at)).filter(Number.isFinite), n = t.length ? Math.max(...t) - Math.min(...t) : 0, r = 0, i = 0;
569
+ for (let t of e) {
570
+ let e = t.detail.usage;
571
+ if (!e || t.detail.usageScope !== void 0) continue;
572
+ let n = [
573
+ e.input,
574
+ e.output,
575
+ e.cacheRead,
576
+ e.cacheWrite
577
+ ].filter((e) => typeof e == "number");
578
+ n.length && (i++, r += n.reduce((e, t) => e + t, 0));
579
+ }
580
+ let a = new Intl.NumberFormat("en-US", {
581
+ notation: "compact",
582
+ maximumFractionDigits: 1
583
+ }), o = i ? i < e.length ? `~${a.format(r)} tokens (${i} of ${e.length} measured)` : `~${a.format(r)} tokens` : "tokens unknown";
584
+ return {
585
+ polls: e.length,
586
+ spanMs: n,
587
+ tokens: i ? r : null,
588
+ measured: i,
589
+ label: `waited ${W(n)} · ${e.length} polls · ${o}`
590
+ };
591
+ }
592
+ //#endregion
593
+ //#region src/viewer/prompt-text.ts
594
+ function ue(e) {
595
+ let t = e.indexOf("[user] "), n = e.startsWith("[system] ") && t >= 0 ? e.slice(t + 7).trim() : e.trim();
596
+ if (!n.startsWith("{")) return n;
597
+ try {
598
+ let e = JSON.parse(n), t = ["objective", "instruction"].map((t) => e[t]).filter((e) => typeof e == "string" && e.trim().length > 0);
599
+ return t.length ? t.join("\n\n") : n;
600
+ } catch {
601
+ return n;
602
+ }
603
+ }
604
+ //#endregion
605
+ //#region src/viewer/ConversationRowView.tsx
606
+ var G = (e) => e.category === "lifecycle" || e.detail.lifecycle !== void 0, de = (e) => new Intl.NumberFormat("en-US", {
607
+ notation: "compact",
608
+ maximumFractionDigits: 1
609
+ }).format(e), fe = (e) => {
610
+ let t = Math.round(e / 1e3);
611
+ if (t < 60) return `${t} s`;
612
+ let n = Math.floor(t / 60);
613
+ return n < 60 ? `${n} m ${t % 60} s` : `${Math.floor(n / 60)} h ${n % 60} m`;
614
+ };
615
+ function K({ name: e }) {
616
+ let t = e.toLowerCase(), n = /think|reason/.test(t) ? "M8 2.5a4 4 0 0 0-2.5 7.1V11h5V9.6A4 4 0 0 0 8 2.5M6 13.5h4" : /search|grep|find/.test(t) ? "M10 10l3.5 3.5M11 7a4 4 0 1 0-8 0 4 4 0 0 0 8 0" : /bash|shell|exec|run|command/.test(t) ? "M2 3h12v10H2zM4 6l2 2-2 2M8 10h4" : /await|wait|sleep|poll/.test(t) ? "M8 2.5a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11M8 5v3l2 1.5" : "M10 8a2 2 0 1 0-4 0 2 2 0 0 0 4 0";
617
+ return /* @__PURE__ */ (0, p.jsx)("svg", {
618
+ viewBox: "0 0 16 16",
619
+ width: "14",
620
+ height: "14",
621
+ "aria-hidden": "true",
622
+ children: /* @__PURE__ */ (0, p.jsx)("path", {
623
+ d: n,
624
+ stroke: "currentColor",
625
+ strokeWidth: "1.4",
626
+ fill: "none",
627
+ strokeLinecap: "round",
628
+ strokeLinejoin: "round"
629
+ })
630
+ });
631
+ }
632
+ var pe = /* @__PURE__ */ new Set([
633
+ "bash",
634
+ "shell",
635
+ "command",
636
+ "execute",
637
+ "write",
638
+ "write_file",
639
+ "create_file",
640
+ "edit",
641
+ "patch",
642
+ "read",
643
+ "read_file",
644
+ "cat",
645
+ "grep",
646
+ "search",
647
+ "rg",
648
+ "glob",
649
+ "find",
650
+ "ls",
651
+ "web_search",
652
+ "web_fetch",
653
+ "fetch",
654
+ "task",
655
+ "agent",
656
+ "spawn"
657
+ ]), me = {
658
+ bash: "bash",
659
+ shell: "bash",
660
+ command: "bash",
661
+ execute: "bash",
662
+ read: "read",
663
+ read_file: "read",
664
+ cat: "read",
665
+ write: "write",
666
+ write_file: "write",
667
+ create_file: "write",
668
+ edit: "edit",
669
+ patch: "edit",
670
+ grep: "grep",
671
+ search: "grep",
672
+ rg: "grep",
673
+ glob: "glob",
674
+ find: "glob",
675
+ ls: "list"
676
+ }, q = (e) => (e.startsWith("mcp__") && e.slice(e.lastIndexOf("__") + 2) || e).replace(/^agent-runtime-/, ""), he = (e) => {
677
+ if (e !== void 0) try {
678
+ let t = JSON.parse(e);
679
+ return t && typeof t == "object" ? t : e;
680
+ } catch {
681
+ return e;
682
+ }
683
+ }, ge = (e) => {
684
+ let t = e;
685
+ try {
686
+ let n = JSON.parse(e), r = typeof n?.error == "string" ? n.error : typeof n?.message == "string" ? n.message : void 0;
687
+ r && (t = r);
688
+ } catch {}
689
+ return C(t.split("\n").find((e) => e.trim()) ?? "").slice(0, 200);
690
+ };
691
+ function J(e, t, n, r, i, a) {
692
+ let s = q(t.name), c = n ? D(n) || n.detail.contentOmitted || "" : void 0, l = r === "error" ? "error" : r === "pending" || r === "missing" && a ? "running" : "completed", u = r === "ambiguous" || r === "missing" && !a ? V(r, a) : void 0, d = {
693
+ type: "tool",
694
+ id: e,
695
+ tool: s,
696
+ state: {
697
+ status: l,
698
+ input: he(t.input),
699
+ ...c === void 0 ? {} : { output: c },
700
+ ...l === "error" ? { error: ge(c ?? "") || "The call failed." } : {},
701
+ ...i !== null && i >= 0 ? { time: {
702
+ start: 0,
703
+ end: i
704
+ } } : {},
705
+ ...u ? { metadata: { note: u } } : {}
706
+ }
707
+ }, f = pe.has(s.toLowerCase()), p = o(d), m = B(t.input) ?? (p.description || (f ? void 0 : j(t)));
708
+ return {
709
+ id: e,
710
+ kind: "tool",
711
+ part: d,
712
+ call: {
713
+ id: e,
714
+ type: me[s.toLowerCase()] ?? "unknown",
715
+ label: f ? p.title : s.replaceAll("_", " "),
716
+ status: l === "error" ? "error" : l === "running" ? "running" : "success",
717
+ ...m ? { detail: m } : {},
718
+ ...i !== null && i >= 0 ? { duration: i } : {}
719
+ }
720
+ };
721
+ }
722
+ var _e = (e) => {
723
+ let t = e.state.metadata?.note;
724
+ return t ? /* @__PURE__ */ (0, p.jsx)("span", {
725
+ className: "tool-note",
726
+ children: t
727
+ }) : null;
728
+ }, Y = ({ id: e, children: t }) => /* @__PURE__ */ (0, p.jsx)(l, {
729
+ className: "ar-tl",
730
+ items: [{
731
+ id: e,
732
+ kind: "custom",
733
+ content: t
734
+ }]
735
+ }), ve = (e) => e && typeof e == "object" && "bytes" in e ? e : void 0;
736
+ function X({ clip: e, open: t }) {
737
+ return e ? /* @__PURE__ */ (0, p.jsxs)("p", {
738
+ className: "clip-note",
739
+ children: [/* @__PURE__ */ (0, p.jsxs)("span", { children: [new Intl.NumberFormat("en-US").format(e.bytes), " bytes, middle omitted."] }), e.sha256 && t ? /* @__PURE__ */ (0, p.jsx)("button", {
740
+ type: "button",
741
+ className: "link-button",
742
+ "data-load-full": e.sha256,
743
+ onClick: () => t(e.sha256),
744
+ children: "Full output"
745
+ }) : null]
746
+ }) : null;
747
+ }
748
+ function ye({ row: e, context: t }) {
749
+ let n = le(e.events), r = B(e.input) ?? C(e.input ?? "");
750
+ return /* @__PURE__ */ (0, p.jsx)("div", {
751
+ className: `chat-row poll-group${e.events.some((e) => e.id === t.selected) ? " selected" : ""}`,
752
+ "data-poll-group": e.events.length,
753
+ "data-entry": e.events[0].id,
754
+ title: S(e.events[0].at),
755
+ children: /* @__PURE__ */ (0, p.jsx)(Y, {
756
+ id: e.key,
757
+ children: /* @__PURE__ */ (0, p.jsx)(c, {
758
+ icon: /* @__PURE__ */ (0, p.jsx)(K, { name: e.name }),
759
+ title: q(e.name),
760
+ description: [n.label, r].filter(Boolean).join(" · "),
761
+ descriptionMono: !0,
762
+ children: /* @__PURE__ */ (0, p.jsx)("ol", {
763
+ className: "poll-calls",
764
+ children: e.events.map((e) => /* @__PURE__ */ (0, p.jsxs)("li", {
765
+ "data-message": e.id,
766
+ children: [/* @__PURE__ */ (0, p.jsx)("time", {
767
+ dateTime: e.at,
768
+ children: S(e.at)
769
+ }), /* @__PURE__ */ (0, p.jsx)("span", {
770
+ className: "mono",
771
+ children: B(k(e)[0]?.input) ?? C(k(e)[0]?.input ?? "")
772
+ })]
773
+ }, e.id))
774
+ })
775
+ })
776
+ })
777
+ });
778
+ }
779
+ function be({ row: e, context: t }) {
780
+ return /* @__PURE__ */ (0, p.jsx)("div", {
781
+ className: `chat-row hollow-group${e.events.some((e) => e.id === t.selected) ? " selected" : ""}`,
782
+ "data-hollow-group": e.events.length,
783
+ "data-entry": e.events[0].id,
784
+ title: S(e.events[0].at),
785
+ children: /* @__PURE__ */ (0, p.jsx)(Y, {
786
+ id: e.key,
787
+ children: /* @__PURE__ */ (0, p.jsx)(c, {
788
+ icon: /* @__PURE__ */ (0, p.jsx)(K, { name: e.calls[0]?.name ?? "tool" }),
789
+ title: se(e.calls),
790
+ description: "args not captured",
791
+ durationMs: e.spanMs || void 0
792
+ })
793
+ })
794
+ });
795
+ }
796
+ function xe({ row: e, context: t }) {
797
+ if (e.kind === "polls") return /* @__PURE__ */ (0, p.jsx)(ye, {
798
+ row: e,
799
+ context: t
800
+ });
801
+ if (e.kind === "hollow") return /* @__PURE__ */ (0, p.jsx)(be, {
802
+ row: e,
803
+ context: t
804
+ });
805
+ let { index: n, cutoff: r, selected: i, anchor: o, thinkingSpan: u, opened: d, setOpen: f, flagMarks: m, opener: h, flags: g, paired: _, live: v } = t, y = e.event, b = {
806
+ className: [
807
+ "chat-row",
808
+ i === y.id && "selected",
809
+ g?.has(y.id) && "flagged"
810
+ ].filter(Boolean).join(" "),
811
+ "data-entry": y.id,
812
+ "data-message": y.id,
813
+ "data-message-node": y.node,
814
+ title: S(y.at)
815
+ };
816
+ if (G(y)) {
817
+ let e = D(y);
818
+ return /* @__PURE__ */ (0, p.jsxs)("p", {
819
+ ...b,
820
+ className: `${b.className} lifecycle-note${y.detail.isError ? " lifecycle-error" : ""}`,
821
+ children: [
822
+ /* @__PURE__ */ (0, p.jsx)("b", { children: y.label }),
823
+ e && /* @__PURE__ */ (0, p.jsx)("span", { children: C(e).slice(0, 280) }),
824
+ m(y)
825
+ ]
826
+ });
827
+ }
828
+ let w = D(y), T = k(y), E = typeof y.detail.reasoning == "string" ? y.detail.reasoning : "", A = U(y.detail), j = y.detail.role === "user", M = y.detail.responseStatus === "error", N = y.detail.recordedClaim !== void 0, P = y.detail.toolCallId !== void 0 || y.detail.role === "toolResult", F = ve(y.detail.clip);
829
+ if (j && w && !P) {
830
+ let e = ue(w), t = `prompt:${o(y)}`, n = e.length > 280, r = n && !d.has(t);
831
+ return /* @__PURE__ */ (0, p.jsxs)("article", {
832
+ ...b,
833
+ children: [
834
+ /* @__PURE__ */ (0, p.jsx)("div", {
835
+ className: "ar-user",
836
+ children: /* @__PURE__ */ (0, p.jsx)(a, {
837
+ content: r ? `${e.slice(0, 280).trimEnd()}…` : e,
838
+ timestamp: new Date(y.at),
839
+ actions: n ? /* @__PURE__ */ (0, p.jsx)("button", {
840
+ type: "button",
841
+ className: "link-button",
842
+ "data-open-key": t,
843
+ "aria-expanded": !r,
844
+ onClick: () => f(t, r),
845
+ children: r ? "Full prompt" : "Shorter"
846
+ }) : void 0
847
+ })
848
+ }),
849
+ !r && /* @__PURE__ */ (0, p.jsx)(X, {
850
+ clip: F,
851
+ open: h(y)
852
+ }),
853
+ m(y)
854
+ ]
855
+ });
856
+ }
857
+ let I = [];
858
+ if (E && I.push({
859
+ id: `${y.id}:reasoning`,
860
+ kind: "custom",
861
+ content: /* @__PURE__ */ (0, p.jsx)(s, {
862
+ part: {
863
+ type: "reasoning",
864
+ text: E
865
+ },
866
+ autoCollapse: !1
867
+ })
868
+ }), A.length) {
869
+ let e = H(y.detail), t = u.get(y.id), n = e === null ? A.join(" · ") : `${t !== void 0 && t >= 1e3 ? `for ${fe(t)} · ` : ""}${de(e)} output tokens · ${A.join(" · ")}`;
870
+ I.push({
871
+ id: `${y.id}:thinking`,
872
+ kind: "custom",
873
+ content: /* @__PURE__ */ (0, p.jsx)("span", {
874
+ "data-thinking-withheld": !0,
875
+ children: /* @__PURE__ */ (0, p.jsx)(c, {
876
+ icon: /* @__PURE__ */ (0, p.jsx)(K, { name: "think" }),
877
+ title: "Thought",
878
+ description: n
879
+ })
880
+ })
881
+ });
882
+ }
883
+ if (M) I.push({
884
+ id: y.id,
885
+ kind: "status",
886
+ tone: "error",
887
+ label: "The request failed",
888
+ detail: w ? C(w).slice(0, 400) : "No assistant response is present in this record."
889
+ });
890
+ else if (N) I.push({
891
+ id: y.id,
892
+ kind: "status",
893
+ tone: "info",
894
+ label: "Recorded finding",
895
+ detail: C(w).slice(0, 600)
896
+ });
897
+ else if (P) {
898
+ let e = y.detail.toolCallId !== void 0 && (n.calls.get(O(y.node, y.detail.toolCallId))?.length ?? 0) > 1;
899
+ I.push(J(y.id, {
900
+ id: y.id,
901
+ name: y.label || "Tool result"
902
+ }, y, e ? "ambiguous" : y.detail.isError ? "error" : "returned", null, v));
903
+ } else w ? I.push({
904
+ id: y.id,
905
+ kind: "message",
906
+ role: "assistant",
907
+ content: w
908
+ }) : !T.length && !E && !A.length && I.push({
909
+ id: y.id,
910
+ kind: "status",
911
+ label: y.detail.contentOmitted ?? "No text body is present in this record."
912
+ });
913
+ let L = o(y);
914
+ for (let e of T) {
915
+ let t = _(y, e), i = t.filter((e) => x(e.at) <= r).at(-1), a = (n.calls.get(O(y.node, e.id))?.length ?? 0) > 1 ? "ambiguous" : i ? i.detail.isError ? "error" : "returned" : t.some((e) => x(e.at) > r) ? "pending" : "missing", o = (typeof i?.detail.durationMs == "number" ? i.detail.durationMs : null) ?? (i && i.detail.atBasis !== "carried" ? x(i.at) - x(y.at) : null);
916
+ I.push(J(`tool:${L}:${e.id}`, e, i, a, o, v));
917
+ }
918
+ let R = [y.detail.publicationNote, N ? y.detail.assessment : void 0].filter((e) => !!e);
919
+ return /* @__PURE__ */ (0, p.jsxs)("article", {
920
+ ...b,
921
+ children: [
922
+ /* @__PURE__ */ (0, p.jsx)(l, {
923
+ className: "ar-tl",
924
+ items: I,
925
+ renderToolActions: _e
926
+ }),
927
+ w && !P && /* @__PURE__ */ (0, p.jsx)(X, {
928
+ clip: T.length ? void 0 : F,
929
+ open: h(y)
930
+ }),
931
+ R.map((e) => /* @__PURE__ */ (0, p.jsx)("p", {
932
+ className: "publication-note",
933
+ children: e
934
+ }, e)),
935
+ m(y)
936
+ ]
937
+ });
938
+ }
939
+ //#endregion
940
+ //#region src/viewer/Conversation.tsx
941
+ function Z({ index: e, actor: t, cutoff: n, query: r, category: i, selected: a, openSource: o, flags: s, onFlag: c, lifecycle: l = !1, live: u = !1 }) {
942
+ let [d, m] = (0, f.useState)(() => {
943
+ let t = R(e.events);
944
+ return new Set(e.events.filter((e) => e.detail.promptKind === "initial").map((e) => `prompt:${t.get(e.id) ?? e.id}`));
945
+ }), h = (0, f.useRef)(null), g = (0, f.useMemo)(() => R(e.events), [e]), _ = (0, f.useCallback)((e) => g.get(e.id) ?? e.id, [g]), v = (e) => o ? (t) => o(t, e) : void 0, y = (e, t) => m((n) => {
946
+ if (n.has(e) === t) return n;
947
+ let r = new Set(n);
948
+ return t ? r.add(e) : r.delete(e), r;
949
+ }), b = (t, n) => {
950
+ let r = O(t.node, n.id);
951
+ return e.calls.get(r)?.length === 1 ? e.results.get(r) ?? [] : [];
952
+ }, S = (0, f.useMemo)(() => {
953
+ if (!a) return;
954
+ let t = e.byEvent.get(a);
955
+ if (t?.detail.toolCallId !== void 0) {
956
+ let n = e.calls.get(O(t.node, t.detail.toolCallId));
957
+ if (n?.length === 1) return n[0].event.id;
958
+ }
959
+ return a;
960
+ }, [a, e]), C = (0, f.useMemo)(() => (e.byActor.get(t) ?? []).filter((t) => {
961
+ if (x(t.at) > n) return !1;
962
+ if (t.id === S) return !0;
963
+ if (G(t)) return l && F(t, e, r, i);
964
+ if (t.detail.toolCallId !== void 0) {
965
+ let r = e.calls.get(O(t.node, t.detail.toolCallId));
966
+ if (r?.length === 1 && x(r[0].event.at) <= n) return !1;
967
+ }
968
+ let a = k(t);
969
+ return !(t.detail.role || D(t) || t.detail.reasoning || t.detail.responseStatus === "error" || a.length) || t.detail.role === "assistant" && !D(t) && !t.detail.reasoning && !a.length && t.detail.responseStatus !== "error" && !t.detail.contentOmitted && (!U(t.detail).length || ee(t.detail)) ? !1 : F(t, e, r, i) ? !0 : a.some((a) => {
970
+ let o = O(t.node, a.id);
971
+ return e.calls.get(o)?.length === 1 && (e.results.get(o) ?? []).some((t) => x(t.at) <= n && F(t, e, r, i));
972
+ });
973
+ }), [
974
+ e,
975
+ t,
976
+ n,
977
+ r,
978
+ i,
979
+ l,
980
+ S
981
+ ]), w = (0, f.useMemo)(() => oe(ce(C, {
982
+ callsOf: k,
983
+ answered: (t, n) => re(e.results.get(O(t.node, n))),
984
+ keyOf: _
985
+ }), {
986
+ callsOf: k,
987
+ captured: (t, n) => (e.results.get(O(t.node, n)) ?? []).some((e) => D(e)),
988
+ keyOf: _
989
+ }), [
990
+ C,
991
+ e,
992
+ _
993
+ ]), T = (0, f.useMemo)(() => {
994
+ let n = /* @__PURE__ */ new Map(), r = null;
995
+ for (let i of e.byActor.get(t) ?? []) {
996
+ let e = x(i.at);
997
+ r !== null && Number.isFinite(e) && U(i.detail).length && n.set(i.id, Math.max(0, e - r)), Number.isFinite(e) && (r = e);
998
+ }
999
+ return n;
1000
+ }, [e, t]), E = (0, f.useMemo)(() => {
1001
+ let e = /* @__PURE__ */ new Map();
1002
+ for (let t of w) if (t.kind === "polls") for (let n of t.events) e.set(n.id, t.key);
1003
+ else if (t.kind === "hollow") for (let n of t.events) e.set(n.id, t.key);
1004
+ else e.set(t.event.id, t.key);
1005
+ return e;
1006
+ }, [w]), A = (e.byActor.get(t) ?? []).some((e) => !G(e) && (e.detail.role || D(e) || k(e).length)), j = (0, f.useRef)(S);
1007
+ j.current = S;
1008
+ let M = (0, f.useRef)(!1);
1009
+ (0, f.useLayoutEffect)(() => {
1010
+ M.current = u && !j.current, h.current && !j.current && (h.current.scrollTop = u ? h.current.scrollHeight : 0);
1011
+ }, [t]), (0, f.useEffect)(() => {
1012
+ let e = h.current;
1013
+ if (!e) return;
1014
+ let t = () => {
1015
+ M.current = e.scrollHeight - e.scrollTop - e.clientHeight < 24;
1016
+ };
1017
+ return e.addEventListener("scroll", t, { passive: !0 }), () => e.removeEventListener("scroll", t);
1018
+ }, []), (0, f.useLayoutEffect)(() => {
1019
+ let e = h.current;
1020
+ if (!e || !M.current) return;
1021
+ e.scrollTop = e.scrollHeight;
1022
+ let t = 0, n = requestAnimationFrame(function r() {
1023
+ M.current && (e.scrollTop = e.scrollHeight, ++t < 20 && (n = requestAnimationFrame(r)));
1024
+ });
1025
+ return () => cancelAnimationFrame(n);
1026
+ }, [w]), (0, f.useEffect)(() => {
1027
+ if (!a) return;
1028
+ let t = e.byEvent.get(a);
1029
+ if (!t) return;
1030
+ let n = [`prompt:${_(t)}`, `reasoning:${_(t)}`];
1031
+ if (t.detail.toolCallId !== void 0) for (let r of e.calls.get(O(t.node, t.detail.toolCallId)) ?? []) n.push(`tool:${_(r.event)}:${r.call.id}`, E.get(r.event.id) ?? "");
1032
+ for (let e of k(t)) n.push(`tool:${_(t)}:${e.id}`);
1033
+ let r = E.get(a);
1034
+ r?.startsWith("polls:") && n.push(r), m((e) => /* @__PURE__ */ new Set([...e, ...n.filter(Boolean)]));
1035
+ }, [a, e]);
1036
+ let N = (e) => {
1037
+ let t = s?.get(e.id);
1038
+ return t?.length ? /* @__PURE__ */ (0, p.jsx)("span", {
1039
+ className: "event-flags",
1040
+ children: t.map((t) => /* @__PURE__ */ (0, p.jsx)("button", {
1041
+ type: "button",
1042
+ className: `event-flag polarity-${t.polarity}`,
1043
+ title: t.title,
1044
+ "data-flag": t.dimension,
1045
+ onClick: () => c?.(t, e),
1046
+ children: t.dimension
1047
+ }, `${t.dimension}:${t.label}`))
1048
+ }) : null;
1049
+ }, P = (0, f.useCallback)((e) => e.key, []), L = (0, f.useCallback)((e) => e.kind === "polls" ? 36 : e.kind === "hollow" || G(e.event) ? 26 : !D(e.event) && k(e.event).length ? 16 + 36 * k(e.event).length : 96, []);
1050
+ return /* @__PURE__ */ (0, p.jsx)(p.Fragment, { children: /* @__PURE__ */ (0, p.jsxs)("div", {
1051
+ className: "conversation-scroll",
1052
+ "data-chat": !0,
1053
+ ref: h,
1054
+ tabIndex: 0,
1055
+ "aria-label": "Scrollable retained conversation",
1056
+ children: [!w.length && /* @__PURE__ */ (0, p.jsx)("p", {
1057
+ className: "chat-empty",
1058
+ children: r || i !== "all" ? "No messages match this filter." : A ? "No messages at the selected time." : "Conversation not retained. Its absence does not mean the agent did no work."
1059
+ }), /* @__PURE__ */ (0, p.jsx)(I, {
1060
+ items: w,
1061
+ keyOf: P,
1062
+ render: (t) => /* @__PURE__ */ (0, p.jsx)(xe, {
1063
+ row: t,
1064
+ context: {
1065
+ index: e,
1066
+ cutoff: n,
1067
+ selected: a,
1068
+ opened: d,
1069
+ anchor: _,
1070
+ opener: v,
1071
+ setOpen: y,
1072
+ flagMarks: N,
1073
+ paired: b,
1074
+ thinkingSpan: T,
1075
+ flags: s,
1076
+ live: u
1077
+ }
1078
+ }),
1079
+ scroller: h,
1080
+ target: S ? E.get(S) : void 0,
1081
+ estimate: L
1082
+ })]
1083
+ }) });
1084
+ }
1085
+ //#endregion
1086
+ //#region src/viewer/prompts.ts
1087
+ function Se(e) {
1088
+ let t = e.events.map((e) => ({
1089
+ ...e,
1090
+ detail: { ...e.detail }
1091
+ }));
1092
+ for (let n of e.nodes.filter((e) => e.kind === "agent")) {
1093
+ let e = t.filter((e) => e.node === n.id), r = e.find((e) => e.detail.role === "assistant")?.at, i = e.filter((e) => e.detail.role === "user" && typeof e.detail.publicText == "string" && !e.detail.publicText.trimStart().startsWith("<task-notification>")), a = i.find((e) => e.detail.promptKind !== "steering" && (!r || e.at <= r));
1094
+ if (a) a.detail.promptKind = "initial";
1095
+ else if (n.assignment?.trim()) {
1096
+ let r = n.start ?? e[0]?.at;
1097
+ r && t.push({
1098
+ id: `prompt:${n.id}`,
1099
+ node: n.id,
1100
+ at: r,
1101
+ kind: "message",
1102
+ category: "other",
1103
+ label: "Prompt",
1104
+ source: null,
1105
+ detail: {
1106
+ role: "user",
1107
+ publicText: n.assignment,
1108
+ promptKind: "initial",
1109
+ promptReconstructed: !0,
1110
+ promptSource: "node.assignment"
1111
+ }
1112
+ });
1113
+ }
1114
+ for (let e of i) e !== a && e.detail.promptKind !== "initial" && (e.detail.promptKind ??= "steering");
1115
+ }
1116
+ return t.sort((e, t) => e.at.localeCompare(t.at) || Number(t.detail.promptKind === "initial") - Number(e.detail.promptKind === "initial")), {
1117
+ ...e,
1118
+ events: t
1119
+ };
1120
+ }
1121
+ //#endregion
1122
+ //#region src/workspace/EventDetail.tsx
1123
+ function Q({ event: e, full: t, index: n, onClose: r, load: i }) {
1124
+ let [a, o] = (0, f.useState)({}), [s, c] = (0, f.useState)({}), l = e.source;
1125
+ (0, f.useEffect)(() => {
1126
+ t && i(t).then((e) => c({ text: e })).catch((e) => c({ error: e instanceof Error ? e.message : "Unavailable" }));
1127
+ }, [t, i]);
1128
+ let u = (e, t) => i(`${e}${t ? `?line=${t}` : ""}`);
1129
+ return (0, f.useEffect)(() => {
1130
+ let e = (e) => {
1131
+ e.key === "Escape" && r();
1132
+ };
1133
+ return window.addEventListener("keydown", e), () => window.removeEventListener("keydown", e);
1134
+ }, [r]), /* @__PURE__ */ (0, p.jsxs)("aside", {
1135
+ className: "event-detail",
1136
+ role: "dialog",
1137
+ "aria-label": "Event details",
1138
+ "data-event-detail": e.id,
1139
+ children: [
1140
+ /* @__PURE__ */ (0, p.jsxs)("header", { children: [/* @__PURE__ */ (0, p.jsxs)("div", { children: [/* @__PURE__ */ (0, p.jsx)("h3", { children: e.label }), /* @__PURE__ */ (0, p.jsxs)("p", {
1141
+ className: "faint mono",
1142
+ children: [
1143
+ S(e.at, !0),
1144
+ " · ",
1145
+ n.nodes.get(n.canonical(e.node))?.label ?? e.node,
1146
+ " · ",
1147
+ e.category
1148
+ ]
1149
+ })] }), /* @__PURE__ */ (0, p.jsx)("button", {
1150
+ type: "button",
1151
+ className: "ui-button",
1152
+ onClick: r,
1153
+ children: "Close"
1154
+ })] }),
1155
+ /* @__PURE__ */ (0, p.jsx)("p", {
1156
+ className: "mono faint event-id",
1157
+ children: e.id
1158
+ }),
1159
+ t ? /* @__PURE__ */ (0, p.jsxs)("section", {
1160
+ className: "event-full",
1161
+ "data-full-output": s.text === void 0 ? void 0 : t,
1162
+ children: [
1163
+ /* @__PURE__ */ (0, p.jsx)("h4", { children: "Full output" }),
1164
+ /* @__PURE__ */ (0, p.jsxs)("p", {
1165
+ className: "mono faint",
1166
+ children: ["sha256 ", t]
1167
+ }),
1168
+ s.error && /* @__PURE__ */ (0, p.jsx)("p", {
1169
+ role: "alert",
1170
+ children: s.error
1171
+ }),
1172
+ s.text === void 0 && !s.error && /* @__PURE__ */ (0, p.jsx)("p", {
1173
+ className: "faint",
1174
+ children: "Loading…"
1175
+ }),
1176
+ s.text !== void 0 && /* @__PURE__ */ (0, p.jsx)(b, {
1177
+ text: s.text,
1178
+ rawLabel: "Original bytes"
1179
+ })
1180
+ ]
1181
+ }) : D(e) && (e.detail.toolCallId !== void 0 || e.category === "lifecycle" ? /* @__PURE__ */ (0, p.jsx)(b, { text: D(e) }) : /* @__PURE__ */ (0, p.jsx)(_, { text: D(e) })),
1182
+ /* @__PURE__ */ (0, p.jsxs)("details", {
1183
+ className: "raw-data",
1184
+ open: !t,
1185
+ children: [/* @__PURE__ */ (0, p.jsx)("summary", { children: "Recorded detail" }), /* @__PURE__ */ (0, p.jsx)("pre", { children: JSON.stringify(e.detail, null, 2) })]
1186
+ }),
1187
+ l?.path && /* @__PURE__ */ (0, p.jsxs)("section", {
1188
+ className: "event-source",
1189
+ children: [
1190
+ /* @__PURE__ */ (0, p.jsx)("h4", { children: "Source" }),
1191
+ /* @__PURE__ */ (0, p.jsxs)("p", {
1192
+ className: "mono",
1193
+ children: [
1194
+ l.path,
1195
+ l.line ? `:${l.line}` : "",
1196
+ l.pointer ? `#${l.pointer}` : ""
1197
+ ]
1198
+ }),
1199
+ l.sha256 && /* @__PURE__ */ (0, p.jsxs)("p", {
1200
+ className: "mono faint",
1201
+ children: ["sha256 ", l.sha256]
1202
+ }),
1203
+ l.sha256 && l.line && a.text === void 0 && /* @__PURE__ */ (0, p.jsx)("button", {
1204
+ type: "button",
1205
+ className: "ui-button",
1206
+ onClick: () => u(l.sha256, l.line).then((e) => o({ text: e })).catch((e) => o({ error: e instanceof Error ? e.message : "Unavailable" })),
1207
+ children: "Original line"
1208
+ }),
1209
+ a.error && /* @__PURE__ */ (0, p.jsx)("p", {
1210
+ role: "alert",
1211
+ children: a.error
1212
+ }),
1213
+ a.text !== void 0 && /* @__PURE__ */ (0, p.jsx)(b, {
1214
+ text: a.text,
1215
+ rawLabel: "Original bytes"
1216
+ })
1217
+ ]
1218
+ })
1219
+ ]
1220
+ });
1221
+ }
1222
+ //#endregion
1223
+ //#region src/workspace/source-reader.ts
1224
+ function Ce(e) {
1225
+ return async (t) => {
1226
+ let n = await fetch(`${e}/source/${t}`, { credentials: "same-origin" });
1227
+ if (!n.ok) throw Error(n.status === 409 ? "The source no longer matches its recorded hash." : `Source unavailable (HTTP ${n.status})`);
1228
+ return n.text();
1229
+ };
1230
+ }
1231
+ //#endregion
1232
+ //#region src/workspace/record-part.tsx
1233
+ function $(e) {
1234
+ let t = d(e, void 0, !0);
1235
+ return {
1236
+ ...(0, f.useMemo)(() => {
1237
+ if (!t.data) return {
1238
+ record: null,
1239
+ index: null,
1240
+ stats: {},
1241
+ error: void 0
1242
+ };
1243
+ try {
1244
+ let e = Se(u(t.data)), n = t.data.nodeStats ?? {};
1245
+ return {
1246
+ record: e,
1247
+ index: M(e),
1248
+ stats: n,
1249
+ error: void 0
1250
+ };
1251
+ } catch (e) {
1252
+ return {
1253
+ record: null,
1254
+ index: null,
1255
+ stats: {},
1256
+ error: e instanceof Error ? e.message : "Invalid record"
1257
+ };
1258
+ }
1259
+ }, [t.data]),
1260
+ loading: t.loading,
1261
+ fetchError: t.error,
1262
+ pending: !!e && t.data === void 0 && !t.error
1263
+ };
1264
+ }
1265
+ function we({ runUrl: e, version: t, index: n, actor: r }) {
1266
+ let i = $(`${e}/record?node=${encodeURIComponent(r)}${t}`);
1267
+ return i.index ? /* @__PURE__ */ (0, p.jsx)(Te, {
1268
+ runUrl: e,
1269
+ index: i.index,
1270
+ actor: r
1271
+ }) : /* @__PURE__ */ (0, p.jsx)("p", {
1272
+ className: "ws-status",
1273
+ role: i.fetchError || i.error ? "alert" : "status",
1274
+ children: i.fetchError || i.error ? `This agent's record is unavailable: ${i.fetchError ?? i.error}` : `Loading ${n.nodes.get(r)?.label ?? "the agent"}'s conversation…`
1275
+ });
1276
+ }
1277
+ function Te({ runUrl: e, index: t, actor: n }) {
1278
+ let [r, i] = (0, f.useState)(null), a = (0, f.useMemo)(() => Ce(e), [e]);
1279
+ return /* @__PURE__ */ (0, p.jsxs)(p.Fragment, { children: [/* @__PURE__ */ (0, p.jsx)(Z, {
1280
+ index: t,
1281
+ actor: n,
1282
+ cutoff: t.end,
1283
+ query: "",
1284
+ category: "all",
1285
+ lifecycle: !1,
1286
+ openSource: (e, t) => i({
1287
+ event: t,
1288
+ sha: e
1289
+ })
1290
+ }), r && /* @__PURE__ */ (0, p.jsx)(Q, {
1291
+ event: r.event,
1292
+ full: r.sha,
1293
+ index: t,
1294
+ onClose: () => i(null),
1295
+ load: a
1296
+ }, `${r.event.id}:${r.sha ?? ""}`)] });
1297
+ }
1298
+ //#endregion
1299
+ export { M as a, h as c, P as i, _ as l, $ as n, N as o, Z as r, S as s, we as t };