@p4code/cli 0.0.29

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 (414) hide show
  1. package/LICENSE +21 -0
  2. package/dist/BunPtyAdapter-DogtLQSx.mjs +122 -0
  3. package/dist/NodePtyAdapter-CS1weRcq.mjs +118 -0
  4. package/dist/NodeSqliteClient-BUlNQAY0.mjs +191 -0
  5. package/dist/PtyAdapter-DO4FyE0R.mjs +54 -0
  6. package/dist/bin.mjs +78161 -0
  7. package/dist/client/apple-touch-icon.png +0 -0
  8. package/dist/client/assets/DiffPanel-ISmUh6EE.js +98 -0
  9. package/dist/client/assets/FilePreviewPanel-CYqEF-Ly.js +1778 -0
  10. package/dist/client/assets/PreviewPanel-CXM2ps-_.js +2 -0
  11. package/dist/client/assets/abap-CLvhMVsD.js +2 -0
  12. package/dist/client/assets/actionscript-3--17pq3dv.js +2 -0
  13. package/dist/client/assets/ada-C5qYipkI.js +2 -0
  14. package/dist/client/assets/andromeeda-WkhI09AS.js +2 -0
  15. package/dist/client/assets/andromeeda-vGVdxbeo.js +2 -0
  16. package/dist/client/assets/angular-html-DNsrGRc9.js +2 -0
  17. package/dist/client/assets/angular-ts-C6-plvuT.js +2 -0
  18. package/dist/client/assets/apache-U0d_L8uA.js +2 -0
  19. package/dist/client/assets/apex-VAyPSnFM.js +2 -0
  20. package/dist/client/assets/apl-VqfbyG85.js +2 -0
  21. package/dist/client/assets/applescript-CCn79oCD.js +2 -0
  22. package/dist/client/assets/ara-4CJ0cIlV.js +2 -0
  23. package/dist/client/assets/arrow-right-DursbRoR.js +2 -0
  24. package/dist/client/assets/asciidoc-DE70LPWp.js +2 -0
  25. package/dist/client/assets/asm-Cmm7eHzH.js +2 -0
  26. package/dist/client/assets/astro-8YYimDdZ.js +2 -0
  27. package/dist/client/assets/aurora-x-C7CFqhAd.js +2 -0
  28. package/dist/client/assets/aurora-x-CDeNXAV0.js +2 -0
  29. package/dist/client/assets/awk-BWXHIvNe.js +2 -0
  30. package/dist/client/assets/ayu-dark-CRu61w6_.js +2 -0
  31. package/dist/client/assets/ayu-dark-DluEY0Gj.js +2 -0
  32. package/dist/client/assets/ayu-light-C3h-C4tm.js +2 -0
  33. package/dist/client/assets/ayu-light-Dn6O_aYR.js +2 -0
  34. package/dist/client/assets/ayu-mirage-Bqwy1Gya.js +2 -0
  35. package/dist/client/assets/ayu-mirage-CTjYAbs-.js +2 -0
  36. package/dist/client/assets/ballerina-B7ZEbQpA.js +2 -0
  37. package/dist/client/assets/bat-Bo4NYOV-.js +2 -0
  38. package/dist/client/assets/beancount-D-usSTwE.js +2 -0
  39. package/dist/client/assets/berry-DKpUyyne.js +2 -0
  40. package/dist/client/assets/bibtex-Ci_nEsc7.js +2 -0
  41. package/dist/client/assets/bicep-CUHmPFLl.js +2 -0
  42. package/dist/client/assets/bird2-C6vDhewU.js +2 -0
  43. package/dist/client/assets/blade-CzBZSrIV.js +2 -0
  44. package/dist/client/assets/bsl-BkkzgIyY.js +2 -0
  45. package/dist/client/assets/c-CNPMmwne.js +2 -0
  46. package/dist/client/assets/c3-BFHwR3_K.js +2 -0
  47. package/dist/client/assets/cadence-CQ2zXKGN.js +2 -0
  48. package/dist/client/assets/cairo-DLTphjLi.js +2 -0
  49. package/dist/client/assets/catppuccin-frappe-3VR1Za6u.js +2 -0
  50. package/dist/client/assets/catppuccin-frappe-DFlFW5gh.js +2 -0
  51. package/dist/client/assets/catppuccin-latte-CpxdcXpJ.js +2 -0
  52. package/dist/client/assets/catppuccin-latte-DwIHMF0Q.js +2 -0
  53. package/dist/client/assets/catppuccin-macchiato-DIdIQ04K.js +2 -0
  54. package/dist/client/assets/catppuccin-macchiato-DYnBP6_5.js +2 -0
  55. package/dist/client/assets/catppuccin-mocha-Co3Xjl64.js +2 -0
  56. package/dist/client/assets/catppuccin-mocha-DYhrFGRu.js +2 -0
  57. package/dist/client/assets/clarity-SemFz856.js +2 -0
  58. package/dist/client/assets/clojure-DqKBuwfJ.js +2 -0
  59. package/dist/client/assets/cmake-Bj61d0ZC.js +2 -0
  60. package/dist/client/assets/cobol-86pJcKMz.js +2 -0
  61. package/dist/client/assets/codeowners-C8r90Shi.js +2 -0
  62. package/dist/client/assets/codeql-oeQT6MSM.js +2 -0
  63. package/dist/client/assets/coffee-CGkeiuBX.js +2 -0
  64. package/dist/client/assets/common-lisp-Cv5bFMCO.js +2 -0
  65. package/dist/client/assets/coq-BrsZFFmf.js +2 -0
  66. package/dist/client/assets/cpp-B8k9jaKZ.js +2 -0
  67. package/dist/client/assets/crystal-Dx8rl20L.js +2 -0
  68. package/dist/client/assets/csharp-oqKa8noW.js +2 -0
  69. package/dist/client/assets/css-2puI5lgX.js +2 -0
  70. package/dist/client/assets/csv-Dx-8-gkx.js +2 -0
  71. package/dist/client/assets/cue-CE9AQfxI.js +2 -0
  72. package/dist/client/assets/cypher-ClKdZ_lG.js +2 -0
  73. package/dist/client/assets/d-qD-0Kul2.js +2 -0
  74. package/dist/client/assets/dark-plus-Cs2F2srj.js +2 -0
  75. package/dist/client/assets/dark-plus-GAt2ZgX8.js +2 -0
  76. package/dist/client/assets/dart-CnvKMtbv.js +2 -0
  77. package/dist/client/assets/dax-BkyTk9wS.js +2 -0
  78. package/dist/client/assets/desktop-Dlh5hvp9.js +2 -0
  79. package/dist/client/assets/diff-woXpYk--.js +2 -0
  80. package/dist/client/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2 +0 -0
  81. package/dist/client/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2 +0 -0
  82. package/dist/client/assets/docker-IyjqRm3v.js +2 -0
  83. package/dist/client/assets/dotenv-_5a1GRtc.js +2 -0
  84. package/dist/client/assets/dracula-BHWKrbxM.js +2 -0
  85. package/dist/client/assets/dracula-C2uKkzgK.js +2 -0
  86. package/dist/client/assets/dracula-soft-5eyTD99u.js +2 -0
  87. package/dist/client/assets/dracula-soft-D1bVjxWZ.js +2 -0
  88. package/dist/client/assets/dream-maker-DW3nJb8Q.js +2 -0
  89. package/dist/client/assets/edge-D4FUIorq.js +2 -0
  90. package/dist/client/assets/elixir-BRtF9YiH.js +2 -0
  91. package/dist/client/assets/elm-BNdqh0xn.js +2 -0
  92. package/dist/client/assets/emacs-lisp-B4R74twV.js +2 -0
  93. package/dist/client/assets/erb-QiZUayOm.js +2 -0
  94. package/dist/client/assets/erlang-Cphh6RMH.js +2 -0
  95. package/dist/client/assets/everforest-dark-D-DlICQR.js +2 -0
  96. package/dist/client/assets/everforest-dark-sB-x3p7T.js +2 -0
  97. package/dist/client/assets/everforest-light-CeVdGHYG.js +2 -0
  98. package/dist/client/assets/everforest-light-Df2xbC6M.js +2 -0
  99. package/dist/client/assets/fennel-DQxkIbk2.js +2 -0
  100. package/dist/client/assets/fileCommentAnnotations-_ckxu-Nq.js +2 -0
  101. package/dist/client/assets/fish-BJitypiv.js +2 -0
  102. package/dist/client/assets/fluent-C03EYrpw.js +2 -0
  103. package/dist/client/assets/fortran-fixed-form-DEKoE2YW.js +2 -0
  104. package/dist/client/assets/fortran-free-form-CYNrtFtB.js +2 -0
  105. package/dist/client/assets/fsharp-D13ZGOAj.js +2 -0
  106. package/dist/client/assets/gdresource-C0sCabJj.js +2 -0
  107. package/dist/client/assets/gdscript-Cp2uCuqX.js +2 -0
  108. package/dist/client/assets/gdshader-CBce3t8t.js +2 -0
  109. package/dist/client/assets/genie-CV2tkWYe.js +2 -0
  110. package/dist/client/assets/gherkin-DExj1W_8.js +2 -0
  111. package/dist/client/assets/git-commit-BSykSTBG.js +2 -0
  112. package/dist/client/assets/git-rebase-FjYcYaMh.js +2 -0
  113. package/dist/client/assets/github-dark-C-LZuMrd.js +2 -0
  114. package/dist/client/assets/github-dark-DwbbXv51.js +2 -0
  115. package/dist/client/assets/github-dark-default-CxjRwzl6.js +2 -0
  116. package/dist/client/assets/github-dark-default-DXG-b-1a.js +2 -0
  117. package/dist/client/assets/github-dark-dimmed-Bx1FflLF.js +2 -0
  118. package/dist/client/assets/github-dark-dimmed-Cr1oaoul.js +2 -0
  119. package/dist/client/assets/github-dark-high-contrast-B4qJZLZa.js +2 -0
  120. package/dist/client/assets/github-dark-high-contrast-B_tTalzw.js +2 -0
  121. package/dist/client/assets/github-light-CsVXhIlR.js +2 -0
  122. package/dist/client/assets/github-light-EUqPIrTm.js +2 -0
  123. package/dist/client/assets/github-light-default-BXViO-2h.js +2 -0
  124. package/dist/client/assets/github-light-default-DB_IwZa6.js +2 -0
  125. package/dist/client/assets/github-light-high-contrast-B68TUdTA.js +2 -0
  126. package/dist/client/assets/github-light-high-contrast-DLgVeSB-.js +2 -0
  127. package/dist/client/assets/gleam-CSRkHgEL.js +2 -0
  128. package/dist/client/assets/glimmer-js-D-mQJ6qV.js +2 -0
  129. package/dist/client/assets/glimmer-ts-alq8R4io.js +2 -0
  130. package/dist/client/assets/glsl-Dd1BHD7z.js +2 -0
  131. package/dist/client/assets/gn-ilITqXS6.js +2 -0
  132. package/dist/client/assets/gnuplot-7GGW24-e.js +2 -0
  133. package/dist/client/assets/go-rLFTqkRN.js +2 -0
  134. package/dist/client/assets/graphql-CcSmOucl.js +2 -0
  135. package/dist/client/assets/groovy-CacY0gHj.js +2 -0
  136. package/dist/client/assets/gruvbox-dark-hard-C820rvS2.js +2 -0
  137. package/dist/client/assets/gruvbox-dark-hard-DXm60lX3.js +2 -0
  138. package/dist/client/assets/gruvbox-dark-medium-BPjhmG05.js +2 -0
  139. package/dist/client/assets/gruvbox-dark-medium-GE2thSmD.js +2 -0
  140. package/dist/client/assets/gruvbox-dark-soft-04Cj-4VZ.js +2 -0
  141. package/dist/client/assets/gruvbox-dark-soft-MrdJrrXF.js +2 -0
  142. package/dist/client/assets/gruvbox-light-hard-BC_s9l72.js +2 -0
  143. package/dist/client/assets/gruvbox-light-hard-K6wSn29D.js +2 -0
  144. package/dist/client/assets/gruvbox-light-medium-BAWPOn9u.js +2 -0
  145. package/dist/client/assets/gruvbox-light-medium-CVy3aSlc.js +2 -0
  146. package/dist/client/assets/gruvbox-light-soft-BSMLrYjP.js +2 -0
  147. package/dist/client/assets/gruvbox-light-soft-DNgJjaY0.js +2 -0
  148. package/dist/client/assets/hack-1D68uw0q.js +2 -0
  149. package/dist/client/assets/haml-CCJx-f9Y.js +2 -0
  150. package/dist/client/assets/handlebars-BTmd7K38.js +2 -0
  151. package/dist/client/assets/haskell-D8IpX4py.js +2 -0
  152. package/dist/client/assets/haxe-OTjmBuCE.js +2 -0
  153. package/dist/client/assets/hcl-Dh228itO.js +2 -0
  154. package/dist/client/assets/hjson-CxZEssPk.js +2 -0
  155. package/dist/client/assets/hlsl-Cvrh5tZx.js +2 -0
  156. package/dist/client/assets/horizon-0-RkHfro.js +2 -0
  157. package/dist/client/assets/horizon-CE9ld1lL.js +2 -0
  158. package/dist/client/assets/horizon-bright-BgL2X9oq.js +2 -0
  159. package/dist/client/assets/horizon-bright-DSNQnXHK.js +2 -0
  160. package/dist/client/assets/houston-CsvMBhTu.js +2 -0
  161. package/dist/client/assets/houston-KyjWKfuY.js +2 -0
  162. package/dist/client/assets/html-OwAg4yxZ.js +2 -0
  163. package/dist/client/assets/html-derivative-CfSpQJVI.js +2 -0
  164. package/dist/client/assets/http-D-zv8Dkv.js +2 -0
  165. package/dist/client/assets/hurl-C_9QVrls.js +2 -0
  166. package/dist/client/assets/hxml-B0Qn7Nwc.js +2 -0
  167. package/dist/client/assets/hy-CZbG8q4J.js +2 -0
  168. package/dist/client/assets/imba-DsUTQ-LC.js +2 -0
  169. package/dist/client/assets/index-D1nhcl1-.js +581 -0
  170. package/dist/client/assets/index-Dv7jVqzc.css +1 -0
  171. package/dist/client/assets/ini-B5eOa1yu.js +2 -0
  172. package/dist/client/assets/java-CphFez3D.js +2 -0
  173. package/dist/client/assets/javascript-CuhWhnHV.js +2 -0
  174. package/dist/client/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
  175. package/dist/client/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
  176. package/dist/client/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff +0 -0
  177. package/dist/client/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2 +0 -0
  178. package/dist/client/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
  179. package/dist/client/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
  180. package/dist/client/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff +0 -0
  181. package/dist/client/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2 +0 -0
  182. package/dist/client/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  183. package/dist/client/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  184. package/dist/client/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
  185. package/dist/client/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
  186. package/dist/client/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
  187. package/dist/client/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
  188. package/dist/client/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2 +0 -0
  189. package/dist/client/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff +0 -0
  190. package/dist/client/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
  191. package/dist/client/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff +0 -0
  192. package/dist/client/assets/jinja-QC4NTfW8.js +2 -0
  193. package/dist/client/assets/jison-D2UaLeRw.js +2 -0
  194. package/dist/client/assets/json-B_6EXKs9.js +2 -0
  195. package/dist/client/assets/json5-BR5RXkoi.js +2 -0
  196. package/dist/client/assets/jsonc-CYpm1nAK.js +2 -0
  197. package/dist/client/assets/jsonl-CmCQp5Yx.js +2 -0
  198. package/dist/client/assets/jsonnet-CJTPZ8u_.js +2 -0
  199. package/dist/client/assets/jssm-DXw9l8Rf.js +2 -0
  200. package/dist/client/assets/jsx-BKePIkG8.js +2 -0
  201. package/dist/client/assets/julia-DOXGRp4q.js +2 -0
  202. package/dist/client/assets/just-dysLm0XN.js +2 -0
  203. package/dist/client/assets/kanagawa-dragon-7TqgsUPC.js +2 -0
  204. package/dist/client/assets/kanagawa-dragon-CXtmUGW6.js +2 -0
  205. package/dist/client/assets/kanagawa-lotus-BN08jTvb.js +2 -0
  206. package/dist/client/assets/kanagawa-lotus-CqxMQulh.js +2 -0
  207. package/dist/client/assets/kanagawa-wave-CTweb8Dz.js +2 -0
  208. package/dist/client/assets/kanagawa-wave-D8CNn6T_.js +2 -0
  209. package/dist/client/assets/kdl-CsD5j6eV.js +2 -0
  210. package/dist/client/assets/kotlin-DhhofPvG.js +2 -0
  211. package/dist/client/assets/kusto-C7mF5XQf.js +2 -0
  212. package/dist/client/assets/laserwave-CQkdhozh.js +2 -0
  213. package/dist/client/assets/laserwave-C_8bwKvT.js +2 -0
  214. package/dist/client/assets/latex-DKJgwkV8.js +2 -0
  215. package/dist/client/assets/lean-CewbzKMR.js +2 -0
  216. package/dist/client/assets/less-DVTAwKKz.js +2 -0
  217. package/dist/client/assets/light-plus-CNQ8_7Y0.js +2 -0
  218. package/dist/client/assets/light-plus-DVQuIRkW.js +2 -0
  219. package/dist/client/assets/liquid-B2BaWaG_.js +2 -0
  220. package/dist/client/assets/llvm-Cm23YOpf.js +2 -0
  221. package/dist/client/assets/log-BNLmms1o.js +2 -0
  222. package/dist/client/assets/logo-Cluzi2Zq.js +2 -0
  223. package/dist/client/assets/lua-Dl0oNuDI.js +2 -0
  224. package/dist/client/assets/luau-FMPmPwt6.js +2 -0
  225. package/dist/client/assets/make-Dixweg8N.js +2 -0
  226. package/dist/client/assets/markdown-BYOwaDjH.js +2 -0
  227. package/dist/client/assets/marko-ZYdRdmRt.js +2 -0
  228. package/dist/client/assets/material-theme-Bm3Qr25_.js +2 -0
  229. package/dist/client/assets/material-theme-CAtLaHa3.js +2 -0
  230. package/dist/client/assets/material-theme-darker-2IIEA8gg.js +2 -0
  231. package/dist/client/assets/material-theme-darker-k-s5Bc6K.js +2 -0
  232. package/dist/client/assets/material-theme-lighter-CD6a-c4d.js +2 -0
  233. package/dist/client/assets/material-theme-lighter-uhdI0v04.js +2 -0
  234. package/dist/client/assets/material-theme-ocean-B3mraInd.js +2 -0
  235. package/dist/client/assets/material-theme-ocean-CHQ94UKr.js +2 -0
  236. package/dist/client/assets/material-theme-palenight-B5W6OYN7.js +2 -0
  237. package/dist/client/assets/material-theme-palenight-DEhAARHw.js +2 -0
  238. package/dist/client/assets/matlab-D7qyCx1q.js +2 -0
  239. package/dist/client/assets/mdc-BT4iz0CW.js +2 -0
  240. package/dist/client/assets/mdx-DQZ5AkYe.js +2 -0
  241. package/dist/client/assets/mermaid-Bk4SNUv9.js +2 -0
  242. package/dist/client/assets/min-dark-BFqTAwCr.js +2 -0
  243. package/dist/client/assets/min-dark-BSWPekZh.js +2 -0
  244. package/dist/client/assets/min-light-DDpmG2fV.js +2 -0
  245. package/dist/client/assets/min-light-O7UdaaxX.js +2 -0
  246. package/dist/client/assets/mipsasm-BMqwQI7S.js +2 -0
  247. package/dist/client/assets/mojo-BgCJLMeH.js +2 -0
  248. package/dist/client/assets/monokai-C0p7Qecz.js +2 -0
  249. package/dist/client/assets/monokai-CdkpiU2Y.js +2 -0
  250. package/dist/client/assets/moonbit-CaWjb8XO.js +2 -0
  251. package/dist/client/assets/move-B1IS1UjX.js +2 -0
  252. package/dist/client/assets/narrat-_X_XdTYD.js +2 -0
  253. package/dist/client/assets/nextflow-BJtWHP5T.js +2 -0
  254. package/dist/client/assets/nextflow-groovy-DJMQeKeT.js +2 -0
  255. package/dist/client/assets/nginx-BMG7_x1D.js +2 -0
  256. package/dist/client/assets/night-owl-BsnCLAKc.js +2 -0
  257. package/dist/client/assets/night-owl-DhmEMT88.js +2 -0
  258. package/dist/client/assets/night-owl-light-BODRhcTU.js +2 -0
  259. package/dist/client/assets/night-owl-light-eJ-hLW7d.js +2 -0
  260. package/dist/client/assets/nim-HSz65QwX.js +2 -0
  261. package/dist/client/assets/nix-IvuFDN5E.js +2 -0
  262. package/dist/client/assets/nord-Cb4Vim4T.js +2 -0
  263. package/dist/client/assets/nord-Cd-F4txO.js +2 -0
  264. package/dist/client/assets/nushell-DcLAeLz5.js +2 -0
  265. package/dist/client/assets/objective-c-D1A_Heim.js +2 -0
  266. package/dist/client/assets/objective-cpp-BsSzOQcm.js +2 -0
  267. package/dist/client/assets/ocaml-O90oeIOV.js +2 -0
  268. package/dist/client/assets/odin-B1RWQWA5.js +2 -0
  269. package/dist/client/assets/one-dark-pro-CLwyXe_n.js +2 -0
  270. package/dist/client/assets/one-dark-pro-DUS_IGRK.js +2 -0
  271. package/dist/client/assets/one-light-CVUd7yD5.js +2 -0
  272. package/dist/client/assets/one-light-D7Lr4KcI.js +2 -0
  273. package/dist/client/assets/openscad-BUDT5pXO.js +2 -0
  274. package/dist/client/assets/pascal-4ZHwLPI5.js +2 -0
  275. package/dist/client/assets/perl-K3PESIyz.js +2 -0
  276. package/dist/client/assets/php-CbSsTKrV.js +2 -0
  277. package/dist/client/assets/pierre-dark-sU4Zdns8.js +2 -0
  278. package/dist/client/assets/pierre-dark-soft-HXgun5vs.js +2 -0
  279. package/dist/client/assets/pierre-dark-vibrant-D4RhcSIK.js +2 -0
  280. package/dist/client/assets/pierre-light-DWBk51d8.js +2 -0
  281. package/dist/client/assets/pierre-light-soft-CodEzPxf.js +2 -0
  282. package/dist/client/assets/pierre-light-vibrant-B76X7i5Y.js +2 -0
  283. package/dist/client/assets/pkl-ot-7Btpt.js +2 -0
  284. package/dist/client/assets/plastic-CF8VZTnn.js +2 -0
  285. package/dist/client/assets/plastic-DQwYfKfQ.js +2 -0
  286. package/dist/client/assets/plsql-DGHpHOYJ.js +2 -0
  287. package/dist/client/assets/po-BiJDBrnU.js +2 -0
  288. package/dist/client/assets/poimandres-BX2TyY6j.js +2 -0
  289. package/dist/client/assets/poimandres-DRFjx7u4.js +2 -0
  290. package/dist/client/assets/polar-C7UOKdEL.js +2 -0
  291. package/dist/client/assets/postcss-BXeXVLqQ.js +2 -0
  292. package/dist/client/assets/powerquery-DNMTfnFr.js +2 -0
  293. package/dist/client/assets/powershell-DshXNtvi.js +2 -0
  294. package/dist/client/assets/prisma-BsRQq5mF.js +2 -0
  295. package/dist/client/assets/prolog-iXnhIJG7.js +2 -0
  296. package/dist/client/assets/proto-DB4EqR-F.js +2 -0
  297. package/dist/client/assets/pug-DVfkpZFq.js +2 -0
  298. package/dist/client/assets/puppet-CDv2pdJW.js +2 -0
  299. package/dist/client/assets/purescript-9MfHhQsQ.js +2 -0
  300. package/dist/client/assets/python-gzcpVVnB.js +2 -0
  301. package/dist/client/assets/qml-Bi7irMPq.js +2 -0
  302. package/dist/client/assets/qmldir-DCQb3MpD.js +2 -0
  303. package/dist/client/assets/qss-Fe1Jh2GI.js +2 -0
  304. package/dist/client/assets/r-C1yhio2_.js +2 -0
  305. package/dist/client/assets/racket-DcIDlBhZ.js +2 -0
  306. package/dist/client/assets/raku-B3gFvitq.js +2 -0
  307. package/dist/client/assets/razor-CWmmhrPd.js +2 -0
  308. package/dist/client/assets/red-7ga_dcKu.js +2 -0
  309. package/dist/client/assets/red-CJ3rzSJv.js +2 -0
  310. package/dist/client/assets/reg-CRGYupPL.js +2 -0
  311. package/dist/client/assets/regexp-BDALIP0p.js +2 -0
  312. package/dist/client/assets/rel-BtDbiS_P.js +2 -0
  313. package/dist/client/assets/riscv-Ckw8ddFX.js +2 -0
  314. package/dist/client/assets/ron-VUp2lXgN.js +2 -0
  315. package/dist/client/assets/rose-pine-BthvhNj6.js +2 -0
  316. package/dist/client/assets/rose-pine-dawn-DSuRaP6u.js +2 -0
  317. package/dist/client/assets/rose-pine-dawn-Dg85fqjY.js +2 -0
  318. package/dist/client/assets/rose-pine-moon-DdHjCvFQ.js +2 -0
  319. package/dist/client/assets/rose-pine-moon-hon4tzzS.js +2 -0
  320. package/dist/client/assets/rose-pine-rh6ipraJ.js +2 -0
  321. package/dist/client/assets/rosmsg-CAekHB0j.js +2 -0
  322. package/dist/client/assets/rst-DY6alFvJ.js +2 -0
  323. package/dist/client/assets/ruby-DfGLHu1I.js +2 -0
  324. package/dist/client/assets/rust-Cfkwpbl8.js +2 -0
  325. package/dist/client/assets/sas-eNjd7tYS.js +2 -0
  326. package/dist/client/assets/sass-DXrisJhu.js +2 -0
  327. package/dist/client/assets/scala-DKOlJaKm.js +2 -0
  328. package/dist/client/assets/scheme-DQCgrYNe.js +2 -0
  329. package/dist/client/assets/scss-CD6m7-Bl.js +2 -0
  330. package/dist/client/assets/sdbl-bTVj8UrX.js +2 -0
  331. package/dist/client/assets/shaderlab-TOUzSsQk.js +2 -0
  332. package/dist/client/assets/shellscript-CgJVKvdu.js +2 -0
  333. package/dist/client/assets/shellsession-DfhT55_a.js +2 -0
  334. package/dist/client/assets/slack-dark-DYvUXyrP.js +2 -0
  335. package/dist/client/assets/slack-dark-DnToyrRv.js +2 -0
  336. package/dist/client/assets/slack-ochin-B2OO5cIa.js +2 -0
  337. package/dist/client/assets/slack-ochin-bqtMVDfH.js +2 -0
  338. package/dist/client/assets/smalltalk-B16xEiuN.js +2 -0
  339. package/dist/client/assets/snazzy-light-4G7pJPwS.js +2 -0
  340. package/dist/client/assets/snazzy-light-D8dzFmq5.js +2 -0
  341. package/dist/client/assets/solarized-dark-BQwPDzxK.js +2 -0
  342. package/dist/client/assets/solarized-dark-DV17i1UV.js +2 -0
  343. package/dist/client/assets/solarized-light-BLaijb3X.js +2 -0
  344. package/dist/client/assets/solarized-light-DSh2HLQt.js +2 -0
  345. package/dist/client/assets/solidity-CKzVLygQ.js +2 -0
  346. package/dist/client/assets/soy-BMxyGli1.js +2 -0
  347. package/dist/client/assets/sparql-D_iOobhT.js +2 -0
  348. package/dist/client/assets/splunk-BC2Px7Mm.js +2 -0
  349. package/dist/client/assets/sql-T1RdWILZ.js +2 -0
  350. package/dist/client/assets/ssh-config-BgfXC-Er.js +2 -0
  351. package/dist/client/assets/stata-CSHSc9y1.js +2 -0
  352. package/dist/client/assets/stylus-B6D30XZt.js +2 -0
  353. package/dist/client/assets/surrealql-BNNNyZkj.js +2 -0
  354. package/dist/client/assets/svelte-C4LkhGOG.js +2 -0
  355. package/dist/client/assets/swift-DonLKvLd.js +2 -0
  356. package/dist/client/assets/synthwave-84-CIknw8y7.js +2 -0
  357. package/dist/client/assets/synthwave-84-nFMaYfgc.js +2 -0
  358. package/dist/client/assets/system-verilog-DJ5XKQeo.js +2 -0
  359. package/dist/client/assets/systemd-BxMlprV5.js +2 -0
  360. package/dist/client/assets/talonscript-CohzipZa.js +2 -0
  361. package/dist/client/assets/tasl-DMoTqEGO.js +2 -0
  362. package/dist/client/assets/tcl-CZd0xW_V.js +2 -0
  363. package/dist/client/assets/templ-Ar04ka0k.js +2 -0
  364. package/dist/client/assets/terraform-DswuEJGm.js +2 -0
  365. package/dist/client/assets/tex-CWmNB2Lj.js +2 -0
  366. package/dist/client/assets/textarea-ChQXZeGG.js +46 -0
  367. package/dist/client/assets/tokyo-night-iIspnLcq.js +2 -0
  368. package/dist/client/assets/tokyo-night-oM2G3aXe.js +2 -0
  369. package/dist/client/assets/toml-CcmNWLt0.js +2 -0
  370. package/dist/client/assets/ts-tags-D568Q_BZ.js +2 -0
  371. package/dist/client/assets/tsv-sltzmVWM.js +2 -0
  372. package/dist/client/assets/tsx-Bi2dY_9w.js +2 -0
  373. package/dist/client/assets/turtle-ByJddavk.js +2 -0
  374. package/dist/client/assets/twig-D5gCvoXn.js +2 -0
  375. package/dist/client/assets/typescript-DfzSrRla.js +2 -0
  376. package/dist/client/assets/typespec-BRdr0IET.js +2 -0
  377. package/dist/client/assets/typst-DI99ib-x.js +2 -0
  378. package/dist/client/assets/v-DETTlOr0.js +2 -0
  379. package/dist/client/assets/vala-zf12oZj6.js +2 -0
  380. package/dist/client/assets/vb-Djn5o6TS.js +2 -0
  381. package/dist/client/assets/verilog-CiiDBU1e.js +2 -0
  382. package/dist/client/assets/vesper-BIFK_oDq.js +2 -0
  383. package/dist/client/assets/vesper-DdrHHSXu.js +2 -0
  384. package/dist/client/assets/vhdl-BroJfC0k.js +2 -0
  385. package/dist/client/assets/viml-DvXPmvsu.js +2 -0
  386. package/dist/client/assets/vitesse-black-D082JcaE.js +2 -0
  387. package/dist/client/assets/vitesse-black-fwtXNY1n.js +2 -0
  388. package/dist/client/assets/vitesse-dark-BZCL-v6S.js +2 -0
  389. package/dist/client/assets/vitesse-dark-z-nr_5O8.js +2 -0
  390. package/dist/client/assets/vitesse-light-VbXTXTou.js +2 -0
  391. package/dist/client/assets/vitesse-light-ojz42ZLy.js +2 -0
  392. package/dist/client/assets/vue-Cr3u1yii.js +2 -0
  393. package/dist/client/assets/vue-html-B1KNQm8Q.js +2 -0
  394. package/dist/client/assets/vue-vine-DUvg6lrb.js +2 -0
  395. package/dist/client/assets/vyper-CgoNMtux.js +2 -0
  396. package/dist/client/assets/wasm-BnjxR4X6.js +2 -0
  397. package/dist/client/assets/wasm-ByWQv1Qj.js +2 -0
  398. package/dist/client/assets/wenyan-C8pVoKbM.js +2 -0
  399. package/dist/client/assets/wgsl-BsKzXJz4.js +2 -0
  400. package/dist/client/assets/wikitext-ClFFjSW2.js +2 -0
  401. package/dist/client/assets/wit-DdvCle-K.js +2 -0
  402. package/dist/client/assets/wolfram-DLL8P-h_.js +2 -0
  403. package/dist/client/assets/worker-aIZfs-9q.js +159 -0
  404. package/dist/client/assets/xml-Ba8gVYaX.js +2 -0
  405. package/dist/client/assets/xsl-DD6bwSDU.js +2 -0
  406. package/dist/client/assets/yaml-DUYA-AHd.js +2 -0
  407. package/dist/client/assets/zenscript-BnlCZFoB.js +2 -0
  408. package/dist/client/assets/zig-CMLA9XwU.js +2 -0
  409. package/dist/client/favicon-16x16.png +0 -0
  410. package/dist/client/favicon-32x32.png +0 -0
  411. package/dist/client/favicon.ico +0 -0
  412. package/dist/client/index.html +101 -0
  413. package/dist/client/mockServiceWorker.js +349 -0
  414. package/package.json +52 -0
