@tangle-network/sandbox-ui 2.0.16 → 2.0.18

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 (470) hide show
  1. package/README.md +2 -0
  2. package/dist/agent-stream-CBZ2fXJ2.d.ts +66 -0
  3. package/dist/code-view-BlhCS1SD.js +177 -0
  4. package/dist/globals.css +189 -150
  5. package/dist/hooks.d.ts +2 -139
  6. package/dist/hooks.js +2 -1
  7. package/dist/{index-BtR5Sc3u.d.ts → index-BnaVprN6.d.ts} +3 -66
  8. package/dist/index-D5Hig-j9.d.ts +155 -0
  9. package/dist/index.d.ts +3 -2
  10. package/dist/index.js +7 -4
  11. package/dist/{record-1OqtuwjP.js → record-Bqt1kE_Q.js} +1 -1
  12. package/dist/run/live.d.ts +10 -0
  13. package/dist/run/live.js +389 -0
  14. package/dist/run/record.js +1 -1
  15. package/dist/run.d.ts +2 -1
  16. package/dist/run.js +3 -2
  17. package/dist/runtime-viewer/AgentGraphCanvas-B74GN1o6-DC3EH_ss.js +8564 -0
  18. package/dist/runtime-viewer/abap-CJVxDCih.js +2 -0
  19. package/dist/runtime-viewer/actionscript-3-DxxSN0a_.js +2 -0
  20. package/dist/runtime-viewer/ada-Cl3FVDZo.js +2 -0
  21. package/dist/runtime-viewer/ahk-wK-qmFta.js +2 -0
  22. package/dist/runtime-viewer/ahk2-H2JA2Yl6.js +2 -0
  23. package/dist/runtime-viewer/andromeeda--b5O3zh8.js +134 -0
  24. package/dist/runtime-viewer/andromeeda-Gms6gP4X.js +3 -0
  25. package/dist/runtime-viewer/angular-html-rj1gmhWN.js +15 -0
  26. package/dist/runtime-viewer/angular-ts-Bqgem-S1.js +17 -0
  27. package/dist/runtime-viewer/apache-BUhlrTDV.js +2 -0
  28. package/dist/runtime-viewer/apex-BB9dj6FH.js +2 -0
  29. package/dist/runtime-viewer/apl-Bbo6_Uyo.js +15 -0
  30. package/dist/runtime-viewer/appendItems-Cd9l6s5M.js +709 -0
  31. package/dist/runtime-viewer/applescript-ADDjRuDN.js +2 -0
  32. package/dist/runtime-viewer/ara-qq1xXFYH.js +2 -0
  33. package/dist/runtime-viewer/asciidoc-DM4EX7__.js +2 -0
  34. package/dist/runtime-viewer/asm-BG-prohY.js +2 -0
  35. package/dist/runtime-viewer/astro-DLFBJCYZ.js +17 -0
  36. package/dist/runtime-viewer/aurora-x-9XZt7weA.js +3 -0
  37. package/dist/runtime-viewer/aurora-x-CUDrP6dl.js +148 -0
  38. package/dist/runtime-viewer/awk-CLViK1AN.js +2 -0
  39. package/dist/runtime-viewer/ayu-dark-Cn6mFqgG.js +3 -0
  40. package/dist/runtime-viewer/ayu-dark-KXkHEKeT.js +124 -0
  41. package/dist/runtime-viewer/ayu-light-CiMsj1GY.js +124 -0
  42. package/dist/runtime-viewer/ayu-light-DT1rcejT.js +3 -0
  43. package/dist/runtime-viewer/ayu-mirage-B9PABb6M.js +3 -0
  44. package/dist/runtime-viewer/ayu-mirage-D866knu2.js +124 -0
  45. package/dist/runtime-viewer/ballerina-CEQUp96R.js +2 -0
  46. package/dist/runtime-viewer/bash-CEf3P1Io.js +1 -0
  47. package/dist/runtime-viewer/bat-CZr3fv67.js +2 -0
  48. package/dist/runtime-viewer/beancount-VKRy3bBi.js +2 -0
  49. package/dist/runtime-viewer/berry-BwT4aLVg.js +2 -0
  50. package/dist/runtime-viewer/bibtex-CqljWi0V.js +2 -0
  51. package/dist/runtime-viewer/bicep-B4J9qq-Z.js +2 -0
  52. package/dist/runtime-viewer/bird2-aEHxasJz.js +2 -0
  53. package/dist/runtime-viewer/blade-CSrWCe1q.js +19 -0
  54. package/dist/runtime-viewer/bsl-BihRw6wC.js +4 -0
  55. package/dist/runtime-viewer/c-DqEbRro5.js +1 -0
  56. package/dist/runtime-viewer/c-nuWrC4_R.js +4 -0
  57. package/dist/runtime-viewer/c3-B1ecFreZ.js +2 -0
  58. package/dist/runtime-viewer/cadence-DRL7VEtm.js +2 -0
  59. package/dist/runtime-viewer/cairo-Mf356MxB.js +4 -0
  60. package/dist/runtime-viewer/catppuccin-frappe-CaZDpwbh.js +3 -0
  61. package/dist/runtime-viewer/catppuccin-frappe-D40A-eC-.js +253 -0
  62. package/dist/runtime-viewer/catppuccin-latte-BY0gIWQk.js +253 -0
  63. package/dist/runtime-viewer/catppuccin-latte-Cto1Jf_t.js +3 -0
  64. package/dist/runtime-viewer/catppuccin-macchiato-BshuwwL_.js +253 -0
  65. package/dist/runtime-viewer/catppuccin-macchiato-Da4JtJzk.js +3 -0
  66. package/dist/runtime-viewer/catppuccin-mocha-DDZ3zh14.js +253 -0
  67. package/dist/runtime-viewer/catppuccin-mocha-VxvWTjH_.js +3 -0
  68. package/dist/runtime-viewer/chapel-OTK-UUIg.js +4 -0
  69. package/dist/runtime-viewer/clarity-VQN67-z4.js +2 -0
  70. package/dist/runtime-viewer/clojure-CO3ptKNj.js +2 -0
  71. package/dist/runtime-viewer/cmake-Daw-aSZt.js +2 -0
  72. package/dist/runtime-viewer/cobol-Cf_qPd6-.js +9 -0
  73. package/dist/runtime-viewer/codeowners-RB6Ky2d_.js +2 -0
  74. package/dist/runtime-viewer/codeql-DWYIUtYc.js +2 -0
  75. package/dist/runtime-viewer/coffee-Ddb4DMEu.js +4 -0
  76. package/dist/runtime-viewer/common-lisp-Z5pdmE3i.js +2 -0
  77. package/dist/runtime-viewer/constants-BJYchxfN.js +3 -0
  78. package/dist/runtime-viewer/coq-JC5iWOqp.js +2 -0
  79. package/dist/runtime-viewer/core-CpUX80b1.js +3279 -0
  80. package/dist/runtime-viewer/cpp-ClbMDAkS.js +1 -0
  81. package/dist/runtime-viewer/cpp-DHh405em.js +15 -0
  82. package/dist/runtime-viewer/crystal-DO6lJkkC.js +17 -0
  83. package/dist/runtime-viewer/csharp-lEK6y4jq.js +2 -0
  84. package/dist/runtime-viewer/csharp-rZvb5Mvv.js +1 -0
  85. package/dist/runtime-viewer/css-CwgM346x.js +1 -0
  86. package/dist/runtime-viewer/css-D0s2ehNl.js +4 -0
  87. package/dist/runtime-viewer/csv-DDLVNpF_.js +2 -0
  88. package/dist/runtime-viewer/cue-D9icO3Iq.js +2 -0
  89. package/dist/runtime-viewer/cypher-CtaxHT1L.js +2 -0
  90. package/dist/runtime-viewer/d-D4yE5Vyh.js +2 -0
  91. package/dist/runtime-viewer/dark-plus-BrGvqa0b.js +132 -0
  92. package/dist/runtime-viewer/dark-plus-Fqa0GMhm.js +3 -0
  93. package/dist/runtime-viewer/dart-BQKGVcgZ.js +2 -0
  94. package/dist/runtime-viewer/dax-B_fglzFE.js +2 -0
  95. package/dist/runtime-viewer/desktop-D1YOnHEY.js +2 -0
  96. package/dist/runtime-viewer/diff-CiTjO3HD.js +1 -0
  97. package/dist/runtime-viewer/diff-Diuv0qGT.js +2 -0
  98. package/dist/runtime-viewer/docker-DbYJRRXH.js +4 -0
  99. package/dist/runtime-viewer/dockerfile-BFrtbjpQ.js +1 -0
  100. package/dist/runtime-viewer/dotenv-FA1qqDb1.js +2 -0
  101. package/dist/runtime-viewer/dracula-Btj3GSO9.js +3 -0
  102. package/dist/runtime-viewer/dracula-D8HPTJym.js +152 -0
  103. package/dist/runtime-viewer/dracula-soft-C8zQlEh_.js +102 -0
  104. package/dist/runtime-viewer/dracula-soft-D6LcM51i.js +3 -0
  105. package/dist/runtime-viewer/dream-maker-hpDz6By6.js +2 -0
  106. package/dist/runtime-viewer/edge-BB4FSmZo.js +11 -0
  107. package/dist/runtime-viewer/elixir-DuATaRNn.js +4 -0
  108. package/dist/runtime-viewer/elk.bundled-CqF3Dyp2.js +45979 -0
  109. package/dist/runtime-viewer/elm-82HhQ2nm.js +4 -0
  110. package/dist/runtime-viewer/emacs-lisp-C5QNYC99.js +2 -0
  111. package/dist/runtime-viewer/engine-javascript-0MH9JO7M.js +2372 -0
  112. package/dist/runtime-viewer/engine-oniguruma-7Bv9BGGj.js +237 -0
  113. package/dist/runtime-viewer/erb-YvvBNDWy.js +9 -0
  114. package/dist/runtime-viewer/erlang-X9awClOJ.js +4 -0
  115. package/dist/runtime-viewer/everforest-dark-CzXjGmbf.js +3 -0
  116. package/dist/runtime-viewer/everforest-dark-DPX_5Sj-.js +86 -0
  117. package/dist/runtime-viewer/everforest-light-BMqXq4Th.js +3 -0
  118. package/dist/runtime-viewer/everforest-light-D1PD4A7K.js +86 -0
  119. package/dist/runtime-viewer/fennel-f1xl4Q05.js +2 -0
  120. package/dist/runtime-viewer/fish-99YblEc7.js +2 -0
  121. package/dist/runtime-viewer/fluent-4LP_8ZRP.js +2 -0
  122. package/dist/runtime-viewer/formatCSSVariablePrefix-Dw8K8---.js +5 -0
  123. package/dist/runtime-viewer/fortran-fixed-form-CXgWKejO.js +4 -0
  124. package/dist/runtime-viewer/fortran-free-form-BJnwWphW.js +2 -0
  125. package/dist/runtime-viewer/fsharp-lb4HOh0M.js +4 -0
  126. package/dist/runtime-viewer/gdresource-B4QpWOUk.js +9 -0
  127. package/dist/runtime-viewer/gdscript-Dc0nUXdB.js +2 -0
  128. package/dist/runtime-viewer/gdshader-D7XodLZw.js +2 -0
  129. package/dist/runtime-viewer/genie-ufotYGgo.js +2 -0
  130. package/dist/runtime-viewer/gherkin-TDn2lJS-.js +2 -0
  131. package/dist/runtime-viewer/git-commit-Cp1Pt-h7.js +4 -0
  132. package/dist/runtime-viewer/git-rebase-CXUuGQB4.js +4 -0
  133. package/dist/runtime-viewer/github-dark-BsaUiyss.js +129 -0
  134. package/dist/runtime-viewer/github-dark-CzJ4LJRs.js +3 -0
  135. package/dist/runtime-viewer/github-dark-default-C6vmm66I.js +3 -0
  136. package/dist/runtime-viewer/github-dark-default-DHpmzBTU.js +75 -0
  137. package/dist/runtime-viewer/github-dark-dimmed-Bg7ahiYc.js +124 -0
  138. package/dist/runtime-viewer/github-dark-dimmed-CntRzgqu.js +3 -0
  139. package/dist/runtime-viewer/github-dark-high-contrast-BP5LnlnO.js +124 -0
  140. package/dist/runtime-viewer/github-dark-high-contrast-gviVHGeU.js +3 -0
  141. package/dist/runtime-viewer/github-light-2Z3gmJhd.js +3 -0
  142. package/dist/runtime-viewer/github-light-BAncjKrl.js +129 -0
  143. package/dist/runtime-viewer/github-light-default-kDVra9RT.js +124 -0
  144. package/dist/runtime-viewer/github-light-default-qgi3RC4t.js +3 -0
  145. package/dist/runtime-viewer/github-light-high-contrast-B2kY0DMu.js +124 -0
  146. package/dist/runtime-viewer/github-light-high-contrast-T0lGRgzi.js +3 -0
  147. package/dist/runtime-viewer/gleam-LV2mKtnv.js +2 -0
  148. package/dist/runtime-viewer/glimmer-js-BX9ckA-I.js +13 -0
  149. package/dist/runtime-viewer/glimmer-ts-DAfjLnWM.js +13 -0
  150. package/dist/runtime-viewer/glsl-BStsalM0.js +5 -0
  151. package/dist/runtime-viewer/gn-ChOGRsKV.js +2 -0
  152. package/dist/runtime-viewer/gnuplot-Di7UZXvs.js +2 -0
  153. package/dist/runtime-viewer/go-BrUQhiM2.js +1 -0
  154. package/dist/runtime-viewer/go-DM5FkVJr.js +2 -0
  155. package/dist/runtime-viewer/graphql-C8jzeQ3m.js +1 -0
  156. package/dist/runtime-viewer/graphql-C_WRV-qo.js +14 -0
  157. package/dist/runtime-viewer/groovy-DNa91fQJ.js +2 -0
  158. package/dist/runtime-viewer/gruvbox-dark-hard-BK-BcNOC.js +127 -0
  159. package/dist/runtime-viewer/gruvbox-dark-hard-fgme3GSG.js +3 -0
  160. package/dist/runtime-viewer/gruvbox-dark-medium-Btvv2ALk.js +127 -0
  161. package/dist/runtime-viewer/gruvbox-dark-medium-GM28AOs3.js +3 -0
  162. package/dist/runtime-viewer/gruvbox-dark-soft-D12Dlf7E.js +3 -0
  163. package/dist/runtime-viewer/gruvbox-dark-soft-ScIRFHp0.js +127 -0
  164. package/dist/runtime-viewer/gruvbox-light-hard-D0LtL2QG.js +3 -0
  165. package/dist/runtime-viewer/gruvbox-light-hard-D3d04bym.js +127 -0
  166. package/dist/runtime-viewer/gruvbox-light-medium-BUM64AiQ.js +127 -0
  167. package/dist/runtime-viewer/gruvbox-light-medium-Dbiuwhcl.js +3 -0
  168. package/dist/runtime-viewer/gruvbox-light-soft-BFyUZF8I.js +3 -0
  169. package/dist/runtime-viewer/gruvbox-light-soft-Deemyp2j.js +127 -0
  170. package/dist/runtime-viewer/hack-DrxrxETA.js +9 -0
  171. package/dist/runtime-viewer/haml-DtaFw5Wt.js +10 -0
  172. package/dist/runtime-viewer/handlebars-DdC6ISBc.js +13 -0
  173. package/dist/runtime-viewer/haskell-D6RgJWqJ.js +2 -0
  174. package/dist/runtime-viewer/haxe-CIYKU3E4.js +2 -0
  175. package/dist/runtime-viewer/hcl-B9zco17t.js +2 -0
  176. package/dist/runtime-viewer/highlights-Dcx2AVJg.js +1342 -0
  177. package/dist/runtime-viewer/hjson-sMCeQDUn.js +2 -0
  178. package/dist/runtime-viewer/hlsl-WeeDt2Wp.js +2 -0
  179. package/dist/runtime-viewer/horizon-B8n8qcHx.js +84 -0
  180. package/dist/runtime-viewer/horizon-aRqT-seq.js +3 -0
  181. package/dist/runtime-viewer/horizon-bright-DACv8zK_.js +84 -0
  182. package/dist/runtime-viewer/horizon-bright-DEevCdc_.js +3 -0
  183. package/dist/runtime-viewer/houston-CsNpjGGD.js +194 -0
  184. package/dist/runtime-viewer/houston-Dg2jxmDJ.js +3 -0
  185. package/dist/runtime-viewer/html-CPjHaxbO.js +1 -0
  186. package/dist/runtime-viewer/html-Di2iyAsX.js +10 -0
  187. package/dist/runtime-viewer/html-derivative-Rauq0RVM.js +4 -0
  188. package/dist/runtime-viewer/http-CkmWBydm.js +13 -0
  189. package/dist/runtime-viewer/hurl-BGjXa70x.js +11 -0
  190. package/dist/runtime-viewer/hxml-Bo5YTIXF.js +4 -0
  191. package/dist/runtime-viewer/hy-C-tRiv34.js +2 -0
  192. package/dist/runtime-viewer/imba-v7ELlTL6.js +2 -0
  193. package/dist/runtime-viewer/ini-DtrnrQj2.js +2 -0
  194. package/dist/runtime-viewer/java-DVlvG-lL.js +1 -0
  195. package/dist/runtime-viewer/java-DzBtATHG.js +4 -0
  196. package/dist/runtime-viewer/javascript--K52AMOb.js +4 -0
  197. package/dist/runtime-viewer/javascript-soGjNmbd.js +1 -0
  198. package/dist/runtime-viewer/jinja-CZBKZHkS.js +4 -0
  199. package/dist/runtime-viewer/jison-Bqt-LhEh.js +4 -0
  200. package/dist/runtime-viewer/json-DN-CB1kQ.js +4 -0
  201. package/dist/runtime-viewer/json-D_yoNICS.js +1 -0
  202. package/dist/runtime-viewer/json5-BdfUTtLp.js +2 -0
  203. package/dist/runtime-viewer/jsonc-ElU8pfhL.js +1 -0
  204. package/dist/runtime-viewer/jsonc-IKox2JSV.js +2 -0
  205. package/dist/runtime-viewer/jsonl-CfuX4G6U.js +2 -0
  206. package/dist/runtime-viewer/jsonnet-Yq9KcR8E.js +2 -0
  207. package/dist/runtime-viewer/jssm-BvR7SnkK.js +2 -0
  208. package/dist/runtime-viewer/jsx-D_XQMdaK.js +4 -0
  209. package/dist/runtime-viewer/jsx-snoZUiUS.js +1 -0
  210. package/dist/runtime-viewer/julia-C8lwf2tT.js +15 -0
  211. package/dist/runtime-viewer/just-CQnb5pIW.js +17 -0
  212. package/dist/runtime-viewer/kanagawa-dragon-Cx4OB0dC.js +3 -0
  213. package/dist/runtime-viewer/kanagawa-dragon-OValCvAZ.js +146 -0
  214. package/dist/runtime-viewer/kanagawa-lotus-C1sYcneT.js +146 -0
  215. package/dist/runtime-viewer/kanagawa-lotus-TwFRI7_8.js +3 -0
  216. package/dist/runtime-viewer/kanagawa-wave-BJYCyv2X.js +146 -0
  217. package/dist/runtime-viewer/kanagawa-wave-BiOn36ux.js +3 -0
  218. package/dist/runtime-viewer/kdl-D97SquIS.js +2 -0
  219. package/dist/runtime-viewer/kotlin-EmJjLeRz.js +2 -0
  220. package/dist/runtime-viewer/kotlin-LwxBtHgj.js +1 -0
  221. package/dist/runtime-viewer/kusto-DHanPw0g.js +2 -0
  222. package/dist/runtime-viewer/langs-D4STZqO4.js +1322 -0
  223. package/dist/runtime-viewer/laserwave-CV_0dg5c.js +71 -0
  224. package/dist/runtime-viewer/laserwave-PpzazpgI.js +3 -0
  225. package/dist/runtime-viewer/latest-events-iiWwpIck-BTK0vSlR.js +3657 -0
  226. package/dist/runtime-viewer/latex-Csew0MLK.js +4 -0
  227. package/dist/runtime-viewer/lean-E61_xvh-.js +2 -0
  228. package/dist/runtime-viewer/less-Bis9Y9oi.js +2 -0
  229. package/dist/runtime-viewer/lib-B7rl8i0A.js +1712 -0
  230. package/dist/runtime-viewer/light-plus-DOInvhGO.js +133 -0
  231. package/dist/runtime-viewer/light-plus-DnhX_5eg.js +3 -0
  232. package/dist/runtime-viewer/liquid-CuxywBoN.js +13 -0
  233. package/dist/runtime-viewer/llvm-DOIFdCJg.js +2 -0
  234. package/dist/runtime-viewer/loader-NcDPTN_h.js +79 -0
  235. package/dist/runtime-viewer/log-Awf6LbyY.js +2 -0
  236. package/dist/runtime-viewer/logo-Cn9nW1nw.js +2 -0
  237. package/dist/runtime-viewer/lua-BtojQCeL.js +5 -0
  238. package/dist/runtime-viewer/luau-DHSqpUrS.js +2 -0
  239. package/dist/runtime-viewer/make-CJ4tc-MS.js +2 -0
  240. package/dist/runtime-viewer/markdown-CNVZ8ok-.js +2 -0
  241. package/dist/runtime-viewer/markdown-Co5Krewy.js +1 -0
  242. package/dist/runtime-viewer/marko-CRIKirQp.js +13 -0
  243. package/dist/runtime-viewer/material-theme-D5uz9rje.js +3 -0
  244. package/dist/runtime-viewer/material-theme-darker-DbzCDLF8.js +92 -0
  245. package/dist/runtime-viewer/material-theme-darker-Dqalv5VE.js +3 -0
  246. package/dist/runtime-viewer/material-theme-lighter-CVJ0oH_V.js +3 -0
  247. package/dist/runtime-viewer/material-theme-lighter-CytgYJOd.js +92 -0
  248. package/dist/runtime-viewer/material-theme-ocean-BgKy5sU3.js +92 -0
  249. package/dist/runtime-viewer/material-theme-ocean-CRXu0cdY.js +3 -0
  250. package/dist/runtime-viewer/material-theme-palenight-C6iiJcUB.js +3 -0
  251. package/dist/runtime-viewer/material-theme-palenight-DZK7nXDy.js +92 -0
  252. package/dist/runtime-viewer/material-theme-yF3uaT0h.js +92 -0
  253. package/dist/runtime-viewer/matlab-Dn3Clolk.js +2 -0
  254. package/dist/runtime-viewer/mdc-D0bRQBcT.js +11 -0
  255. package/dist/runtime-viewer/mdx-C5T-IRbL.js +2 -0
  256. package/dist/runtime-viewer/mdx-DM8tlqVf.js +1 -0
  257. package/dist/runtime-viewer/mermaid-C4AYlmk3.js +2 -0
  258. package/dist/runtime-viewer/min-dark-BGA1sv8W.js +3 -0
  259. package/dist/runtime-viewer/min-dark-C1XOhi4b.js +109 -0
  260. package/dist/runtime-viewer/min-light-Bi5vyNSJ.js +109 -0
  261. package/dist/runtime-viewer/min-light-CYXBjZLR.js +3 -0
  262. package/dist/runtime-viewer/mipsasm-Bwfx99oh.js +2 -0
  263. package/dist/runtime-viewer/mojo-CRl08dek.js +2 -0
  264. package/dist/runtime-viewer/monokai-D9Ylqri2.js +149 -0
  265. package/dist/runtime-viewer/monokai-i6D4lZa3.js +3 -0
  266. package/dist/runtime-viewer/moonbit-CF1zF40g.js +2 -0
  267. package/dist/runtime-viewer/move-BP-e5w2W.js +2 -0
  268. package/dist/runtime-viewer/narrat-CrPIhy6S.js +2 -0
  269. package/dist/runtime-viewer/nextflow-D_hnf_jC.js +4 -0
  270. package/dist/runtime-viewer/nextflow-groovy-BLKP0md9.js +2 -0
  271. package/dist/runtime-viewer/nginx-87WOq-zh.js +4 -0
  272. package/dist/runtime-viewer/night-owl-BIeenDB2.js +175 -0
  273. package/dist/runtime-viewer/night-owl-NpADjULE.js +3 -0
  274. package/dist/runtime-viewer/night-owl-light-CPFD_YWe.js +3 -0
  275. package/dist/runtime-viewer/night-owl-light-cj7zoq2Q.js +176 -0
  276. package/dist/runtime-viewer/nim-CDdExumk.js +19 -0
  277. package/dist/runtime-viewer/nix-D_5rVnnj.js +2 -0
  278. package/dist/runtime-viewer/nord-DtfXNtHW.js +3 -0
  279. package/dist/runtime-viewer/nord-LUKuJt-q.js +115 -0
  280. package/dist/runtime-viewer/nsis-R3iO3ArE.js +2 -0
  281. package/dist/runtime-viewer/nushell-Ctp5mfhf.js +2 -0
  282. package/dist/runtime-viewer/objective-c-DPJeQfV6.js +2 -0
  283. package/dist/runtime-viewer/objective-cpp-1I3jYeMe.js +2 -0
  284. package/dist/runtime-viewer/ocaml-DOrLjeoA.js +2 -0
  285. package/dist/runtime-viewer/odin-CyrMbkLb.js +2 -0
  286. package/dist/runtime-viewer/one-dark-pro-CoHxEOhG.js +3 -0
  287. package/dist/runtime-viewer/one-dark-pro-DJGEbENq.js +111 -0
  288. package/dist/runtime-viewer/one-light-CTMiOsB9.js +137 -0
  289. package/dist/runtime-viewer/one-light-DRcvOwa6.js +3 -0
  290. package/dist/runtime-viewer/openscad-BdifjW6z.js +2 -0
  291. package/dist/runtime-viewer/org-DqaIvCPP.js +99 -0
  292. package/dist/runtime-viewer/pascal-CWF557wL.js +2 -0
  293. package/dist/runtime-viewer/perl-CNf3SVpk.js +15 -0
  294. package/dist/runtime-viewer/php-BPw4EY34.js +17 -0
  295. package/dist/runtime-viewer/php-CftiA0NJ.js +1 -0
  296. package/dist/runtime-viewer/pierre-dark-Bdb1mzqq.js +153 -0
  297. package/dist/runtime-viewer/pierre-dark-C6-jOUHM.js +3 -0
  298. package/dist/runtime-viewer/pierre-dark-protanopia-deuteranopia-DCuPErCj.js +153 -0
  299. package/dist/runtime-viewer/pierre-dark-protanopia-deuteranopia-duePIMEV.js +3 -0
  300. package/dist/runtime-viewer/pierre-dark-soft-BAcQZBxz.js +3 -0
  301. package/dist/runtime-viewer/pierre-dark-soft-BbEG7yMD.js +153 -0
  302. package/dist/runtime-viewer/pierre-dark-tritanopia-DOpkeqXJ.js +153 -0
  303. package/dist/runtime-viewer/pierre-dark-tritanopia-D_B2XvmS.js +3 -0
  304. package/dist/runtime-viewer/pierre-dark-vibrant-Cjjp0Ett.js +3 -0
  305. package/dist/runtime-viewer/pierre-dark-vibrant-wch72KIm.js +153 -0
  306. package/dist/runtime-viewer/pierre-light-BOFVfKvu.js +153 -0
  307. package/dist/runtime-viewer/pierre-light-LcifP5tb.js +3 -0
  308. package/dist/runtime-viewer/pierre-light-protanopia-deuteranopia-BQUu7m7e.js +153 -0
  309. package/dist/runtime-viewer/pierre-light-protanopia-deuteranopia-BwLihlmJ.js +3 -0
  310. package/dist/runtime-viewer/pierre-light-soft-BOBDofkU.js +153 -0
  311. package/dist/runtime-viewer/pierre-light-soft-X5R_lHC5.js +3 -0
  312. package/dist/runtime-viewer/pierre-light-tritanopia-DHKQqobW.js +153 -0
  313. package/dist/runtime-viewer/pierre-light-tritanopia-_xB326N3.js +3 -0
  314. package/dist/runtime-viewer/pierre-light-vibrant-BQ8t4eUq.js +153 -0
  315. package/dist/runtime-viewer/pierre-light-vibrant-CpysSVqa.js +3 -0
  316. package/dist/runtime-viewer/pkl-D57k4LLs.js +2 -0
  317. package/dist/runtime-viewer/plastic-B9GSmjqY.js +3 -0
  318. package/dist/runtime-viewer/plastic-BVwrkRXf.js +124 -0
  319. package/dist/runtime-viewer/plsql-CFYD0AaB.js +2 -0
  320. package/dist/runtime-viewer/po-3OOmP4Qc.js +2 -0
  321. package/dist/runtime-viewer/poimandres-BOYLUaPj.js +3 -0
  322. package/dist/runtime-viewer/poimandres-pq5u2ANt.js +111 -0
  323. package/dist/runtime-viewer/polar-B5m1_AiD.js +2 -0
  324. package/dist/runtime-viewer/postcss-DaNMuZdy.js +2 -0
  325. package/dist/runtime-viewer/powerquery-Ds3ATR9s.js +2 -0
  326. package/dist/runtime-viewer/powershell-C6Oz4_dd.js +2 -0
  327. package/dist/runtime-viewer/prisma-RRr5YdGg.js +2 -0
  328. package/dist/runtime-viewer/prolog-DSStdQTq.js +2 -0
  329. package/dist/runtime-viewer/proto-Chh6Q5CM.js +2 -0
  330. package/dist/runtime-viewer/pug-jgpaAltF.js +11 -0
  331. package/dist/runtime-viewer/puppet-BLsUK3yq.js +2 -0
  332. package/dist/runtime-viewer/purescript-B02W4seQ.js +2 -0
  333. package/dist/runtime-viewer/python-BHaXfePs.js +2 -0
  334. package/dist/runtime-viewer/python-CqjzihlT.js +1 -0
  335. package/dist/runtime-viewer/qml-LuB2sppG.js +4 -0
  336. package/dist/runtime-viewer/qmldir-COlmh4fX.js +2 -0
  337. package/dist/runtime-viewer/qss-DQUGDdeL.js +2 -0
  338. package/dist/runtime-viewer/r-DLQ-WMyZ.js +4 -0
  339. package/dist/runtime-viewer/racket-Dh3q-EfD.js +2 -0
  340. package/dist/runtime-viewer/raku-CdFQrZmh.js +2 -0
  341. package/dist/runtime-viewer/razor-DyYB-qxm.js +9 -0
  342. package/dist/runtime-viewer/rbs-jMgpabM7.js +2 -0
  343. package/dist/runtime-viewer/red-CCCMngeG.js +3 -0
  344. package/dist/runtime-viewer/red-Dab29wid.js +153 -0
  345. package/dist/runtime-viewer/reg-BY6GKaZK.js +2 -0
  346. package/dist/runtime-viewer/regexp-DGXwIvno.js +4 -0
  347. package/dist/runtime-viewer/rel-DjgjjaPM.js +2 -0
  348. package/dist/runtime-viewer/riscv-e0swiQQT.js +2 -0
  349. package/dist/runtime-viewer/rolldown-runtime-CwxnZyOB.js +22 -0
  350. package/dist/runtime-viewer/ron-Ba9vjMyp.js +2 -0
  351. package/dist/runtime-viewer/rose-pine-B-dgSkpN.js +3 -0
  352. package/dist/runtime-viewer/rose-pine-BtbnV2yy.js +123 -0
  353. package/dist/runtime-viewer/rose-pine-dawn-Bdn8gWo3.js +123 -0
  354. package/dist/runtime-viewer/rose-pine-dawn-wnKgbnkN.js +3 -0
  355. package/dist/runtime-viewer/rose-pine-moon-Bo6Tj-LK.js +3 -0
  356. package/dist/runtime-viewer/rose-pine-moon-f0wTyd2e.js +123 -0
  357. package/dist/runtime-viewer/rosmsg-33FkgZa7.js +2 -0
  358. package/dist/runtime-viewer/rst-B4Blahjm.js +21 -0
  359. package/dist/runtime-viewer/ruby-DYURXRgy.js +1 -0
  360. package/dist/runtime-viewer/ruby-ZzNzsyR7.js +29 -0
  361. package/dist/runtime-viewer/rust-CbGaYpW0.js +2 -0
  362. package/dist/runtime-viewer/rust-DesRWqWI.js +1 -0
  363. package/dist/runtime-viewer/sandbox-ui-z5RGk327.css +2 -0
  364. package/dist/runtime-viewer/sas-y9RoKb_L.js +4 -0
  365. package/dist/runtime-viewer/sass-B4OMkGSD.js +2 -0
  366. package/dist/runtime-viewer/scala--rETK160.js +2 -0
  367. package/dist/runtime-viewer/scheme-CvovbBgk.js +2 -0
  368. package/dist/runtime-viewer/scss-DcI9-N4n.js +1 -0
  369. package/dist/runtime-viewer/scss-DopO6P6Z.js +5 -0
  370. package/dist/runtime-viewer/sdbl-BibMD0HR.js +2 -0
  371. package/dist/runtime-viewer/shaderlab-TCf2V7Bu.js +4 -0
  372. package/dist/runtime-viewer/shellscript-CMmvhdtO.js +4 -0
  373. package/dist/runtime-viewer/shellsession-C-hBmRFA.js +4 -0
  374. package/dist/runtime-viewer/shiki-CKiqbkeh.js +472 -0
  375. package/dist/runtime-viewer/slack-dark-Cdsw60PX.js +71 -0
  376. package/dist/runtime-viewer/slack-dark-awEjS_Yb.js +3 -0
  377. package/dist/runtime-viewer/slack-ochin-BKdp7_AN.js +94 -0
  378. package/dist/runtime-viewer/slack-ochin-CabfdAmS.js +3 -0
  379. package/dist/runtime-viewer/smalltalk-DxjZ-YtB.js +2 -0
  380. package/dist/runtime-viewer/smithy-tPvbDXO4.js +2 -0
  381. package/dist/runtime-viewer/snazzy-light-BYOmyMID.js +80 -0
  382. package/dist/runtime-viewer/snazzy-light-DqG5DUoz.js +3 -0
  383. package/dist/runtime-viewer/solarized-dark-DW7IHQvx.js +3 -0
  384. package/dist/runtime-viewer/solarized-dark-DbW2e0tz.js +147 -0
  385. package/dist/runtime-viewer/solarized-light-CAggmb5U.js +147 -0
  386. package/dist/runtime-viewer/solarized-light-DHtUsXC-.js +3 -0
  387. package/dist/runtime-viewer/solidity-CzRNc7l4.js +2 -0
  388. package/dist/runtime-viewer/solidity-DcnQs1tt.js +1 -0
  389. package/dist/runtime-viewer/soy-Di0gqQmR.js +4 -0
  390. package/dist/runtime-viewer/sparql-9pWczk0C.js +4 -0
  391. package/dist/runtime-viewer/splunk-mpquMt_8.js +2 -0
  392. package/dist/runtime-viewer/sql-BKQgqUK-.js +4 -0
  393. package/dist/runtime-viewer/sql-CWnPlVS6.js +1 -0
  394. package/dist/runtime-viewer/ssh-config-DcnVpK-n.js +2 -0
  395. package/dist/runtime-viewer/stata-D1hxcba5.js +4 -0
  396. package/dist/runtime-viewer/stream-tokenizer-BWCJrHj9.js +97 -0
  397. package/dist/runtime-viewer/stylus-Bk8v-7oM.js +2 -0
  398. package/dist/runtime-viewer/surrealql-D20GSlYu.js +4 -0
  399. package/dist/runtime-viewer/svelte-C1MdtiIu.js +13 -0
  400. package/dist/runtime-viewer/swift-1fpvFsbf.js +2 -0
  401. package/dist/runtime-viewer/swift-DdLix5IB.js +1 -0
  402. package/dist/runtime-viewer/synthwave-84-DEoLt5E0.js +3 -0
  403. package/dist/runtime-viewer/synthwave-84-DYyyPr4g.js +397 -0
  404. package/dist/runtime-viewer/system-verilog-9E6eQ6kG.js +2 -0
  405. package/dist/runtime-viewer/systemd-CS6cln6J.js +2 -0
  406. package/dist/runtime-viewer/talonscript-COzgILOx.js +2 -0
  407. package/dist/runtime-viewer/tasl-CrL-TM3j.js +2 -0
  408. package/dist/runtime-viewer/tcl-BK--alTs.js +2 -0
  409. package/dist/runtime-viewer/templ-DKjVFvC3.js +11 -0
  410. package/dist/runtime-viewer/terraform-BKVT4lTN.js +2 -0
  411. package/dist/runtime-viewer/tex-BMGJ-FHF.js +5 -0
  412. package/dist/runtime-viewer/themes-D2drbHm6.js +235 -0
  413. package/dist/runtime-viewer/tokyo-night-BDW-4G1n.js +3 -0
  414. package/dist/runtime-viewer/tokyo-night-CnwkSle4.js +140 -0
  415. package/dist/runtime-viewer/toml-BygInOIB.js +1 -0
  416. package/dist/runtime-viewer/toml-CXAVGmfI.js +2 -0
  417. package/dist/runtime-viewer/ts-tags-BMg-6tE-.js +37 -0
  418. package/dist/runtime-viewer/tsv-r5fpGho9.js +2 -0
  419. package/dist/runtime-viewer/tsx-CdftCu0x.js +1 -0
  420. package/dist/runtime-viewer/tsx-sVSKAISV.js +4 -0
  421. package/dist/runtime-viewer/turtle-BbiQBLu0.js +2 -0
  422. package/dist/runtime-viewer/twig-09z_6B11.js +17 -0
  423. package/dist/runtime-viewer/typescript-COKJUNHB.js +4 -0
  424. package/dist/runtime-viewer/typescript-DCN8T-9u.js +1 -0
  425. package/dist/runtime-viewer/typespec-CtiCKN_c.js +2 -0
  426. package/dist/runtime-viewer/typst-D_sC_VAT.js +119 -0
  427. package/dist/runtime-viewer/unwrapDefault-CNWG9hDr.js +5 -0
  428. package/dist/runtime-viewer/v-BdhLiTpS.js +2 -0
  429. package/dist/runtime-viewer/vala-sKTZx7aP.js +2 -0
  430. package/dist/runtime-viewer/vb-BAyoHiqq.js +2 -0
  431. package/dist/runtime-viewer/verilog-DrDp-nNs.js +2 -0
  432. package/dist/runtime-viewer/vesper-BOAJeYxj.js +3 -0
  433. package/dist/runtime-viewer/vesper-DMgHxe32.js +83 -0
  434. package/dist/runtime-viewer/vhdl-D4xoRBgL.js +2 -0
  435. package/dist/runtime-viewer/viml-C41wSeLL.js +2 -0
  436. package/dist/runtime-viewer/vitesse-black-CxSugKJt.js +3 -0
  437. package/dist/runtime-viewer/vitesse-black-D8_Gc8uG.js +183 -0
  438. package/dist/runtime-viewer/vitesse-dark-Dg-H5YXt.js +183 -0
  439. package/dist/runtime-viewer/vitesse-dark-DvdlNt-O.js +3 -0
  440. package/dist/runtime-viewer/vitesse-light-BU-cJySG.js +183 -0
  441. package/dist/runtime-viewer/vitesse-light-q0_0oW1f.js +3 -0
  442. package/dist/runtime-viewer/vue-BbJX7dLK.js +20 -0
  443. package/dist/runtime-viewer/vue-html-DvOnaPby.js +4 -0
  444. package/dist/runtime-viewer/vue-vine-NYLtCzNK.js +17 -0
  445. package/dist/runtime-viewer/vyper-D4A1KnBn.js +2 -0
  446. package/dist/runtime-viewer/wasm-CVPYyV9Y.js +2 -0
  447. package/dist/runtime-viewer/wasm-DrbRUT8q.js +3 -0
  448. package/dist/runtime-viewer/wenyan-Czq8OMMr.js +2 -0
  449. package/dist/runtime-viewer/wgsl-C_l-ZpBu.js +2 -0
  450. package/dist/runtime-viewer/wikitext-B7epQZx2.js +2 -0
  451. package/dist/runtime-viewer/wit-DswQpcNx.js +2 -0
  452. package/dist/runtime-viewer/wolfram-CSEjVwta.js +2 -0
  453. package/dist/runtime-viewer/xml-CBKvpQFb.js +1 -0
  454. package/dist/runtime-viewer/xml-Ct7jrUZw.js +5 -0
  455. package/dist/runtime-viewer/xsl-DovPFRzJ.js +4 -0
  456. package/dist/runtime-viewer/yaml-BfN4AWuy.js +4 -0
  457. package/dist/runtime-viewer/yaml-DWRq8wls.js +1 -0
  458. package/dist/runtime-viewer/zenscript-YvYHF5y3.js +2 -0
  459. package/dist/runtime-viewer/zig-BgXWauKx.js +2 -0
  460. package/dist/styles.css +192 -150
  461. package/dist/tailwind.css +156 -150
  462. package/dist/{run-C8HeXGk3.js → trace-workspace-C8dHRBDV.js} +2 -3
  463. package/dist/use-document-D6Z9oFLm.js +120 -0
  464. package/dist/{workbench-BozOdGCX.js → workbench-Z9wbei53.js} +4 -172
  465. package/dist/workbench.js +2 -1
  466. package/dist/{workspace-CJnBqCqj.js → workspace-CzikYt_y.js} +5 -364
  467. package/dist/workspace-files-pane-DB9Nvwh4.js +367 -0
  468. package/dist/workspace-viewer.js +44403 -0
  469. package/dist/workspace.js +2 -1
  470. package/package.json +9 -4