Binary file
@@ -0,0 +1,98 @@
1
+ import{Ef as e,Fr as t,Gr as n,H as r,Ho as i,Kr as a,Mo as o,Nt as s,Pf as c,Qa as l,R as u,Rr as d,Tf as f,Uo as p,Vo as m,Wo as h,Wr as g,Yf as _,Zf as v,Zs as y,Zt as b,cs as x,ep as S,g as C,jr as w,ki as T,ko as E,ks as D,m as O,nn as ee,no as te,o as k,p as A,ps as ne,qr as re,qt as j,u as M,w as N,ws as P,ys as ie,zr as ae}from"./textarea-ChQXZeGG.js";import{t as oe}from"./arrow-right-DursbRoR.js";import{a as se,c as F,n as ce,o as le}from"./fileCommentAnnotations-_ckxu-Nq.js";import{A as ue,Bn as de,C as I,Cn as fe,D as pe,Dn as me,E as he,En as ge,Fn as _e,Hn as ve,Ht as L,In as ye,Ir as be,Jt as R,Kn as z,Ln as xe,Lr as Se,M as Ce,Nn as we,O as Te,Pn as Ee,Qt as B,R as V,Rn as De,Sr as Oe,T as H,Tn as ke,Un as Ae,Ut as U,Vn as je,Wt as Me,Yn as Ne,Yt as Pe,Zt as W,_r as Fe,_t as G,bt as Ie,gr as Le,gt as Re,h as ze,hr as Be,ht as Ve,j as He,k as Ue,mt as K,nn as We,tn as Ge,vt as Ke,w as qe,wn as Je,xr as Ye,xt as Xe,yr as Ze,yt as Qe,zn as $e,zr as et}from"./index-D1nhcl1-.js";var tt=h(`columns-2`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M12 3v18`,key:`108xh3`}]]),nt=h(`pilcrow`,[[`path`,{d:`M13 4v16`,key:`8vvj80`}],[`path`,{d:`M17 4v16`,key:`7dpous`}],[`path`,{d:`M19 4H9.5a4.5 4.5 0 0 0 0 9H13`,key:`sh4n9v`}]]),rt=h(`rows-3`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M21 9H3`,key:`1338ky`}],[`path`,{d:`M21 15H3`,key:`9uk58r`}]]);function q(){return typeof window>`u`||typeof window.matchMedia!=`function`?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}function J(e){let t=window.devicePixelRatio??1;return Math.round(e*t)/t}var it=`theme.disableLineNumbers.overflow.themeType.disableFileHeader.disableVirtualizationBuffers.preferredHighlighter.useCSSClasses.useTokenTransformer.tokenizeMaxLineLength.tokenizeMaxLength.unsafeCSS.diffStyle.diffIndicators.disableBackground.expandUnchanged.collapsedContextThreshold.lineDiffType.maxLineDiffLength.expansionLineCount.lineHoverHighlight.enableTokenInteractionsOnWhitespace.enableGutterUtility.__debugPointerEvents.enableLineSelection.controlledSelection.disableErrorHandling`.split(`.`),at=[`theme`,`disableLineNumbers`,`overflow`,`themeType`,`disableFileHeader`,`disableVirtualizationBuffers`,`preferredHighlighter`,`useCSSClasses`,`useTokenTransformer`,`tokenizeMaxLineLength`,`tokenizeMaxLength`,`unsafeCSS`,`lineHoverHighlight`,`enableTokenInteractionsOnWhitespace`,`enableGutterUtility`,`__debugPointerEvents`,`enableLineSelection`,`controlledSelection`,`disableErrorHandling`],ot=[`renderCustomHeader`,`renderHeaderPrefix`,`renderHeaderMetadata`,`renderAnnotation`,`renderGutterUtility`,`onPostRender`,`onGutterUtilityClick`,`onLineClick`,`onLineNumberClick`,`onLineEnter`,`onLineLeave`,`onTokenClick`,`onTokenEnter`,`onTokenLeave`],st=[`onLineSelected`,`onLineSelectionStart`,`onLineSelectionChange`,`onLineSelectionEnd`],ct=Symbol(`CodeView.itemOptionsState`);function lt(e,t){Object.defineProperty(e,ct,{configurable:!1,enumerable:!1,value:t})}function ut(e){return e[ct]}function Y(e,t,n){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get(){return n(this)}})}var dt=120,ft=`--diffs-overflow-override`,pt=12e6,mt=1e6,ht=2e6,X=pt-ht,gt=pt-mt,Z=(()=>{let{navigator:e}=globalThis,t=e.userAgent,n=/iP(?:hone|ad|od)/.test(t),r=e.platform===`MacIntel`&&e.maxTouchPoints>1;return(n||r)&&/AppleWebKit/.test(t)&&/Safari/.test(t)&&!/(CriOS|FxiOS|EdgiOS|OPiOS)/.test(t)})(),_t=class e{static __STOP=!1;static __lastScrollPosition=0;type=`advanced`;config={overscrollSize:200,intersectionObserverMargin:0,resizeDebugging:!1};items=[];idToItem=new Map;selectedLines=null;instanceToItem=new Map;layoutDirtyIndex;pendingLayoutReset;renderOptionsRevision=0;slotCoordinator;slotSnapshot;scrollListeners=new Set;scrollHeight=0;containerHeight=-1;scrollTop=0;scrollPageOffset=0;scrollDirty=!0;scrollInteractionFixTimer;pointerEventsDisabled=!1;codeOverflowFix=!1;height=0;heightDirty=!0;windowSpecs={top:0,bottom:0};renderState={scrollTop:-1,firstIndex:-1,lastIndex:-1,stickyHeight:0,stickyTop:-1,stickyBottom:-1};itemMetricsCache=R;fileOptionsPrototype;diffOptionsPrototype;pendingScrollTarget;pendingLayoutAnchor;shouldFixContainerFocus=!1;scrollAnimation;root;resizeObserver;container=document.createElement(`div`);stickyContainer=document.createElement(`div`);stickyOffset=document.createElement(`div`);elementPool=[];elementPoolVersion=0;elementPoolTracker=new WeakMap;pendingElementPool=[];options;workerManager;isContainerManaged;constructor(e={theme:B},t,n=!1){this.options=e,this.computeMetricsCache(e.itemMetrics),this.fileOptionsPrototype=this.createFileOptionsPrototype(),this.diffOptionsPrototype=this.createDiffOptionsPrototype(),this.workerManager=t,this.isContainerManaged=n,this.stickyOffset.style.contain=`layout size`,this.stickyContainer.style.position=`sticky`,this.stickyContainer.style.width=`100%`,this.stickyContainer.style.contain=`layout style inline-size`,this.stickyContainer.style.isolation=`isolate`,this.stickyContainer.style.display=`flex`,this.stickyContainer.style.flexDirection=`column`}getLayout(){return this.options.layout??Pe}computeMetricsCache(e){return this.itemMetricsCache={hunkLineCount:e?.hunkLineCount??R.hunkLineCount,lineHeight:e?.lineHeight??R.lineHeight,diffHeaderHeight:e?.diffHeaderHeight??R.diffHeaderHeight,hunkSeparatorHeight:e?.hunkSeparatorHeight,spacing:e?.spacing??R.spacing,paddingTop:e?.paddingTop,paddingBottom:e?.paddingBottom},this.itemMetricsCache}getSmoothScrollSettings(){return this.options.smoothScrollSettings??W}shouldDisablePointerEvents(){return this.options.pointerEventsOnScroll!==!0}shouldValidateItemHeights(){return Ge&&this.options.__devOnlyValidateItemHeights===!0}validateRenderedItemHeight(e){if(!this.shouldValidateItemHeights()||e.element==null)return;let t=e.instance.getAdvancedStickySpecs();if(t==null)return;let n=t.height,r=e.element.getBoundingClientRect().height;n!==r&&console.error(`CodeView: reconciled item height does not match DOM height`,{id:e.item.id,type:e.type,index:e.index,version:e.version,expectedHeight:n,actualHeight:r,delta:r-n,stickyTopOffset:t.topOffset,virtualizedHeight:e.instance.getVirtualizedHeight(),top:e.top,scrollTop:this.getScrollTop(),windowSpecs:{...this.windowSpecs},element:e.element,instance:e.instance})}validateStickyContainerHeight(){if(!this.shouldValidateItemHeights())return;let{firstIndex:e,lastIndex:t,stickyHeight:n,stickyTop:r,stickyBottom:i}=this.renderState;if(e===-1||t===-1)return;let a=this.stickyContainer.getBoundingClientRect().height;Math.abs(a-n)<1||console.error(`CodeView: sticky container height does not match computed layout`,{computedStickyHeight:n,actualStickyHeight:a,delta:a-n,stickyTop:r,stickyBottom:i,firstIndex:e,lastIndex:t,firstStickySpecs:this.items[e]?.instance.getAdvancedStickySpecs(),lastStickySpecs:this.items[t]?.instance.getAdvancedStickySpecs(),scrollTop:this.getScrollTop(),scrollPageOffset:this.scrollPageOffset,windowSpecs:{...this.windowSpecs},stickyContainer:this.stickyContainer})}clearScrollInteractionTimer(){this.scrollInteractionFixTimer!=null&&(clearTimeout(this.scrollInteractionFixTimer),this.scrollInteractionFixTimer=void 0)}suspendScrollInteractions(){this.clearScrollInteractionTimer(),this.shouldDisablePointerEvents()&&!this.pointerEventsDisabled&&(this.stickyContainer.style.pointerEvents=`none`,this.pointerEventsDisabled=!0),Z&&!this.codeOverflowFix&&(this.stickyContainer.style.setProperty(ft,`hidden`),this.codeOverflowFix=!0),this.scrollInteractionFixTimer=setTimeout(this.restoreScrollInteractions,dt)}restoreScrollInteractions=()=>{this.clearScrollInteractionTimer(),this.pointerEventsDisabled&&=(this.stickyContainer.style.removeProperty(`pointer-events`),!1),this.codeOverflowFix&&=(this.stickyContainer.style.setProperty(ft,`auto`),!1)};syncLayout(){let{gap:e,paddingBottom:t,paddingTop:n}=this.getLayout();this.stickyContainer.style.gap=`${e}px`,this.container?.style.setProperty(`margin-top`,`${n}px`),this.container?.style.setProperty(`margin-bottom`,`${t}px`)}setup(t){if(this.root!=null)throw Error(`CodeView.setup: already setup`);this.workerManager?.subscribeToThemeChanges(this),this.root=t,this.root.style.overflowAnchor=`none`,this.root.hasAttribute(`tabindex`)||(this.root.tabIndex=-1),this.container??=document.createElement(`div`),this.container.style.contain=`layout style`,this.syncLayout(),this.container.appendChild(this.stickyOffset),this.container.appendChild(this.stickyContainer),this.root.appendChild(this.container),this.scrollDirty=!0,this.heightDirty=!0,this.resizeObserver=new ResizeObserver(this.handleResize),this.resizeObserver.observe(this.stickyContainer),this.root.addEventListener(`scroll`,this.handleScroll,{passive:!0}),this.root.addEventListener(`wheel`,this.clearPendingScroll,{passive:!0}),this.root.addEventListener(`touchstart`,this.clearPendingScroll,{passive:!0}),this.root.addEventListener(`pointerdown`,this.clearPendingScroll,{passive:!0}),this.root.addEventListener(`keydown`,this.clearPendingScroll,{passive:!0}),this.resizeObserver.observe(this.root),this.render(!0),window.__INSTANCE=this,window.__TOGGLE=()=>{e.__STOP?(e.__STOP=!1,this.scrollTo({type:`position`,position:e.__lastScrollPosition,behavior:`instant`})):(e.__lastScrollPosition=this.getScrollTop(),e.__STOP=!0)}}reset(){this.restoreScrollInteractions(),this.cleanAllRenderedItems(),this.selectedLines=null,this.items.length=0,this.idToItem.clear(),this.instanceToItem.clear(),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,this.stickyContainer.textContent=``,this.stickyOffset.style.height=``,this.container?.style.removeProperty(`height`),this.containerHeight=-1,this.windowSpecs={top:0,bottom:0},this.pendingLayoutAnchor=void 0,this.shouldFixContainerFocus=!1,this.height=0,this.scrollTop=0,this.scrollPageOffset=0,this.scrollHeight=0,this.scrollDirty=!0,this.heightDirty=!0,this.resetRenderState(),this.isContainerManaged||this.flushSlotCoordinator()}cleanUp(){this.reset(),this.clearElementPool(),this.restoreScrollInteractions(),this.workerManager?.unsubscribeToThemeChanges(this),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.root?.removeEventListener(`scroll`,this.handleScroll),this.root?.removeEventListener(`wheel`,this.clearPendingScroll),this.root?.removeEventListener(`touchstart`,this.clearPendingScroll),this.root?.removeEventListener(`pointerdown`,this.clearPendingScroll),this.root?.removeEventListener(`keydown`,this.clearPendingScroll),this.root?.style.removeProperty(`overflow-anchor`),this.container?.remove(),this.stickyOffset.remove(),this.stickyContainer.remove(),this.stickyContainer.textContent=``,this.root=void 0,this.container=void 0}cleanAllRenderedItems(){if(this.renderState.firstIndex!==-1)for(let e=this.renderState.firstIndex;e<=this.renderState.lastIndex;e++){let t=this.items[e];if(t==null)throw Error(`CodeView.cleanAllRenderedItems: Item does not exist at index: ${e}`);this.releaseRenderedItem(t)}}primeScrollTarget(e){e.type!==`position`&&this.idToItem.get(e.id)?.instance.primeHighlightCache()}getElementPoolLimit(){let e=this.getHeight()+this.config.overscrollSize*2,{diffHeaderHeight:t}=this.itemMetricsCache;return Math.max(8,Math.ceil(e/Math.max(t,10))+1)*(this.isContainerManaged?2:1)}acquireElement(){this.promotePendingPooledElements();let e=this.elementPool.pop();for(;e!=null&&!this.isElementPoolGenerationCurrent(e);)e=this.elementPool.pop();return e??=document.createElement(We),this.markElementPoolGenerationCurrent(e),e}releaseRenderedItem(e){let{element:t}=e;t!=null&&this.renderedItemOwnsFocus(t)&&(this.shouldFixContainerFocus=!0),e.instance.cleanUp(!0),e.element=void 0,t!=null&&(t.remove(),this.cleanElement(t),this.queueElementForPool(t))}renderedItemOwnsFocus(e){let{activeElement:t}=document;return t===e||e.contains(t)||e.shadowRoot?.activeElement!=null}fixContainerFocus(){this.shouldFixContainerFocus&&(this.shouldFixContainerFocus=!1,this.root?.focus({preventScroll:!0}))}cleanElement(e){let{shadowRoot:t}=e;if(t!=null)for(let e of Array.from(t.children))St(e)||e.remove();this.isContainerManaged||e.replaceChildren()}queueElementForPool(e){let t=this.getElementPoolLimit();!this.isElementPoolGenerationCurrent(e)||this.getElementPoolSize()>=t||(this.isElementClean(e)?this.elementPool.push(e):this.pendingElementPool.push(e))}promotePendingPooledElements(){if(this.pendingElementPool.length===0)return;let{pendingElementPool:e}=this;this.pendingElementPool=[];let t=this.getElementPoolLimit();for(let n of e)this.isElementPoolGenerationCurrent(n)&&this.isElementClean(n)&&this.elementPool.length<t?this.elementPool.push(n):this.isElementPoolGenerationCurrent(n)&&this.getElementPoolSize()<t&&this.pendingElementPool.push(n)}isElementClean(e){return e.childNodes.length===0}getElementPoolSize(){return this.elementPool.length+this.pendingElementPool.length}clearElementPool(){this.elementPool.length=0,this.pendingElementPool.length=0}invalidateElementPool(){this.elementPoolVersion++,this.clearElementPool()}markElementPoolGenerationCurrent(e){this.elementPoolTracker.set(e,this.elementPoolVersion)}isElementPoolGenerationCurrent(e){return this.elementPoolTracker.get(e)===this.elementPoolVersion}resolveEffectiveScrollBehavior(e,t){return q()?`instant`:e.behavior===`smooth-auto`?Math.abs(t-this.getScrollTop())<=this.getHeight()*10?`smooth`:`instant`:e.behavior??`instant`}scrollTo(e){if(this.root==null)return;let t=this.normalizeScrollTarget(e);if(t==null)return;let n=this.resolveScrollTargetTop(t);n!=null&&(this.primeScrollTarget(t),this.resolveEffectiveScrollBehavior(t,n)===`smooth`?this.scrollAnimation??={position:this.getScrollTop(),velocity:0,lastTimestamp:performance.now()}:this.scrollAnimation=void 0,this.suspendScrollInteractions(),this.pendingLayoutAnchor=void 0,this.pendingScrollTarget=t,this.render())}setSelectedLines(e,t){this.applySelectedLines(e,t)}getSelectedLines(){return this.selectedLines}clearSelectedLines(e){this.applySelectedLines(null,e)}getItem(e){return this.idToItem.get(e)?.item}updateItem(e){let t=this.idToItem.get(e.id);return t==null?(console.error(`CodeView.updateItem: unknown item id "${e.id}"`),!1):this.syncItemRecord(t,e)?(this.markItemLayoutDirty(t),this.scrollDirty=!0,this.render(),this.syncSelection(),!0):!1}updateItemId(e,t){if(e===t)return!0;let n=this.idToItem.get(e);return n==null?(console.error(`CodeView.updateItemId: unknown item id "${e}"`),!1):this.idToItem.has(t)?(console.error(`CodeView.updateItemId: duplicate item id "${t}"`),!1):(this.idToItem.delete(e),n.item.id=t,this.idToItem.set(t,n),this.updateItemOptionsId(n.instance.options,t),this.selectedLines?.id===e&&(this.selectedLines={...this.selectedLines,id:t},this.options.onSelectedLinesChange?.(this.selectedLines)),this.renamePendingScrollTarget(e,t),this.renamePendingLayoutAnchor(e,t),this.render(),!0)}addItem(e){this.addItems([e]),this.syncSelection()}addItems(e){this.appendItemsInternal(e),this.syncSelection()}setItems(e){e.length===0?this.reset():this.items.length===0?this.appendItemsInternal(e):this.tryAppendItems(e)||this.reconcileItems(e),this.syncSelection()}appendItemsInternal(e,t=!0){if(e.length===0)return;let n=this.getLayout(),r=this.items.length===0?0:this.scrollHeight+n.gap,i=r;for(let t=0;t<e.length;t++){let i=e[t];if(i==null)throw Error(`CodeView.appendItemsInternal: missing input item`);if(this.idToItem.has(i.id))throw Error(`CodeView.addItem: duplicate id "${i.id}"`);let a=this.createItem(i,this.items.length,r);this.items.push(a),this.idToItem.set(a.item.id,a),this.instanceToItem.set(a.instance,a),a.height=vt(a),r+=a.height+n.gap}this.scrollHeight=r-n.gap,this.scrollDirty=!0,t&&(this.canSkipRenderForAppend(i)?this.syncContainerHeight():this.render())}canSkipRenderForAppend(e){return this.container!=null&&this.renderState.firstIndex!==-1&&this.pendingScrollTarget==null&&this.scrollAnimation==null&&this.layoutDirtyIndex==null&&e>this.windowSpecs.bottom}onThemeChange(){this.invalidateElementPool()}setOptions(e){if(e==null)return;this.capturePendingLayoutAnchor();let{options:t}=this,n=this.getLayout(),{itemMetricsCache:r}=this;yt(t,e)&&this.invalidateElementPool(),this.options=e;let i=this.computeMetricsCache(e.itemMetrics),a=!Ie(r,i),o=!Ie(n,this.getLayout());o&&this.syncLayout();let s=a||bt(t,e);if(s){let n=this.pendingLayoutReset;this.pendingLayoutReset={metrics:a?i:n?.metrics,resetFileLayoutCache:!0,resetDiffLayoutCache:!0,includeEstimatedDiffHeights:n?.includeEstimatedDiffHeights===!0||a||xt(t,e)}}(o||s)&&(this.markLayoutDirtyFromIndex(0),this.scrollDirty=!0),Qe(t,e)||this.renderOptionsRevision++,!this.isContainerManaged&&this.items.length>0&&this.render()}capturePendingLayoutAnchor(){this.root==null||this.items.length===0||this.pendingScrollTarget!=null||(this.pendingLayoutAnchor=this.getScrollAnchor(this.getScrollTop()))}render(t=!1){e.__STOP||(t?(G(this.computeRenderRangeAndEmit),this.computeRenderRangeAndEmit()):Ke(this.computeRenderRangeAndEmit))}instanceChanged(e,t){let n=this.instanceToItem.get(e);if(n==null)throw Error(`CodeView.instanceChanged: An instance has changed that is not registered`);t&&this.markItemLayoutDirty(n),this.render()}getWindowSpecs(){return this.windowSpecs}getContainerElement(){return this.root}getRenderedItems(){let{firstIndex:e,lastIndex:t}=this.renderState;if(e===-1||t===-1||t<e)return[];let n=[];for(let r=e;r<=t;r++){let e=this.items[r];e?.element!=null&&(e.type===`diff`?n.push({id:e.item.id,type:`diff`,item:e.item,version:e.version,element:e.element,instance:e.instance}):n.push({id:e.item.id,type:`file`,item:e.item,version:e.version,element:e.element,instance:e.instance}))}return n}setSlotCoordinator(e){return e===this.slotCoordinator?!1:(this.slotCoordinator=e,this.slotSnapshot=void 0,!0)}getSlotSnapshot(e){return Ot(this.getRenderedItems(),e)}subscribeToScroll(e){return this.scrollListeners.add(e),()=>{this.scrollListeners.delete(e)}}getLocalTopForInstance(e){let t=this.instanceToItem.get(e);if(t==null)throw Error(`CodeView.getLocalTopForInstance: unknown virtualized instance`);return t.top}getTopForItem(e){let t=this.idToItem.get(e);if(t!=null)return t.top+this.getLayout().paddingTop}createItem(e,t,n){let{itemMetricsCache:r}=this;if(e.type===`diff`){let i=new V(this.createDiffOptions(e.id),this,r,this.workerManager,this.isContainerManaged);return{type:`diff`,item:e,version:e.version,index:t,top:n,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:i}}let i=new le(this.createFileOptions(e.id),this,r,this.workerManager,this.isContainerManaged);return{type:`file`,item:e,version:e.version,index:t,top:n,height:0,element:void 0,renderedOptionsRevision:this.renderOptionsRevision,instance:i}}applySelectedLines(e,t){let{selectedLines:n}=this;e==null&&n==null||e!=null&&n?.id===e.id&&Re(n.range,e.range)||(n!=null&&n.id!==e?.id&&this.idToItem.get(n.id)?.instance.setSelectedLines(null,{notify:!1}),this.selectedLines=e,this.idToItem.get(e?.id??``)?.instance.setSelectedLines(e?.range??null,t))}syncSelection(){if(this.selectedLines==null)return;let e=this.idToItem.get(this.selectedLines.id);if(e==null){this.selectedLines=null;return}e.instance.setSelectedLines(this.selectedLines.range,{notify:!1})}renamePendingScrollTarget(e,t){let{pendingScrollTarget:n}=this;n==null||n.type===`position`||n.id!==e||(this.pendingScrollTarget={...n,id:t})}renamePendingLayoutAnchor(e,t){this.pendingLayoutAnchor?.id===e&&(this.pendingLayoutAnchor.id=t)}createFileOptionsPrototype(){let e={};for(let t of at)Y(e,t,()=>this.options[t]);Y(e,`stickyHeader`,()=>this.options.stickyHeaders),Y(e,`collapsed`,e=>this.getItemOptions(ut(e),`file`)?.item.collapsed===!0);for(let t of ot)this.defineItemSharedCallback(e,`file`,t);for(let t of st)this.defineItemSelectionCallback(e,`file`,t);return e}createDiffOptionsPrototype(){let e={};for(let t of it)Y(e,t,()=>this.options[t]);Y(e,`stickyHeader`,()=>this.options.stickyHeaders),Y(e,`hunkSeparators`,()=>this.options.hunkSeparators),Y(e,`collapsed`,e=>this.getItemOptions(ut(e),`diff`)?.item.collapsed===!0);for(let t of ot)this.defineItemSharedCallback(e,`diff`,t);for(let t of st)this.defineItemSelectionCallback(e,`diff`,t);return e}createFileOptions(e){let t=Object.create(this.fileOptionsPrototype);return lt(t,{id:e}),t}createDiffOptions(e){let t=Object.create(this.diffOptionsPrototype);return lt(t,{id:e}),t}updateItemOptionsId(e,t){ut(e).id=t}getItemOptions(e,t){let n=this.idToItem.get(e.id);if(!(n==null||n.type!==t))return n}defineItemSharedCallback(e,t,n){Y(e,n,e=>{if(this.options[n]==null)return;let r=ut(e),i=r.callbackCache??={},a=i[n];return a??(a=((...e)=>{let i=this.getItemOptions(r,t);if(i==null)return;let a=this.options[n];return a?.(...e,i)}),i[n]=a),a})}defineItemSelectionCallback(e,t,n){Y(e,n,e=>{if(this.options.enableLineSelection!==!0)return;let r=ut(e),i=r.callbackCache??={},a=i[n];return a??(a=(e=>{let i=this.getItemOptions(r,t);if(i==null)return;let a=e==null?null:{id:i.item.id,range:e};this.options.controlledSelection!==!0&&(e!=null||this.selectedLines?.id===i.item.id)&&this.applySelectedLines(a,{notify:!1}),this.options.onSelectedLinesChange?.(a);let o=this.options[n];return o?.(e,i)}),i[n]=a),a})}markLayoutDirtyFromIndex(e){this.layoutDirtyIndex=Math.min(this.layoutDirtyIndex??e,e)}markItemLayoutDirty(e){if(this.items[e.index]!==e)throw Error(`CodeView.markItemLayoutDirty: unknown item id "${e.item.id}"`);this.markLayoutDirtyFromIndex(e.index)}tryAppendItems(e){if(e.length<=this.items.length)return!1;for(let t=0;t<this.items.length;t++){let n=this.items[t];if(n==null)throw Error(`CodeView.tryAppendItems: missing existing item`);let r=e[t];if(r==null||n.item.id!==r.id||n.type!==r.type)return!1}for(let t=0;t<this.items.length;t++){let n=this.items[t];if(n==null)throw Error(`CodeView.tryAppendItems: missing existing item`);let r=e[t];if(r==null)throw Error(`CodeView.tryAppendItems: append candidate missing prefix item`);this.syncItemRecord(n,r)&&this.markLayoutDirtyFromIndex(t)}return this.appendItemsInternal(e.slice(this.items.length),!1),this.scrollDirty=!0,this.render(),!0}reconcileItems(e){let{items:t,idToItem:n}=this,r=new Set(t),i=[],a=new Map,o=new Map,s;for(let c=0;c<e.length;c++){let l=e[c];if(l==null)throw Error(`CodeView.reconcileItems: missing input item`);if(a.has(l.id))throw Error(`CodeView.setItems: duplicate id "${l.id}"`);let u=n.get(l.id),d=u!=null&&u.type===l.type?u:this.createItem(l,c,0);d.index=c,u!=null&&u.type===l.type?(r.delete(u),this.syncItemRecord(d,l)&&(s=Math.min(s??c,c))):s=Math.min(s??c,c),t[c]!==d&&(s=Math.min(s??c,c)),i.push(d),a.set(l.id,d),o.set(d.instance,d)}for(let e=0;e<t.length;e++){let n=t[e];if(n==null||!r.has(n))continue;this.releaseRenderedItem(n);let a=Math.max(i.length-1,0);s=Math.min(s??a,a)}s!=null&&(this.items=i,this.idToItem=a,this.instanceToItem=o,this.renderState.firstIndex>=i.length?this.resetRenderState():this.renderState.lastIndex>=i.length&&(this.renderState.lastIndex=i.length-1),this.markLayoutDirtyFromIndex(s),this.scrollDirty=!0,this.render())}syncItemRecord(e,t){if(e.type!==t.type)throw Error(`CodeView.syncItemRecord: type mismatch for id "${t.id}"`);return e.version===t.version?!1:(e.item=t,e.version=t.version,e.renderedOptionsRevision=-1,!0)}getMaxScrollTopForHeight(e){let{paddingBottom:t,paddingTop:n}=this.getLayout();return Math.max(n+e+t-this.getHeight(),0)}getMaxScrollTop(){return this.getMaxScrollTopForHeight(this.getScrollHeight())}shouldRebaseScroll(){return this.getMaxScrollTop()>gt}getPagedScrollHeight(){return this.shouldRebaseScroll()?Math.min(this.getScrollHeight(),pt):this.getScrollHeight()}getMaxPagedScrollTop(){return this.getMaxScrollTopForHeight(this.getPagedScrollHeight())}clampPagedScrollTop(e){let t=this.getMaxPagedScrollTop();return Math.max(0,Math.min(e,t))}clampScrollTop(e){let t=this.getMaxScrollTop();return Math.max(0,Math.min(e,t))}getMaxScrollPageOffset(){return Math.max(this.getMaxScrollTop()-this.getMaxPagedScrollTop(),0)}clampScrollPageOffset(e){let t=this.getMaxScrollPageOffset();return Math.max(0,Math.min(e,t))}resolveScrollPageWindow(e,t){let n=J(this.clampPagedScrollTop(t)),r=this.clampScrollPageOffset(e-n);return n=J(this.clampPagedScrollTop(e-r)),r=this.clampScrollPageOffset(e-n),{pagedScrollTop:n,scrollPageOffset:r}}resolvePagedScrollPosition(e){if(!this.shouldRebaseScroll())return{pagedScrollTop:this.clampPagedScrollTop(e),scrollPageOffset:0};let t=this.clampScrollPageOffset(this.scrollPageOffset),n=e-t,r=this.getMaxPagedScrollTop(),i=this.getMaxScrollPageOffset(),a=n>gt&&t<i,o=n<mt&&t>0;return n<0||n>r||a||o?this.resolveScrollPageWindow(e,o?Math.min(X,r):ht):{pagedScrollTop:J(this.clampPagedScrollTop(n)),scrollPageOffset:t}}needsScrollPageUpdate(e){let t=J(this.clampScrollTop(e)),{scrollPageOffset:n}=this.resolvePagedScrollPosition(t);return n!==this.scrollPageOffset}getPagedLayoutTop(e){return this.shouldRebaseScroll()?Math.max(e-this.scrollPageOffset,0):e}getStickyHeaderOffset(){return this.options.stickyHeaders===!0&&this.options.disableFileHeader!==!0?this.itemMetricsCache.diffHeaderHeight:0}getScrollTargetRect(e){let t=this.idToItem.get(e.id);if(t==null){console.warn(`CodeView.scrollTo: unknown item id "${e.id}"`);return}if(e.type===`item`)return{top:t.top,height:t.height};if(e.type===`range`){let n=this.getRangeScrollPosition(t,e);if(n==null){console.warn(`CodeView.scrollTo: unable to resolve range ${Ct(e.range)} for item "${e.id}"`);return}return{top:t.top+n.top,height:n.height}}let n=this.getLineScrollPosition(t,e);if(n==null){console.warn(`CodeView.scrollTo: unable to resolve line ${e.lineNumber} for item "${e.id}"`);return}return{top:t.top+n.top,height:n.height}}normalizeScrollTarget(e){if(e.type===`position`||e.align!==`nearest`)return e;let t=this.getScrollTargetRect(e);if(t==null)return;let n=e.offset??0,r=this.getLayout().paddingTop+t.top,i=r+t.height,a=this.getScrollTop(),o=a+(e.type===`line`||e.type===`range`?this.getStickyHeaderOffset():0),s=a+this.getHeight();if(!(r-n<=o&&i+n>=s)){if(r-n<o)return{...e,align:`start`};if(i+n>s)return{...e,align:`end`}}}resolveScrollTargetTop(e){if(e.type===`position`){let t=this.clampScrollTop(e.position);return t===e.position?this.clampScrollTop(e.position-this.getStickyHeaderOffset()):t}let t=this.idToItem.get(e.id);if(t==null){console.warn(`CodeView.scrollTo: unknown item id "${e.id}"`);return}if(e.type===`item`)return this.clampScrollTop(this.resolveAlignedScrollPosition(t.top,t.height,e.align,e.offset));if(e.type===`range`){let n=this.getRangeScrollPosition(t,e);if(n==null){console.warn(`CodeView.scrollTo: unable to resolve range ${Ct(e.range)} for item "${e.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(t.top+n.top,n.height,e.align,e.offset,this.getStickyHeaderOffset()))}let n=this.getLineScrollPosition(t,e);if(n==null){console.warn(`CodeView.scrollTo: unable to resolve line ${e.lineNumber} for item "${e.id}"`);return}return this.clampScrollTop(this.resolveAlignedScrollPosition(t.top+n.top,n.height,e.align,e.offset,this.getStickyHeaderOffset()))}resolveAlignedScrollPosition(e,t,n,r=0,i=0){e+=this.getLayout().paddingTop;let a=this.getHeight();return n===`center`&&t+r<a?e-(a-t)/2+r:n===`end`?e-(a-t)+r:e-i-r}getLineScrollPosition(e,t){return e.type===`diff`?e.instance.getLinePosition(t.lineNumber,t.side):e.instance.getLinePosition(t.lineNumber)}getRangeScrollPosition(e,t){let{range:n}=t,r=this.getLineScrollPosition(e,{type:`line`,id:t.id,lineNumber:n.start,side:n.side}),i=this.getLineScrollPosition(e,{type:`line`,id:t.id,lineNumber:n.end,side:n.endSide??n.side});if(r==null||i==null)return;let a=r.top,o=a+r.height,s=i.top,c=s+i.height,l=Math.min(a,s);return{top:l,height:Math.max(o,c)-l}}computeTargetScrollTopForFrame(e,t){if(this.pendingScrollTarget==null)return e;let n=this.resolveScrollTargetTop(this.pendingScrollTarget);if(n==null)return e;let{scrollAnimation:r}=this;return r==null?n:this.computeSpringStep(r,n,t).position}computeSpringStep(e,t,n){let r=Math.max(0,n-e.lastTimestamp),{omega:i}=this.getSmoothScrollSettings(),a=Math.exp(-i*r),o=e.position-t,s=e.velocity+i*o;return{position:t+(o+s*r)*a,velocity:(s*(1-i*r)-i*o)*a}}advanceScrollAnimation(e,t){if(this.pendingScrollTarget==null)return;let n=this.resolveScrollTargetTop(this.pendingScrollTarget);if(n==null){this.pendingScrollTarget=void 0,this.scrollAnimation=void 0;return}let r=this.scrollAnimation;if(r==null)return n;r.position+=t;let{position:i,velocity:a}=this.computeSpringStep(r,n,e);r.lastTimestamp=e,r.position=i,r.velocity=a;let{positionEpsilon:o,velocityEpsilon:s}=this.getSmoothScrollSettings();return Math.abs(n-i)<=o&&Math.abs(a)<=s?(r.position=n,r.velocity=0,this.scrollAnimation=void 0,n):r.position}computeRenderRangeAndEmit=(t=performance.now())=>{if(e.__STOP||this.container==null)return;let n=this.getHeight(),r=this.getScrollTop(),i=r,a=this.pendingLayoutAnchor!=null,o=this.getScrollAnchor(i);if(this.layoutDirtyIndex!=null&&(this.recomputeLayout(this.layoutDirtyIndex,this.pendingLayoutReset),this.layoutDirtyIndex=void 0,this.pendingLayoutReset=void 0,a=!0),a&&o!=null){let e=this.resolveAnchoredScrollTop(o);if(e!=null){let t=e-i;i=e,this.scrollAnimation!=null&&(this.scrollAnimation.position+=t)}}a&&(i=this.clampScrollTop(i),this.syncContainerHeight());let s=this.computeTargetScrollTopForFrame(i,t),c=!a&&(this.renderState.scrollTop===-1||Math.abs(s-this.renderState.scrollTop)>n+this.config.overscrollSize*2);c&&(o=void 0),this.windowSpecs=Ve({scrollTop:s,height:n,scrollHeight:this.getScrollHeight(),fitPerfectly:c,fitPerfectlyOverscroll:this.getFitPerfectlyOverscroll(),overscrollSize:this.config.overscrollSize});let l=r;(this.pendingScrollTarget!=null&&s!==l||this.needsScrollPageUpdate(s))&&(this.applyScrollFix(s,l,this.windowSpecs),l=s);let{top:u,bottom:d}=this.windowSpecs,{firstIndex:f,lastIndex:p}=this.renderState;if(f>=0)for(let e=f;e<=p;e++){let t=this.items[e];if(t==null)throw Error(`CodeView.computeRenderRangeAndEmit: No item at index: ${e}`);t.top>u-t.height&&t.top<=d||this.releaseRenderedItem(t)}let m,h=new Set,g=this.findFirstVisibleIndex(u),_=this.findLastVisibleIndex(d);for(let e=g;e<=_;e++){let t=this.items[e];if(t==null)throw Error(`CodeView.computeRenderRangeAndEmit: missing item`);let{instance:n}=t;t.element==null?(t.element=this.acquireElement(),Et(this.stickyContainer,t.element,m),n.virtualizedSetup(),Tt(t,t.element)&&(t.renderedOptionsRevision=this.renderOptionsRevision,h.add(t)),m=t.element):(Et(this.stickyContainer,t.element,m),Tt(t,void 0,t.renderedOptionsRevision!==this.renderOptionsRevision)&&(t.renderedOptionsRevision=this.renderOptionsRevision,h.add(t)),m=t.element)}this.renderState.firstIndex=g<=_?g:-1,this.renderState.lastIndex=_,this.flushSlotCoordinator(),this.reconcileRenderedItems(h),this.syncContainerHeight(),this.updateStickyPositioning();let v=o==null?void 0:this.resolveAnchoredScrollTop(o);o===this.pendingLayoutAnchor&&(this.pendingLayoutAnchor=void 0);let y=v==null?0:v-i,b=s,x=!1;if(this.pendingScrollTarget!=null){let e=this.advanceScrollAnimation(t,y);e==null?b=i:(b=e,x=!0)}else b=v??s;b!==l&&(this.applyScrollFix(b,l,this.windowSpecs),l=b),x&&this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0),this.renderState.scrollTop=J(l),this.flushManagers(h),this.validateStickyContainerHeight(),this.fixContainerFocus(),(c||this.scrollAnimation!=null)&&this.render()};flushManagers(e){for(let t of e)t.instance.flushManagers()}syncContainerHeight(){let e=this.getPagedScrollHeight();this.container==null||this.containerHeight===e||(this.container.style.height=`${e}px`,this.containerHeight=e)}getStickyBounds(e){let{firstIndex:t,lastIndex:n}=e==null?this.renderState:{firstIndex:this.findFirstVisibleIndex(e.top),lastIndex:this.findLastVisibleIndex(e.bottom)};if(t===-1||n===-1||t>n)return;let r=this.items[t]?.instance.getAdvancedStickySpecs(e),i=this.items[n]?.instance.getAdvancedStickySpecs(e);if(!(r==null||i==null))return{stickyTop:this.getPagedLayoutTop(Math.max(r.topOffset,0)),stickyBottom:this.getPagedLayoutTop(i.topOffset+i.height)}}applyStickyPositioning({stickyTop:e,stickyBottom:t}){let n=this.getHeight(),{itemMetricsCache:r}=this,i=t-e;this.renderState.stickyHeight=i,this.renderState.stickyTop=e,this.renderState.stickyBottom=t,this.stickyOffset.style.height=`${e}px`;let a=(Math.random()*r.lineHeight>>0)*-1,o=-Math.max(i+a,0)+n;this.stickyContainer.style.top=`${o}px`,this.stickyContainer.style.bottom=`${o+r.diffHeaderHeight}px`}syncPagedScrollScaffolding(e){this.syncContainerHeight();let t=this.getStickyBounds(e);t!=null&&this.applyStickyPositioning(t)}reconcileRenderedItems(e){let{firstIndex:t,lastIndex:n}=this.renderState;if(t===-1)return;let r=-1,i=!1;for(let a=t;a<this.items.length&&!(!i&&a>n);a++){let t=this.items[a];if(t==null)throw Error(`CodeView.reconcileRenderedItems: Invalid item`);r===-1?r=t.top:t.top!==r&&(t.top=r,t.instance.syncVirtualizedTop(),i=!0),(e==null?a<=n:e.has(t))&&(t.instance.reconcileHeights()&&(i=!0,t.height=t.instance.getVirtualizedHeight()),this.validateRenderedItemHeight(t)),r+=t.instance.getVirtualizedHeight(),a<this.items.length-1&&(r+=this.getLayout().gap)}i&&r!=null&&(this.scrollDirty=!0,this.scrollHeight=r)}updateStickyPositioning(){let e=this.getStickyBounds();if(e==null)return;let{stickyTop:t,stickyBottom:n}=e;n-t===this.renderState.stickyHeight&&t===this.renderState.stickyTop&&n===this.renderState.stickyBottom||this.applyStickyPositioning(e)}handleScroll=()=>{e.__STOP||(this.suspendScrollInteractions(),this.scrollDirty=!0,this.notifyScroll(),this.render())};clearPendingScroll=()=>{this.pendingScrollTarget=void 0,this.pendingLayoutAnchor=void 0,this.scrollAnimation=void 0};handleResize=e=>{for(let t of e)if(t.target===this.stickyContainer){if(t.borderBoxSize[0].blockSize!==this.renderState.stickyHeight){let e=this.getScrollTop(),t=this.getScrollAnchor(e);this.reconcileRenderedItems(),this.updateStickyPositioning();let n=t==null?void 0:this.resolveAnchoredScrollTop(t);if(n!=null){let t=n-e;this.applyScrollFix(n,e,this.windowSpecs),this.scrollAnimation!=null&&(this.scrollAnimation.position+=t)}this.pendingScrollTarget!=null&&this.isPendingTargetSettled(this.pendingScrollTarget)&&(this.pendingScrollTarget=void 0,this.scrollAnimation=void 0)}}else this.scrollDirty=!0,this.heightDirty=!0,this.render()};getScrollAnchorViewportTop(e,t){return e<t?t+this.getStickyHeaderOffset():t}getScrollAnchor(e){if(this.pendingLayoutAnchor!=null)return this.pendingLayoutAnchor;let{firstIndex:t,lastIndex:n,stickyTop:r,stickyBottom:i}=this.renderState;if(t===-1||n===-1)return;let a=this.getHeight();if(!(r===-1||i===-1))for(let r=t;r<=n;r++){let t=this.items[r];if(t==null)continue;let n=this.getLayout().paddingTop+t.top;if(n+t.height<=e)continue;if(n>=e+a)break;if(n>=e)return{type:`item`,id:t.item.id,viewportOffset:n-e};let i=this.getScrollAnchorViewportTop(n,e)-n,o=t.instance.getNumericScrollAnchor(i);if(o!=null){let r=n+o.top;return{type:`line`,id:t.item.id,lineNumber:o.lineNumber,side:o.side,viewportOffset:r-e}}}}resolveAnchoredScrollTop(e){let t=this.idToItem.get(e.id);if(t==null)return;let{paddingTop:n}=this.getLayout();if(e.type===`item`){let r=n+t.top;return this.clampScrollTop(r-e.viewportOffset)}let r=t.type===`diff`?t.instance.getLinePosition(e.lineNumber,e.side):t.instance.getLinePosition(e.lineNumber);if(r==null)return;let i=n+t.top+r.top;return this.clampScrollTop(i-e.viewportOffset)}applyScrollFix(e,t,n){if(this.root==null)return;let r=J(this.clampScrollTop(e)),i=J(t),{scrollPageOffset:a}=this,o=J(this.clampPagedScrollTop(i-a)),{pagedScrollTop:s,scrollPageOffset:c}=this.resolvePagedScrollPosition(r),l=s,u=a!==c;r===this.renderState.scrollTop&&r===i&&l===o&&!u||(this.suspendScrollInteractions(),(l!==o||u)&&(this.scrollPageOffset=c,this.syncPagedScrollScaffolding(n)),l!==o&&this.root.scrollTo({top:l,behavior:`instant`}),this.renderState.scrollTop=r,this.scrollTop=r,this.scrollDirty=!1)}isPendingTargetSettled(e){let t=this.resolveScrollTargetTop(e);return t==null?!0:J(this.getScrollTop())===J(t)}getScrollTop(){if(!this.scrollDirty)return this.scrollTop;this.scrollDirty=!1;let e=this.root?.scrollTop??0;return this.scrollTop=this.clampScrollTop(e+this.scrollPageOffset),this.scrollTop}getHeight(){return this.heightDirty?(this.heightDirty=!1,this.height=this.root?.getBoundingClientRect().height??0,this.height):this.height}getScrollHeight(){return this.scrollHeight}flushSlotCoordinator(){if(this.slotCoordinator==null)return;let{onSnapshotChange:e}=this.slotCoordinator,t=Ot(this.getRenderedItems(),this.slotCoordinator);kt(this.slotSnapshot,t)||(this.slotSnapshot=t,e(t))}notifyScroll(){if(this.scrollListeners.size===0)return;let e=this.getScrollTop();for(let t of this.scrollListeners)t(e,this)}findFirstVisibleIndex(e){let t=0,n=this.items.length-1,r=this.items.length;for(;t<=n;){let i=t+n>>1,a=this.items[i];if(a==null)throw Error(`CodeView.findFirstVisibleIndex: invalid item index`);a.top+a.height>e?(r=i,n=i-1):t=i+1}return r}findLastVisibleIndex(e){let t=0,n=this.items.length-1,r=-1;for(;t<=n;){let i=t+n>>1,a=this.items[i];if(a==null)throw Error(`CodeView.findLastVisibleIndex: invalid item index`);a.top<=e?(r=i,t=i+1):n=i-1}return r}recomputeLayout(e=0,t){if(this.items.length===0){this.scrollHeight=0;return}let n=this.getLayout(),r=0;if(e>0){let t=this.items[e-1];if(t==null)throw Error(`CodeView.recomputeLayout: invalid dirty index`);r=t.top+t.height+n.gap}for(let i=e;i<this.items.length;i++){let e=this.items[i];if(e==null)throw Error(`CodeView.recomputeLayout: invalid item index`);e.top=r,e.type===`diff`?e.height=e.instance.prepareCodeViewItem(e.item.fileDiff,r,t,e.item.annotations??[]):e.height=e.instance.prepareCodeViewItem(e.item.file,r,t,e.item.annotations??[]),r+=e.height,i<this.items.length-1&&(r+=n.gap)}r!==this.scrollHeight&&(this.scrollDirty=!0),this.scrollHeight=r}resetRenderState(){this.renderState.scrollTop=-1,this.renderState.firstIndex=-1,this.renderState.lastIndex=-1,this.renderState.stickyHeight=0,this.renderState.stickyTop=-1,this.renderState.stickyBottom=-1}getFitPerfectlyOverscroll(){return this.getLayout().gap+this.itemMetricsCache.diffHeaderHeight}};function vt(e){return e.instance.cleanUp(!0),e.type===`diff`?e.instance.prepareCodeViewItem(e.item.fileDiff,e.top,void 0,e.item.annotations??[]):e.instance.prepareCodeViewItem(e.item.file,e.top,void 0,e.item.annotations??[])}function yt(e,t){return!L(e.theme??B,t.theme??B)||(e.themeType??`system`)!==(t.themeType??`system`)||e.unsafeCSS!==t.unsafeCSS}function bt(e,t){return(e.overflow??`scroll`)!==(t.overflow??`scroll`)||(e.disableLineNumbers??!1)!==(t.disableLineNumbers??!1)||(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||e.unsafeCSS!==t.unsafeCSS||(e.diffStyle??`split`)!==(t.diffStyle??`split`)||(e.diffIndicators??`bars`)!==(t.diffIndicators??`bars`)||(e.hunkSeparators??`line-info`)!==(t.hunkSeparators??`line-info`)||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)}function xt(e,t){return(e.disableFileHeader??!1)!==(t.disableFileHeader??!1)||(e.hunkSeparators??`line-info`)!==(t.hunkSeparators??`line-info`)||(e.expandUnchanged??!1)!==(t.expandUnchanged??!1)||(e.collapsedContextThreshold??1)!==(t.collapsedContextThreshold??1)}function St(e){return e instanceof SVGElement?!0:K(e)&&(e.hasAttribute(`data-core-css`)||e.hasAttribute(`data-theme-css`)||e.hasAttribute(`data-unsafe-css`))}function Ct(e){let t=wt(e.start,e.side),n=wt(e.end,e.endSide??e.side);return t===n?t:`${t}-${n}`}function wt(e,t){return t==null?`${e}`:`${t===`deletions`?`D`:`A`}${e}`}function Tt(e,t,n=!1){return e.type===`diff`?e.instance.render({deferManagers:!0,fileContainer:t,fileDiff:e.item.fileDiff,forceRender:n,lineAnnotations:e.item.annotations??[]}):e.instance.render({deferManagers:!0,fileContainer:t,file:e.item.file,forceRender:n,lineAnnotations:e.item.annotations??[]})}function Et(e,t,n){if(n==null){e.firstChild!==t&&e.prepend(t);return}n.nextSibling!==t&&n.after(t)}function Dt(e){return(e.annotations?.length??0)>0}function Ot(e,{hasHeaderRenderers:t,hasAnnotationRenderer:n,hasGutterRenderer:r}){if(e.length===0)return;if(t||r)return e;if(!n)return;let i=[];for(let t of e)Dt(t.item)&&i.push(t);return i.length>0?i:void 0}function kt(e,t){if(e==null||t==null)return e===t;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],i=t[n];if(r==null||i==null||r.id!==i.id||r.type!==i.type||r.element!==i.element||r.version!==i.version)return!1}return!0}function At(e,t){if(e==null||t==null)return e===t;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],i=t[n];if(r==null||i==null||r.id!==i.id||r.type!==i.type||r.element!==i.element||r.version!==i.version)return!1}return!0}var Q=S(v(),1),$=c(),jt=S(_(),1),Mt=typeof window>`u`?Q.useEffect:Q.useLayoutEffect;function Nt(e){return{instance:void 0,items:void 0,controlled:e,managedOptions:void 0,disableFlushSync:!1,slotCoordinator:void 0}}function Pt(e,t){let{className:n,containerRef:r,disableWorkerPool:i=!1,initialItems:a,items:o,onScroll:s,onSelectedLinesChange:c,options:l,renderAnnotation:u,renderCustomHeader:d,renderGutterUtility:f,renderHeaderMetadata:p,renderHeaderPrefix:m,selectedLines:h,style:g}=e,_=o!==void 0,v=(0,Q.useContext)(Xe),y=(0,Q.useRef)(Nt(_)),b=d!=null,x=u!=null,S=f!=null,C=b||m!=null||p!=null,w=C||x||S,T=U(e=>{c?.(e)}),E=h!==void 0,D=(0,Q.useMemo)(()=>Bt({options:l,hasCustomHeader:b,hasGutterRenderer:S,onSelectedLinesChange:c==null?void 0:T,controlledSelection:E}),[l,b,S,c,T,E]),[O]=(0,Q.useState)(()=>zt()),[,ee]=(0,Q.useState)({}),te=U(e=>{y.current.instance!=null&&(e==null||e!==y.current.instance.getContainerElement())&&(y.current.instance.cleanUp(),O.publish(void 0),y.current=Nt(_)),e!=null&&e!==y.current.instance?.getContainerElement()&&(y.current.instance=new _t(D,i?void 0:v,!0),y.current.instance.setup(e)),typeof r==`function`?r(e):r!=null&&(r.current=e)}),k=U(e=>{y.current.disableFlushSync?O.publish(e):(0,jt.flushSync)(()=>{O.publish(e)})}),A=(0,Q.useMemo)(()=>{if(!(!C&&!x&&!S))return{hasHeaderRenderers:C,hasAnnotationRenderer:x,hasGutterRenderer:S,onSnapshotChange:k}},[k,x,S,C]);return Mt(()=>s==null?void 0:y.current.instance?.subscribeToScroll(s)),Mt(()=>{let{instance:e,controlled:t,items:n,managedOptions:r,slotCoordinator:i}=y.current;if(e!=null)try{y.current.disableFlushSync=!0;let s=!1;if(Qe(D,r)||(y.current.managedOptions=D,e.setOptions(D),s=!0),t!==_){console.error(`CodeView: cannot switch between controlled and uncontrolled modes. Remount with a new key instead.`);return}if(_)o!==n&&(Lt(n,o)?y.current.items=o:It(n,o)?(y.current.items=o,e.addItems(o.slice(n.length))):(y.current.items=o,e.setItems(o),s=!0));else if(n==null){let t=a??[];y.current.items=t,t.length>0&&(e.setItems(t),s=!0)}h!==void 0&&e.setSelectedLines(h,{notify:!1});let c=e.setSlotCoordinator(A),l=!1;A!==i&&((A==null||i==null)&&(l=!0),y.current.slotCoordinator=A),(s||c)&&e.render(!0),c&&A==null&&O.publish(void 0),l&&ee({})}finally{y.current.disableFlushSync=!1}}),(0,Q.useImperativeHandle)(t,()=>({addItems(e){let{controlled:t,instance:n}=y.current;Rt(t,`addItems`),n==null?console.error(`CodeView.addItems: no valid instance to append items with`,e):n.addItems(e)},getItem(e){let{instance:t}=y.current;if(t==null){console.error(`CodeView.getItem: no valid instance exists`,e);return}else return t.getItem(e)},updateItem(e){let{controlled:t,instance:n}=y.current;return Rt(t,`updateItem`),n==null?(console.error(`CodeView.updateItem: no valid instance to update item with`,e),!1):n.updateItem(e)},updateItemId(e,t){let{controlled:n,instance:r}=y.current;return Rt(n,`updateItemId`),r==null?(console.error(`CodeView.updateItemId: no valid instance to update item id with`,e,t),!1):r.updateItemId(e,t)},scrollTo(e){let{instance:t}=y.current;t==null?console.error(`CodeView.scrollTo: no valid instance to scroll with`,e):t.scrollTo(e)},setSelectedLines(e){let{instance:t}=y.current;t==null?console.error(`CodeView.setSelectedLines: no valid instance to update selection with`,e):(t.setSelectedLines(e,{notify:!1}),T(e))},getSelectedLines(){let{instance:e}=y.current;return e==null?(console.error(`CodeView.getSelectedLines: no valid instance exists`),null):e.getSelectedLines()},clearSelectedLines(){let{instance:e}=y.current;e==null?console.error(`CodeView.clearSelectedLines: no valid instance to update selection with`):(e.clearSelectedLines({notify:!1}),T(null))},getInstance(){return y.current.instance}}),[T]),(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{ref:te,className:n,style:g}),w&&(0,$.jsx)(Vt,{managedContentStore:O,renderCustomHeader:d,renderHeaderPrefix:m,renderHeaderMetadata:p,renderAnnotation:u,renderGutterUtility:f})]})}var Ft=(0,Q.forwardRef)(Pt);function It(e,t){if(e==null||t.length<=e.length)return!1;if(e.length===0)return!0;for(let n=0;n<e.length;n++)if(t[n]!==e[n])return!1;return!0}function Lt(e,t){if(e==null||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Rt(e,t){if(e)throw Error(`CodeView.${t} cannot be used when CodeView is controlled. Use initialItems for imperative item updates.`)}function zt(){let e,t=new Set;return{getSnapshot(){return e},publish(n){if(!At(e,n)){e=n;for(let e of t)e()}},subscribe(e){return t.add(e),()=>{t.delete(e)}}}}function Bt({options:e,hasCustomHeader:t,hasGutterRenderer:n,onSelectedLinesChange:r,controlledSelection:i}){return!t&&!n&&r==null&&!i?e:(e={...e,controlledSelection:i,onSelectedLinesChange:r},t&&(e.renderCustomHeader=Ut),n&&(e.renderGutterUtility=Ut),e)}var Vt=(0,Q.memo)(function({managedContentStore:e,renderCustomHeader:t,renderHeaderPrefix:n,renderHeaderMetadata:r,renderAnnotation:i,renderGutterUtility:a}){let o=U(t=>e.subscribe(t)),s=U(()=>e.getSnapshot());return(0,Q.useSyncExternalStore)(o,s,s)?.map(e=>(0,jt.createPortal)(Ht({renderedItem:e,renderCustomHeader:t,renderHeaderPrefix:n,renderHeaderMetadata:r,renderAnnotation:i,renderGutterUtility:a}),e.element,e.id))});function Ht({renderedItem:e,renderCustomHeader:t,renderHeaderPrefix:n,renderHeaderMetadata:r,renderAnnotation:i,renderGutterUtility:a}){if(e.type===`diff`){let{item:o,instance:s}=e;return Me({fileDiff:o.fileDiff,renderCustomHeader:t==null?void 0:()=>t(o),renderHeaderPrefix:n==null?void 0:()=>n(o),renderHeaderMetadata:r==null?void 0:()=>r(o),renderAnnotation:i==null?void 0:e=>i(e,o),lineAnnotations:o.annotations,renderGutterUtility:a==null?void 0:e=>a(e,o),getHoveredLine:s.getHoveredLine})}else{let{item:o,instance:s}=e;return F({file:o.file,renderCustomHeader:t==null?void 0:()=>t(o),renderHeaderPrefix:n==null?void 0:()=>n(o),renderHeaderMetadata:r==null?void 0:()=>r(o),renderAnnotation:i==null?void 0:e=>i(e,o),lineAnnotations:o.annotations,renderGutterUtility:a==null?void 0:e=>a(e,o),getHoveredLine:s.getHoveredLine})}}function Ut(){}function Wt({threadRef:e,filePath:t,activeCwd:n,openInEditor:r}){if(e){k.getState().openFile(e,t);return}r(n?I(t,n):t)}var Gt=f();function Kt(e,t){let n=(0,Gt.c)(4),r=qe(e,t),i;return n[0]!==r.data||n[1]!==r.error||n[2]!==r.isPending?(i={data:r.data,error:r.error,isPending:r.isPending},n[0]=r.data,n[1]=r.error,n[2]=r.isPending,n[3]=i):i=n[3],i}function qt(e,t){return e.length>0&&e.every(e=>t.has(e))}function Jt(e,t){return qt(e,t)?new Set:new Set(e)}function Yt(e){return s(`flex items-center justify-between gap-2 px-4`,et&&e!==`sheet`&&e!==`embedded`?`drag-region h-[52px] border-b border-border wco:h-[env(titlebar-area-height)] wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`:`surface-subheader`)}function Xt(e){let t=(0,Gt.c)(10),n=et&&e.mode!==`sheet`&&e.mode!==`embedded`,r=e.mode===`inline`?`w-[42vw] min-w-[360px] max-w-[560px] shrink-0 border-l border-border`:`w-full`,i;t[0]===r?i=t[1]:(i=s(`flex h-full min-w-0 flex-col bg-background`,r),t[0]=r,t[1]=i);let a;t[2]!==e.header||t[3]!==e.mode||t[4]!==n?(a=n?(0,$.jsx)(`div`,{className:Yt(e.mode),children:e.header}):(0,$.jsx)(`div`,{className:Yt(e.mode),"data-surface-subheader":!0,children:e.header}),t[2]=e.header,t[3]=e.mode,t[4]=n,t[5]=a):a=t[5];let o;return t[6]!==e.children||t[7]!==i||t[8]!==a?(o=(0,$.jsxs)(`div`,{className:i,children:[a,e.children]}),t[6]=e.children,t[7]=i,t[8]=a,t[9]=o):o=t[9],o}function Zt(e){let t=(0,Gt.c)(7),n;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border/50 px-3 py-2`,children:[(0,$.jsx)(z,{className:`h-4 w-32 rounded-full`}),(0,$.jsx)(z,{className:`ml-auto h-4 w-20 rounded-full`})]}),t[0]=n):n=t[0];let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(z,{className:`h-3 w-full rounded-full`}),(0,$.jsx)(z,{className:`h-3 w-full rounded-full`}),(0,$.jsx)(z,{className:`h-3 w-10/12 rounded-full`}),(0,$.jsx)(z,{className:`h-3 w-11/12 rounded-full`}),(0,$.jsx)(z,{className:`h-3 w-9/12 rounded-full`})]}),t[1]=r):r=t[1];let i;t[2]===e.label?i=t[3]:(i=(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4 px-3 py-4`,children:[r,(0,$.jsx)(`span`,{className:`sr-only`,children:e.label})]}),t[2]=e.label,t[3]=i);let a;return t[4]!==e.label||t[5]!==i?(a=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col p-2`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden rounded-md border border-border/60 bg-card/25`,role:`status`,"aria-live":`polite`,"aria-label":e.label,children:[n,i]})}),t[4]=e.label,t[5]=i,t[6]=a):a=t[6],a}var Qt=[];function $t(e){return(e.endSide??e.side)===`deletions`?`deletions`:`additions`}function en(e,t,n){let r=$t(t),i=e.findIndex(e=>e.side===r&&e.lineNumber===t.end);return i<0?[...e,{side:r,lineNumber:t.end,metadata:{entries:[n]}}]:e.map((e,t)=>t===i?{...e,metadata:{entries:[...e.metadata.entries,n]}}:e)}function tn(e){let t=(0,Gt.c)(50),{files:n,sectionId:r,sectionTitle:i,composerDraftTarget:a,options:o,viewerRef:s,className:c,renderHeaderPrefix:l}=e,u=j(sn),d=j(on),f;t[0]===a?f=t[1]:(f=e=>e.getComposerDraft(a)?.reviewComments??Qt,t[0]=a,t[1]=f);let p=j(f),[m,h]=(0,Q.useState)(null),[g,_]=(0,Q.useState)(null),v;t[2]===n?v=t[3]:(v=new Map(n.map(an)),t[2]=n,t[3]=v);let y=v,x;if(t[4]!==g||t[5]!==n||t[6]!==p||t[7]!==r){let e;t[9]!==g||t[10]!==p||t[11]!==r?(e=e=>{let{fileDiff:t,filePath:n,fileKey:i,collapsed:a}=e,o=p.filter(e=>e.sectionId===r&&e.filePath===n&&(e.fenceLanguage??`diff`)===`diff`).reduce((e,n)=>{let r=ee(t,n);return r?en(e,r,{id:n.id,kind:`comment`,range:r,rangeLabel:n.rangeLabel,text:n.text}):e},[]),s=g?.fileKey===i?[...o,g.annotation]:o;return{id:i,type:`diff`,fileDiff:t,annotations:s,collapsed:a,version:pe(`${a?`1`:`0`}:${s.flatMap(nn).join(`:`)}`)}},t[9]=g,t[10]=p,t[11]=r,t[12]=e):e=t[12],x=n.map(e),t[4]=g,t[5]=n,t[6]=p,t[7]=r,t[8]=x}else x=t[8];let S=x,C;t[13]!==a||t[14]!==g?.annotation||t[15]!==d?(C=e=>{h(null),g?.annotation.metadata.entries.some(t=>t.id===e)?_(null):d(a,e)},t[13]=a,t[14]=g?.annotation,t[15]=d,t[16]=C):C=t[16];let w=C,T;t[17]!==u||t[18]!==a||t[19]!==g||t[20]!==y||t[21]!==r||t[22]!==i?(T=(e,t)=>{let n=g?.annotation.metadata.entries.find(t=>t.id===e),o=g?y.get(g.fileKey):void 0;if(!n||!o)return;let s=b({id:n.id,sectionId:r,sectionTitle:i,filePath:o.filePath,fileDiff:o.fileDiff,range:n.range,text:t});s&&u(a,s),h(null),_(null)},t[17]=u,t[18]=a,t[19]=g,t[20]=y,t[21]=r,t[22]=i,t[23]=T):T=t[23];let E=T,D;t[24]!==y||t[25]!==r||t[26]!==i?(D=(e,t)=>{if(!e)return;let n=t.item;if(n.type!==`diff`)return;let a=y.get(n.id);if(!a)return;let o=ce(),s=b({id:o,sectionId:r,sectionTitle:i,filePath:a.filePath,fileDiff:a.fileDiff,range:e,text:``});s&&_({fileKey:n.id,annotation:{side:$t(e),lineNumber:e.end,metadata:{entries:[{id:o,kind:`draft`,range:e,rangeLabel:s.rangeLabel,text:``}]}}})},t[24]=y,t[25]=r,t[26]=i,t[27]=D):D=t[27];let O=D,te=g!==null,k;t[28]===s?k=t[29]:(k=s?{ref:s}:{},t[28]=s,t[29]=k);let A;t[30]===c?A=t[31]:(A=c?{className:c}:{},t[30]=c,t[31]=A);let ne=!te,re=!te,M;t[32]!==O||t[33]!==o||t[34]!==re||t[35]!==ne?(M={...o,enableGutterUtility:ne,enableLineSelection:re,onLineSelectionEnd:O},t[32]=O,t[33]=o,t[34]=re,t[35]=ne,t[36]=M):M=t[36];let N;t[37]===l?N=t[38]:(N=e=>e.type===`diff`?l(e.fileDiff,e.id,e.collapsed===!0):null,t[37]=l,t[38]=N);let P;t[39]!==w||t[40]!==E?(P=e=>(0,$.jsx)(`div`,{className:`py-1`,children:e.metadata.entries.map(e=>(0,$.jsx)(se,{kind:e.kind,rangeLabel:e.rangeLabel,text:e.text,onCancel:()=>w(e.id),onComment:t=>E(e.id,t),onDelete:()=>w(e.id)},e.id))}),t[39]=w,t[40]=E,t[41]=P):P=t[41];let ie;return t[42]!==S||t[43]!==m||t[44]!==M||t[45]!==N||t[46]!==P||t[47]!==k||t[48]!==A?(ie=(0,$.jsx)(Ft,{...k,...A,items:S,selectedLines:m,onSelectedLinesChange:h,options:M,renderHeaderPrefix:N,renderAnnotation:P}),t[42]=S,t[43]=m,t[44]=M,t[45]=N,t[46]=P,t[47]=k,t[48]=A,t[49]=ie):ie=t[49],ie}function nn(e){return e.metadata.entries.map(rn)}function rn(e){return`${e.id}:${e.rangeLabel}:${e.text}`}function an(e){return[e.fileKey,e]}function on(e){return e.removeReviewComment}function sn(e){return e.addReviewComment}var cn=function(e){return e.disabled=`data-disabled`,e.orientation=`data-orientation`,e.multiple=`data-multiple`,e}({}),ln={multiple(e){return e?{[cn.multiple]:``}:null}},un=Q.forwardRef(function(e,t){let{defaultValue:n,disabled:r=!1,loopFocus:i=!0,onValueChange:a,orientation:s=`horizontal`,multiple:c=!1,value:u,className:d,render:f,style:p,...m}=e,h=T(!0),g=Q.useMemo(()=>u!==void 0||n!==void 0,[u,n]),_=(h?.disabled??!1)||r,[v,y]=te({controlled:u,default:u===void 0?n??o:void 0,name:`ToggleGroup`,state:`value`}),b=l((e,t,n)=>{let r;c?(r=v.slice(),t?r.push(e):r.splice(v.indexOf(e),1)):r=t?[e]:[],a?.(r,n),!n.isCanceled&&y(r)}),x={disabled:_,multiple:c,orientation:s},S=Q.useMemo(()=>({disabled:_,orientation:s,setGroupValue:b,value:v,isValueInitialized:g}),[_,s,b,v,g]),C={role:`group`},w=E(`div`,e,{enabled:!!h,state:x,ref:t,props:[C,m],stateAttributesMapping:ln});return(0,$.jsx)(me.Provider,{value:S,children:h?w:(0,$.jsx)(we,{render:f,className:d,style:p,state:x,refs:[t],props:[C,m],stateAttributesMapping:ln,loopFocus:i,enableHomeAndEndKeys:!0,orientation:s})})}),dn=Q.createContext({size:`default`,variant:`default`});function fn(e){let t=(0,Gt.c)(24),n,r,i,a,o,c;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],c=t[6]):({className:r,variant:a,size:o,orientation:c,children:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o,t[6]=c);let l=a===void 0?`default`:a,u=o===void 0?`default`:o,d=c===void 0?`horizontal`:c,f;t[7]!==u||t[8]!==l?(f={size:u,variant:l},t[7]=u,t[8]=l,t[9]=f):f=t[9];let p=f,m=d===`horizontal`?`*:pointer-coarse:after:min-w-auto`:`*:pointer-coarse:after:min-h-auto`,h=l==="default"?`gap-0.5`:d===`horizontal`?`*:not-first:not-data-[slot=separator]:before:-start-[0.5px] *:not-last:not-data-[slot=separator]:before:-end-[0.5px] *:not-first:rounded-s-none *:not-last:rounded-e-none *:not-first:border-s-0 *:not-last:border-e-0 *:not-first:before:rounded-s-none *:not-last:before:rounded-e-none`:`*:not-first:not-data-[slot=separator]:before:-top-[0.5px] *:not-last:not-data-[slot=separator]:before:-bottom-[0.5px] flex-col *:not-first:rounded-t-none *:not-last:rounded-b-none *:not-first:border-t-0 *:not-last:border-b-0 *:not-first:before:rounded-t-none *:not-last:before:rounded-b-none *:data-[slot=toggle]:not-last:before:hidden dark:*:last:before:hidden dark:*:first:before:block`,g;t[10]!==r||t[11]!==m||t[12]!==h?(g=s(`flex w-fit *:focus-visible:z-10 dark:*:[[data-slot=separator]:has(+[data-slot=toggle]:hover)]:before:bg-input/64 dark:*:[[data-slot=separator]:has(+[data-slot=toggle][data-pressed])]:before:bg-input dark:*:[[data-slot=toggle]:hover+[data-slot=separator]]:before:bg-input/64 dark:*:[[data-slot=toggle][data-pressed]+[data-slot=separator]]:before:bg-input`,m,h,r),t[10]=r,t[11]=m,t[12]=h,t[13]=g):g=t[13];let _;t[14]!==n||t[15]!==p?(_=(0,$.jsx)(dn,{value:p,children:n}),t[14]=n,t[15]=p,t[16]=_):_=t[16];let v;return t[17]!==d||t[18]!==i||t[19]!==u||t[20]!==g||t[21]!==_||t[22]!==l?(v=(0,$.jsx)(un,{className:g,"data-size":u,"data-slot":`toggle-group`,"data-variant":l,orientation:d,...i,children:_}),t[17]=d,t[18]=i,t[19]=u,t[20]=g,t[21]=_,t[22]=l,t[23]=v):v=t[23],v}function pn(e){let t=(0,Gt.c)(12),n,r,i,a,o;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5]):({className:r,children:n,variant:o,size:a,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o);let s=Q.use(dn),c=o??s.variant,l=a??s.size,u;return t[6]!==n||t[7]!==r||t[8]!==i||t[9]!==l||t[10]!==c?(u=(0,$.jsx)(ge,{className:r,"data-size":l,"data-variant":c,size:l,variant:c,...i,children:n}),t[6]=n,t[7]=r,t[8]=i,t[9]=l,t[10]=c,t[11]=u):u=t[11],u}function mn(e){return{diffPreview:ne(e,{label:`environment-data:review:diff-preview`,tag:y.reviewGetDiffPreview,staleTimeMs:5e3})}}var hn=mn(r);function gn(e){return e.remoteName&&e.name.startsWith(`${e.remoteName}/`)?e.name.slice(e.remoteName.length+1):e.name}function _n(e,t){let n=new Set(t),r=e.map(e=>{let r=t.filter(t=>n.has(t)&&gn(t)===e.name),i=r.find(e=>e.remoteName===`origin`)??r[0]??null;return i&&n.delete(i),{id:`local:${e.name}`,label:e.name,local:e,remote:i}}),i=t.filter(e=>n.has(e)).map(e=>({id:`remote:${e.name}`,label:e.name,local:null,remote:e}));return[...r,...i]}function vn(e,t){let n=t.trim().toLocaleLowerCase();return n.length===0?e:e.filter(e=>e.label.toLocaleLowerCase().includes(n)||e.local?.name.toLocaleLowerCase().includes(n)===!0||e.remote?.name.toLocaleLowerCase().includes(n)===!0)}var yn=`__automatic_base_ref__`,bn=new Set,xn=`
2
+ [data-diffs-header],
3
+ [data-diff],
4
+ [data-file],
5
+ [data-error-wrapper],
6
+ [data-virtualizer-buffer] {
7
+ --diffs-header-font-family: var(--font-sans) !important;
8
+ --diffs-font-family: var(--font-mono) !important;
9
+ --diffs-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
10
+ --diffs-light-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
11
+ --diffs-dark-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
12
+ --diffs-token-light-bg: transparent;
13
+ --diffs-token-dark-bg: transparent;
14
+
15
+ --diffs-bg-context-override: color-mix(in srgb, var(--background) 97%, var(--foreground));
16
+ --diffs-bg-hover-override: color-mix(in srgb, var(--background) 94%, var(--foreground));
17
+ --diffs-bg-separator-override: color-mix(in srgb, var(--background) 95%, var(--foreground));
18
+ --diffs-bg-buffer-override: color-mix(in srgb, var(--background) 90%, var(--foreground));
19
+
20
+ --diffs-bg-addition-override: color-mix(in srgb, var(--background) 92%, var(--success));
21
+ --diffs-bg-addition-number-override: color-mix(in srgb, var(--background) 88%, var(--success));
22
+ --diffs-bg-addition-hover-override: color-mix(in srgb, var(--background) 85%, var(--success));
23
+ --diffs-bg-addition-emphasis-override: color-mix(in srgb, var(--background) 80%, var(--success));
24
+
25
+ --diffs-bg-deletion-override: color-mix(in srgb, var(--background) 92%, var(--destructive));
26
+ --diffs-bg-deletion-number-override: color-mix(in srgb, var(--background) 88%, var(--destructive));
27
+ --diffs-bg-deletion-hover-override: color-mix(in srgb, var(--background) 85%, var(--destructive));
28
+ --diffs-bg-deletion-emphasis-override: color-mix(
29
+ in srgb,
30
+ var(--background) 80%,
31
+ var(--destructive)
32
+ );
33
+
34
+ background-color: var(--diffs-bg) !important;
35
+ }
36
+
37
+ [data-file-info] {
38
+ background-color: color-mix(in srgb, var(--card) 94%, var(--foreground)) !important;
39
+ border-block-color: var(--border) !important;
40
+ color: var(--foreground) !important;
41
+ }
42
+
43
+ [data-diffs-header] {
44
+ position: sticky !important;
45
+ top: 0;
46
+ z-index: 4;
47
+ background-color: color-mix(in srgb, var(--card) 94%, var(--foreground)) !important;
48
+ border-bottom: 1px solid var(--border) !important;
49
+ align-items: center !important;
50
+ font-family: var(--font-sans) !important;
51
+ font-size: 12px !important;
52
+ line-height: 1 !important;
53
+ min-height: 32px !important;
54
+ padding-block: 6px !important;
55
+ }
56
+
57
+ [data-diffs-header] [data-header-content] {
58
+ align-items: center !important;
59
+ line-height: 1 !important;
60
+ }
61
+
62
+ [data-diffs-header] [data-metadata] {
63
+ align-items: center !important;
64
+ line-height: 1 !important;
65
+ font-variant-numeric: tabular-nums;
66
+ }
67
+
68
+ [data-diffs-header] [data-additions-count],
69
+ [data-diffs-header] [data-deletions-count] {
70
+ font-family: var(--font-mono) !important;
71
+ font-size: 11px !important;
72
+ font-variant-numeric: tabular-nums;
73
+ line-height: 1 !important;
74
+ }
75
+
76
+ [data-diffs-header] [data-change-icon],
77
+ [data-diffs-header] [data-rename-icon] {
78
+ display: block;
79
+ flex-shrink: 0;
80
+ }
81
+
82
+ [data-title] {
83
+ cursor: pointer;
84
+ transition:
85
+ color 120ms ease,
86
+ text-decoration-color 120ms ease;
87
+ text-decoration: underline;
88
+ text-decoration-color: transparent;
89
+ text-underline-offset: 2px;
90
+ font-family: var(--font-sans) !important;
91
+ }
92
+
93
+ [data-title]:hover {
94
+ color: color-mix(in srgb, var(--foreground) 84%, var(--primary)) !important;
95
+ text-decoration-color: currentColor;
96
+ }
97
+ `;function Sn({mode:r=`inline`,composerDraftTarget:o,initialGitScope:c}){let{resolvedTheme:l}=ve(),f=Ze(),[h]=(0,Q.useState)(c),[_,v]=(0,Q.useState)(`stacked`),[y,b]=(0,Q.useState)(f.wordWrap),[S,T]=(0,Q.useState)(f.diffIgnoreWhitespace),[E,ee]=(0,Q.useState)(``),[te,k]=(0,Q.useState)(()=>({scopeKey:null,fileKeys:bn})),ne=(0,Q.useRef)(null),j=e({strict:!1,select:e=>M(e)}),se=j?.threadId??null,F=Fe(j),ce=F?.projectId??null,le=Le(F&&ce?{environmentId:F.environmentId,projectId:ce}:null),I=F?.worktreePath??le?.workspaceRoot,pe=x(u.configValueAtom(F?.environmentId??null)),me=Ae(F?.environmentId??null,pe?.availableEditors??[]),ge=N(F!=null&&I!=null?Be.status({environmentId:F.environmentId,input:{cwd:I}}):null),L=ke(e=>Je(e.byThreadKey,j,h===`unstaged`)),R=ge.data?.isRepo??!0,{turnDiffSummaries:z,inferredCheckpointTurnCountByTurnId:we}=fe(F),B=(0,Q.useMemo)(()=>[...z].toSorted((e,t)=>{let n=e.checkpointTurnCount??we[e.turnId]??0,r=t.checkpointTurnCount??we[t.turnId]??0;return n===r?t.completedAt.localeCompare(e.completedAt):r-n}),[we,z]);(0,Q.useEffect)(()=>{!j||L.kind!==`turn`||ke.getState().reconcileTurnSelection(j,B.map(e=>e.turnId))},[L,B,j]);let V=L.kind===`turn`?L.turnId:null,H=L.kind===`unstaged`?`unstaged`:`branch`,U=L.kind===`branch`?L.baseRef:null,Me=L.kind===`turn`?L.filePath:null,Pe=L.kind===`turn`?L.revealRequestId:0,W=V===null?void 0:B.find(e=>e.turnId===V)??B[0],G=W&&(W.checkpointTurnCount??we[W.turnId]),Ie=B[0],Re=V===null?H===`unstaged`?`Working tree`:`Branch changes`:W?.turnId===Ie?.turnId?`Latest turn`:`Turn ${G??`?`}`,Ve=W?`turn:${W.turnId}`:H,K=j?`${j.environmentId}:${j.threadId}:${Ve}`:null,We=te.scopeKey===K?te.fileKeys:bn,Ge=W?`Turn ${G??`?`}`:H===`unstaged`?`Working tree`:`Branch changes`,Ke=(0,Q.useMemo)(()=>typeof G==`number`?{fromTurnCount:Math.max(0,G-1),toTurnCount:G}:null,[G]),qe=Kt({environmentId:F?.environmentId??null,threadId:se,fromTurnCount:Ke?.fromTurnCount??null,toTurnCount:Ke?.toTurnCount??null,ignoreWhitespace:S,cacheScope:W?`turn:${W.turnId}`:null},{enabled:R&&W!==void 0}),Xe=N(V===null&&F&&I?hn.diffPreview({environmentId:F.environmentId,input:{cwd:I,...U?{baseRef:U}:{},ignoreWhitespace:S}}):null),Qe=V===null&&Xe.error?.includes(`configured workspace root`)===!0&&pe?.cwd!==void 0&&pe.cwd!==I,et=N(Qe&&F&&pe?hn.diffPreview({environmentId:F.environmentId,input:{cwd:pe.cwd,...U?{baseRef:U}:{},ignoreWhitespace:S}}):null),q=Qe?et:Xe,J=q.data?.sources.find(e=>e.kind===(H===`unstaged`?`working-tree`:`branch-range`)),it=N(V===null&&H===`branch`&&F&&q.data?.cwd?Be.listRefs({environmentId:F.environmentId,input:{cwd:q.data.cwd,includeMatchingRemoteRefs:!0,refKind:`local`,...E.trim().length>0?{query:E.trim()}:{},limit:100}}):null),at=N(V===null&&H===`branch`&&F&&q.data?.cwd?Be.listRefs({environmentId:F.environmentId,input:{cwd:q.data.cwd,includeMatchingRemoteRefs:!0,refKind:`remote`,...E.trim().length>0?{query:E.trim()}:{},limit:100}}):null),ot=_n(it.data?.refs.filter(e=>e.name!==J?.headRef)??[],at.data?.refs??[]),st=vn(ot,E),ct=e=>U&&U===e.remote?.name?U:e.local?.name??e.remote?.name??e.id,lt=[yn,...ot.map(ct)],ut=[...E.trim().length===0?[yn]:[],...st.map(ct)],Y=J?.diff,dt=W?qe.data?.diff:Y,ft=!W&&J?.truncated===!0,pt=W?qe.isPending:q.isPending,mt=W?qe.error:q.error,ht=typeof dt==`string`&&dt.trim().length===0,X=(0,Q.useMemo)(()=>ue(dt,`diff-panel:${l}`,{compactPartialHunkOffsets:V===null}),[l,dt,V]),gt=(0,Q.useMemo)(()=>!X||X.kind!==`files`?[]:X.files.toSorted((e,t)=>Ce(e).localeCompare(Ce(t),void 0,{numeric:!0,sensitivity:`base`})),[X]),Z=(0,Q.useMemo)(()=>gt.map(e=>{let t=he(e);return{fileDiff:e,filePath:Ce(e),fileKey:t,collapsed:We.has(t)}}),[We,gt]),_t=(0,Q.useMemo)(()=>Z.map(e=>e.fileKey),[Z]),vt=qt(_t,We),yt=(0,Q.useMemo)(()=>Ue(gt),[gt]);(0,Q.useEffect)(()=>{if(!Me)return;let e=Z.find(e=>e.filePath===Me);e&&ne.current?.scrollTo({type:`item`,id:e.fileKey,align:`start`})},[Z,Me,Pe]);let bt=(0,Q.useCallback)(e=>{Wt({threadRef:j,filePath:e,activeCwd:I,openInEditor:e=>{(async()=>{let t=await me(e);t._tag===`Failure`&&!ie(t)&&console.warn(`Failed to open diff file in editor.`,{operation:`open-diff-file`,...j?{environmentId:j.environmentId,threadId:j.threadId}:{},...D(P(t))})})()}})},[I,me,j]),xt=(0,Q.useCallback)(e=>{k(t=>{let n=new Set(t.scopeKey===K?t.fileKeys:[]);return n.has(e)?n.delete(e):n.add(e),{scopeKey:K,fileKeys:n}})},[K]),St=(0,Q.useCallback)(()=>{k(e=>{let t=e.scopeKey===K?e.fileKeys:bn;return{scopeKey:K,fileKeys:Jt(_t,t)}})},[K,_t]),Ct=e=>{j&&ke.getState().selectTurn(j,e)},wt=e=>{j&&ke.getState().selectGitScope(j,e)},Tt=e=>{j&&ke.getState().selectBranchBaseRef(j,e)};return(0,$.jsx)(Xt,{mode:r,header:(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3 [-webkit-app-region:no-drag]`,children:[(0,$.jsxs)(t,{children:[(0,$.jsxs)(re,{className:`inline-flex h-6 max-w-full items-center gap-1 rounded-md bg-muted/70 px-2 text-xs font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Diff scope: ${Re}`,children:[(0,$.jsx)(`span`,{className:`truncate`,children:Re}),(0,$.jsx)(i,{className:`size-3.5 shrink-0 text-muted-foreground`})]}),(0,$.jsxs)(ae,{align:`start`,className:`w-60`,children:[(0,$.jsx)(d,{className:V===null&&H===`unstaged`?`bg-foreground/[0.08]`:void 0,onClick:()=>wt(`unstaged`),children:(0,$.jsx)(`span`,{children:`Working tree`})}),(0,$.jsx)(d,{className:V===null&&H===`branch`?`bg-foreground/[0.08]`:void 0,onClick:()=>wt(`branch`),children:(0,$.jsx)(`span`,{children:`Branch changes`})}),(0,$.jsx)(d,{className:V!==null&&W?.turnId===Ie?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>{Ie&&Ct(Ie.turnId)},children:(0,$.jsx)(`span`,{children:`Latest turn`})}),(0,$.jsxs)(g,{children:[(0,$.jsx)(a,{children:`Turn`}),(0,$.jsx)(n,{className:`w-64`,children:B.map(e=>{let t=e.checkpointTurnCount??we[e.turnId]??`?`;return(0,$.jsxs)(d,{className:e.turnId===W?.turnId?`bg-foreground/[0.08]`:void 0,onClick:()=>Ct(e.turnId),children:[(0,$.jsxs)(`span`,{children:[`Turn `,t]}),(0,$.jsx)(`span`,{className:`ml-auto text-xs tabular-nums text-muted-foreground`,children:Ne(e.completedAt,f.timestampFormat)})]},e.turnId)})})]})]})]}),V===null&&H===`branch`&&J?.baseRef&&(0,$.jsxs)(`div`,{className:`flex min-w-0 max-w-full items-center gap-2 overflow-hidden text-xs text-muted-foreground`,title:`${J.headRef??`HEAD`} → ${J.baseRef}`,"aria-label":`Comparing ${J.headRef??`HEAD`} against ${J.baseRef}`,children:[(0,$.jsx)(`span`,{className:`min-w-0 max-w-48 truncate`,children:J.headRef??`HEAD`}),(0,$.jsx)(oe,{className:`size-3.5 shrink-0 opacity-70`}),(0,$.jsxs)(_e,{items:lt,filteredItems:ut,value:U??yn,onOpenChange:e=>{e||ee(``)},onValueChange:e=>{e&&Tt(e===yn?null:e)},children:[(0,$.jsxs)(je,{className:`inline-flex min-w-0 max-w-48 items-center gap-1 overflow-hidden rounded-md px-1.5 py-1 outline-none transition-colors hover:bg-muted hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring`,"aria-label":`Change comparison target. Currently ${J.baseRef}`,children:[(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:J.baseRef}),(0,$.jsx)(i,{className:`size-3.5 shrink-0 opacity-70`})]}),(0,$.jsxs)(de,{align:`start`,className:`w-72 min-w-0 max-w-[calc(100vw-1rem)] overflow-hidden [&>[data-slot=combobox-popup]]:min-w-0 [&>[data-slot=combobox-popup]]:overflow-hidden`,children:[(0,$.jsx)(`div`,{className:`min-w-0 shrink-0 px-3 pt-2.5`,children:(0,$.jsxs)(`div`,{className:`relative -translate-y-px border-b border-border/70 pb-1.5 transition-colors focus-within:border-ring`,children:[(0,$.jsx)(Oe,{"aria-hidden":`true`,className:`pointer-events-none absolute top-1.5 left-0 size-4 shrink-0 text-muted-foreground/55`}),(0,$.jsx)(xe,{className:`[&_input]:h-6.5 [&_input]:ps-5 [&_input]:font-sans [&_input]:leading-6.5`,inputClassName:`rounded-none bg-transparent text-sm`,placeholder:`Search refs...`,showTrigger:!1,size:`sm`,unstyled:!0,value:E,onChange:e=>ee(e.target.value)})]})}),(0,$.jsxs)(`div`,{className:`grid shrink-0 grid-cols-[1rem_minmax(0,1fr)] items-center gap-2 border-b border-border/70 ps-3 pe-6.5 pt-2 pb-1.5 font-medium text-[10px] text-muted-foreground uppercase tracking-wide`,children:[(0,$.jsx)(`span`,{"aria-hidden":`true`}),(0,$.jsxs)(`div`,{className:`grid min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center`,children:[(0,$.jsx)(`span`,{children:`Branch`}),(0,$.jsx)(`span`,{className:`text-right`,children:`Remote`})]})]}),(0,$.jsx)(ye,{children:`No matching refs.`}),(0,$.jsxs)($e,{className:`max-h-64 min-w-0 overflow-x-hidden`,children:[(0,$.jsx)(De,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:yn,children:(0,$.jsx)(`span`,{className:`block min-w-0 truncate`,children:`Automatic`})}),ot.map(e=>{let t=ct(e),n=e.local!==null&&e.remote!==null,r=e.remote?.name===t;return(0,$.jsx)(De,{className:`h-8 w-full min-w-0 grid-cols-[1rem_minmax(0,1fr)] py-0`,contentClassName:`w-full min-w-0 overflow-hidden`,value:t,children:(0,$.jsxs)(`div`,{className:`grid w-full min-w-0 grid-cols-[minmax(0,1fr)_2rem] items-center overflow-hidden`,children:[(0,$.jsx)(`span`,{className:`block min-w-0 truncate pe-2`,children:e.label}),n?(0,$.jsx)(`div`,{className:`flex justify-end`,onClick:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation(),children:(0,$.jsx)(Ee,{"aria-label":`Use remote version of ${e.label}`,checked:r,className:`[--thumb-size:--spacing(3)]`,onCheckedChange:t=>{let n=t?e.remote?.name:e.local?.name;n&&Tt(n)}})}):e.remote?(0,$.jsx)(`span`,{className:`flex justify-end text-muted-foreground`,title:`Remote only`,children:(0,$.jsx)(p,{"aria-hidden":`true`,className:`size-3`})}):null]})},e.id)})]})]})]})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 [-webkit-app-region:no-drag]`,children:[Z.length>0&&(0,$.jsx)(ze,{additions:yt.additions,deletions:yt.deletions,className:`mr-1 text-[11px]`,layout:`inline`}),Z.length>0&&(0,$.jsxs)(A,{children:[(0,$.jsx)(C,{render:(0,$.jsx)(w,{type:`button`,size:`icon-xs`,variant:`outline`,"aria-label":vt?`Expand all files`:`Collapse all files`,onClick:St}),children:vt?(0,$.jsx)(be,{className:`size-3`}):(0,$.jsx)(Se,{className:`size-3`})}),(0,$.jsx)(O,{side:`top`,children:vt?`Expand all files`:`Collapse all files`})]}),(0,$.jsxs)(fn,{className:`shrink-0`,variant:`outline`,size:`xs`,value:[_],onValueChange:e=>{let t=e[0];(t===`stacked`||t===`split`)&&v(t)},children:[(0,$.jsx)(pn,{"aria-label":`Stacked diff view`,value:`stacked`,children:(0,$.jsx)(rt,{className:`size-3`})}),(0,$.jsx)(pn,{"aria-label":`Split diff view`,value:`split`,children:(0,$.jsx)(tt,{className:`size-3`})})]}),(0,$.jsxs)(A,{children:[(0,$.jsx)(C,{render:(0,$.jsx)(pn,{"aria-label":y?`Disable diff line wrapping`:`Enable diff line wrapping`,variant:`outline`,size:`xs`,pressed:y,onPressedChange:e=>{b(!!e)}}),children:(0,$.jsx)(Ye,{className:`size-3`})}),(0,$.jsx)(O,{side:`top`,children:y?`Disable line wrapping`:`Enable line wrapping`})]}),(0,$.jsxs)(A,{children:[(0,$.jsx)(C,{render:(0,$.jsx)(pn,{"aria-label":S?`Show whitespace changes`:`Hide whitespace changes`,variant:`outline`,size:`xs`,pressed:S,onPressedChange:e=>{T(!!e)}}),children:(0,$.jsx)(nt,{className:`size-3`})}),(0,$.jsx)(O,{side:`top`,children:S?`Show whitespace changes`:`Hide whitespace changes`})]})]})]}),children:F?R?V!==null&&B.length===0?(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`No completed turns yet.`}):(0,$.jsx)($.Fragment,{children:(0,$.jsxs)(`div`,{className:`diff-panel-viewport flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[ft&&(0,$.jsx)(`p`,{className:`shrink-0 border-b border-border/70 bg-muted/40 px-3 py-1.5 text-[11px] text-muted-foreground`,children:`This diff was truncated because it exceeded the preview limit. The changes shown are incomplete.`}),mt&&!X&&(0,$.jsx)(`div`,{className:`px-3`,children:(0,$.jsx)(`p`,{className:`mb-2 text-[11px] text-red-500/80`,children:mt})}),X?X.kind===`files`?(0,$.jsx)(`div`,{className:`min-h-0 flex-1`,onClickCapture:e=>{let t=(e.nativeEvent.composedPath?.()??[]).find(e=>e instanceof HTMLElement&&e.hasAttribute(`data-title`))?.textContent?.trim();t&&bt(t)},children:(0,$.jsx)(tn,{viewerRef:ne,className:`diff-render-surface h-full min-h-0 overflow-auto`,files:Z,sectionId:Ve,sectionTitle:Ge,composerDraftTarget:o,renderHeaderPrefix:(e,t,n)=>{let r=Ce(e);return(0,$.jsxs)(A,{children:[(0,$.jsx)(C,{render:(0,$.jsx)(`button`,{type:`button`,className:s(`inline-flex size-5 shrink-0 cursor-pointer items-center justify-center rounded-sm border-0 bg-transparent p-0 transition-colors hover:bg-foreground/10 focus-visible:outline-hidden`,Te(e)),"aria-label":n?`Expand ${r}`:`Collapse ${r}`,"aria-expanded":!n,onClick:e=>{e.stopPropagation(),xt(t)}}),children:n?(0,$.jsx)(m,{className:`size-4`}):(0,$.jsx)(i,{className:`size-4`})}),(0,$.jsx)(O,{side:`top`,children:n?`Expand diff`:`Collapse diff`})]})},options:{diffStyle:_===`split`?`split`:`unified`,lineDiffType:`none`,overflow:y?`wrap`:`scroll`,theme:He(l),themeType:l,unsafeCSS:xn,stickyHeaders:!0,itemMetrics:{diffHeaderHeight:33},layout:{paddingTop:0,paddingBottom:8,gap:8}}},K??Ve)}):(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto p-2`,children:(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`p`,{className:`text-[11px] text-muted-foreground/75`,children:X.reason}),(0,$.jsx)(`pre`,{className:s(`max-h-[72vh] rounded-md border border-border/70 bg-background/70 p-3 font-mono text-[11px] leading-relaxed text-muted-foreground/90`,y?`overflow-auto whitespace-pre-wrap wrap-break-word`:`overflow-auto`),children:X.text})]})}):pt?(0,$.jsx)(Zt,{label:W?`Loading checkpoint diff...`:H===`unstaged`?`Loading working tree diff...`:`Loading branch diff...`}):(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center px-3 py-2 text-xs text-muted-foreground/70`,children:(0,$.jsx)(`p`,{children:ht?`No net changes in this selection.`:`No patch available for this selection.`})})]})}):(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Turn diffs are unavailable because this project is not a git repository.`}):(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center px-5 text-center text-xs text-muted-foreground/70`,children:`Select a thread to inspect turn diffs.`})})}export{H as DiffWorkerPoolProvider,Sn as default};
98
+ //# sourceMappingURL=DiffPanel-ISmUh6EE.js.map