package/README.md CHANGED
@@ -529,3 +529,5 @@ Retheming is absolutely supported, but the documentation was thinner than it sho
529
529
  ## License
530
530
 
531
531
  Apache-2.0
532
+
533
+ The native Runtime viewer is `LiveRun` from `@tangle-network/sandbox-ui/run/live`. It composes the same trace workspace, selected-agent conversation, retained files and capture coverage. Hosts may supply the existing fetch/EventSource transport for their authenticated session; an API change resets the selected run, while frames on one API preserve selection and the camera. `@tangle-network/sandbox-ui/workspace-viewer.js` is the self-contained browser entry for Runtime's existing asset-directory contract, with `styles.css` beside it. Generic same-origin ETag document reads are shared as `useDocument` from the hooks entry; producers retain their format validation and accounting.
@@ -0,0 +1,66 @@
1
+ import { ToolCallData } from "@tangle-network/ui/run";
2
+ /** Host-owned authenticated streams keep their own reconnect and session lifecycle. */
3
+ interface AgentStreamSource {
4
+ addEventListener(type: string, listener: (event: MessageEvent<string>) => void): void;
5
+ close(): void;
6
+ }
7
+ type AgentStreamOpener = (url: string, onLiveChange?: (live: boolean) => void) => AgentStreamSource;
8
+ /** One row of an agent's message stream (tangle-tools `/api/discovery/runs/<run>/agents/<agent>/stream`). */
9
+ interface AgentStreamRow {
10
+ seq: number;
11
+ /** ISO time the event happened. */
12
+ at: string;
13
+ stream?: string;
14
+ attempt?: number;
15
+ event: {
16
+ kind: "text" | "reasoning" | "tool-call" | "tool-result" | "user" | "notice" | (string & {});
17
+ text?: string;
18
+ /** A notice's origin: the agent's `delegated-input`, its `recorded-result`, or a capture fact such as `capture-unavailable`. */
19
+ provenance?: string;
20
+ toolCallId?: string;
21
+ toolName?: string;
22
+ args?: unknown;
23
+ result?: unknown;
24
+ };
25
+ }
26
+ /** A transcript entry with the time it began, so a time cursor can show the conversation as of any moment. */
27
+ type AgentTranscriptEntry = {
28
+ id: string;
29
+ at: number;
30
+ kind: "message";
31
+ role: "assistant" | "user";
32
+ content: string;
33
+ sealed?: true;
34
+ } | {
35
+ id: string;
36
+ at: number;
37
+ kind: "reasoning";
38
+ text: string;
39
+ } | {
40
+ id: string;
41
+ at: number;
42
+ kind: "tool";
43
+ call: ToolCallData;
44
+ } | {
45
+ id: string;
46
+ at: number;
47
+ kind: "notice";
48
+ text: string;
49
+ };
50
+ interface AgentStreamState {
51
+ generation?: string | number;
52
+ entries: AgentTranscriptEntry[];
53
+ lastSeq: number;
54
+ /** The agent is still producing output. */
55
+ alive: boolean;
56
+ /** Why the stream shows nothing new; a reconnect that delivers rows clears it. */
57
+ error?: string;
58
+ }
59
+ /** Fold stream rows into transcript entries: text of one turn merges, a tool call becomes a row its result completes. */
60
+ declare function foldAgentRows(entries: AgentTranscriptEntry[], rows: readonly AgentStreamRow[]): AgentTranscriptEntry[];
61
+ /**
62
+ * Follow one agent's message stream over Server-Sent Events: `rows`, `reset` and `end` events, reconnecting with
63
+ * `?after=<lastSeq>` when the server closes the connection, so a long turn streams without gaps or repeats.
64
+ */
65
+ declare function useAgentStream(url: string | undefined, openEventSource?: AgentStreamOpener): AgentStreamState;
66
+ export { AgentTranscriptEntry as a, AgentStreamState as i, AgentStreamRow as n, foldAgentRows as o, AgentStreamSource as r, useAgentStream as s, AgentStreamOpener as t };
@@ -0,0 +1,177 @@
1
+ import { t as cn$1 } from "./utils-BER_bdgE.js";
2
+ import { RichFileTree } from "./files.js";
3
+ import { a as CodeSurface } from "./diff-view-B9mNeTLF.js";
4
+ import { Button } from "@tangle-network/ui/primitives";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ import * as React$1 from "react";
7
+ import { Check, ChevronRight, Copy, FileCode2, WrapText } from "lucide-react";
8
+ import { focusRing } from "@tangle-network/ui/utils";
9
+ // src/workbench/file-breadcrumb.tsx
10
+ /**
11
+ * Slim path breadcrumb for the code panel. Reimplemented (not ported) from
12
+ * blueprint-agent's `FileBreadcrumb` — that one nests a `FileTree` dropdown per
13
+ * segment and couples to the workbench store + framer-motion. Here the rail
14
+ * already owns navigation, so this is a read-only trail: caret-separated parent
15
+ * segments with a file-icon leaf.
16
+ */
17
+ function FileBreadcrumb({ path, className }) {
18
+ const segments = path.split("/").filter(Boolean);
19
+ const leaf = segments[segments.length - 1] ?? path;
20
+ const parents = segments.slice(0, -1);
21
+ return /* @__PURE__ */ jsxs("div", {
22
+ className: cn$1("flex min-h-[30px] items-center gap-1 overflow-hidden border-b border-[var(--md3-outline-variant)] bg-surface-container-lowest px-3 text-xs text-muted-foreground", className),
23
+ children: [
24
+ /* @__PURE__ */ jsx(FileCode2, { className: "h-3.5 w-3.5 shrink-0 text-muted-foreground" }),
25
+ parents.map((seg, i) => /* @__PURE__ */ jsxs(React$1.Fragment, { children: [/* @__PURE__ */ jsx("span", {
26
+ className: "truncate font-mono",
27
+ children: seg
28
+ }), /* @__PURE__ */ jsx(ChevronRight, { className: "h-3 w-3 shrink-0 opacity-50" })] }, `${seg}-${i}`)),
29
+ /* @__PURE__ */ jsx("span", {
30
+ className: "truncate font-mono text-foreground",
31
+ children: leaf
32
+ })
33
+ ]
34
+ });
35
+ }
36
+ // src/workbench/code-view.tsx
37
+ /**
38
+ * Code surface: a fixed-width `RichFileTree` rail (with git-status
39
+ * decorations) beside a breadcrumb-topped, syntax-highlighted read-only file
40
+ * view. The rail owns navigation; selecting a path fans out to `onFileSelect`
41
+ * so the host can swap the active artifact.
42
+ */
43
+ function CodeView({ path, filename, content, language, paths, gitStatus, onFileSelect, showTree = true, defaultWrap = false, themeType, className }) {
44
+ const [narrowPane, setNarrowPane] = React$1.useState("code");
45
+ const [wrap, setWrap] = React$1.useState(defaultWrap);
46
+ const [copied, setCopied] = React$1.useState(false);
47
+ const [line, setLine] = React$1.useState();
48
+ const lineInput = React$1.useRef(null);
49
+ const lineCount = React$1.useMemo(() => content.split("\n").length, [content]);
50
+ React$1.useEffect(() => {
51
+ setLine(void 0);
52
+ }, [path]);
53
+ React$1.useEffect(() => {
54
+ if (!copied) return;
55
+ const timer = setTimeout(() => setCopied(false), 1500);
56
+ return () => clearTimeout(timer);
57
+ }, [copied]);
58
+ const copy = () => {
59
+ navigator.clipboard?.writeText(content).then(() => setCopied(true));
60
+ };
61
+ const goToLine = (event) => {
62
+ event.preventDefault();
63
+ const value = Math.round(Number(lineInput.current?.value));
64
+ if (Number.isFinite(value) && value >= 1) setLine(Math.min(value, lineCount));
65
+ };
66
+ const treePaths = React$1.useMemo(() => {
67
+ const list = paths && paths.length > 0 ? paths : [path];
68
+ return list.includes(path) ? list : [...list, path];
69
+ }, [paths, path]);
70
+ return /* @__PURE__ */ jsx("div", {
71
+ className: cn$1("sandbox-code-view h-full min-h-0 w-full", className),
72
+ children: /* @__PURE__ */ jsxs("div", {
73
+ className: "sandbox-code-view-layout flex h-full min-h-0 w-full",
74
+ children: [
75
+ showTree && /* @__PURE__ */ jsxs("div", {
76
+ className: "sandbox-code-view-mobile-toolbar",
77
+ role: "group",
78
+ "aria-label": "Code view pane",
79
+ children: [/* @__PURE__ */ jsx("button", {
80
+ type: "button",
81
+ "aria-pressed": narrowPane === "files",
82
+ onClick: () => setNarrowPane("files"),
83
+ className: focusRing,
84
+ children: "Files"
85
+ }), /* @__PURE__ */ jsx("button", {
86
+ type: "button",
87
+ "aria-pressed": narrowPane === "code",
88
+ onClick: () => setNarrowPane("code"),
89
+ className: focusRing,
90
+ children: "Code"
91
+ })]
92
+ }),
93
+ showTree && /* @__PURE__ */ jsx("div", {
94
+ className: "sandbox-code-view-tree sandbox-tree-surface flex w-60 shrink-0 flex-col border-r border-[var(--md3-outline-variant)] bg-surface-container-lowest",
95
+ "data-mobile-open": narrowPane === "files",
96
+ children: /* @__PURE__ */ jsx(RichFileTree, {
97
+ paths: treePaths,
98
+ selectedPath: path,
99
+ onSelect: (next) => {
100
+ onFileSelect?.(next);
101
+ setNarrowPane("code");
102
+ },
103
+ gitStatus,
104
+ search: treePaths.length > 12,
105
+ height: "100%"
106
+ })
107
+ }),
108
+ /* @__PURE__ */ jsxs("div", {
109
+ className: "sandbox-code-view-editor flex min-w-0 flex-1 flex-col bg-surface-container",
110
+ "data-mobile-hidden": showTree && narrowPane === "files",
111
+ onKeyDown: (event) => {
112
+ if ((event.metaKey || event.ctrlKey) && event.key.toLowerCase() === "g") {
113
+ event.preventDefault();
114
+ lineInput.current?.focus();
115
+ lineInput.current?.select();
116
+ }
117
+ },
118
+ children: [/* @__PURE__ */ jsxs("div", {
119
+ className: "flex shrink-0 items-center border-b border-[var(--md3-outline-variant)] bg-surface-container-lowest",
120
+ children: [/* @__PURE__ */ jsx(FileBreadcrumb, {
121
+ path,
122
+ className: "min-w-0 flex-1 border-b-0"
123
+ }), /* @__PURE__ */ jsxs("form", {
124
+ onSubmit: goToLine,
125
+ className: "flex shrink-0 items-center gap-0.5 pr-1",
126
+ children: [
127
+ /* @__PURE__ */ jsx("input", {
128
+ ref: lineInput,
129
+ type: "number",
130
+ min: 1,
131
+ max: lineCount,
132
+ inputMode: "numeric",
133
+ placeholder: "Line",
134
+ "aria-label": "Go to line",
135
+ "aria-keyshortcuts": "Control+g Meta+g",
136
+ className: cn$1("h-6 w-14 rounded border border-transparent bg-transparent px-1.5 font-mono text-xs text-foreground placeholder:text-muted-foreground hover:border-border", focusRing)
137
+ }),
138
+ /* @__PURE__ */ jsx(Button, {
139
+ type: "button",
140
+ variant: "ghost",
141
+ size: "sm",
142
+ "aria-pressed": wrap,
143
+ "aria-label": "Wrap lines",
144
+ title: "Wrap lines",
145
+ onClick: () => setWrap((value) => !value),
146
+ className: cn$1("h-6 w-6 p-0", wrap && "text-foreground bg-surface-container-high"),
147
+ children: /* @__PURE__ */ jsx(WrapText, { className: "h-3.5 w-3.5" })
148
+ }),
149
+ /* @__PURE__ */ jsx(Button, {
150
+ type: "button",
151
+ variant: "ghost",
152
+ size: "sm",
153
+ "aria-label": copied ? "Copied" : "Copy file",
154
+ title: copied ? "Copied" : "Copy file",
155
+ onClick: copy,
156
+ className: "h-6 w-6 p-0",
157
+ children: copied ? /* @__PURE__ */ jsx(Check, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ jsx(Copy, { className: "h-3.5 w-3.5" })
158
+ })
159
+ ]
160
+ })]
161
+ }), /* @__PURE__ */ jsx("div", {
162
+ className: "min-h-0 flex-1",
163
+ children: /* @__PURE__ */ jsx(CodeSurface, {
164
+ code: content,
165
+ filename,
166
+ language,
167
+ wrap,
168
+ line,
169
+ themeType
170
+ })
171
+ })]
172
+ })
173
+ ]
174
+ })
175
+ });
176
+ }
177
+ export { FileBreadcrumb as n, CodeView as t };