bb-app 0.0.4 → 0.0.6

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 (355) hide show
  1. package/README.md +3 -3
  2. package/app/dist/assets/AppSettingsView-DH1waGrt.js +1 -0
  3. package/app/dist/assets/InternalReplayListView-DjsfJLJv.js +1 -0
  4. package/app/dist/assets/ProjectArchivedThreadsView-Bj8oRQmq.js +1 -0
  5. package/app/dist/assets/ProjectSettingsView-B5yhhmEc.js +1 -0
  6. package/app/dist/assets/ThreadDetailRoute-DKYxhL5B.js +2680 -0
  7. package/app/dist/assets/ThreadUnarchiveButton-CdRo7M97.js +1 -0
  8. package/app/dist/assets/{angular-html-C2Dl0O00.js → angular-html-CoYv0XJY.js} +1 -1
  9. package/app/dist/assets/{angular-ts-CVYqc36v.js → angular-ts--oE0vL6J.js} +1 -1
  10. package/app/dist/assets/{apl-BGPamPSJ.js → apl-mu0Mp6u1.js} +1 -1
  11. package/app/dist/assets/{astro-Ba-Dojj4.js → astro-DGoqbRGX.js} +1 -1
  12. package/app/dist/assets/{blade-Lwg2Qi0v.js → blade-DQujc1A5.js} +1 -1
  13. package/app/dist/assets/{bsl-JaCMWPaY.js → bsl-CG-fq4sc.js} +1 -1
  14. package/app/dist/assets/{c-B_58eHuy.js → c-2jbVFmuV.js} +1 -1
  15. package/app/dist/assets/{cairo-D7Xpkdmw.js → cairo-Ds0kTeYT.js} +1 -1
  16. package/app/dist/assets/chunk-JZWAC4HX-C_-VEW9Q.js +3 -0
  17. package/app/dist/assets/{cobol-CM0x5uzi.js → cobol-Dk2pgWM3.js} +1 -1
  18. package/app/dist/assets/{coffee-WumiHYOD.js → coffee-6v78fbbf.js} +1 -1
  19. package/app/dist/assets/{cpp-D0sZgzGq.js → cpp-QzZpOrzC.js} +1 -1
  20. package/app/dist/assets/{crystal-C2tAIJ-r.js → crystal-CvexRWdz.js} +1 -1
  21. package/app/dist/assets/{css-QhLRjU31.js → css-OM3bJ3_6.js} +1 -1
  22. package/app/dist/assets/dialog-BjpdbSmZ.js +1 -0
  23. package/app/dist/assets/{edge-BmtKCk7-.js → edge-C3m71CuX.js} +1 -1
  24. package/app/dist/assets/effective-hosts-D-vDT9_r.js +68 -0
  25. package/app/dist/assets/{elixir-DiumzaXM.js → elixir-BhRXZTvD.js} +1 -1
  26. package/app/dist/assets/{elm-DV3i51_v.js → elm-DYE0yZFL.js} +1 -1
  27. package/app/dist/assets/{erb-3qqPnLJh.js → erb-SSD9uhMe.js} +1 -1
  28. package/app/dist/assets/{erlang-DJdyEhn7.js → erlang-C-m_88FN.js} +1 -1
  29. package/app/dist/assets/{fortran-fixed-form-Dyncprn4.js → fortran-fixed-form-Cx1lv7HN.js} +1 -1
  30. package/app/dist/assets/{fsharp-D6WYKxtq.js → fsharp-DC5k9sy2.js} +1 -1
  31. package/app/dist/assets/{gdresource-Bac2fAQZ.js → gdresource-D0EsKdgH.js} +1 -1
  32. package/app/dist/assets/{git-commit-CDZnUqIF.js → git-commit-BcFsuO5E.js} +1 -1
  33. package/app/dist/assets/{git-rebase-DIMwlcT0.js → git-rebase-D0Fw5_xo.js} +1 -1
  34. package/app/dist/assets/{glimmer-js-BKsURin4.js → glimmer-js-Jn4VQcUP.js} +1 -1
  35. package/app/dist/assets/{glimmer-ts-Chhe0oIX.js → glimmer-ts-BNZNfWU-.js} +1 -1
  36. package/app/dist/assets/{glsl-Dy3tp3E1.js → glsl-DGR2Z9QX.js} +1 -1
  37. package/app/dist/assets/{graphql-CseHr1LK.js → graphql-DQM3uC9O.js} +1 -1
  38. package/app/dist/assets/{hack-boTiAbss.js → hack-D9UfM1Cn.js} +1 -1
  39. package/app/dist/assets/{haml-CjrsmcwN.js → haml-BB_Vekn8.js} +1 -1
  40. package/app/dist/assets/{handlebars-B_oDWsbs.js → handlebars-Dttle2Wb.js} +1 -1
  41. package/app/dist/assets/{html-C4e0uDKx.js → html-Df_qp_V9.js} +1 -1
  42. package/app/dist/assets/{html-derivative-DtQj__OI.js → html-derivative-rl3w8zDj.js} +1 -1
  43. package/app/dist/assets/{http-W8z61A1Z.js → http-CgnYHPQJ.js} +1 -1
  44. package/app/dist/assets/{hurl-CBaPhsIJ.js → hurl-CUdIfmn9.js} +1 -1
  45. package/app/dist/assets/{hxml-BNblpm3P.js → hxml-iQTOTWpM.js} +1 -1
  46. package/app/dist/assets/index-CCJm8W3d.css +2 -0
  47. package/app/dist/assets/index-D2Ze5muL.js +1360 -0
  48. package/app/dist/assets/{java-C9TLG_lA.js → java-CNjohX-o.js} +1 -1
  49. package/app/dist/assets/{javascript-B6-baDIX.js → javascript-Bmzu-1YP.js} +1 -1
  50. package/app/dist/assets/{jinja-D6Ec9tX7.js → jinja-DXX545BW.js} +1 -1
  51. package/app/dist/assets/{jison-abiW-9pn.js → jison-BFsONSRA.js} +1 -1
  52. package/app/dist/assets/{json-DtR-rTq5.js → json-D3Qqjr3g.js} +1 -1
  53. package/app/dist/assets/{jsx-TQyKdSmQ.js → jsx-tZzot0X9.js} +1 -1
  54. package/app/dist/assets/{julia-BKK2QHze.js → julia-BwzvM27y.js} +1 -1
  55. package/app/dist/assets/{just-BY5hWNgR.js → just-6CfdIddw.js} +1 -1
  56. package/app/dist/assets/{latex-CuW1q2vJ.js → latex-DNTJjbTj.js} +1 -1
  57. package/app/dist/assets/{liquid-BsqUQnO5.js → liquid-DjUlzYiW.js} +1 -1
  58. package/app/dist/assets/localhost-badge-C8-uvmR_.js +22 -0
  59. package/app/dist/assets/{lua-D4PO1r07.js → lua-LZQVLoh_.js} +1 -1
  60. package/app/dist/assets/{marko-1bNyFeKY.js → marko-Dclxmh1h.js} +1 -1
  61. package/app/dist/assets/{mdc-BoU9IUKL.js → mdc-BpaMcHe8.js} +1 -1
  62. package/app/dist/assets/mutation-cache-effects-BAn11UmS.js +1 -0
  63. package/app/dist/assets/{nextflow-dLJhzX3Z.js → nextflow-D-Ec_bsY.js} +1 -1
  64. package/app/dist/assets/{nginx-BXWzwlUI.js → nginx-CYoL5nkY.js} +1 -1
  65. package/app/dist/assets/{nim-BgalU8R5.js → nim-CxULhr2M.js} +1 -1
  66. package/app/dist/assets/page-shell-BYLrlYTH.js +39 -0
  67. package/app/dist/assets/{perl-OrqzwF6j.js → perl-5LAV6neX.js} +1 -1
  68. package/app/dist/assets/{php-DsC0K8EH.js → php-D8BcRHFY.js} +1 -1
  69. package/app/dist/assets/pill-C-0inATv.js +1 -0
  70. package/app/dist/assets/{pug-D-Q9Kgtz.js → pug-C9t1Hjhu.js} +1 -1
  71. package/app/dist/assets/{qml-Dyn06a9u.js → qml-DGkLNN9v.js} +1 -1
  72. package/app/dist/assets/{r-C3AjV-3E.js → r-CeMfeXpy.js} +1 -1
  73. package/app/dist/assets/{razor-DHd1twLi.js → razor-DRG-JA5B.js} +1 -1
  74. package/app/dist/assets/{regexp-Dl_oPCDN.js → regexp-C6eJQVWV.js} +1 -1
  75. package/app/dist/assets/{rst-BIq6VDAT.js → rst-_TSRDHac.js} +1 -1
  76. package/app/dist/assets/{ruby-BJwcPMyx.js → ruby-dQqgg9kc.js} +1 -1
  77. package/app/dist/assets/{sas-TXWq-8Bu.js → sas-C4F5TLRE.js} +1 -1
  78. package/app/dist/assets/{scss-Cz2NsCSh.js → scss-CmYsLoFC.js} +1 -1
  79. package/app/dist/assets/{settings-section-CZi6DvBs.js → settings-section-DrGaArro.js} +1 -1
  80. package/app/dist/assets/{shaderlab-CSb6CBXg.js → shaderlab-DGohHMiF.js} +1 -1
  81. package/app/dist/assets/{shellscript-CJedfzfs.js → shellscript-WXnX1Mec.js} +1 -1
  82. package/app/dist/assets/{shellsession-Tkblvq8e.js → shellsession-Bn3Xgpma.js} +1 -1
  83. package/app/dist/assets/{soy-g_UxtUjg.js → soy-c3pX5x_S.js} +1 -1
  84. package/app/dist/assets/{sparql-J1VOnnwM.js → sparql-BgU2QITA.js} +1 -1
  85. package/app/dist/assets/split-button-BVu8nD9J.js +1 -0
  86. package/app/dist/assets/{sql-DQAX0EN7.js → sql-D6zVwCTB.js} +1 -1
  87. package/app/dist/assets/{stata-BXjroK6c.js → stata-CVENOXDm.js} +1 -1
  88. package/app/dist/assets/{surrealql-DyDhPjEW.js → surrealql-BT_Ybe_U.js} +1 -1
  89. package/app/dist/assets/{svelte-CEjCx-8g.js → svelte-C_ktJHww.js} +1 -1
  90. package/app/dist/assets/{templ-BViMCY-s.js → templ-BWI48nlj.js} +1 -1
  91. package/app/dist/assets/{tex-BOG7uw6j.js → tex-BCbKiW8N.js} +1 -1
  92. package/app/dist/assets/thread-queries-VdTjp5RH.js +1 -0
  93. package/app/dist/assets/{ts-tags-1PkZB39L.js → ts-tags--q5Co27x.js} +1 -1
  94. package/app/dist/assets/{tsx-B1khekg1.js → tsx-D9Tu2qDP.js} +1 -1
  95. package/app/dist/assets/{twig-C30VOGkj.js → twig-0tBvYCLy.js} +1 -1
  96. package/app/dist/assets/{typescript-BVriUqhl.js → typescript-usoJ9tbx.js} +1 -1
  97. package/app/dist/assets/{vue-Dy6YaQjk.js → vue-BQb85j8g.js} +1 -1
  98. package/app/dist/assets/{vue-html-yfcmxRL7.js → vue-html-gWLUM0tZ.js} +1 -1
  99. package/app/dist/assets/{vue-vine-BnfxXDO0.js → vue-vine-B47td4pS.js} +1 -1
  100. package/app/dist/assets/{xml-BJ3Y9ehh.js → xml-BHrSCP44.js} +1 -1
  101. package/app/dist/assets/{xsl-CFOlFF3h.js → xsl-D48ooQoQ.js} +1 -1
  102. package/app/dist/assets/{yaml-BJda_PXC.js → yaml-DyYbpBBV.js} +1 -1
  103. package/app/dist/index.html +9 -9
  104. package/dist/bb-app.js +19 -1
  105. package/dist/bb-host-daemon.js +16 -1
  106. package/dist/bb-server.js +16 -1
  107. package/dist/bb.js +16 -1
  108. package/host-daemon/dist/bb +362 -72
  109. package/host-daemon/dist/bb-claude-code-bridge.mjs +35 -35
  110. package/host-daemon/dist/daemon-bundle.mjs +389 -386
  111. package/package.json +1 -1
  112. package/server/dist/drizzle/0003_thread_dynamic_context_file_states.sql +12 -0
  113. package/server/dist/drizzle/meta/0003_snapshot.json +3178 -0
  114. package/server/dist/drizzle/meta/_journal.json +7 -0
  115. package/server/dist/index.js +13362 -8118
  116. package/app/dist/assets/AppSettingsView-SFYjccBR.js +0 -1
  117. package/app/dist/assets/InternalReplayListView-D-5BEgLK.js +0 -1
  118. package/app/dist/assets/ProjectArchivedThreadsView-DAF8LFet.js +0 -1
  119. package/app/dist/assets/ProjectSettingsView-C_WCJcrH.js +0 -1
  120. package/app/dist/assets/ThreadDetailRoute-D8k29X_E.js +0 -2390
  121. package/app/dist/assets/ThreadUnarchiveButton-EqnpnszW.js +0 -1
  122. package/app/dist/assets/dialog-CaQY-B8P.js +0 -1
  123. package/app/dist/assets/effective-hosts-ps3WYS_d.js +0 -68
  124. package/app/dist/assets/index-B8UIxEOk.js +0 -1359
  125. package/app/dist/assets/index-Ct4fTclZ.css +0 -2
  126. package/app/dist/assets/localhost-badge-C9iEqET9.js +0 -22
  127. package/app/dist/assets/mutation-cache-effects-BQHFwGL7.js +0 -1
  128. package/app/dist/assets/page-shell-Dglk9LmR.js +0 -39
  129. package/app/dist/assets/pill-DYYeHA29.js +0 -3
  130. package/app/dist/assets/split-button-2v1ePK2A.js +0 -1
  131. package/app/dist/assets/thread-queries-BOTfj5Vv.js +0 -1
  132. package/server/dist/default-template/PREFERENCES.md +0 -35
  133. /package/app/dist/assets/{abap-DKGmjV0m.js → abap-B1dkBSPn.js} +0 -0
  134. /package/app/dist/assets/{actionscript-3-PQHI9sRP.js → actionscript-3-BT4ibYlP.js} +0 -0
  135. /package/app/dist/assets/{ada-7dCRqcEc.js → ada-CD92zeps.js} +0 -0
  136. /package/app/dist/assets/{addon-fit-CIMl-Yt0.js → addon-fit-Cm0rqjtv.js} +0 -0
  137. /package/app/dist/assets/{addon-web-links-Sy65bwVY.js → addon-web-links-B8_D6zvC.js} +0 -0
  138. /package/app/dist/assets/{andromeeda-CvHLbWZU.js → andromeeda-DqSmgxi0.js} +0 -0
  139. /package/app/dist/assets/{apache-DuwFT_ko.js → apache-D5suuoa_.js} +0 -0
  140. /package/app/dist/assets/{apex-ZrILV9y9.js → apex-BL-m4VHy.js} +0 -0
  141. /package/app/dist/assets/{applescript-QewDI2Hm.js → applescript-CLiBqvKT.js} +0 -0
  142. /package/app/dist/assets/{ara-CAKYVeDX.js → ara-LdDF8cmv.js} +0 -0
  143. /package/app/dist/assets/{asciidoc-xYtH5EEV.js → asciidoc-2DZ9hC2N.js} +0 -0
  144. /package/app/dist/assets/{asm-DuNyKkDV.js → asm-0ZPGRSUy.js} +0 -0
  145. /package/app/dist/assets/{aurora-x-mlfFqJAh.js → aurora-x-Da7Zfvbg.js} +0 -0
  146. /package/app/dist/assets/{awk-BDSWDVpS.js → awk-Bn0gn_B_.js} +0 -0
  147. /package/app/dist/assets/{ayu-dark-BTeHke7b.js → ayu-dark-bqYKoqpM.js} +0 -0
  148. /package/app/dist/assets/{ayu-light-CoZXvb4i.js → ayu-light-C45jTIzZ.js} +0 -0
  149. /package/app/dist/assets/{ayu-mirage-DlGy8b5I.js → ayu-mirage-BV_FCTQi.js} +0 -0
  150. /package/app/dist/assets/{ballerina-eIQtFtZN.js → ballerina-D2nw_w8Q.js} +0 -0
  151. /package/app/dist/assets/{bat-DVPhDFws.js → bat-ByUBN5gS.js} +0 -0
  152. /package/app/dist/assets/{beancount-DRh4LoEp.js → beancount-BTb2W6Mp.js} +0 -0
  153. /package/app/dist/assets/{berry-BJPWN0aG.js → berry-5SO2uITG.js} +0 -0
  154. /package/app/dist/assets/{bibtex-BXZl-zGT.js → bibtex-CDBTNfUI.js} +0 -0
  155. /package/app/dist/assets/{bicep-DUhze7H3.js → bicep-fgxG_4rP.js} +0 -0
  156. /package/app/dist/assets/{bird2-D_94N4Us.js → bird2-BCwzDhwX.js} +0 -0
  157. /package/app/dist/assets/{c3-CUFd2ak_.js → c3-Dlaci63_.js} +0 -0
  158. /package/app/dist/assets/{cadence-zuA3Lqsu.js → cadence-DHbRuEmm.js} +0 -0
  159. /package/app/dist/assets/{catppuccin-frappe-C4xh_RpD.js → catppuccin-frappe-DrL1fUuH.js} +0 -0
  160. /package/app/dist/assets/{catppuccin-latte-ZIzlVBYe.js → catppuccin-latte-C0REgVjl.js} +0 -0
  161. /package/app/dist/assets/{catppuccin-macchiato-DOZXEuSH.js → catppuccin-macchiato-ChQpylWO.js} +0 -0
  162. /package/app/dist/assets/{catppuccin-mocha-rnm_6i_u.js → catppuccin-mocha-Dd0JU1T0.js} +0 -0
  163. /package/app/dist/assets/{clarity-Dp-fzxYs.js → clarity-DMoTOm4G.js} +0 -0
  164. /package/app/dist/assets/{clojure-85kagXuc.js → clojure-DBhE3PpS.js} +0 -0
  165. /package/app/dist/assets/{cmake-5KZO_J3V.js → cmake-DwMc40Or.js} +0 -0
  166. /package/app/dist/assets/{codeowners-CwITHnrC.js → codeowners-1lVr8wqV.js} +0 -0
  167. /package/app/dist/assets/{codeql-DsuZZPKs.js → codeql-DWflolvo.js} +0 -0
  168. /package/app/dist/assets/{common-lisp-DQj0fa1s.js → common-lisp-CrVQ5xT-.js} +0 -0
  169. /package/app/dist/assets/{coq-BGPtnnb4.js → coq-CjfoyYSh.js} +0 -0
  170. /package/app/dist/assets/{csharp-Bz4y1fn8.js → csharp-C7bIWP5y.js} +0 -0
  171. /package/app/dist/assets/{csv-92JdhrVb.js → csv-DsAkDVtA.js} +0 -0
  172. /package/app/dist/assets/{cue-DO5iBckt.js → cue-BWmQgbOB.js} +0 -0
  173. /package/app/dist/assets/{cypher-Dt0SBufN.js → cypher-D-jVC50Q.js} +0 -0
  174. /package/app/dist/assets/{d-POAmrdpL.js → d-CaviyOrm.js} +0 -0
  175. /package/app/dist/assets/{dark-plus-Ci223Kw7.js → dark-plus-DIrnwZt9.js} +0 -0
  176. /package/app/dist/assets/{dart-Cv4z4sEx.js → dart-CZEi7JgC.js} +0 -0
  177. /package/app/dist/assets/{dax-Cw_LNvcO.js → dax-BK-8zffy.js} +0 -0
  178. /package/app/dist/assets/{desktop-B_uWbpWi.js → desktop-D3cjbL4D.js} +0 -0
  179. /package/app/dist/assets/{diff-pSjjL-ZH.js → diff-sHAzLvlp.js} +0 -0
  180. /package/app/dist/assets/{docker-r0L9bSzI.js → docker--xs2Ng3w.js} +0 -0
  181. /package/app/dist/assets/{dotenv-DU-Uz6AA.js → dotenv-Cm4nwcJ7.js} +0 -0
  182. /package/app/dist/assets/{dracula-C5lq8I7X.js → dracula-CAUSusef.js} +0 -0
  183. /package/app/dist/assets/{dracula-soft-QH3ntlSU.js → dracula-soft-cjNkMFza.js} +0 -0
  184. /package/app/dist/assets/{dream-maker-DE3sVgWW.js → dream-maker-fjmWTFCO.js} +0 -0
  185. /package/app/dist/assets/{emacs-lisp-aMjKKeFP.js → emacs-lisp-CJzqStIa.js} +0 -0
  186. /package/app/dist/assets/{everforest-dark-KTiMpaXm.js → everforest-dark-DBpaSMx1.js} +0 -0
  187. /package/app/dist/assets/{everforest-light-yJZ9a76P.js → everforest-light-CiGrXwia.js} +0 -0
  188. /package/app/dist/assets/{fennel-Bruivvq3.js → fennel-DRaXF7k8.js} +0 -0
  189. /package/app/dist/assets/{fish-CaGhpV7s.js → fish-Bn-Yh3Jj.js} +0 -0
  190. /package/app/dist/assets/{fluent-BsmQk-nO.js → fluent-DF5F8Ks_.js} +0 -0
  191. /package/app/dist/assets/{fortran-free-form-B9mY58s0.js → fortran-free-form-hCQHRqew.js} +0 -0
  192. /package/app/dist/assets/{gdscript-B_WUGHIs.js → gdscript-_C9_Hi_w.js} +0 -0
  193. /package/app/dist/assets/{gdshader-BR6nyn6z.js → gdshader-BW7b1X1Y.js} +0 -0
  194. /package/app/dist/assets/{genie-CW-a1unw.js → genie-Ch_6TCHd.js} +0 -0
  195. /package/app/dist/assets/{gherkin-D8z0Dn14.js → gherkin-CaNUsmTq.js} +0 -0
  196. /package/app/dist/assets/{github-dark-C2YvJIRl.js → github-dark-B9ygjgg6.js} +0 -0
  197. /package/app/dist/assets/{github-dark-default-DPZ1YWUU.js → github-dark-default-Br2bgYSx.js} +0 -0
  198. /package/app/dist/assets/{github-dark-dimmed-BlMwpJVf.js → github-dark-dimmed-CmtqpPJ-.js} +0 -0
  199. /package/app/dist/assets/{github-dark-high-contrast-KRBg57oP.js → github-dark-high-contrast-fSfmrZcC.js} +0 -0
  200. /package/app/dist/assets/{github-light-BLj5WXD_.js → github-light-BZjUqfZl.js} +0 -0
  201. /package/app/dist/assets/{github-light-default-BLgrdOV4.js → github-light-default-lIytXXhR.js} +0 -0
  202. /package/app/dist/assets/{github-light-high-contrast-Bmexxccr.js → github-light-high-contrast-BRrjFb7n.js} +0 -0
  203. /package/app/dist/assets/{gleam-BtOZgVle.js → gleam-DALMDpNs.js} +0 -0
  204. /package/app/dist/assets/{gn-JO9YMz2t.js → gn-DGjqrYN9.js} +0 -0
  205. /package/app/dist/assets/{gnuplot-DjZHg3_f.js → gnuplot-BYckvgQI.js} +0 -0
  206. /package/app/dist/assets/{go-D2GlBE5F.js → go-JycvP538.js} +0 -0
  207. /package/app/dist/assets/{groovy-1vEGAvvX.js → groovy-D5qMRONT.js} +0 -0
  208. /package/app/dist/assets/{gruvbox-dark-hard-pdBjrsK5.js → gruvbox-dark-hard-M1dj1e6V.js} +0 -0
  209. /package/app/dist/assets/{gruvbox-dark-medium-Csp4lPEF.js → gruvbox-dark-medium-cqq_ncQu.js} +0 -0
  210. /package/app/dist/assets/{gruvbox-dark-soft-BpNWvgik.js → gruvbox-dark-soft-B4QwL2a9.js} +0 -0
  211. /package/app/dist/assets/{gruvbox-light-hard-CC8CVJp5.js → gruvbox-light-hard-DLayMKOQ.js} +0 -0
  212. /package/app/dist/assets/{gruvbox-light-medium-D2yGUmJd.js → gruvbox-light-medium-D52XgPKf.js} +0 -0
  213. /package/app/dist/assets/{gruvbox-light-soft-C_9RTTTT.js → gruvbox-light-soft-Dola3KdD.js} +0 -0
  214. /package/app/dist/assets/{haskell-BFZjB68l.js → haskell-ys7wPPEd.js} +0 -0
  215. /package/app/dist/assets/{haxe-DDQKctJt.js → haxe-94kiChn7.js} +0 -0
  216. /package/app/dist/assets/{hcl-DUAADz_v.js → hcl-DmHt_-wq.js} +0 -0
  217. /package/app/dist/assets/{hjson-DyGphq4K.js → hjson-xMmoJ0Gx.js} +0 -0
  218. /package/app/dist/assets/{hlsl-BVEJlW36.js → hlsl-b-Pskdze.js} +0 -0
  219. /package/app/dist/assets/{horizon-BZmYXqIF.js → horizon-BKMqttiR.js} +0 -0
  220. /package/app/dist/assets/{horizon-bright-D0uooZm5.js → horizon-bright-HNkBlnm5.js} +0 -0
  221. /package/app/dist/assets/{houston-BUtcOxf9.js → houston-BkBSBSOQ.js} +0 -0
  222. /package/app/dist/assets/{hy-oWi_RwAK.js → hy-DKl1XhBq.js} +0 -0
  223. /package/app/dist/assets/{imba-iwzgkuTD.js → imba-DPxkOTAg.js} +0 -0
  224. /package/app/dist/assets/{ini-BNaakZQr.js → ini-lkLGq_1x.js} +0 -0
  225. /package/app/dist/assets/{json5-Y2CuQCK-.js → json5-Cy6ypJuJ.js} +0 -0
  226. /package/app/dist/assets/{jsonc-B30nqSUF.js → jsonc-Cw2ugYAK.js} +0 -0
  227. /package/app/dist/assets/{jsonl-B7UEa0TN.js → jsonl-Dp5_qBVH.js} +0 -0
  228. /package/app/dist/assets/{jsonnet-ZiCJB3SD.js → jsonnet-BTbmg_-u.js} +0 -0
  229. /package/app/dist/assets/{jssm-BOfC2rh1.js → jssm-CnT7nPea.js} +0 -0
  230. /package/app/dist/assets/{kanagawa-dragon-BVoApXR6.js → kanagawa-dragon-CxsBnuhV.js} +0 -0
  231. /package/app/dist/assets/{kanagawa-lotus-C-uV5im6.js → kanagawa-lotus-vHdxDDOS.js} +0 -0
  232. /package/app/dist/assets/{kanagawa-wave-BizPisns.js → kanagawa-wave-CIkfTKWk.js} +0 -0
  233. /package/app/dist/assets/{kdl-Bg7xxjIF.js → kdl-BwK60g80.js} +0 -0
  234. /package/app/dist/assets/{kotlin-CNprttl8.js → kotlin-Dbd9Vi-v.js} +0 -0
  235. /package/app/dist/assets/{kusto-D3uRUZFA.js → kusto-BuTk9usc.js} +0 -0
  236. /package/app/dist/assets/{laserwave-BypMvj8s.js → laserwave-C0wf_d3o.js} +0 -0
  237. /package/app/dist/assets/{lean-BbKKg8_U.js → lean-CYAW8bRN.js} +0 -0
  238. /package/app/dist/assets/{less-6BW8xQaX.js → less-D4uen21c.js} +0 -0
  239. /package/app/dist/assets/{light-plus-zSYF2DYe.js → light-plus-oqYyWKEE.js} +0 -0
  240. /package/app/dist/assets/{llvm-OMExIg60.js → llvm-Z1xJzteV.js} +0 -0
  241. /package/app/dist/assets/{log-BBfW4u9k.js → log-BGUxlsk3.js} +0 -0
  242. /package/app/dist/assets/{logo-D8GGcRiY.js → logo-wVUhvQ1b.js} +0 -0
  243. /package/app/dist/assets/{luau-CZIl0XK4.js → luau-rPFZzCmq.js} +0 -0
  244. /package/app/dist/assets/{make-mlZyflos.js → make-BmPf6m0P.js} +0 -0
  245. /package/app/dist/assets/{markdown-CppElJDR.js → markdown-AseU6zcW.js} +0 -0
  246. /package/app/dist/assets/{material-theme-OBz0sIMu.js → material-theme-6_W6rQhR.js} +0 -0
  247. /package/app/dist/assets/{material-theme-darker-BNfFk916.js → material-theme-darker-VPEo3Sem.js} +0 -0
  248. /package/app/dist/assets/{material-theme-lighter-D0OJsx_T.js → material-theme-lighter-CUhzCcZ9.js} +0 -0
  249. /package/app/dist/assets/{material-theme-ocean-CKWC7YJB.js → material-theme-ocean-B2JdsaGb.js} +0 -0
  250. /package/app/dist/assets/{material-theme-palenight-DOTFIR3W.js → material-theme-palenight-DhY-sklA.js} +0 -0
  251. /package/app/dist/assets/{matlab-CwLrY_Ss.js → matlab-BOj_BDQv.js} +0 -0
  252. /package/app/dist/assets/{mdx-OZt5aooY.js → mdx-Cm6cDkDI.js} +0 -0
  253. /package/app/dist/assets/{mermaid-mzvznqsh.js → mermaid-DLO-R4hv.js} +0 -0
  254. /package/app/dist/assets/{min-dark-BAbZNtjj.js → min-dark-D34a_pX7.js} +0 -0
  255. /package/app/dist/assets/{min-light-BzEisXBR.js → min-light-Cdd4KORE.js} +0 -0
  256. /package/app/dist/assets/{mipsasm-DONjtc4L.js → mipsasm-DYpHF-GA.js} +0 -0
  257. /package/app/dist/assets/{mojo-CHKQ5hW9.js → mojo-DqYVFv_G.js} +0 -0
  258. /package/app/dist/assets/{monokai-B8rLeJY_.js → monokai-CDR4sQ2n.js} +0 -0
  259. /package/app/dist/assets/{moonbit-CWIHpJf0.js → moonbit-DRKee9wk.js} +0 -0
  260. /package/app/dist/assets/{move-Dy7CmIgW.js → move-DbRk6Vn9.js} +0 -0
  261. /package/app/dist/assets/{narrat-NioX5-_j.js → narrat-IOfmaXfb.js} +0 -0
  262. /package/app/dist/assets/{nextflow-groovy-jKlTICX_.js → nextflow-groovy-EYl0c2BQ.js} +0 -0
  263. /package/app/dist/assets/{night-owl-light-C_DkqGGe.js → night-owl-light-Bedht9b4.js} +0 -0
  264. /package/app/dist/assets/{night-owl-C_xVeV9U.js → night-owl-yQJ3-I0I.js} +0 -0
  265. /package/app/dist/assets/{nix-BZVKmCQS.js → nix-C2IovEl2.js} +0 -0
  266. /package/app/dist/assets/{nord-CrTSutxR.js → nord-BjZ63GNL.js} +0 -0
  267. /package/app/dist/assets/{nushell-C8hgS98n.js → nushell-BflTrRB5.js} +0 -0
  268. /package/app/dist/assets/{objective-c-BUiYTSad.js → objective-c-GRClK1S7.js} +0 -0
  269. /package/app/dist/assets/{objective-cpp-BwY1U2XT.js → objective-cpp-l3qYw-v5.js} +0 -0
  270. /package/app/dist/assets/{ocaml-D51PiCY5.js → ocaml-BBDyhyMH.js} +0 -0
  271. /package/app/dist/assets/{odin-CoC4d8pi.js → odin-jCJ7Js99.js} +0 -0
  272. /package/app/dist/assets/{one-dark-pro-C9bEA2Dz.js → one-dark-pro-PIx2Diul.js} +0 -0
  273. /package/app/dist/assets/{one-light-DZ_5GYrV.js → one-light-BFMEz49S.js} +0 -0
  274. /package/app/dist/assets/{openscad-DCmPLSXt.js → openscad-Drf0LgCX.js} +0 -0
  275. /package/app/dist/assets/{pascal-BMY45JJO.js → pascal-BT2XAUTl.js} +0 -0
  276. /package/app/dist/assets/{pierre-dark-CMWr1OVv.js → pierre-dark-BMm5HxPQ.js} +0 -0
  277. /package/app/dist/assets/{pierre-light-DhtJ5n85.js → pierre-light-DyzEot4Q.js} +0 -0
  278. /package/app/dist/assets/{pkl-BlBky-cR.js → pkl-ML-dWShO.js} +0 -0
  279. /package/app/dist/assets/{plastic-C50vuo0c.js → plastic-BFI-Z5Z2.js} +0 -0
  280. /package/app/dist/assets/{plsql-B6Eq-lAd.js → plsql-0vd5cLro.js} +0 -0
  281. /package/app/dist/assets/{po-ByS5p8Sz.js → po-CbZ_uqQA.js} +0 -0
  282. /package/app/dist/assets/{poimandres-Cs9j_baE.js → poimandres-Cayhd01L.js} +0 -0
  283. /package/app/dist/assets/{polar-COmSbiHW.js → polar-C4hfV8Nc.js} +0 -0
  284. /package/app/dist/assets/{postcss-D_ArMqNC.js → postcss-osFUbTLw.js} +0 -0
  285. /package/app/dist/assets/{powerquery-BzHwsYRb.js → powerquery-CTlGUQPj.js} +0 -0
  286. /package/app/dist/assets/{powershell-C6bIwB0M.js → powershell-DyZsOmuq.js} +0 -0
  287. /package/app/dist/assets/{prisma-D5S9vj6g.js → prisma-SS92PO_I.js} +0 -0
  288. /package/app/dist/assets/{prolog-CHVuxG8M.js → prolog-B1O1NNVC.js} +0 -0
  289. /package/app/dist/assets/{proto-BhkmoXVj.js → proto-BWu3eZTs.js} +0 -0
  290. /package/app/dist/assets/{puppet-Brdz8eoo.js → puppet-tvtRVdr6.js} +0 -0
  291. /package/app/dist/assets/{purescript-DX3wKXeK.js → purescript-Dtbpb7D-.js} +0 -0
  292. /package/app/dist/assets/{python-CUtprRpG.js → python-Dlk0Acio.js} +0 -0
  293. /package/app/dist/assets/{qmldir-ftS4SxdQ.js → qmldir-B-iEOngH.js} +0 -0
  294. /package/app/dist/assets/{qss-Mo-j41VR.js → qss-Ba0p-aHw.js} +0 -0
  295. /package/app/dist/assets/{racket-CrTD1_3_.js → racket-BXDsxf2U.js} +0 -0
  296. /package/app/dist/assets/{raku-Bhig3MAC.js → raku-Dw1WWFXK.js} +0 -0
  297. /package/app/dist/assets/{red-CWX-2pbk.js → red-BC3Ds49b.js} +0 -0
  298. /package/app/dist/assets/{reg-C0s7-4s0.js → reg-DXFHGaM4.js} +0 -0
  299. /package/app/dist/assets/{rel-D1_XRRAX.js → rel-Dc5_Ytx2.js} +0 -0
  300. /package/app/dist/assets/{riscv-QV-e36TY.js → riscv-ZgswiWij.js} +0 -0
  301. /package/app/dist/assets/{ron-B-EB7ZBI.js → ron-YghabWAH.js} +0 -0
  302. /package/app/dist/assets/{rose-pine-Dxqc8n_1.js → rose-pine-ByWLnVr3.js} +0 -0
  303. /package/app/dist/assets/{rose-pine-dawn-pz_3O4ep.js → rose-pine-dawn-DBmeySrz.js} +0 -0
  304. /package/app/dist/assets/{rose-pine-moon-B27idgkd.js → rose-pine-moon-B9J-N3nK.js} +0 -0
  305. /package/app/dist/assets/{rosmsg-CcBwQf5j.js → rosmsg-DTKmAsVH.js} +0 -0
  306. /package/app/dist/assets/{rust-ppknoGus.js → rust-nfXwuE6F.js} +0 -0
  307. /package/app/dist/assets/{sass-Baw41att.js → sass-CbRjkld3.js} +0 -0
  308. /package/app/dist/assets/{scala-DtlnBhKt.js → scala-BzD3eypx.js} +0 -0
  309. /package/app/dist/assets/{scheme-DYQMayIi.js → scheme-D4d1PV1y.js} +0 -0
  310. /package/app/dist/assets/{sdbl-D0gXyfL6.js → sdbl-Cf-Ydnvx.js} +0 -0
  311. /package/app/dist/assets/{slack-dark-D27cdsBY.js → slack-dark-MszIyPZ2.js} +0 -0
  312. /package/app/dist/assets/{slack-ochin-BaRZ7cFo.js → slack-ochin-tQ3Q0gE9.js} +0 -0
  313. /package/app/dist/assets/{smalltalk-DRM3jr39.js → smalltalk-_uWoArwn.js} +0 -0
  314. /package/app/dist/assets/{snazzy-light-BayTLer3.js → snazzy-light-9sniMEk5.js} +0 -0
  315. /package/app/dist/assets/{solarized-dark-Y31Htb59.js → solarized-dark-CdD0Hxzv.js} +0 -0
  316. /package/app/dist/assets/{solarized-light-B-u_T8hk.js → solarized-light-C-nsEdqF.js} +0 -0
  317. /package/app/dist/assets/{solidity-CYAp_sJG.js → solidity-D6uC-xwP.js} +0 -0
  318. /package/app/dist/assets/{splunk-LsCTpuOP.js → splunk-LQYHRu14.js} +0 -0
  319. /package/app/dist/assets/{ssh-config-QxQe7y21.js → ssh-config-B7BUl8Rd.js} +0 -0
  320. /package/app/dist/assets/{stylus-DZvi0832.js → stylus-Byjxdx_q.js} +0 -0
  321. /package/app/dist/assets/{swift-BBBWvOdl.js → swift-BexLlMrU.js} +0 -0
  322. /package/app/dist/assets/{synthwave-84-Dq9WAwjJ.js → synthwave-84-BxMBwQMS.js} +0 -0
  323. /package/app/dist/assets/{system-verilog-Ddagu-BW.js → system-verilog-DVGwm0mw.js} +0 -0
  324. /package/app/dist/assets/{systemd-BxlmhgV_.js → systemd-H2IT3-p5.js} +0 -0
  325. /package/app/dist/assets/{talonscript-p-GlmLEL.js → talonscript-mKZIGM8n.js} +0 -0
  326. /package/app/dist/assets/{tasl-BNm9EzXM.js → tasl-B7he_Ugr.js} +0 -0
  327. /package/app/dist/assets/{tcl-BQwTCs7_.js → tcl-5mT3RxHH.js} +0 -0
  328. /package/app/dist/assets/{terraform-DQhgYyF5.js → terraform-BZP0GLsT.js} +0 -0
  329. /package/app/dist/assets/{tokyo-night-DxL5lL62.js → tokyo-night-CTPVdZt9.js} +0 -0
  330. /package/app/dist/assets/{toml-BncMjmx0.js → toml-CTFA98he.js} +0 -0
  331. /package/app/dist/assets/{tsv--yOlbuAc.js → tsv-BayJtYdY.js} +0 -0
  332. /package/app/dist/assets/{turtle-ZCrKgE8E.js → turtle-TVCBh_kY.js} +0 -0
  333. /package/app/dist/assets/{typespec-9rD7KG94.js → typespec-BUvaJDLF.js} +0 -0
  334. /package/app/dist/assets/{typst-DJ10KoY6.js → typst-8NBaY7Ec.js} +0 -0
  335. /package/app/dist/assets/{v-CutuAYrg.js → v-VihyTigi.js} +0 -0
  336. /package/app/dist/assets/{vala-DJpFErrU.js → vala-DyFAPyX6.js} +0 -0
  337. /package/app/dist/assets/{vb-DQuyY02M.js → vb-Dg1Iqi4J.js} +0 -0
  338. /package/app/dist/assets/{verilog-BuvxZrtu.js → verilog-D2Xc-vhD.js} +0 -0
  339. /package/app/dist/assets/{vesper-bM1AKkiO.js → vesper-DJbtqYNr.js} +0 -0
  340. /package/app/dist/assets/{vhdl-pScFq2IF.js → vhdl-CU3BVeE7.js} +0 -0
  341. /package/app/dist/assets/{viml-LZIbwXqf.js → viml-hG2shuOW.js} +0 -0
  342. /package/app/dist/assets/{vitesse-black-BhKXUSxn.js → vitesse-black-DbG2gsc0.js} +0 -0
  343. /package/app/dist/assets/{vitesse-dark-BzqhRcAC.js → vitesse-dark-B6WV4xXH.js} +0 -0
  344. /package/app/dist/assets/{vitesse-light-C6rj90Ld.js → vitesse-light-DC1pdD02.js} +0 -0
  345. /package/app/dist/assets/{vyper-CAC2wkEx.js → vyper-C1wojIuk.js} +0 -0
  346. /package/app/dist/assets/{wasm-JuQDwMf4.js → wasm-C6Y0s02M.js} +0 -0
  347. /package/app/dist/assets/{wasm-C9fkFrNS.js → wasm-y20ImDym.js} +0 -0
  348. /package/app/dist/assets/{wenyan-BtC3dCkd.js → wenyan-BG5vPQF0.js} +0 -0
  349. /package/app/dist/assets/{wgsl-BfhDoYq0.js → wgsl-DrVb-Cub.js} +0 -0
  350. /package/app/dist/assets/{wikitext-BN0a9cMl.js → wikitext-PRC4s8sH.js} +0 -0
  351. /package/app/dist/assets/{wit-B5eB3VJ4.js → wit-ChW5qvg_.js} +0 -0
  352. /package/app/dist/assets/{wolfram-hGtNh8mf.js → wolfram-B8mKuZSQ.js} +0 -0
  353. /package/app/dist/assets/{xterm-CoRq-s8T.js → xterm-DGJHbKBQ.js} +0 -0
  354. /package/app/dist/assets/{zenscript-Dl5s7Kfy.js → zenscript-C-jEPC9j.js} +0 -0
  355. /package/app/dist/assets/{zig-Dashm4F0.js → zig-EbnRGjcz.js} +0 -0
@@ -0,0 +1,2680 @@
1
+ import{$i as e,$r as t,Ai as n,An as r,B as i,Dt as a,Fr as o,I as s,Ir as c,It as l,Jr as u,Jt as d,Kn as f,Mt as p,N as m,P as h,Qn as g,Qr as _,Qt as v,R as y,V as b,Vt as x,Xt as S,Yr as C,Yt as w,Zr as T,Zt as E,_i as D,aa as O,ar as k,ea as A,ei as j,er as M,gi as N,hi as P,jn as F,jt as I,ki as ee,kn as te,kr as ne,mi as L,n as re,ni as R,nr as ie,or as z,qn as B,qt as ae,rr as oe,si as V,t as se,tr as ce,un as le,wn as ue,zn as de}from"./page-shell-BYLrlYTH.js";import{Ft as fe,Pt as pe,St as me,a as he,f as H,gt as ge,l as _e,m as U,s as ve,t as ye,u as be}from"./effective-hosts-D-vDT9_r.js";import{E as xe,S as Se,T as Ce,_ as we,a as Te,c as Ee,d as De,f as Oe,g as ke,h as Ae,i as je,l as Me,o as Ne,p as Pe,r as Fe,s as Ie,t as Le,u as Re,v as ze,w as Be,y as Ve}from"./thread-queries-VdTjp5RH.js";import{c as He,d as Ue,n as We,p as Ge,r as Ke,s as qe,u as Je}from"./chunk-JZWAC4HX-C_-VEW9Q.js";import{a as Ye,g as Xe,h as W,i as G,o as Ze,r as Qe,s as $e,t as et,u as tt,v as nt,y as rt}from"./dialog-BjpdbSmZ.js";import{A as it,O as at,S as ot,_ as st,a as ct,b as lt,g as ut,h as dt,k as ft,m as pt,p as mt,t as ht,v as gt,y as _t}from"./localhost-badge-C8-uvmR_.js";import{f as vt,v as yt,y as bt}from"./mutation-cache-effects-BAn11UmS.js";import{$ as xt,$t as St,A as Ct,At as wt,B as Tt,Bt as Et,Ct as Dt,D as Ot,Dt as kt,E as At,Et as jt,F as Mt,Ft as Nt,G as Pt,Gt as Ft,H as It,Ht as Lt,I as Rt,It as zt,J as Bt,Jt as Vt,K as Ht,Kt as Ut,L as Wt,Lt as Gt,M as Kt,Mt as qt,N as Jt,Nt as Yt,O as Xt,Ot as Zt,P as Qt,Q as $t,Qt as en,R as tn,Rt as nn,S as rn,St as an,T as on,Tt as sn,U as cn,Ut as ln,V as un,W as dn,Wt as fn,X as pn,Xt as mn,Y as hn,Yt as gn,Z as _n,_ as vn,_t as yn,a as bn,at as xn,b as Sn,bt as Cn,c as wn,ct as Tn,d as En,dn as Dn,dt as On,en as kn,et as An,f as jn,ft as Mn,g as Nn,gt as Pn,h as Fn,ht as In,i as Ln,it as Rn,j as zn,jt as Bn,k as Vn,kt as Hn,l as Un,lt as Wn,m as Gn,mt as Kn,n as qn,nt as Jn,o as Yn,on as Xn,ot as Zn,p as Qn,pt as $n,q as er,qt as tr,r as nr,rt as rr,s as ir,sn as ar,st as or,t as sr,tt as cr,u as lr,un as ur,ut as dr,v as fr,vt as pr,w as mr,wt as hr,x as gr,xt as _r,y as vr,yt as yr,z as br}from"./index-D2Ze5muL.js";import{t as xr}from"./pill-C-0inATv.js";import{t as Sr}from"./split-button-BVu8nD9J.js";import{t as Cr}from"./ThreadUnarchiveButton-CdRo7M97.js";var K=O(e(),1);function wr(e,t){return it((0,K.useMemo)(()=>rt(null,(t,n,...r)=>e(t,n,...r)),[e]),t)}var Tr=class{highlighter;renderCache;computedLang=`text`;lineAnnotations={};constructor(e={theme:Bn},t,n){this.options=e,this.onRenderUpdate=t,this.workerManager=n,n?.isWorkingPool()!==!0&&(this.highlighter=Cn(e.theme??Bn)?an():void 0)}setOptions(e){this.options=e}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){(this.options.themeType??`system`)!==e&&this.mergeOptions({themeType:e})}setLineAnnotations(e){this.lineAnnotations={};for(let t of e){let e=this.lineAnnotations[t.lineNumber]??[];this.lineAnnotations[t.lineNumber]=e,e.push(t)}}cleanUp(){this.renderCache=void 0,this.highlighter=void 0,this.workerManager=void 0,this.onRenderUpdate=void 0}hydrate(e){let{options:t}=this.getRenderOptions(e),n=this.workerManager?.getFileResultCache(e);n!=null&&!Er(t,n.options)&&(n=void 0),this.renderCache??={file:e,options:t,highlighted:!0,result:n?.result},this.workerManager?.isWorkingPool()===!0&&this.renderCache.result==null?this.workerManager.highlightFileAST(this,e):this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}getRenderOptions(e){let t=(()=>{if(this.workerManager?.isWorkingPool()===!0)return this.workerManager.getFileRenderOptions();let{theme:e=Bn,tokenizeMaxLineLength:t=1e3}=this.options;return{theme:e,tokenizeMaxLineLength:t}})(),{renderCache:n}=this;return n?.result==null||e!==n.file||!Er(t,n.options)?{options:t,forceRender:!0}:{options:t,forceRender:!1}}renderFile(e=this.renderCache?.file){if(e==null)return;let t=this.workerManager?.getFileResultCache(e);t!=null&&this.renderCache==null&&(this.renderCache={file:e,highlighted:!0,...t});let{options:n,forceRender:r}=this.getRenderOptions(e);if(this.renderCache??={file:e,highlighted:!1,options:n,result:void 0},this.workerManager?.isWorkingPool()===!0)this.renderCache.result??=this.workerManager.getPlainFileAST(e),(!this.renderCache.highlighted||r)&&this.workerManager.highlightFileAST(this,e);else{this.computedLang=e.lang??$n(e.name);let t=this.highlighter!=null&&Cn(n.theme),i=this.highlighter!=null&&sn(this.computedLang);if(this.highlighter!=null&&t&&(r||!this.renderCache.highlighted&&i||this.renderCache.result==null)){let{result:t,options:n}=this.renderFileWithHighlighter(e,this.highlighter,!i);this.renderCache={file:e,options:n,highlighted:i,result:t}}(!t||!i)&&this.asyncHighlight(e).then(({result:t,options:n})=>{this.onHighlightSuccess(e,t,n)})}return this.renderCache.result==null?void 0:this.processFileResult(this.renderCache.file,this.renderCache.result)}async asyncRender(e){let{result:t}=await this.asyncHighlight(e);return this.processFileResult(e,t)}async asyncHighlight(e){this.computedLang=e.lang??$n(e.name);let t=this.highlighter!=null&&yr(_r(this.options.theme)),n=this.highlighter!=null&&sn(this.computedLang);return(this.highlighter==null||!t||!n)&&(this.highlighter=await this.initializeHighlighter()),this.renderFileWithHighlighter(e,this.highlighter)}renderFileWithHighlighter(e,t,n=!1){let{options:r}=this.getRenderOptions(e);return{result:dr(e,t,r,n),options:r}}processFileResult(e,t){let{disableFileHeader:n=!1}=this.options,r=[],i=1;for(let e of t.code){r.push(e);let t=this.lineAnnotations[i];t!=null&&r.push(Pn({type:`annotation`,hunkIndex:0,lineIndex:i,annotations:t.map(e=>On(e))})),i++}return{codeAST:r,preAST:this.createPreElement(t.code.length,t.themeStyles,t.baseThemeType),headerAST:n?void 0:this.renderHeader(e,t.themeStyles,t.baseThemeType),totalLines:t.code.length,themeStyles:t.themeStyles,baseThemeType:t.baseThemeType,css:``}}renderHeader(e,t,n){let{themeType:r=`system`}=this.options;return In({fileOrDiff:e,themeStyles:t,themeType:n??r})}renderFullHTML(e){return hr(this.renderFullAST(e))}renderFullAST(e,t=[]){return t.push(yn({tagName:`code`,children:e.codeAST,properties:{"data-code":``}})),{...e.preAST,children:t}}renderPartialHTML(e,t=!1){return hr(t?yn({tagName:`code`,children:e,properties:{"data-code":``}}):e)}async initializeHighlighter(){return this.highlighter=await Dt(Mn(this.computedLang,this.options)),this.highlighter}onHighlightSuccess(e,t,n){if(this.renderCache==null)return;let r=this.renderCache.file!==e||!this.renderCache.highlighted||!Er(n,this.renderCache.options);this.renderCache={file:e,options:n,highlighted:!0,result:t},r&&this.onRenderUpdate?.()}onHighlightError(e){console.error(e)}createPreElement(e,t,n){let{disableLineNumbers:r=!1,overflow:i=`scroll`,themeType:a=`system`}=this.options;return Kn({diffIndicators:`none`,disableBackground:!0,disableLineNumbers:r,overflow:i,themeStyles:t,themeType:n??a,split:!1,totalLines:e})}};function Er(e,t){return pr(e.theme,t.theme)&&e.tokenizeMaxLineLength===t.tokenizeMaxLineLength}var Dr=-1,Or=class{static LoadedCustomComponent=!0;__id=++Dr;fileContainer;spriteSVG;pre;code;unsafeCSSStyle;hoverContent;errorWrapper;headerElement;headerMetadata;fileRenderer;resizeManager;mouseEventManager;lineSelectionManager;annotationElements=[];lineAnnotations=[];file;constructor(e={theme:Bn},t,n=!1){this.options=e,this.workerManager=t,this.isContainerManaged=n,this.fileRenderer=new Tr(e,this.handleHighlightRender,this.workerManager),this.resizeManager=new jt,this.mouseEventManager=new kt(`file`,Zt(e)),this.lineSelectionManager=new Hn(wt(e)),this.workerManager?.subscribeToThemeChanges(this)}handleHighlightRender=()=>{this.rerender()};rerender(){this.file!=null&&this.render({file:this.file,forceRender:!0})}setOptions(e){e!=null&&(this.options=e,this.mouseEventManager.setOptions(Zt(e)),this.lineSelectionManager.setOptions(wt(e)))}mergeOptions(e){this.options={...this.options,...e}}setThemeType(e){if((this.options.themeType??`system`)!==e&&(this.mergeOptions({themeType:e}),this.fileRenderer.setThemeType(e),this.headerElement!=null&&(e===`system`?delete this.headerElement.dataset.themeType:this.headerElement.dataset.themeType=e),this.pre!=null))switch(e){case`system`:delete this.pre.dataset.themeType;break;case`light`:case`dark`:this.pre.dataset.themeType=e;break}}getHoveredLine=()=>this.mouseEventManager.getHoveredLine();setLineAnnotations(e){this.lineAnnotations=e}setSelectedLines(e){this.lineSelectionManager.setSelection(e)}cleanUp(){this.fileRenderer.cleanUp(),this.resizeManager.cleanUp(),this.mouseEventManager.cleanUp(),this.lineSelectionManager.cleanUp(),this.workerManager?.unsubscribeToThemeChanges(this),this.workerManager=void 0,this.file=void 0,this.isContainerManaged||this.fileContainer?.parentNode?.removeChild(this.fileContainer),this.fileContainer?.shadowRoot!=null&&(this.fileContainer.shadowRoot.innerHTML=``),this.fileContainer=void 0,this.pre=void 0,this.headerElement=void 0,this.errorWrapper=void 0,this.unsafeCSSStyle=void 0}hydrate(e){let{fileContainer:t,prerenderedHTML:n}=e;Jn(t,n);for(let e of Array.from(t.shadowRoot?.children??[])){if(e instanceof SVGElement){this.spriteSVG=e;continue}if(e instanceof HTMLElement){if(e instanceof HTMLPreElement){this.pre=e;continue}if(e instanceof HTMLStyleElement&&e.hasAttribute(`data-unsafe-css`)){this.unsafeCSSStyle=e;continue}if(`diffsHeader`in e.dataset){this.headerElement=e;continue}}}if(this.pre==null)this.render(e);else{let{file:n,lineAnnotations:r}=e;this.fileContainer=t,delete this.pre.dataset.dehydrated,this.lineAnnotations=r??this.lineAnnotations,this.file=n,this.fileRenderer.hydrate(n),this.renderAnnotations(),this.renderHoverUtility(),this.injectUnsafeCSS(),this.mouseEventManager.setup(this.pre),this.lineSelectionManager.setup(this.pre),(this.options.overflow??`scroll`)===`scroll`&&this.resizeManager.setup(this.pre)}}render({file:e,fileContainer:t,forceRender:n=!1,containerWrapper:r,lineAnnotations:i}){let a=i!=null&&(i.length>0||this.lineAnnotations.length>0)?i!==this.lineAnnotations:!1;if(!n&&Tn(this.file,e)&&!a)return;this.file=e,this.fileRenderer.setOptions(this.options),i!=null&&this.setLineAnnotations(i),this.fileRenderer.setLineAnnotations(this.lineAnnotations);let{disableFileHeader:o=!1,disableErrorHandling:s=!1}=this.options;o&&this.headerElement!=null&&(this.headerElement.parentNode?.removeChild(this.headerElement),this.headerElement=void 0),t=this.getOrCreateFileContainerNode(t,r);try{let n=this.fileRenderer.renderFile(e);if(n==null){this.workerManager!=null&&!this.workerManager.isInitialized()&&this.workerManager.initialize().then(()=>this.rerender());return}n.headerAST!=null&&this.applyHeaderToDOM(n.headerAST,t);let r=this.getOrCreatePreNode(t);this.applyHunksToDOM(n,r),this.renderAnnotations(),this.renderHoverUtility()}catch(e){if(s)throw e;console.error(e),e instanceof Error&&this.applyErrorToDOM(e,t)}}renderAnnotations(){if(this.isContainerManaged||this.fileContainer==null)return;for(let e of this.annotationElements)e.parentNode?.removeChild(e);this.annotationElements.length=0;let{renderAnnotation:e}=this.options;if(e!=null&&this.lineAnnotations.length>0)for(let t of this.lineAnnotations){let n=e(t);if(n==null)continue;let r=or(On(t));r.appendChild(n),this.annotationElements.push(r),this.fileContainer.appendChild(r)}}renderHoverUtility(){let{renderHoverUtility:e}=this.options;if(this.fileContainer==null||e==null)return;this.hoverContent??(this.hoverContent=xn(),this.fileContainer.appendChild(this.hoverContent));let t=e(this.mouseEventManager.getHoveredLine);this.hoverContent.innerHTML=``,t!=null&&this.hoverContent.appendChild(t)}injectUnsafeCSS(){if(this.fileContainer?.shadowRoot==null)return;let{unsafeCSS:e}=this.options;if(e==null||e===``){this.unsafeCSSStyle!=null&&(this.unsafeCSSStyle.parentNode?.removeChild(this.unsafeCSSStyle),this.unsafeCSSStyle=void 0);return}this.unsafeCSSStyle??(this.unsafeCSSStyle=Rn(),this.fileContainer.shadowRoot.appendChild(this.unsafeCSSStyle)),this.unsafeCSSStyle.innerText=rr(e)}applyHunksToDOM(e,t){this.cleanupErrorWrapper(),this.applyPreNodeAttributes(t,e),t.innerHTML=``,this.code=Zn(),this.code.innerHTML=this.fileRenderer.renderPartialHTML(e.codeAST),t.appendChild(this.code),this.injectUnsafeCSS(),this.mouseEventManager.setup(t),this.lineSelectionManager.setup(t),this.lineSelectionManager.setDirty(),(this.options.overflow??`scroll`)===`scroll`?this.resizeManager.setup(t):this.resizeManager.cleanUp()}applyHeaderToDOM(e,t){let{file:n}=this;if(n==null)return;this.cleanupErrorWrapper();let r=document.createElement(`div`);r.innerHTML=hr(e);let i=r.firstElementChild;if(!(i instanceof HTMLElement)||(this.headerElement==null?t.shadowRoot?.prepend(i):t.shadowRoot?.replaceChild(i,this.headerElement),this.headerElement=i,this.isContainerManaged))return;let{renderCustomMetadata:a}=this.options;this.headerMetadata!=null&&this.headerMetadata.parentNode?.removeChild(this.headerMetadata);let o=a?.(n)??void 0;o!=null&&(this.headerMetadata=document.createElement(`div`),this.headerMetadata.slot=Yt,o instanceof Element?this.headerMetadata.appendChild(o):this.headerMetadata.innerText=`${o}`,t.appendChild(this.headerMetadata))}getOrCreateFileContainerNode(e,t){if(this.fileContainer=e??this.fileContainer??document.createElement(`diffs-container`),t!=null&&this.fileContainer.parentNode!==t&&t.appendChild(this.fileContainer),this.spriteSVG==null){let e=document.createElement(`div`);e.innerHTML=Wn;let t=e.firstChild;t instanceof SVGElement&&(this.spriteSVG=t,this.fileContainer.shadowRoot?.appendChild(this.spriteSVG))}return this.fileContainer}getOrCreatePreNode(e){return this.pre==null?(this.pre=document.createElement(`pre`),e.shadowRoot?.appendChild(this.pre)):this.pre.parentNode!==e&&e.shadowRoot?.appendChild(this.pre),this.pre}applyPreNodeAttributes(e,{totalLines:t,themeStyles:n,baseThemeType:r}){let{overflow:i=`scroll`,themeType:a=`system`,disableLineNumbers:o=!1}=this.options;cr({pre:e,split:!1,themeStyles:n,overflow:i,disableLineNumbers:o,themeType:r??a,diffIndicators:`none`,disableBackground:!0,totalLines:t})}applyErrorToDOM(e,t){this.cleanupErrorWrapper();let n=this.getOrCreatePreNode(t);n.innerHTML=``,n.parentNode?.removeChild(n),this.pre=void 0;let r=t.shadowRoot??t.attachShadow({mode:`open`});this.errorWrapper??=document.createElement(`div`),this.errorWrapper.dataset.errorWrapper=``,this.errorWrapper.innerHTML=``,r.appendChild(this.errorWrapper);let i=document.createElement(`div`);i.dataset.errorMessage=``,i.innerText=e.message,this.errorWrapper.appendChild(i);let a=document.createElement(`pre`);a.dataset.errorStack=``,a.innerText=e.stack??`No Error Stack`,this.errorWrapper.appendChild(a)}cleanupErrorWrapper(){this.errorWrapper?.parentNode?.removeChild(this.errorWrapper),this.errorWrapper=void 0}},q=n();function kr({file:e,renderHeaderMetadata:t,renderAnnotation:n,lineAnnotations:r,renderHoverUtility:i,getHoveredLine:a}){let o=t?.(e);return(0,q.jsxs)(q.Fragment,{children:[o!=null&&(0,q.jsx)(`div`,{slot:`header-metadata`,children:o}),n!=null&&r?.map((e,t)=>(0,q.jsx)(`div`,{slot:On(e),children:n(e)},t)),i!=null&&(0,q.jsx)(`div`,{slot:`hover-slot`,style:xt,children:i(a)})]})}var Ar=typeof window>`u`?K.useEffect:K.useLayoutEffect;function jr({file:e,options:t,lineAnnotations:n,selectedLines:r,prerenderedHTML:i}){let a=(0,K.useContext)(pn),o=(0,K.useRef)(null),s=hn(r=>{if(r!=null){if(o.current!=null)throw Error(`File: An instance should not already exist when a node is created`);o.current=new Or(t,a,!0),o.current.hydrate({file:e,fileContainer:r,lineAnnotations:n,prerenderedHTML:i})}else{if(o.current==null)throw Error(`File: A File instance should exist when unmounting`);o.current.cleanUp(),o.current=null}});return Ar(()=>{if(o.current==null)return;let i=!An(o.current.options,t);o.current.setOptions(t),o.current.render({file:e,lineAnnotations:n,forceRender:i}),r!==void 0&&o.current.setSelectedLines(r)}),{ref:s,getHoveredLine:(0,K.useCallback)(()=>o.current?.getHoveredLine(),[])}}function Mr({file:e,lineAnnotations:t,selectedLines:n,options:r,className:i,style:a,renderAnnotation:o,renderHeaderMetadata:s,prerenderedHTML:c,renderHoverUtility:l}){let{ref:u,getHoveredLine:d}=jr({file:e,options:r,lineAnnotations:t,selectedLines:n,prerenderedHTML:c});return(0,q.jsx)(qt,{ref:u,className:i,style:a,children:$t(kr({file:e,renderAnnotation:o,renderHeaderMetadata:s,renderHoverUtility:l,lineAnnotations:t,getHoveredLine:d}),c)})}var Nr=8,Pr=1;function Fr(){let e=typeof navigator<`u`?navigator.hardwareConcurrency:void 0;return e===void 0||e<=2?Pr:Math.max(Pr,Math.min(Nr,e-1))}function Ir(){return new Worker(new URL(`/assets/worker-portable-CA4_6zkQ.js`,``+import.meta.url),{name:`pierre-diffs-worker`})}var Lr=`bb.thread.terminalPanelState`,Rr=336*60*60*1e3,zr=j({version:_(1),isOpen:C(),activeTerminalId:R().min(1).nullable(),panelHeightPercent:t().int().min(18).max(70),lastUsedAt:t().int().nonnegative()}).strict();function Br(){return typeof window>`u`?null:window.localStorage}function Vr(e){return encodeURIComponent(e.trim())}function Hr(e={}){return{version:1,isOpen:e.isOpen??!1,activeTerminalId:e.activeTerminalId??null,panelHeightPercent:e.panelHeightPercent??32,lastUsedAt:e.lastUsedAt??0}}var Ur=Hr();function Wr({threadId:e}){return`${Lr}-${Vr(e)}-1`}function Gr(e){return e.startsWith(`bb.thread.terminalPanelState-`)&&e.endsWith(`-1`)}function Kr({now:e,state:t}){return e-t.lastUsedAt>Rr}function qr({initialValue:e,now:t,storedValue:n}){return Jr({initialValue:e,now:t,storedValue:n}).state}function Jr({initialValue:e,now:t,storedValue:n}){if(n===null)return{shouldPrune:!1,state:e};let r;try{r=JSON.parse(n)}catch{return{shouldPrune:!0,state:e}}let i=zr.safeParse(r);return!i.success||Kr({now:t,state:i.data})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:i.data}}function Yr({state:e}){return JSON.stringify(e)}function Xr({now:e}){let t=Br();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Gr(r)&&n.push(r)}for(let r of n)Jr({initialValue:Ur,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Zr(e){return e!=null&&e.length>0}function Qr(e,t){return{...e,lastUsedAt:t}}var $r=tt({parse:(e,t)=>qr({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>Yr({state:e})}),ei=rt(Ur),ti=W(e=>nt(Wr({threadId:e}),Ur,$r,{getOnInit:!0}));function ni(e){return Zr(e)?ti(e):ei}function ri(e){return t=>t.isOpen===e?t:{...t,isOpen:e}}function ii(e){(0,K.useEffect)(()=>{Xr({now:Date.now()})},[e])}function ai(e){return ft(ni(e))}function oi(e){let t=it(ni(e));return(0,K.useCallback)(n=>{if(!Zr(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:Qr(t,r)})},[t,e])}function si(e){let t=oi(e);return(0,K.useCallback)(e=>{t(ri(e))},[t])}function ci(e){let t=oi(e);return(0,K.useCallback)(()=>{t(e=>({...e,isOpen:!e.isOpen}))},[t])}function li(){let e=ee();return N({meta:{errorMessage:`Failed to run environment action.`,showErrorToast:!1},mutationFn:({id:e,...t})=>r(e,t),onSuccess:(t,n)=>{yt({environmentId:n.id,queryClient:e})}})}function ui(){let e=ee();return N({meta:{errorMessage:`Failed to update environment.`,showErrorToast:!1},mutationFn:({id:e,...t})=>de(e,t),onSuccess:t=>{e.setQueryData(i(t.id),t),bt({environmentId:t.id,queryClient:e})}})}var di=1e4,fi=3e4;function pi(e,t){if(!e)throw Error(`${t}: environmentId is required when query is enabled`);return e}function mi(e){if(!e)throw Error(`useEnvironmentFilePreview: path is required when query is enabled`);return e}function hi(e){if(!e)throw Error(`useEnvironmentFilePreview: source is required when query is enabled`);return e}function gi(e){if(!e)throw Error(`useEnvironmentGitDiff: target is required when query is enabled`);return e}function _i(e,t){return D({queryKey:i(e),queryFn:()=>ae(pi(e,`useEnvironment`)),enabled:(t?.enabled??!0)&&!!e,staleTime:t?.staleTime})}function vi(e,t,n){return D({queryKey:b(e,t??null),queryFn:()=>v(pi(e,`useEnvironmentWorkStatus`),t),enabled:(n?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:di,placeholderData:(t,n)=>e?Ve(t,n?.queryKey,e):void 0})}function yi(e,t){return D({queryKey:y(e),queryFn:()=>w(e),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1,staleTime:fi})}function bi(e,t,n,r){return D({queryKey:h(e,t,n),queryFn:({signal:r})=>E({id:pi(e,`useEnvironmentFilePreview`),path:mi(t),source:hi(n),signal:r}),enabled:(r?.enabled??!0)&&!!e&&!!t&&n!==null,refetchOnWindowFocus:!1})}function xi(e,t){let n=t.target,r=n?.type===`commit`?n.sha:n?.type===`all`||n?.type===`branch_committed`?n.mergeBaseBranch:null;return D({queryKey:s(e,n?.type??null,r),queryFn:()=>d(e,gi(n)),enabled:(t.enabled??!0)&&!!e&&n!==void 0,placeholderData:(t,n)=>ze(t,n?.queryKey,e),refetchOnWindowFocus:!1,staleTime:5e3})}function Si(e){return{filesCount:e.files.length,insertions:e.insertions,deletions:e.deletions}}function Ci(e){return`${e} file${e===1?``:`s`}`}function wi(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=Ci(e.filesCount);return e.insertions===0&&e.deletions===0?t:`${t}, ${Ut({added:e.insertions,removed:e.deletions})}`}function Ti(e){if(e.filesCount===0&&e.insertions===0&&e.deletions===0)return`No changes`;let t=Ci(e.filesCount);return e.insertions===0&&e.deletions===0?t:(0,q.jsxs)(q.Fragment,{children:[t,`,`,` `,(0,q.jsx)(Gt,{insertions:e.insertions,deletions:e.deletions})]})}function Ei(e){if(!e)return[];let t=[],n=e.workingTree;if(n.files.length>0){let e=n.state===`untracked`;t.push({kind:e?`untracked`:`uncommitted`,label:e?`Untracked`:`Uncommitted`,files:n.files,mergeBaseRef:null,stats:n})}let r=e.mergeBase;return r&&r.files.length>0&&t.push({kind:`committed`,label:`Committed`,files:r.files,mergeBaseRef:r.baseRef,stats:r}),t}function Di(e){return Ei(e)[0]??null}function Oi(e){return e===`??`?`A?`:e}function ki({files:e,className:t=`max-h-32`,emptyMessage:n=`No changed files detected.`,onFileClick:r}){return!e||e.length===0?(0,q.jsx)(ar,{message:n}):(0,q.jsx)(`ul`,{className:P(`space-y-1 overflow-auto`,t),children:e.map(e=>(0,q.jsxs)(`li`,{className:`grid grid-cols-[1.5rem_minmax(0,1fr)_auto] items-start gap-x-3`,children:[(0,q.jsx)(`span`,{className:`text-xs leading-5 text-muted-foreground`,children:Oi(e.status)}),(0,q.jsx)(Ht,{path:e.path,onClick:r?()=>r(e):void 0}),e.insertions!==null&&e.deletions!==null?(0,q.jsx)(Gt,{insertions:e.insertions,deletions:e.deletions,hideZero:!0,className:`text-xs leading-5`}):null]},`${e.status}:${e.path}`))})}function Ai({sections:e,onFileClick:t,listClassName:n,rowClassName:r,rowValueClassName:i}){let[a,o]=(0,K.useState)(null);if(e.length===0)return null;let s=e.find(e=>e.kind===a)??e[0],c=Si(s.stats),l=e.length>1,u=(0,q.jsx)(`span`,{className:`truncate text-muted-foreground`,children:Ti(c)});return(0,q.jsx)(Jt,{label:l?(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`flex min-w-[var(--detail-label-width,96px)] items-baseline`,children:(0,q.jsxs)(he,{children:[(0,q.jsx)(H,{asChild:!0,children:(0,q.jsxs)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 w-auto min-w-0 justify-between gap-1 rounded-sm px-0 text-xs font-normal shadow-none hover:bg-transparent data-[state=open]:bg-transparent data-[state=open]:hover:bg-transparent`,title:s.label,"aria-label":`Switch changed files bucket`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:s.label}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ve,{align:`start`,children:e.map(e=>(0,q.jsxs)(_e,{onSelect:()=>o(e.kind),className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.label}),(0,q.jsx)(L,{name:`Check`,className:P(`size-3.5 shrink-0`,e.kind===s.kind?`opacity-100`:`opacity-0`)})]},e.kind))})]})}),u]}):(0,q.jsxs)(`span`,{className:`flex items-baseline gap-x-3`,children:[(0,q.jsx)(`span`,{className:`min-w-[var(--detail-label-width,96px)] truncate`,children:s.label}),u]}),orientation:`vertical`,className:r,valueClassName:i,children:(0,q.jsx)(ki,{files:s.files,className:n,onFileClick:t?e=>t({file:e,section:s}):void 0})})}function ji(e){switch(e.kind){case`commit`:return{title:`Commit changes`,description:`Create a commit from the current workspace changes.`,submitLabel:`Commit changes`,showCommitControls:!0,showMergeBase:!1};case`commit_and_squash_merge`:return{title:`Commit and squash merge`,description:`Commit the current workspace changes, then squash merge this branch.`,submitLabel:`Commit + squash merge`,showCommitControls:!0,showMergeBase:!0};case`squash_merge`:return{title:`Squash merge`,description:`Squash merge this branch into the selected merge base.`,submitLabel:`Squash merge`,showCommitControls:!1,showMergeBase:!0};default:return oe(e)}}function Mi({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o=!1,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l=!1,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p}){let m=(0,K.useMemo)(()=>e?ji(e):null,[e]);return(0,q.jsx)(et,{open:e!==null,onOpenChange:d,children:(0,q.jsx)(Qe,{className:`max-w-[34rem] gap-0 overflow-hidden border-border bg-background p-0 shadow-xl`,children:e&&m?(0,q.jsx)(Ni,{target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p},e.kind):null})})}function Ni({target:e,branchName:t,gitStatusDisplay:n,changedFilesSection:r,threadId:i,threadType:a,showMergeBaseDetails:o,mergeBaseBranch:s,mergeBaseBranchOptions:c,mergeBaseBranchOptionsLoading:l,onMergeBaseBranchChange:u,onOpenChange:d,onCommit:f,onSquashMerge:p}){let[m,h]=(0,K.useState)(null),g=ji(e),_=Qn({mergeBaseBranch:s,mergeBaseBranchOptions:c}),v=s??_[0],y=g.showMergeBase&&o===!0&&!!u&&_.length>0,b=g.showMergeBase&&o===!0&&(y||!!v),x=!!(r&&r.files.length>0);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(Ze,{className:`px-6 pt-5 pb-3`,children:[(0,q.jsx)($e,{children:g.title}),(0,q.jsx)(G,{children:g.description})]}),(0,q.jsxs)(`form`,{className:`space-y-4 px-6 pt-1 pb-5`,onSubmit:t=>{switch(t.preventDefault(),h(null),e.kind){case`commit`:d(!1),f();break;case`commit_and_squash_merge`:if(!v){h(`A merge base branch is required`);return}d(!1),p({mergeBaseBranch:v});break;case`squash_merge`:if(!v){h(`A merge base branch is required`);return}d(!1),p({mergeBaseBranch:v});break;default:oe(e)}},children:[t||n||b||x?(0,q.jsxs)(Kt,{appearance:`flat`,children:[t?(0,q.jsx)(Jt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(`span`,{className:`block truncate`,title:t,children:t})}):null,n?(0,q.jsx)(Jt,{label:`Git status`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2 whitespace-nowrap`,title:`${n.label} ${n.summary}`.trim(),children:[(0,q.jsx)(`span`,{className:`shrink-0 font-medium`,children:n.label}),(0,q.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:n.summaryContent})]})}):null,b&&v?(0,q.jsx)(Jt,{label:`Merge base`,valueClassName:`min-w-0`,children:y?(0,q.jsx)(jn,{value:v,options:_,loading:l,onChange:e=>u?.(e),className:`max-w-full`}):(0,q.jsx)(`span`,{className:`block truncate`,title:v,children:v})}):null,x&&r?(0,q.jsx)(Ai,{sections:[r],rowValueClassName:`pt-0.5`,listClassName:`max-h-40`}):null]}):null,(0,q.jsx)(mr,{message:m}),(0,q.jsx)(Ye,{children:(0,q.jsx)(V,{type:`submit`,disabled:g.showMergeBase&&!v,children:g.submitLabel})})]})]})}var Pi={vscode:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABzWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MTAyNDwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4xMDI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CsHtO6kAAAqwSURBVHgB7VtpbFTXFf5mX73vC9gGDBFLcOOSkNC0Jgk4aVMIDQii0hLUlB8hRK2gQW6pRNqkrZICaRNo4kQEKEoUIVVQ1HRBKiZg4rAYQ5ABY2yM443xeBkvs3lmes7YY4w9943neaOKr/T03rvbOd93zz333PtmgMk0ycAkA5MMTDLw9WVAMRLoHR0diQqFIkWlUsUplcpI6ktPzxqv16ui9xH1PVAv6o9ffXR5fD6fm+4OyrN5PB4rvTdERETc5gpyUthKdnZ2JhkMhrUEfDld95ECsXRXyRE+0jYk20OyW+h+lcg40tLScjApKalppP0K27tcrnXE/E0SeE8m1o11FAKQW7B9+3Y1dbzrnkQdRCm3272LdZaLd0g7Av9WEDn3dBbrPASInAybzfb8PY1UQjnWXQ7m/jbnzp1LoXn1lYSMe7qIdS8vL0/pBxTkQRkkrz9r5syZ68jLpvVn/J89sO6pqanPS6ktJCA3N1ej1+uXSzUey7JjVyzYeKQGO887cKvDHwfIEmc0GpcxlrAbHz16dGpPTw+vseOe9hRV+jQ/+diHNft95t9d8839a4fv18XdvuutHAeFlxgDYxERILSANEoUzUWJGo5V/uufXsGLB87C7aXAT+2DrscOG8V+737pxNNHOvDKSTvKrZ5hi2cMjEXUQEgARXvxNIeE5aIO5ebT2GLzoTJsowscRSv7RCsU/lejWoFuImJ/uRPL/96Jl493o8wSmgjGwFhEegkBqtVqju3HJTncHryw7yx2/uMKjTpF1QQ6WGJeDESEi3B/UuHCM0TEa1/YaYMQrPadPK1WG3Hn7e4nIQEajUZ/d9WxeWuzu7G68HPsK6oEtAw+tBzmh4ngWfKXS05ctPRINqINmkFUQRgukqsJ33OKpAjyG9odWEPgP7vcAOiEqgha984UFy0QjR00NxLF7aWwCFvR3BnTHV6lpROr9hSjrNoqC3yAFTYYX+92OZA15C6FRTgFhusArd09qGh2DBEqlXGhtg1P7jyBspstZPbCMZDqIqwyKSxCAoYjoaS2Cwv3XEXOW+XY8ulXsPeEDliKKiz47q4TuNFoAzQhjIy824gUHAYI2f3/67oNT++7jkqLA3byRjuON+B7H17HdatTKPZwWT2e+fNJNLbZpcGzV/d4sTInGotnRMDVE8LNCyWGLpBFQCWBXP1xFaxd5H3JG/s9t1aJ40RK3ntXcbi8bYjkD0/fxHPvFqPd7qI2EmJp1I1kGL/MS8DuNXORHBdFXIS2rCECh5khoYm4B1u3EzYHgR987KdRop7CtpUHb2DbsTq4+xboHf+5hhf2fgEHTxGVhEga6emxahSuSMfmp+YgMT0Tao0GFCONWZLlgWbHqbD1G0q8WeqFl4efXXEgqRT+wOT1Y/W41OTEDE0Hdh29SM6OVlUOcoIlv8n7kJ9txPalUzAvOxOmyGh/zbEEzwJkEaDTG/CLR5NgVtfjtfOA0zuIBCaErOHoZfLyLvIJehPdu3uJ4hB3YKRHVsIhwEsPx2LjdzKRlpYOLfXfm8Zw6PskyCJAQSBik1Lx0rdUiNLV4VclXnS4Cdhg6yZrgJHAGDKBNjqs7aA1X0VWEAh3yeSnRquw/fFkLPvmNETHJ1KxLJX64IR/ky2N1lZEJSRj/UIVIrW12FLsQbMjCAkBG46hgxktkdFKUZ+LIjfaZy2eYcKrS6figVmZMJLJc5/jnWQTwIqyuubYBKxaoEKcsRabity42ckmHsR0feQATTSvaYuha63HxgVGvLh4OtLT06EzGMcbd7+8wUbbXxDOgzEqFikJcVBYauibTZd/dIO2ZxI0OorbM2BOyURmVtaEgmcdR4WA01VWrCi8gOpmcnTWW0A3RXnCowQfnGQ7vynuxg8P1eI2xxITmEZMwD8vN2LZnz5DrZVGXq/tjQ2stUBnqwQJhJh84SelViwuvIbims4Jo2BEBHx05hZW7j4FayctdRzdsRNjD8/BTksdOTwLhbQS2Ch6LG+0I39vBd75XPb3TQkBoYtkEcAubnfRDax7v4SOqQjhwOiOSVASCTS7Hom2YfV08vg09f3fdoPpQ6F0l9uLTYdrsO5QNVrs4zslZK0Cl+vasemjUgpRiYrB4TCB5dXhxwtisPWJLEQatEg63YK3v1QQB1TChYOT33IUOHCmGZca7Ch8NgML0ih4GockywJUPg8Mwc6LKLCJ1SvwRn4i/rBiDrJnzEDK1Cxsy0vGtlwfNLw8Blkh+3HSlCir68KS9yvwwdlmylaQcQVjrL/FiB9kEZCdYMAfn0xDhJaU4w0PgyLwOSla7F+VgQ2PzUVi6hT/RoaOpRGfkoaffzsNv19IgaGKKvOUECXyJe1OD35K02HT36pp99gzxMhETeXky5oCaq0eP3p0FkwaBQr+XQdLlwfP3m9GwROZyM6aCoPp7kNYPl2PTkjBhkfUFDrX4pViL1pdxL2I/r5Rf+d4IxIylDDFxYY89pIDntvIIoBDVnN0HH7w8H3IiNGhucOBB7NTkJySCo2WAp0gidtExCXiuQc5dL6Fn53sQUMXMcD+UpTIQfbtqEU1RpwvJIAcnJSh+gWbo2Kw8H49PB439EYzfcsQDekdPU1E3PdzVTBra/DyCSdutPOyead88NNoeAApLEKN6Tc3IQlgZXUGA4zmyGGBD4AzRETj8fnTsHeJAfPjaBmVihUCjQR3dj98SSUpLEICyGRpAR+7pCM/sXDONHyQb8KiZGJAxvLPI8TGE6ORHispLEIC6Ccm4Z11y+BKazBh/qxpKMyPxFMZwyeBR9zpJdXprHBFUivmxUoTIIVFSIDdbh+XAF2jM2Dm9Gl4e2kM1mTzdBAbdAC4mtbRvCgr3phZi63zfTCbzJL0S2EROsH29nb+EaKXzEdIkqTUMArVWi0yMzPx5hI+YWrGe+UkcgAPfO7oohE3K93Ii27BsuQOPJCsRXx8mv/sUMmnTILEGBiLoFi8DF68eLFx0aJFNvpK3Hs6KephlPJVag1S0zPw6mMUK2ibsOMC+0YV3CodjHBjaWwrAe/E/GQ9YuOnwECOlz56hpRODtDGWEQVhatMQkKCubq6ushkMuWKGo9FPn/ns95uoK1yA/7bpMcUijPyk+yYl2xATFyCH/hwltuAbl1dXeezsrLyLBb6GBluqqysfI1MaNwT/brL12a1+G7dqPDV11T5Om1tPhpJWXpUVVX9Nlzc/fXp15azyYM2ypI8Co2YiJEkh8PRWFBQMLsfkIwH1ZkzZzaPRImJbFtSUrKFMId2FBLEsI+IJl+wfyKByJHNOrPudAn9nATuu4qUGRkZKTSXDshRZCLakO86EB8fn0ooRm0JZzNKOHXqVEF3d3fDRIAajkzWjXVkXekakelT+yGJOzStX7/+IfoN8Q76c8IFp9PZRt5ZnnseDqIQdVg268C6lJaW7tiwYcNDrCNdwwYf7vzg+hw98qY/fu3atak5OTnJ9C+N2KioKDP9HE3Hf5mhS0kRJNelz4hKf0xHHj3oM9UJmrg+F3B7eubzR14KvXS5aWVyUnTX2dTU1FJWVtZ48ODBeqrKZ2h0PO3fVg2IIylHIoVLwMCueH4FLj9Yeg/0F7gPrD8azwFgfA9cvBMKXKMhY7KPSQYmGZhk4OvDwP8A/pUraDR7d2UAAAAASUVORK5CYII=`,cursor:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABy2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+NTEyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjUxMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgoAheCYAAAJbUlEQVR4Ae1bW2wU1xn+Z3Z9wxeW3TU2BrzYzq21SSCoLWqfEElooqqQUEGDVCkvfajUpzxFat8qtY9VpFaRIjVVHiMhocakBQK4pGACNb5hQmobY4xZr70Xr71rY3u9M/2/Y89q2c7sbY6Jq+yR1jN7Lv/83/dfzmXWRKVSYqDEQImBEgPfXgaUYqHvrK31rFQmm3Vdden8p1g5dsYpiqKpq3pkWXdOzM3NzRYjq1ACVK93y08Ujd7RSTnID2zgzzcCPg1sku8DDOQaX/8ajCycS2vLeZs3AV5v7fOkaX/kAa8T/9H1nLKfagdlXSdF0c8kktq70ejSeD4K5EXA9m21P9JU7RPuvHOzAc8ECSJIV8bYWD8LRhf7Mtszv+ckQFhe17oUnXZsMqNnYkl9XyOB7ju15KGp6NKDVIPJTa74LaOk9gGz9H8DHhiFlyrUknA43+evWTFmbax31xxVVDq02d3exLDrOUo/6nZXv2LWbtRlI4ANr//S6Cj7qmlJcjgcpKoqh6smW7yQh/hWcmBAH9PC010TacodbnSZdiiyEmABekdTE+3e7aPY/DxNTfkpGp1lq/HkKgK4SOHmw6YSSWe71TrBaT6GmUs62nRFkwYe4PBxuz3U2tYmrqurq5RYWaE9e1ooFvMwEVMUj8cECRKJaChXVn2M03ShZEmApibdKhzIZuoHaFi9uqaGWlpaqbFxh/CAZDIpCDGIqavbSjU1tRQOh2l6eoqWl5dFPysDFVCv6k5lm1V/SwI4/jk/WEaIlbwn6gGyvLycXb2Zdjf7qKKiglBnFvNGXX19PblcW5mEaQqFQtx/1TYRTLJlrstCwBNYCvoCMHBhxHlLSxvV1tYK0ACfq2Cs01lGu3btFmESCCA/RMUwiWGRUkMqAWvurLEF3SLOPR6vCKF8gKc04hsjLKqqqgSBc3NRCgSmaGFhQXZ+ICkEQGFYbsuWLZzQWqmpaSepDvvTG+SiuFzb2IvqOD8ERWiscOLETCKj2CZgzWWd1Ozzkc/XQpWVlZZxXqzCRkht394oyJieDohkadQXKxfjbBEAC3k8Hnrmmeeoiq0PhR4/XmSx+SVPLIaQ7Q1L5wMEeQBE1NW51sMibmvtYIsAKOxjl//e939Ar7x6hJOXkzC3U55TJ68MCO6cb3/wCgJA75V/dtFnn33KeSGeD2+WfWwRAGUAemRkmGo40588eYqaebrbyIKEOhsJ0eXLn4vHsAq2ii0CjCfD9a9d/Rf13uqhw4dfozffOs6h4TWapVzhKaHQDC2yxW8PDtKX169TWVmZbdlSCIAWWPDA/Ts7z9CNG9107NhxevW1I1xfYUtJkBthi0fCobXwYmlnz3aKRGtL8PpgOXPJujCEREVFJSscoQ8//IB++5v3qKfnZtF6zs/P0f37ozTNawCQixmm+9o1EXIIPRlFjpQMTbDNxQe54Q+//x0dPPhDOnHy52KazOhq+hUzSTA4Q/HYvGjHnI9PJBKmc+f+LmSbDiyickMIMPQwYvTq1S+of6CXfnzkDfrp0Tdp61bzTWYikaAwxzm2xhonOyVtsQOLX7hwXiyEsKeQVTaUAENJKLzC8/3p059Qd/dVeuv4CTp06LCYQdAHcR6djVCIV3rYHsPameDHx8fpiytXRK4x5Mq4PhUCoKjCZ2vIDzMzM/TnP71PXZcv0qlTv6DW1ja2qp8WFxfFHA/wmQULpbOdn4o+SLYyy/8+TaZ0E1nIDQiN4eH/0Mcff0T37g3T0tLSmtVNJnUAHujvp/7+PunWh3pPzQPwMFgSBGBjU8MHJNjtwf0xe5gth1EPz+hk65u1Q6bd8lQIgPIAA9A4+YEHAHguULD+5UsXaXx8zPZ6woqoDSXAAIj5G5kfVxSj3kop1MNTpgMBOn/+nDggydbXTtuGEQCQsDQsXl1dbenmVsojGd68eVMcglj1kVEvPQkCONwdFm9oaBRuD0XzsboBCNb3+/00+WiS2jv28kFqo5gWETayizQPMIDD2gAP66OuEOAGOADt6fk3JRIrQs5OPh/cxsfpAfH+QO75oBQCABKLHQBHZkcpBjjGYcU3PDxMExMTnAecKRLF+WBrG/ELDkEEZgd+rO1iiwCAhMJeb71IcFbTWb5aYjzWBLd4W4379GIQ6nK5xCkzlsujIyOCoMy+6eNy3dvKAVDq4cQDsTWVsTuDxYdu3xbnfWYrQoDBMzE94ugcmyO7XmDLA6DkBBMwMzNN7e176bvt7ewJVal9ey7209sha5b3A4O3By12ezh9coiFEQ5e7t69I84TkTDtFFsE4MFQAKc12PePjY3Svn0vUwvHKgAV8j4Abtzbe0sAzPQmPAOyvv76Lg0M9NEcvyhBnV3w0N82ARAC5aE03uB0dV0S5wD7Xz5ADfweUOeMnmv6ApDJyUkeNyLkQCYKSIRsv/8R9TE5eItsPGuth/2/Uggw1IDCKJOTD8WR9bPPPkcvvrRPLIZgQSORGf1xRa5DG6Y9XEEGQOKKRIdN0Ni90VRb+lgZ91IJMBSC8rD6V1/doQcPxqlj70v0wgvfEVOlODY3OvIViQ/T3iNe9OAenoSZAK5+Z2hIvGdAHWRuRMlCAP8sykYxXBVgbnzZTfdGRwhh4fPtERYGEfAYzOeIfWR1FExt/f29IsMDdGY+KE4layyWBKhJNaKrtjgQuhpEYMq6dPGCeG+wf/8B8vJrcLTBxWOxOB95B6mvr4cmHz4U9XKACxU0ZVVbWz6asPfkaiOtg9tdtYuPIvETmbq0atu3sDzm8ec5JDo6XhSxPTQ0SCN8QII26a6u0PTyitoei8XCZspbEsCdFa+n+hJ3kP4rMSRDJDzsG3CPMABweITMAnG8NftbKBw/ZiU320qQ33nTX6wG2qk3wgL5AS9H4e6ywaf007SsGLIRQC7Pwmn+2el1yYZJ6QbQGwVc6KzThdDs4j9SDzS5yUrA6CgtK5r+K/Yj0/gxkbdpqjh9+zmufs0K8etq65KVAAybiS4M8C973uZwCm2UJ1irV3iL0JEXj6qmnggG50dySchrdfH4cWKsuqL8c1L0DnbZ5s1IBHTCh3PqRV1R3g5F4r25wKOdh+Rf2vklcMBTfYIHvcNhcYBHur5pMta3wxHWid/CKh8FI/EzrFdWt09HXBAB6QOxTnBojlbNobmZ96LlpMss/J7/ZUZzhHVHciwUWvQXPr40osRAiYESAyUGvt0M/Bfz0vXwaPGzHAAAAABJRU5ErkJggg==`,"sublime-text":`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABzWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MTAyNDwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4xMDI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CsHtO6kAAAsbSURBVHgB7VtLTFzXGf7nyTAwwDAMxqDQuEaxY7t2Gmw5srxopXRl2XXSyl1V3bTLriu1kWq13UTNsuq+i0pNrWxae1Enu6hOGsePJPgR4xrbGAYGhscwwDyZft+de+ByuefOHcDEUjny4dx7Hv/j+//zn8cdi+ymXQR2EdhFYBeB/18EfFtR/fz58x3VarV3ZWUlCToxv98fwXsQmXQN2j4kPrOOGX2M0okvulZBq8qSGX34LurZLCuoyweDwYVSqTSNPmNXrlyZdaLnpa5hAM6dOxeDIG9BiB+j/C6Y7EEO4ZmCeuG55T4AUpiRSshTeL4N3h80NTV9cOnSpflGGDQkMZR/G8R/ByseJhNaxxSkEZ7b2pegQx6DJuT5Gvm3ly9fft8rE68A+M6ePft7MPs1so+Kv4jJAsR7g4ODv7p48WJdQQNeFDlz5swfMOd+A8U5f70M+Ub6UDbmQCBwamxsrPXBgwdX6wlSFwBY/jyQ/ROVr0dM106h6Ko7lcgPMp8aGBj4enh4eMiNr6tUDHhQ/HMQe+VFdXudcpwOkHkEYAy6rRK16KGhUqlU3oY7vRDKc+KVVvySLwekjLJeosEg+z4AcMGtrysluO0FEHAb/1zbuJ0omkoHfStyKJ6Rnx+5I9/vGzXAqMecssMTCIDW07UNp0+fjre3t98BCHt3EgREC0M54t4WLsorHbNyYk9aBrunpT+2IL4mkQ+H++Tdm4MSCVRcMWDcgezT2DAdvnr1atqpc9CpknWtra0voUjuhPLY+5kWrUpnU15e7ZyVkz1peS05LXtblkTop3RELmpl/GM89uCYpuydKPsxsjEAyuVyN5Y+bmsxdvtTBUpzLiNUSbJ5WY4kZqD0pBztmpFENF9zWipM9o6G9iYXpoAfOnC36pi0HgD3iakRCgTTpVS1UTrVqQ5sY6qN90lNaZ8E/SuyN7oox2BhWvowLN7WXKwNo9LMHpOSzam74g8MVnWx99MCAMLN7GxlYH1WhJzqVNsKvKcCK9PSTZiv/bGsvG4qfSA+L9Em+DMTFXa0stHq+IeO6cabg1Q7VgRDFydCWgDQ2a3NiZZRxyDGOVpBbg6WZH/HvBzfM2UEsoGOrIRD0Jbeq3VtLWlbg7cpYA7S6qJtwECjTaFodXX1vFbCgLByCUrHQiU5lJiXE3Dt44jcL7ctSCAEYZVrN2hpm9bGq1V1J/msY8x27WpXFwBFTDHiu3pWJa3dE83JWwOP5XUo/VJscUPkVnS2o/TDfexTQMniRB9tjQPgNsjOpFjxyY8GHsnZg6PGMrWZOW2nueGdKnA5xOkls4zNgDGHNvRquMLNA1YtbaWqkFYRVr2HENmNQEZX366klIbPzy6H5avpuHw6npRrEz0SDqzdRShZyJby2N/dxHEFQBF0IqAUr/XZLnuAGq3MDCDTuYjcnuqUT1NJGcp0SiYfgd39hvLY45G1kayysML+Xuvl/LcuAM7D7LUQZk0ee6O3d1PpZ9mo3JhMGErfn+2QuUIEFsWdm78KxclkG6KoRSJXABpB0kKz8UcoeGsiLn+99235YjohS+WwYWW6eSS4Nqcoj9W9FSN7vfW9ng6uAJBBPQK1PkqUTZYw7MHOrPzi6LB8MTUjn010yfBcu8wXwoI7ZOwc4fjGJbFeHruc9nedZHUB0A1cX79V/xdsmipyIJGVA8msXDgwImMLUbmZTsh/MP/vznTIbIGR34epsLIKxnoZNvemBQCXIZ6sv8Z26yCsbpZAtK9tSfral+TswKhMLUbgGXH5JNUtQ1gJGAzpFU6JlrdOE75TF13SAqAGeHEl8KhZhYFMz0uR9FauTX1J4nT45r6UkefyYfnzrQPy4dM+CXPpdUheZFbDKPKWUwDz89p4t6SykdoxlrBuC2VTNBqbwCJ3RIvG5ch23cy7eoBXJEOI1h+P9citdCeC2Zy8sXdaBnsy8q0YLjPIgYZyNhYaGkwAg1tvr6meDq4AkEk9AkoQzsnlSggRvBtreLe04lDE099JgHECYOzvyK0dimhR5i0kgwTn3haTFgAEkoapc3dW26zgBrcalK8yCbk1lZC/3Ckbp8LjAOJ4z4wMxHO47+NnPaSGudSGwTLmw9YKLQC4RIDxN8+EYHD3FsA2rrASxFY2IQ/n2uR2ql1++PITOdmbkUhYJIxsftrbPBguGNTTQQuA8oB6BJx4Wy85401FORifkxM4Jh/FvV9PBHEBuBZwA1bg1R+3uSGRCJZ5ghFQ36pcsGcTbbMZ2ezyagFo1AN45C4Yl5xVXHLm5UjXrLzRMy3HUO7BMuaHoiVE8TKCISN4BIquQIkV1iFncyYYkKgJQDAbYDDeOYLhWGnXr+67FgAdWyeKtEYE119v9qblVN+0fKdrTuKWS04qXEEfH5bGIBSqouQYAlAFEMaFEfswA4wc7lNyXEDQ1gTPIBh8Nj5vYHwj4Ylewq9EuqQFwGkKcIfl5Hb5SkB+duix/PS1x9AArMjPwpOKq5BquC6lUQCYYChADFAIBDNoLQGIRROMKMCItIrkS7gTInj8s8WkBQDEGQXXkbe/rzaiXxfc3lCaANgSvdiwHgt6AMnSkqw3FDEKo94AAHU8BGIhMfZT7LeMRePBVFRu34/LldF+47TI4VtNWgAaJczA5zURBCYWHEbvICb8Q09nvGBjvuiTR3Mtcn2yE/uLhPw32ya5UlhCuBfg7tNLotGUNzv1dwOgJpPNC5yIeBPFaaTpBZwiyEyFol8eZFqxmUrIZ8gj2VZZLockgCWVmy1+X2Cyi6WbnkZnE1/zeV2hBQAnqIrW5deRwAuksQtk77LhnVY2lV4sBOTedJt8Mp6Qz2Htp9kWrCgB7CPgETjwRHBUrpd0srIeWUtACwAG5XVE6wmjbbcoPb8Uki+n2+XaGHaL6bikclEpY3mglZmbNSc9LW2XBtiyoGt2AyCnAFAl3Yxpw7uOOutpZWYEtanFsNye7MDJsQvn+w5JL0WwFPprc5rzetVQ6/mQjJa36XpOU8BSt0AaTkkLAFDLQNEKiDAuGUkpvuHdEMISCZTScLwxHJFv4L7vGtz7Diw+k8daBiA3XHJahtv5kJ+9rt67GoN+1WKxyB9UOiYtAAsLC2PNzc0z+JkJfwXqmig73ZZH3yq+d47MRuV6qtOY0/dn2iRbDBvLH5VuCrK3RVtXyltrpAdgEzS3vLw8qqOkBeDevXvprq6uO/iJwPesaPOZhK2JSxIVnsIXm38/46EnJoslRm4Cs/5m1zrueT+bANwfGhpK6XhpAcCASqFQ+Ec4HF4HAAlZAeE7j8D/etIjlRGfqXR1XeQ2pym77niCDv8EU/M7/Eb2nK3aNDMzcwm/r3mGHxho+7CBCtK9eYfPW1vrVxvXgc+xkdaH7JMTExN/c2PjqtnDhw+f5XK5d90IvKhtBGBxcfG9J0+ejLjJuBrhdZ1SqdSXyWSyPxKJHLO7vm7MN12PwE3l379+/fo7kMW8enKWqi4AGFbG724/RkDsAwhHncm8GLW0OqcrvPbS3bt3f4nlb66eZF4AII3l8fHxj2Kx2AKC4quhUIj/Z6Ae7R1pV0pTcfyybXJ2dvaPN2/efAfKZ7wI0KgWfkyHY729vT9paWn5AZbI/RCgncx3GhBOR2as81ko/mhpaemj0dHRv2cymRtQHPtOb6lRABRVBs893d3d++AV/fCIJMBoBQgRZHoV6W6WtuJhL43dE5TmIS0PxXP5fH4K7v40nU4z0E0iaw89dmLqfbuF3G56Sk57aYBhr9x930VgF4FdBHYRaBCB/wHWGEMSa+r9eQAAAABJRU5ErkJggg==`,zed:`/assets/zed-C-eVD5h3.png`,windsurf:`/assets/windsurf-Do5nbXdF.png`,antigravity:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAHhlWElmTU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAIdpAAQAAAABAAAATgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAECgAwAEAAAAAQAAAEAAAAAAdd52hwAAAAlwSFlzAAALEwAACxMBAJqcGAAADB1JREFUeAHtW2tsZFUd/537mPdM37vtbtvtdt0HdlnA1/IUgyhoDIoJYjZE+WRIIPIBFaOSEAPGD4bwSWLkgyZKIiaEGDGC8lR5rY+NggQWaNnt7rqPbjudzuO+/f3vdEgnvbPbzt5CG3qS05l75txzz+/3f5+ZAuttnYF1BtYZ+AAzoJaBXeYG8/MTG4aGhpIwNiuFjiDActZZxiPPPJXPDvjsogX3yInDhw9ztj1/x8K9nnGRpW48XLC3d8tANqvtU0r/MiGPceUOxV28n00YYCtSNK8GgfdIuew/dOrUO8c4tiQSlrL7cM7w8NabNN24m4BHRRHmH/x+Ym96dl0QoUq87Xvu3YcOjf9qfkJDa5vmNy70xpsWrwJeHx4evUfXjfso7K7VBrx537RFpbo0pV1fKHQmisXpZ/l52wRocvPg8MgPDMO4izJvftYqv9J07YpcvuDNFmeEhBBL1JZbaYBIPhgYGLommUw+QKm3mhe15qoZ03X9snQqu39ubvZNbkowLWrCTFTj5L5cIpW4ix8moiaskbFEHUNfjvtdFgH+wEDycgV16eq2+TOLQfYuGAQLZ/pRs6M0QJhSpml+TiktkrWohVbrmGAQLIJpvjdt1Wi6ql/IxBQ0deFZHGjErWcfElfquBQH35j0LAGf5vJCqE6sCN98UIgFaT66xt7kzaMI4JxclvvZwDexNo9KKHnTlecBV48qbDHIwJyBiZMKTxxx8fyME4pJ55w4Wx1LLsuHCQFNLZKATMY3SVuyaeY5Xrge0FUAvnWjjmt3KiRLOtRpA9qMgSvyBvb1anh00sYPJ2ZR9gLES4KWFEyVymIQUQQoOo9YZeBT8tmMwndvy2DvNg2nTynorgaD0dWADpNhOkHEX+lPoIMjt49PwRbNXbzftkfmMS3CFeczWm7Op0Rv+GoBW8cKOFLNYyoo4LTKY0bLoqRnUDZSqBhJjhn4TE8Ot27shC1O4j1oURoQ62NdJ8CO8zO46Ko+HK2Sb5+Sp2xNpSFFp5fiDjJGANfw4LPTI+ImEvB4sYL/VCzOWyS0WPe34gRo9HOXXNePol6A5WlQvg49MJhdCQEErwWwdA+O4cKTrjvoMj18va8bd4RFXax4Fy22ogR4boDBXXn0jm3AiWoCrpdgFWmGBJi0f4lLWRJQI3DbcEiCDc+0AM/GpV0adp6YxsFqDcYKasGKEhDQjrdd3s9IV8BcJQHHSyJgV54Jk1qQIrCKIgGaC0e3qAHSazSFKnqSSVzd1YPXKpNrkwABn+lMoHfPIE5Xc6g4KSZAaXhuimbAsyRqQjLQUCUBlkbpkwCX4F2zCt8rQwU1fKJnEwrHj8HiWivlCVZMA3w6s96dPQi6+jBbTqPqZuE4GRKQoaNLQacWJGgGFhMzmwS4VH+Xkvf8Mnw/xUyxgu5CAjuynfhXcQqmtjIBa8UIEG/Ts2cL5rwOzDlp1GwhIEcCsjQDZtqhGehwOM+lCXga7Z8E+D5JCtgxB8PIYE/vMP4xc5Kz1hIBrMISuSRS20YwW8mjSvAWwYcEUAtAApRPn8CIwMDHMo0hkFrgi/0TvE/36LMcUW4FI307kJn4N9ywsuPkmNuKaIDPpD8/2Au/YzOqtQJsOwebBLjsPv1AEPqBBCWthTVqoHwE1ALoEhdSLBhSvE7C53Wux8CGbA8mZ49Dl5gac1sRAqjHyHxoK2pBD2pWmpLPw6UWiP374gMYDsFyQw6awnyPBNAmCM1hdcjPFKOFEKDRVBJ5DPZtx6HiUSbNa4QAjVVeYusuSj9PydPzCwHz4MX+BTz1nZ12zbKDsFklelCagE/wPfMFvvfZNeWif/NF0N76S8yyry8XvwZQ+kZXF0/UtsOqUuqh5EX1M2EOEND26wTotPe6Y5M8hx6AwNmZHyjWBNBIkk4yAhvZ/guQTXWgapX4WbzOMHYCAs+FObgVbmIAXpW27BK8V/f8oeoz/tO4Sb+ArJuATwfHOMBYLySwTKZpKPmcZASsFfOdo+jq3YHy4Zegk5Q4W+wEyOb0kQuo8gUEDlVZwNPpgZIPpU+7lpM2vzIFvzpNoBR/uhsq20WnKLUQ02JKmQWzrMTOgpkm1T20F5OHXpDlY23xEkBJauks9M0XwqsRtMszlTD9pdQCqjO9unvsAGoHHuTr3xHYswRDCpIdSGzei9xF34DWdx5TZnGIHA+JEDIU8kOXwDB/RscpZ5vx5YXxGhSlp20cRdCxjbZPL06HJ7l/CF5Lw3rlN5h9dB+sNx6lBpygZtjsFvzy/1D978OYeuRGlN94jAmRDpemYFEDanSIFb7qfWPIdm+jFjFcxthiJsCDPnox7bajDpw5fxCerqVhH/wDys98j1pRgzIY7wmQIp7vtHmTTtIuYfrJO1CZ+CvLYo2OUePXvRpPMpkxUksKWy7nuquVAKo/klT/kcto++LoxOZpYYzp/vQEys/dTU2QeC923aJpdHokaIZE2aWT8GkC75LAW3Ojn2VwoGnVs4cWiyxvOD4N8LnVTWNQ3bsY07gsJa/o8RUlWH3xJ/DnjhL82V2OYvhzp9/C7Mv30wyoMOTVYa5g0UOaG/Yg3ffhWLUgPgKoAcaua6nVOeb51ACGMDlYdsafgv3mY1R7kdzSmphI5bWHUZvcz4ip6iRQAzwzicKO62L1A/EQ4DOGdw3BGL0KGs8A343jdgXV/ffXVX85npu+IfAslF6+j/WDw/BYJ8Gm+We2fwFmfoBrSqQ49xYPATzCMse+xBC4idJn2JJERjdhvfoQ3OMHwoxuuVtVehLW5N9QeZ0Rg8okOYLDPyrfj9yu68Posdw1o+afOwES+rpHYO6+oS59ZnlKCpmpcdT++UBIRNSDlzImWeEcfYFTPM7zAhVqgnytljv/Zhj5zfQz564F504AVTGx9xZWspu4IUlQKC5urPr8vYzvJ+rhbiloo+bQaXqz76D0wo/DslngyveIqmMT8h+7lb6g8ZuoqJuXNnZuBDgVmOd9EebO60U/Q9XXDKr+gZ/DHn9iWY6v1XbFIdZefwSVVx4K/WroD3iMlBnbh/S2zzPkRnzf1WqxiPH2CWC81ocvQeqT34cmFRztXjMSsF9/DNWX7qMZMBLE1BQ1Ye75e1Abfw5SS4k/8JSJwqfuRaL/I6HDbPdR7REgMX/jbmSuvZ8HFj2ymzr4Nx9H5ek767YZZ9kqazlVlP78TVjMEkMSpCTI9KHjmgdgsFpkvd0WB+0RQOeUvvRO6LlBBjd+tUlpWwd+ifKfbqdKls+c7bW1Td5ELQhqRZT+eAtqr/6W18RMTVDdg8h89La2c4PI1Iw/NeMhnQTaqKpLnqqFmwnKp+HPHCb4B2Ed/B2HJfmJXLJd2M33CQk8KJ176jtwjr6M1O6vQcv1wp15O9xT8+QFV8QSYlow1HgbhVCS9cLwyOjjPIT8eORvhCTv1/kVZ6ozrOkDt8pwF+vPCRr7a/HKH+2xilRmlp2HrBbL6hYmJz+g9Hxv/6GJt6/hYlJ/N8XOKBMgOvCAPngjWgP4qVRxtLkwzFFR3lvwfD41M0ytA/eM4GVmiCHEQkwRVVQrAjzXdZ6JmC8rzjeSICVtpJk05qz0q+whCsLC5/K4LcQSSl6E29Ra3a2mpkpP+743Liq0VpvsXTAIFmKIBBJFgLDkW1bxmGM7P12r4Bv7FgyCRTCxL9KAVqcTMlEvlWYP5vIdO/lD6R0R9zaesSpf5TzRcd3fH5l850fcoNi/fA25qLUiQCYKCV7gey8lUqnzdc0YWSskCHjXc54tTp+63bZt+WZVigbRgEXtTATI5IALVKxa9ZlUKt2p6fpu2lWU2Sxa+P0YmPdXnuvYvz554ti3K5XKEe5DwDeFvoV7i3QMCybI55LZSJDPbty46dP89fjNJOJiPizfwq8suP29ehv+A0fJ97wXLcv6xfHjR5/kk5mS8mCZBST7ItvnWNjORoBMkjkidSFByMh3dnZuT6Uyu0nECP85oYNjMmcpa3FabE1A8YcofpHAJ2q1yiszMzMHOVZiF9ACPtLxcfzdtpxNCwliMkKCvMp1oy9nHd4WWxMSBGSji6oLeHmNtHmON7V2Ni73CHB5bXRZtJ215L52W0OtQ03gIg0yGuPtrrt+3zoD6wx8gBj4P0ccrJjDzl2qAAAAAElFTkSuQmCC`,finder:`/assets/finder-BYyfd7HG.png`,terminal:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAq/SURBVHgB7VtrbFTHFT779Pu5xhgw2IANuBaIuPRBUkoCpKUWVYsatUpDkRJaSn4gfrT8QfygtKpUfqDKiESlCDlFSaNAgyJZbSrjildDIAUT83AwuMGv4Cdee9drr3fvnZ7vLnd9d72zi9fGj8ZHup7ZufM455tzzsydOSaapVkEZhGYRWAWgS8vAqbxiP7hhf/MS81xFJjt1kwzmTPJRMkWs8mmcqcmk+Csxaqq+PWYTCa7hUtJMZTp75BazCQEqaqi+PRis9lMqhB+IYRi5kLkSSgeVZicqk9xPup1Nn//2dVf8CuhtxlLOmYA3v/3p7mFi+b9xGKzbbWYzCstVkuOzW4ni8VCYJZB0MjEaXjnKBtVGM4ti8EghBB+Bsv4h6oKUhSFfL5hUv1KjyKU28Pe4Q+6O1v+unnNmochjWP8COcxWnXTR/daXktNS92fnpFR6B0aoqbG+9Ta9IC6uzrJ3d9PvmFmSFW0PsBkID8yBM8sCxImXdiIJkbJzGCOkGBgAW6gH+QBeEpaGuXMyaUFBYVUsLSIkpKSqd/Z2zrgdv9+bfGiP3F7iZqN9PzEud0VFQlXGlvf+KzXI2519onDxyvFs99+QaSnpWmTwx1NWZqakiq+8dw68Yc3/yxutveKBueg+Lix9cSBAweSn1jAGBUtHzV8/ua9fq+4cOe+eLF8S1BYnhPBczWlD3jQJ+CF72wWZ6/fEvddw+Jyw4MTzz9/wBpDttivq6/d+sXtrn5x/laDKPva17XB2NKDQiM/lY9xAgBE8bLlovraTVHf4xY112/vjiXhiIFGqHn4rbcWPPetjR8nJCbm/+q17VTzz7+Tbp1Awsq2mpySQvyerFYre36T9vCfCL1NQBH7D/gQPH6/n+CHPAMD5Gffoo8ID7R+44v0x8q32Un6Oq6dv/DN1199+YFs9KgqsqJk1cuZWVn5H7z7zijh09gJOebMIZvNhjWPsQckk0iPx2Qhqae7m1zshAECJuh8TTVVnXqXfvzqz+cuWVm6jYt+J+OMtTcyFRUVJaSmpP1w0OOhv52sDFaCmGnp6ZQ3f7629Hm9XtK9uz47k5Ly/gLjYALm5uVpPBmn4Mw7J2nA1U+JiUk/WLt2bVJQgLCMFICXduxYYLNaSx403qM7dTeCKga1z8nJ4SVOpczMTFq3bp2WH+YlcCoIIMD0wBN4A0ETPrt1k/7bcJcSEuzLvvujnxZoLyL8kQKwtGB5odVmzWprbiI32xkqAmHYvJVRBwCpqalUWVlJx44do9WrVxO0AbY52QQQwBN4A4/g1cP+ofXB5/BN6YsKF44dALPdlMU7O1NPZ6fWqS4UHB5sHru+jo4OqqiooLKyMjpz5gwdOnSICgsLaXBwUFNPvc2kpMyTxpthsO6uLo1Pk9XmMBSHZKUaYDFb0zHnHrcrpAG8PRwe1A4O6PDhw1ReXk5HjhyhTZs20enTp2nv3r2segmTCwK0ALwZyONyaXzaLJYsQ3FIVg6AxaLp0xCrkpEguE7IJyUl0cOHD+ngwYO0bds2crvdtHv3bsrPz9f263rdyUiNvGE8rzegiWarJU02fihkhlrsY+2qUMnPs2wk4yCwPQA0d+5c2rVrF23fvp1S2A6PHz9ObW1t2iphbPu080beMJbfxx+OLINZCLtsbCkAFrPZLviDxu8PBQD2D9IcD6scBN+xY4cGQlVVFR09epTu3LmjmUA4QzImJqzcoJ3oE45a8Ke3X1X1/duooaQAsJgJ3IOG4qhWjzvHzO/bt48uX75Me/bsoStXrmg2lwhHOQ0Is489Cs+ilBspAIrPZ1ZUViEGIRJhdj28Sdq5cyedO3eOsA+A4wsnLIvQlkikb58jvZuIMmgwZAg5lAnrWAoAGqmsPkAxEmEZ7O3tperqam03Fkl4gLR8+XKy8/d7JGpubtac5tMylYAGsBySSQRPUgDYbjQvzkdQkXjXysC4TDjMOkA5ceIE5fFWNRLBd9TU1ETUnEj1x1oG3nFyBFlkJAUgoAFyE5B1qJcDHOwT9u/fry2Verkxra+vD3xMGQsnMA/zVZU4TQCOQ//IiZcngHj27FmpD4D2aOeI8Q4Qox20MG4nCOahPjInGGPs4OtIviH48ilnwDtkiOYDpDvBgAnEPsR8yjKMq3tdA+ICwM/LhxLDfsbF3SQ0Dmixn52gfB8g1QBuFfABrEYzlQJOEBshuQxSAFRsIOADoiyD0x2YEROIQwP0fYBsIzTdhQd/4D3WPkCuAaw2CraxvJ2cqaRthbGcx2MCbDi8fIx/GZxK8DQfgKu6eJyg4lP80IDgaehUShLn2DjPgB+LdxnktjPfCfI0Rv0WkPoAhg1Xz+PeCcY5eRPSLLAThCnHsQrw7Cv4kJjJpC+Dce0D/D5AID/MmAnA6E4wLh+A+AJGQHogMiMAeOwERTwmoHvP/4+doHy6pE6Qz/IYA/YB4Vvh8N/yvif/TRhvmDxoMZ8LSj8GpAAIRRnGKhB+XjedNWL0npUD0ngvw5MpvbmVAsCnvB6c6CL6y0jTGoCwL1fcFkMGPuF2G2Uw5uUA+Hz9QC/80BMd6pcjxo6mPM9nkBpvBkbsdhtrgI+GvF6noTgkKwVg0O128bWYSEpODtkNIyxllF8I6XKKfrC9a7wZhsd1OQ5mhwYGxg5AU1NTi9c71JeZkUGJfHgJ+8KlmBaTw52G+wbDuJOeBS+4wwRv4BG8JvC1HYf30LDX6+bL2xYZUzINMF2/fv0LVp172Y5smr9gQTDqEAFJ3RyTA18wHUAAD+AFPIE3EFz+PA7hyXE4oBWNFy9ebOWiwKUmKhhIBoDo6+tzOXt7/2HhyMyvrlkTbIJeEJDUwVfiUC8wYOJbIi1FfrKex2OCh4729mCQlM5oGfPMES7k7Ov70OVywQRGLxJcKL0YQYNrn3zyPpvA6yWlpXNK6uqo/u5dLQpLA4GDDxBANR3D5JYVFdHKVSsByqNPa2tPyYTn8ugAXL16taG0tLRi8eLFvy3fsoX6eebbeOaxMAIEbDJQxn/Q15QQ+MADggFA7TeXf48DpqzU1txy9NKlS/VcHHH20SZ0kUfJCGl+r6Gh4W5xcXGhw+H4ylJG1vnoEXX19ASdos7AVKVgEjaPtJj527p1K+Xm5iJ+qeqtv5z8DS+NiPEJOAfOhFM0AFBXsI35GIQrS5YsWZidnVWyomQFObKzOTJkUDMBHJ7qDICJyXzAoJ2jw/LZSa9fv542bNhAHM1OnZ1dVRy09Wu+vUbofFiEB1qNkK49IyWjc6iDiIfcn73yyq68+fN+yRHaWcMcq48ITafTSQPuAS1EDiYR7dNzdNdjL8FdInan9gQOmU9J1WIVc3Ic/DuB+XA72zvaj7/33uk3OHSnnXv38iP9DsDoTwKAXg/RDymrVq1aXfbMMy9lZGZs5Hu/Ap4B/i8QC3t/rASo+vRJ0zLWPADOCspL/XBzn9P5rxt1dadqa2tvMAcD/CC6C1Wj0lhZ5sBgDp1hjeAtch6DsYR9w6KUlKSFHBaTCBCeHNOofEV5iWBpFbGI3iHPUPOjnp6W2rq6Rv52wYxDaMw6jrJiCs91nlgDUFcngAbfATCQ4jFKPlZQufmYSBcMKdQbDg4PbB2p/p6zsWm8zOrtker52KNOTA0IqgurpxPT82wvswjMIvClQeB/QMMm6ZCwrokAAAAASUVORK5CYII=`,iterm2:`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAeGVYSWZNTQAqAAAACAAEARoABQAAAAEAAAA+ARsABQAAAAEAAABGASgAAwAAAAEAAgAAh2kABAAAAAEAAABOAAAAAAAAAJAAAAABAAAAkAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAACU3PoRAAAACXBIWXMAABYlAAAWJQFJUiTwAAABnWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNi4wLjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj4yNTY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjU2PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cl6wHhsAAAuWSURBVHgB7Vvrb1THFT/3uXt3ba/tXWObABGkgiYlD1UVUQRSkfqQWjVITatKadS0/Antl0RVW0BKP/ClUpFKq6B8aNqQFqlEpVFIVYQQ/VCBiICKCLuVWlzAu+DX4tfd5739nZmdvfu6i20WYrcec3ced+bMOb85Z+bM3IFoPawjsI7AOgLrCPz/IqA9iOhnzpxJZrPZodnZ2ZTneT14nFKpxI9RLpcJeeJYpYvFIhUKBVHOMedrn7CyfD4vaPi+X8bjgr6LeBZ0J9FHZmRkZGqlciwbgJMnTyanp6e/PjExse/unTvPTs/MDMzPzzu5XE4IB+aEgGCQGh8GhMs49vg9g6TyXFb3MHBBmaKlaRrpui4ewzBcpCcQX0XbUwsLC+/dvn17WWAsC4Bjx469PDY2duDatWs7RkZHKZNOE4QnFvpRBwbBNE2KRCLUFY9T1HEI4IxCow7dvHnz3aXysyQATpw4YaTT6TeuXLny2vnz5zV0IEZ7qZ087HqsFQ4ASCQSFI1GfYBw+NatWz9Cv+X79W3crwLea7t37/7phQsXXj99+rQ2Pj4u7HEJ7R5pFZ5LXNdl09CcqLMnFovZc3NzZx+YiSNHjryyf/9+L5VK+UDaB8FV/TCPzOvWrVu94eHhV+4HQFsNOHjw4NDMzMxvPzz9Yf/t8dtiAgsIsvWsloe5CqyZV41oJKrBHJ6zitaJxeLifMB3fUqvz9bnent7XxodGd1289bNqvAaOpJ/q0f8gB+Z4mU3ey/LfG7rTnW/VC9VfS4UgL1795pY3/eNYrZnRDkw+dZis10oy5A1W9XjOuqPa7Wq04ky5tN1c8RLs2Vb+9CRKbpr8RMKACa+wempmZ2ZTEY0w+orAGgJQa9BfT/ZSNYX4hUgmsUwEjr17O6nxJ4kOc91EVWMryU99Phg5ZrQ2MWFRR6WnZs2bRpsIbsoCgUgmUwO38tmU/NzbD5q7Dmu/2MqmqNR6rsbyXwqIoiKspp6nDdTNg2//Dh1faOfnD095Fd7rqfXqRwPVy6XJ9/zUnE7PlxlrCERqhpwS9nDixRLxerY86jUBqn08O48jTwXXluZS9gcPPzKIVZtNB9qiRGZmJ+gSC7oVo20aNjRH43KcNDKpXJEM7WBMNIBJw01bMPuZttnm4XjKcazvgqE7dKo/zsbKfHVFGlQ8eSrQ1R8upfuvTtBhb8ukC6GWUEg9UjXqkMPmkq36il3Ise0fU+63fAYu8NoBtw01IDvHePNCQeplirmHIjHNNp0dDul3thMi5vzNHEpQ+69RTK+GKWBtx6nyKs90APWBG4XCCo9CUmjma4s6dSvmJqxv4BvEBOMtPgJ1QAAEC0VpY8v2Q1as1bE9yQo8pUuSl+8RQuvT1L5nwXSbI3Mz0Yp+s0eKl3NVRsoQdFMBAZEwlIbi8IO/8A0oQWarkXDCIcCUPI9w8N6KpkNRpAJsRzGoE05DyaSwZb3qlwmaZGodNal+XMu8eAHpsMtKjBiLuCgtCLIieKO/vBA8T/N90MdvlATKMO3bmRTcceCuZfnqJQukPN8N6WObKHIC3HSIlJkwzOw8Jo1AAQwShpKfM6pd4p652JlSjwUYSH0De/NsZiqcUN7rho85Wt5yh4Yp1KmQNaLcRp6+wka/v2nqGt/krReFkq1VWwgFqPBI6LElkAooB9OHCa6LA81AQ+HEZAfgQVoxInLDCr8cYEKl12yvhYnG05Q5EmHug8MUnRfgrI/HCfvOi+hqq0aaRnXwNKewwd8y/20C4q7pjplryy8KUWglmGZ1gEB1Pw/RIWjszT3vQxlv58m96M5omcMcl7rJ9+Rjm+VOOy/fvQlvM20O1dS7TskEQoAmwBrQMBKvYIKYDG18HuTLDLndPL+7NLCoUmK5uERbsPLFJNnNVJUhFXhh/OqtJ6uLO9k2Qo1wCtiDuAlRDCqmJWCsEjxb/XS4Ntbyfq8Q35czLeYInRytneRHYuQl4UGzTX4AQJQNBahFWUFVGdiCSN3FroIYPBCAp+wsCelWKmtpqGV9bxD9IJFqc9tIf8GXJ50kcxum2LY6EzNTlPhdzCFLLcPNlGCoapWKVBrKXc2LSDGcVm4+G22iTwH8IktA9AYtJJG2R+nSTtrk/3lGNmY/OxdDrnZPE2fnabcH+5RCeZg4E8ujKwzKih6rSirOp2MVX+taYZqAHuBrAFBACFFC8X6Aizk/Twtvu+Su8Okze/soPRxuMO/nCajjBNbniABQK2Y3Fy4whwLYqJEdqFoc662W/l2ab+KRm372nQLKqEA8KmK70sb5vVf0RY0OIOJTCo3JroZpGH/GhxCo8xrg1UZea6Nvbn45UaSCu8M5V8FiDri1WpI1ARJJChQgjW25RqVMjWJB42aU6EAFEu8zeVe1EoOqqrTCh0WQkx/ukaLM4uk4RA6UPt60NiY2LewNZs0QxGqwKCyzfzVl7Sq16qsyh/Py1il9FAxwyfBUjEvNhJSDGa0deA3Hr7FzOzHueEcb52l2nN91YbrlCeKNHkiLYj4BY90nCEoqqpe6x5WXsrDY+gGWZHQvVA4AMU8TKBmGWzHho5tgweHSAoip73G+hrA8a5hZamokTKghyW86h+fzShirUADPEyC7AwFo9ToM9XrHo87l7QTSNYJarWrqwSQMddU7er7ba4XlAQaYAWFDalQaJQfwPV5tJpDM/vNJa1aLaVWc7sA2uW0hw8gNCA4q2yk3BYAqQFSeKUJjQRWc5551sUcsBINwGEovsaDhPwLRuCTEHnpat/IHS/Plr4SAOAKizMBQfGTHv/lqH0tBNAAHMJa1goAUJ5gMP4rZaKWoUebZo5ZA/SVrALForziokxg7YkvjVaYwEo0wMNHhXo/YG1CwCZgQgvCQugb2H/FV2PB16LwUmReBqEFalPThEPoMogFICe/4kgA1iIE7JPyPSLsBYKPFA0QhAJApbKrG7wTuN9uoIHiKsry/MUrgK/7+FDROoQCgJtfczyBGHjwhXXNGQF7Dgbs37Ztws4Wx1OtQygARb84Zel23rLMSCHP3wjXmhH4GH0bt8eieU8rht4dDJ0EZ+dnM3Ajp3DPpgqdnA0kFGshHYvHKNYVn5rMTMpbHlVJgkQoADcyN+5iB3Y9hkuIusb7OA5rQWzJowb1T6ZwG8Vxrl/8+0XI0jqEAoDqbi7nfoDbVuTEcPSNggppxKv7j7fOUSdKw48N48swfYC7jaGTYDsAKHM3cwruwBjfwOTlpN2WpDW+j7ZUaqlPpmHShsENNDA4MPbx6Men2nHRDgB/Ij8xNjs/f9i2Lb+vv1fsrflEZ7WOPw8Qb397k320/cnt/FH88Lm/nRtDcejYtftmIICbdqf+kbATPfFYfJdhGVQq4N4NvhlwYCBWS+CBMU3cVkv10dPP7qS+Df1H33znVz8Hf+wErRgAblieXJi8ABBiMSe+K+JExEdTcS2+cmwuYXjUYKjTRWgkX5aOR2nosSF66pnPsPC/+M17vz6EKz6zzD+e0LBUrnlD3f1Ecvu3e7t6foArJ1uLuD/E9/DyuIrGW2e+isJ3+mVQcWi/dS9a164vVTlmmDWPnTQTXl6sK0b9UPmhjcOw+4F/lwz/Z28df/M4qrHzw7c82oalAsBE2Gmyu+y+bVuSwy/GnNiXdMP4NHaM/X7ZizAAfIDCO8gAiLZ9i5eYpYXdVjYtQjAWjs/zNREjjREG6KKeCTNkwXEDFFfjI3ncCp+OxKIjRa/0l8ujH/3p0qVL/wJh9tyW9J8YlgMAM8z1GQh+ujf0bRhKOIlB07CTlml04QweVya1KFTyvnML2osgRjKCb0lmhGzeuIg0PrcjrXPe4u2sSQbsG3XL2Jrk8IHFLZVL827ZnRq/M34HV/nZ0eERZ6H5UQqDZPuwXAAUNW7HKwg/igbHtWlkOx6UYBzXpnm7y48q63jH6wTXEVhHYB2B/0kE/gviOG5RK/1x9AAAAABJRU5ErkJggg==`,ghostty:`/assets/ghostty-D5T950Nz.png`,xcode:`/assets/xcode-BOSzsT4U.png`};function Fi({target:e,className:t=`size-4`}){return(0,q.jsx)(`img`,{alt:``,className:`${t} shrink-0 rounded-[3px]`,draggable:!1,src:Pi[e.id]})}function Ii({onOpenPreferredTarget:e,onOpenTarget:t,preferredTarget:n,targets:r}){let[i,a]=(0,K.useState)(null),o=i!==null,s=(0,K.useCallback)(async(e,t)=>{if(i===null){a(e.id);try{await t()}finally{a(null)}}},[i]);return n?(0,q.jsx)(Sr,{disabled:o,className:`px-1`,primaryAction:{label:`Open workspace in ${n.label}`,onSelect:()=>{s(n,e)},content:(0,q.jsx)(Fi,{target:n,className:`size-5`})},secondaryActions:r.map(e=>({label:e.label,onSelect:()=>{s(e,()=>t(e.id))},content:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Fi,{target:e,className:`size-5`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1`,children:e.label})]})})),triggerLabel:`Choose workspace open target`,mobileTitle:`Open Workspace`}):null}var Li=rt(null),Ri=rt(null),zi=rt([]);function Bi(e){let t=ft(e.enabled?ut:Li),n=ft(e.enabled?dt:Ri),r=ft(e.enabled?st:zi);return{openWorkspace:(0,K.useMemo)(()=>{if(!e.enabled||!t||!n||r.length===0)return null;let i=n;return e=>ot(i,e)},[e.enabled,t,n,r.length]),workspaceOpenTargets:r}}var Vi=`Failed to open file locally`,Hi=`Localhost is disconnected.`,Ui=`No local editor is available.`;function Wi(e){return e.hasDaemon?Ui:Hi}function Gi(e){let{hasDaemon:t}=pt(),{openWorkspace:n,workspaceOpenTargets:r}=Bi(e),[i,a]=lt(),o=(0,K.useMemo)(()=>_t({preferredTargetId:i,targets:r}),[i,r]),s=(0,K.useCallback)(async e=>{if(!r.find(t=>t.id===e.targetId)||!n)return en.error(Vi,{description:Wi({hasDaemon:t})}),!1;e.rememberTarget&&a(e.targetId);try{return await n({lineNumber:e.lineNumber,path:e.path,targetId:e.targetId}),!0}catch(e){return en.error(Vi,{description:e instanceof Error?e.message:void 0}),!1}},[t,n,a,r]),c=(0,K.useCallback)(async e=>o?s({lineNumber:e.lineNumber,path:e.path,rememberTarget:!1,targetId:o.id}):(en.error(Vi,{description:Wi({hasDaemon:t})}),!1),[t,s,o]);return{canOpenPreferredTarget:o!==null,openPathInPreferredTarget:c,openPathInTarget:s,preferredTarget:o,workspaceOpenTargets:r}}function Ki(e,t){return e?e.sessions.findIndex(e=>e.id===t.id)===-1?{sessions:[...e.sessions,t]}:{sessions:e.sessions.map(e=>e.id===t.id?t:e)}:{sessions:[t]}}function qi(e,t){if(!e)return e;let n=e.sessions.filter(e=>e.id!==t);return n.length===e.sessions.length?e:{sessions:n}}function Ji(e,t){if(!e)throw Error(`${t}: thread id is required when query is enabled`);return e}function Yi(e,t){return D({queryKey:a(e),queryFn:({signal:t})=>ue(Ji(e,`useThreadTerminals`),t),enabled:(t?.enabled??!0)&&!!e,refetchOnWindowFocus:!1})}function Xi(){let e=ee();return N({meta:{errorMessage:`Failed to start terminal.`},mutationFn:({threadId:e,...t})=>x(e,t),onSuccess:t=>{e.setQueryData(a(t.threadId),e=>Ki(e,t)),e.invalidateQueries({queryKey:a(t.threadId)})}})}function Zi(){let e=ee();return N({meta:{errorMessage:`Failed to rename terminal.`},mutationFn:({terminalId:e,threadId:t,...n})=>te(t,e,n),onSuccess:t=>{e.setQueryData(a(t.threadId),e=>Ki(e,t)),e.invalidateQueries({queryKey:a(t.threadId)})}})}function Qi(){let e=ee();return N({meta:{errorMessage:`Failed to close terminal.`},mutationFn:({mode:e,terminalId:t,threadId:n})=>l(n,t,{mode:e,reason:`user`}),onSuccess:(t,n)=>{e.setQueryData(a(t.threadId),e=>t.status===`exited`?qi(e,n.terminalId):Ki(e,t)),e.invalidateQueries({queryKey:a(t.threadId)})}})}var $i=`bb.thread.useStandardManagerTimeline`,ea=`bb.thread.showAllEvents`;function ta(){return typeof window>`u`?null:window.localStorage}function na(e,t){return e===`true`?!0:e===`false`?!1:t}function ra({currentValue:e,initialValue:t,legacyValue:n}){return na(e===null?n:e,t)}var ia=tt({parse:na,serialize:e=>String(e)}),aa=nt($i,!1,{getItem:(e,t)=>{let n=ta();return ra({currentValue:n?.getItem(e)??null,legacyValue:n?.getItem(ea)??null,initialValue:t})},removeItem:e=>{ia.removeItem(e)},setItem:(e,t)=>{ia.setItem(e,t)},subscribe:ia.subscribe},{getOnInit:!0});function oa(){return at(aa)}function sa(e,t){let n=e.mergeBase?.aheadCount??0,r=e.mergeBase?.behindCount??0;return n===0&&r===0?null:n>0&&r>0?t?`${n} ahead, ${r} behind relative to ${t}`:`${n} ahead, ${r} behind`:n>0?t?`${n} ahead of ${t}`:`${n} ahead`:t?`${r} behind ${t}`:`${r} behind`}function ca(e,t){return{label:e,summary:t,summaryContent:t}}function la(e,t){if(!e){let e=t?.error instanceof p&&t.error.code===`path_not_found`;return t?.workspaceDeleted||e?ca(`Unknown`,`Workspace not found.`):ca(`Unknown`,`Workspace status unavailable.`)}let n=t?.mergeBaseBranch??e.mergeBase?.mergeBaseBranch,r=t?.showBranchComparison?sa(e,n):null;switch(e.workingTree.state){case`clean`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?ca(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.aheadCount??0)>0?ca(`Ahead`,r??`Local commits pending merge.`):(e.mergeBase?.behindCount??0)>0?ca(`Behind`,r??`Branch is behind its merge base.`):ca(t?.showBranchComparison?`Up to date`:`Clean`,n?`No local changes relative to ${n}.`:`No local changes.`);case`untracked`:return ca(`Untracked`,r??``);case`dirty_uncommitted`:return ca(`Dirty`,r??``);case`committed_unmerged`:return(e.mergeBase?.aheadCount??0)>0&&(e.mergeBase?.behindCount??0)>0?ca(`Diverged`,r??`Branch has diverged.`):(e.mergeBase?.behindCount??0)>0?ca(`Behind`,r??`Branch is behind its merge base.`):ca(`Ahead`,r??`Local commits pending merge.`);case`dirty_and_committed_unmerged`:return ca(`Dirty`,r??``);default:return oe(e.workingTree.state)}}var ua=rt(!1),da=nt(`bb.thread.secondaryPanel.widthPercent`,50,tt({parse:(e,t)=>{if(e===null)return t;let n=Number.parseFloat(e);return Number.isFinite(n)&&n>0&&n<=100?n:t},serialize:e=>String(e)}),{getOnInit:!0}),fa=rt(new Set),pa=rt(new Set),ma=rt(void 0),ha=rt(null);function ga({activeSecondaryPanel:e,clearActiveFileTabs:t,defaultMergeBaseBranch:n,environmentId:r,mergeBaseBranchOptionsEnabled:i=!1,setThreadSecondaryPanel:a}){let o=ft(ma),s=it(ma),c=it(ha),{data:l,isLoading:u}=yi(r??``,{enabled:!!r&&(i||e===`git-diff`)});(0,K.useEffect)(()=>{s(void 0)},[r,s]);let d=(0,K.useCallback)(e=>{a(e)},[a]),f=(0,K.useCallback)(()=>{d(`git-diff`)},[d]);return{closeThreadSecondaryPanel:(0,K.useCallback)(()=>{e!==null&&a(null)},[e,a]),defaultMergeBaseBranch:n,isLoadingMergeBaseBranchOptions:u,mergeBaseBranchOptions:l,openDiffFile:(0,K.useCallback)(e=>{t(),c(e),f()},[t,f,c]),openThreadDiffPanel:f,openThreadSecondaryPanel:d,selectedMergeBaseBranch:o,setSelectedMergeBaseBranch:s}}function _a(e){return!!e.threadId&&e.inlineRowCount===0&&e.cachedRowCount===0&&!e.isLoading}function va(e){return{sourceSeqEnd:e.sourceSeqEnd,sourceSeqStart:e.sourceSeqStart,turnId:e.turnId}}function ya(e,t){return e.turnId===t.turnId&&e.sourceSeqStart===t.sourceSeqStart&&e.sourceSeqEnd===t.sourceSeqEnd}function ba(e){let t={},n=e=>{for(let r of e){if(r.kind===`turn`){t[r.id]=va(r),r.children&&n(r.children);continue}r.kind===`work`&&r.workKind===`delegation`&&n(r.childRows)}};return n(e),t}function xa({candidateRowIds:e,previousRangesById:t,visibleRangesById:n}){let r=new Set;for(let i of e){let e=n[i],a=t[i];(!e||a&&!ya(a,e))&&r.add(i)}return r}function Sa(e,t){let n=null;for(let r of t)e.has(r)&&(n??=new Set(e),n.delete(r));return n}function Ca(e,t){let n=null;for(let r of t)r in e&&(n??={...e},delete n[r]);return n}function wa({currentLoadGeneration:e,request:t,visibleRangesById:n}){if(e!==t.loadGeneration)return!1;let r=n[t.rowId];return r!==void 0&&ya(r,t.range)}function Ta({loadTurnSummaryRows:e,managerTimelineView:t,timelineRows:n,threadId:r}){let i=(0,K.useRef)(0),a=(0,K.useRef)(e),o=(0,K.useRef)(r),s=(0,K.useRef)({}),c=(0,K.useRef)(new Set),l=(0,K.useRef)(new Set),u=(0,K.useRef)(new Set),d=(0,K.useRef)({}),[f,p]=(0,K.useState)(()=>new Set),[m,h]=(0,K.useState)(()=>new Set),[g,_]=(0,K.useState)({});(0,K.useLayoutEffect)(()=>{a.current=e},[e]),(0,K.useLayoutEffect)(()=>{o.current=r},[r]),(0,K.useLayoutEffect)(()=>{let e=ba(n),t=xa({candidateRowIds:[...Object.keys(d.current),...c.current,...l.current,...u.current],previousRangesById:s.current,visibleRangesById:e});if(s.current=e,t.size===0)return;let r=Sa(c.current,t);r&&(c.current=r);let i=Sa(l.current,t);i&&(l.current=i,p(i));let a=Sa(u.current,t);a&&(u.current=a,h(a));let o=Ca(d.current,t);o&&(d.current=o,_(o))},[n]);let v=(0,K.useCallback)(e=>{let t=o.current,n={loadGeneration:i.current,range:va(e),rowId:e.id},r=c.current,f=s.current[e.id];if(f===void 0||!ya(f,n.range)||r.has(e.id)||!_a({cachedRowCount:d.current[e.id]?.length??0,inlineRowCount:e.children?.length??0,isLoading:l.current.has(e.id),threadId:t})||!t)return;r.add(e.id);let m=new Set(l.current).add(e.id);if(l.current=m,p(m),u.current.has(e.id)){let t=new Set(u.current);t.delete(e.id),u.current=t,h(t)}a.current({id:t,turnId:e.turnId,sourceSeqStart:e.sourceSeqStart,sourceSeqEnd:e.sourceSeqEnd}).then(t=>{if(!wa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let r={...d.current,[e.id]:t.rows};d.current=r,_(r)}).catch(()=>{if(!wa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;c.current.delete(e.id);let t=new Set(u.current).add(e.id);u.current=t,h(t)}).finally(()=>{if(!wa({currentLoadGeneration:i.current,request:n,visibleRangesById:s.current}))return;let t=new Set(l.current);t.delete(e.id),l.current=t,p(t)})},[]);return(0,K.useLayoutEffect)(()=>{i.current+=1,c.current=new Set;let e=new Set,t=new Set,n={};l.current=e,u.current=t,d.current=n,p(e),h(t),_(n)},[t,r]),{erroredTurnSummaryIds:m,handleLoadTurnSummaryRows:v,loadingTurnSummaryIds:f,turnSummaryRowsById:g}}function Ea({managerTimelineView:e,timelineRows:t,threadId:n}){let{mutateAsync:r}=ke();return Ta({managerTimelineView:e,timelineRows:t,threadId:n,loadTurnSummaryRows:(0,K.useCallback)(t=>r({...t,managerTimelineView:e}),[r,e])})}var Da=pe;function Oa({actionsMenu:e,activeTerminalCount:t,isManagedThread:n,isManagerThread:r,isSecondaryPanelOpen:i,isTerminalPanelOpen:a,isThreadGitActionPending:o,onOpenThreadGitAction:s,onToggleSecondaryPanel:c,onToggleTerminalPanel:l,showTerminalPanelToggle:u,threadHeaderGitActions:d,threadTitle:f,workspaceOpenButton:p}){let[m,...h]=d,g=fe(),_=g?`PanelBottom`:`PanelRight`;return(0,q.jsx)(on,{center:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`p`,{className:`truncate text-sm font-semibold`,children:f}),r?(0,q.jsx)(xr,{variant:`outline`,children:`manager`}):null,!r&&n?(0,q.jsx)(xr,{variant:`outline`,children:`managed`}):null]}),actions:(0,q.jsxs)(q.Fragment,{children:[p,m&&h.length>0?(0,q.jsx)(Sr,{disabled:o,primaryAction:{label:m.label,onSelect:()=>s(m.target)},secondaryActions:h.map(e=>({label:e.label,onSelect:()=>s(e.target)}))}):m?(0,q.jsx)(V,{type:`button`,variant:`outline`,size:`sm`,disabled:o,className:Da,onClick:()=>s(m.target),children:m.label}):null,u?(0,q.jsxs)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`${At} relative`,"aria-label":a?`Hide terminal panel`:`Show terminal panel`,"aria-pressed":a,title:a?`Hide terminal panel`:`Show terminal panel`,onClick:l,children:[(0,q.jsx)(L,{name:`Terminal`}),t>0?(0,q.jsx)(`span`,{"aria-hidden":`true`,className:`pointer-events-none absolute -right-0.5 -top-0.5 flex h-3.5 min-w-3.5 items-center justify-center rounded-full bg-primary px-1 text-[9px] font-semibold leading-none text-primary-foreground`,children:t>9?`9+`:t}):null]}):null,e,!g&&i?null:(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:At,"aria-label":i?`Hide secondary panel`:`Show secondary panel`,"aria-pressed":i,title:i?`Hide secondary panel`:`Show secondary panel`,onClick:c,children:(0,q.jsx)(L,{name:_})})]})})}function ka(){let e=ee();return N({meta:{errorMessage:`Failed to resolve pending interaction.`,showErrorToast:!1},mutationFn:({threadId:e,interactionId:t,resolution:n})=>F(e,t,n),onSuccess:(t,n)=>(vt({queryClient:e,threadId:n.threadId}),t)})}var Aa=[];function ja(){return{freeTextByQuestionId:{},selectedValuesByQuestionId:{}}}function Ma({formState:e,question:t}){return e.selectedValuesByQuestionId[t.id]??Aa}function Na({formState:e,question:t}){return e.freeTextByQuestionId[t.id]??``}function Pa({question:e,selectedValues:t}){let n=new Set((e.options??[]).map(e=>e.value));return t.filter(e=>n.has(e))}function Fa({optionValue:e,question:t,selectedValues:n}){return t.multiSelect?n.includes(e)?n.filter(t=>t!==e):[...n,e]:[e]}function Ia(e,t){let n=Ma({formState:e,question:t.question});return{...e,selectedValuesByQuestionId:{...e.selectedValuesByQuestionId,[t.question.id]:Fa({optionValue:t.optionValue,question:t.question,selectedValues:n})}}}function La(e,t){return{...e,freeTextByQuestionId:{...e.freeTextByQuestionId,[t.questionId]:t.value}}}function Ra({formState:e,question:t}){return Pa({question:t,selectedValues:Ma({formState:e,question:t})}).length>0?!0:t.allowFreeText&&Na({formState:e,question:t}).trim().length>0}function za({formState:e,questions:t}){let n={};for(let r of t){let t=Pa({question:r,selectedValues:Ma({formState:e,question:r})}),i=Na({formState:e,question:r}).trim();n[r.id]=r.allowFreeText&&i.length>0?{selected:t,freeText:i}:{selected:t}}return{kind:`user_answer`,answers:n}}function Ba({question:e}){return(0,q.jsxs)(`div`,{className:`min-w-0`,children:[e.shortLabel?(0,q.jsx)(`div`,{className:`text-xs font-medium uppercase text-muted-foreground`,children:e.shortLabel}):null,(0,q.jsx)(`div`,{className:`text-sm font-semibold text-foreground`,children:e.prompt})]})}function Va({checked:e,disabled:t,inputName:n,onOptionToggle:r,option:i,question:a}){let o=a.multiSelect?`checkbox`:`radio`;return(0,q.jsxs)(`label`,{className:P(`flex min-w-0 cursor-pointer items-start gap-2 rounded-md border px-3 py-2 transition-colors`,e?`border-surface-selected-border bg-surface-selected text-foreground`:`border-border bg-surface-raised text-muted-foreground hover:bg-state-hover hover:text-foreground`,t&&`cursor-not-allowed opacity-60`),children:[(0,q.jsx)(`input`,{type:o,name:n,value:i.value,checked:e,disabled:t,onChange:()=>r({question:a,optionValue:i.value}),className:`mt-0.5 size-4 shrink-0 accent-primary`}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block text-sm font-medium`,children:i.label}),i.description?(0,q.jsx)(`span`,{className:`mt-0.5 block text-xs text-muted-foreground`,children:i.description}):null]})]})}function Ha({disabled:e,formState:t,interactionId:n,onFreeTextChange:r,onOptionToggle:i,onSubmit:a,question:o}){let s=Ma({formState:t,question:o}),c=Na({formState:t,question:o}),l=`${n}-${o.id}`,u=o.options??[],d=`${o.shortLabel??o.prompt} answer`;return(0,q.jsxs)(`fieldset`,{className:`space-y-2 rounded-md border border-border bg-card px-4 py-3`,children:[(0,q.jsx)(`legend`,{className:`sr-only`,children:o.prompt}),(0,q.jsx)(Ba,{question:o}),u.length>0?(0,q.jsx)(`div`,{className:`grid gap-2`,children:u.map(t=>(0,q.jsx)(Va,{checked:s.includes(t.value),disabled:e,inputName:l,onOptionToggle:i,option:t,question:o},t.value))}):null,o.allowFreeText?(0,q.jsx)(`textarea`,{"aria-label":d,value:c,disabled:e,rows:3,onChange:e=>r({questionId:o.id,value:e.target.value}),onKeyDown:e=>{e.nativeEvent.isComposing||e.key!==`Enter`||!e.metaKey&&!e.ctrlKey||(e.preventDefault(),a())},className:`min-h-20 w-full resize-y rounded-md border border-input bg-background px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50`,placeholder:`Add an answer`}):null]})}function Ua({interactionId:e,questions:t,threadId:n}){let[r,i]=(0,K.useState)(ja),a=ka();(0,K.useEffect)(()=>{i(ja())},[e]);let o=(0,K.useMemo)(()=>t.length>0&&t.every(e=>Ra({formState:r,question:e})),[r,t]),s=a.error?mn({error:a.error,fallbackMessage:`Failed to submit answer.`}):null,c=a.isPending,l=c||!o;return{disabled:c,formState:r,mutationErrorMessage:s,submitAnswer:()=>{if(l)return;let i=za({formState:r,questions:t});a.mutateAsync({threadId:n,interactionId:e,resolution:i}).catch(()=>{})},updateFreeTextAnswer:e=>{i(t=>La(t,e))},updateSelectedAnswer:e=>{i(t=>Ia(t,e))}}}function Wa({className:e,interactionId:t,isResolving:n=!1,questions:r,threadId:i}){let{disabled:a,formState:o,mutationErrorMessage:s,submitAnswer:c,updateFreeTextAnswer:l,updateSelectedAnswer:u}=Ua({interactionId:t,questions:r,threadId:i}),d=a||n,[f,p]=(0,K.useState)(0);(0,K.useEffect)(()=>{p(0)},[t]);let m=r.length,h=r[f]??null,g=f===m-1,_=h?Ra({formState:o,question:h}):!1,v=()=>{p(e=>Math.max(e-1,0))},y=()=>{if(g){c();return}p(e=>Math.min(e+1,m-1))};return h?(0,q.jsxs)(`form`,{className:P(`space-y-3`,e),onSubmit:e=>{e.preventDefault(),y()},children:[m>1?(0,q.jsx)(Ga,{currentIndex:f,totalQuestions:m}):null,(0,q.jsx)(Ha,{disabled:d,formState:o,interactionId:t,onFreeTextChange:l,onOptionToggle:u,onSubmit:y,question:h}),(0,q.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[f>0?(0,q.jsx)(V,{type:`button`,size:`sm`,variant:`outline`,disabled:d,onClick:v,children:`Back`}):null,(0,q.jsxs)(V,{type:`submit`,size:`sm`,disabled:d||!_,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,g?`Submit answer`:`Next`]})]}),s?(0,q.jsx)(`div`,{className:`rounded-md border border-surface-destructive-border bg-surface-destructive px-3 py-2 text-xs text-destructive`,children:s}):null]}):null}function Ga({currentIndex:e,totalQuestions:t}){return(0,q.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,q.jsxs)(`span`,{children:[`Question `,e+1,` of `,t]}),(0,q.jsx)(`div`,{className:`flex items-center gap-1.5`,"aria-hidden":!0,children:Array.from({length:t}).map((t,n)=>(0,q.jsx)(`span`,{className:P(`size-1.5 rounded-full transition-colors`,n===e?`bg-foreground`:n<e?`bg-foreground/60`:`bg-foreground/25`)},n))})]})}function Ka({interaction:e,threadId:t}){return c(e.payload)?(0,q.jsx)(Ya,{interaction:e,payload:e.payload,threadId:t}):o(e.payload)?(0,q.jsx)(Ja,{interaction:e,payload:e.payload,threadId:t}):oe(e.payload)}function qa({title:e,errorMessage:t,footer:n,children:r}){return(0,q.jsxs)(`div`,{className:`mb-2 rounded-lg border border-border bg-surface-recessed px-4 py-3 text-xs text-muted-foreground`,children:[(0,q.jsx)(`h3`,{className:`min-w-0 text-sm font-semibold text-foreground`,children:(0,q.jsx)(Nt,{fullText:e,collapsedClassName:`line-clamp-2`,children:e})}),r?(0,q.jsx)(`div`,{className:`mt-3`,children:r}):null,n?(0,q.jsx)(`div`,{className:`mt-3 flex flex-wrap items-center justify-end gap-2`,children:n}):null,t?(0,q.jsx)(`div`,{className:`mt-2 rounded-md border border-surface-destructive-border bg-surface-destructive px-2 py-1 text-xs text-destructive`,children:t}):null]})}function Ja({interaction:e,payload:t,threadId:n}){let r=ka(),i=e.status===`resolving`,a=Qa(e.resolution),o=(0,K.useMemo)(()=>$a({interaction:e,payload:t}),[e,t]),s=r.error?mn({error:r.error,fallbackMessage:`Failed to resolve pending interaction.`}):null,c=r.isPending||i,l=t=>{let i=M(e,t);r.mutateAsync({threadId:n,interactionId:e.id,resolution:i}).catch(()=>{})};return(0,q.jsx)(qa,{title:o.title,errorMessage:s,footer:t.availableDecisions.map(e=>(0,q.jsx)(Xa,{decision:e,disabled:c,isLoading:i&&a===e,onClick:()=>l(e)},e)),children:o.body})}function Ya({interaction:e,payload:t,threadId:n}){let r=e.status===`resolving`;return(0,q.jsx)(qa,{title:g({interaction:e,surface:`app`}),children:(0,q.jsx)(Wa,{interactionId:e.id,isResolving:r,questions:t.questions,threadId:n})})}function Xa({decision:e,disabled:t,isLoading:n,onClick:r}){return(0,q.jsxs)(V,{type:`button`,size:`sm`,variant:Za(e),disabled:t,onClick:r,children:[n?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):null,eo(e)]})}function Za(e){switch(e){case`allow_once`:return`default`;case`allow_for_session`:return`outline`;case`deny`:return`ghost`}}function Qa(e){return!e||`kind`in e?null:e.decision}function $a({interaction:e,payload:t}){switch(t.subject.kind){case`command`:{let n=t.subject.command,r=n?Ft(n)??n:null,i=ce(e).filter(e=>!e.startsWith(`Command: `)).map(e=>e.startsWith(`Cwd: `)?e.slice(5):e);return{title:t.reason??`Do you want to run this command?`,body:r?(0,q.jsxs)(`div`,{className:`overflow-hidden rounded-lg border border-border bg-card`,children:[(0,q.jsxs)(`pre`,{className:P(zt(`base`),`overflow-auto whitespace-pre px-4 py-3 font-mono text-sm leading-tight text-foreground`),children:[`$ `,r]}),i.length>0?(0,q.jsx)(`ul`,{className:`border-t border-border px-4 py-3 text-xs text-muted-foreground`,children:i.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null]}):null}}case`file_change`:{let n=ce(e);return{title:t.reason??`Do you want to make these changes?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}case`permission_grant`:{let n=ce(e);return{title:t.reason??`Do you want to grant this permission?`,body:n.length>0?(0,q.jsx)(`ul`,{className:`rounded-lg border border-border bg-card px-4 py-3 text-xs text-muted-foreground`,children:n.map(e=>(0,q.jsx)(`li`,{children:e},e))}):null}}default:return oe(t.subject)}}function eo(e){switch(e){case`allow_once`:return`Allow once`;case`allow_for_session`:return`Allow for session`;case`deny`:return`Deny`}}var to=`rounded-md border border-border bg-surface-recessed`;function no({children:e,ariaLabel:t,className:n,style:r}){return t?(0,q.jsx)(`section`,{"aria-label":t,className:P(to,n),style:r,children:e}):(0,q.jsx)(`div`,{className:P(to,n),style:r,children:e})}var ro=new Set([`active`,`host-reconnecting`,`waiting-for-host`]);function io(e){return ro.has(e)}var ao={uncommitted:`Uncommitted`,untracked:`Untracked`,committed:`Committed`},oo={managedBy:{toggle:`thread-prompt-banner-managed-by-toggle`,body:`thread-prompt-banner-managed-by-body`},managerChildren:{toggle:`thread-prompt-banner-manager-children-toggle`,body:`thread-prompt-banner-manager-children-body`},todos:{toggle:`thread-prompt-banner-todos-toggle`,body:`thread-prompt-banner-todos-body`},git:{toggle:`thread-prompt-banner-git-toggle`,body:`thread-prompt-banner-git-body`}},so={in_progress:0,pending:1,completed:2};function co(e){return e.items.length>0}function lo(e){if(e.length===0)return null;let t=0;for(let n of e)n.status===`completed`&&(t+=1);return t===0?`${e.length}`:`${t}/${e.length}`}function uo({className:e}){return(0,q.jsx)(L,{name:`ChevronDown`,className:P(`size-3.5 shrink-0 rotate-45`,e),"aria-hidden":`true`})}function fo({id:e,controlsId:t,ariaLabel:n,icon:r,label:i,isExpanded:a,onToggle:o}){return(0,q.jsxs)(`button`,{type:`button`,id:e,"aria-expanded":a,"aria-controls":t,"aria-label":n,onClick:o,className:P(`flex min-w-0 items-center rounded px-1 py-0.5 text-xs transition-colors hover:bg-state-hover`,i==null?`gap-0`:`gap-1.5`,a?`text-foreground`:`text-muted-foreground`),children:[r,i==null?null:(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:i}),(0,q.jsx)(L,{name:`ChevronDown`,className:P(`size-3.5 shrink-0 text-subtle-foreground transition-transform duration-200`,a&&`rotate-180`),"aria-hidden":`true`})]})}function po({status:e}){let t=`size-3.5 shrink-0`;switch(e){case`in_progress`:return(0,q.jsx)(L,{name:`Square`,className:P(t,`fill-current text-muted-foreground/30`),"aria-hidden":`true`});case`completed`:return(0,q.jsx)(L,{name:`Check`,className:P(t,`text-muted-foreground/60`),"aria-hidden":`true`});case`pending`:return(0,q.jsx)(L,{name:`Square`,className:P(t,`text-muted-foreground/45`),"aria-hidden":`true`})}}function mo({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:[...e].sort((e,t)=>so[e.status]-so[t.status]).map(e=>(0,q.jsxs)(`li`,{className:`flex min-w-0 items-center gap-2 py-0.5 text-xs`,children:[(0,q.jsx)(po,{status:e.status}),(0,q.jsx)(`span`,{className:P(`min-w-0 flex-1 truncate`,e.status===`in_progress`&&`font-medium text-foreground`,e.status===`pending`&&`text-muted-foreground`,e.status===`completed`&&`text-subtle-foreground line-through decoration-subtle-foreground`),title:e.text,children:e.text})]},e.id))})}function ho({managerName:e,href:t}){return(0,q.jsxs)(`div`,{className:`px-3 pb-2 pt-1.5 text-xs leading-relaxed text-muted-foreground`,children:[`This thread is managed by`,` `,(0,q.jsx)(Ke,{to:t,className:`text-foreground/90 underline-offset-2 hover:underline`,children:e}),`.`]})}function go({items:e}){return(0,q.jsx)(`ul`,{className:`max-h-40 space-y-0.5 overflow-y-auto px-3 pb-2 pt-1.5`,children:e.map(e=>(0,q.jsx)(`li`,{className:`text-xs`,children:(0,q.jsxs)(Ke,{to:e.href,title:e.title,className:`flex min-w-0 items-center gap-2 py-0.5 text-foreground/90 underline-offset-2 hover:underline`,children:[(0,q.jsx)(uo,{className:`text-subtle-foreground no-underline`}),(0,q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.title})]})},e.id))})}function _o({id:e,labelledBy:t,isExpanded:n,children:r}){return(0,q.jsx)(`section`,{id:e,role:`region`,"aria-labelledby":t,"aria-hidden":!n,className:P(`grid overflow-hidden transition-[grid-template-rows,opacity,border-color] duration-200 ease-out`,n?`grid-rows-[1fr] border-t border-border opacity-100`:`pointer-events-none grid-rows-[0fr] border-t border-transparent opacity-0`),children:(0,q.jsx)(`div`,{className:`overflow-hidden`,children:r})})}function vo({todoSection:e,gitSection:t,gitSectionPending:n,archivedSection:r,managedBySection:i,managerChildrenSection:a,expandedSection:o,onToggleSection:s}){if(n)return null;if(r){let e=o===`managedBy`&&i!==null;return(0,q.jsxs)(no,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[i?(0,q.jsx)(fo,{id:oo.managedBy.toggle,controlsId:oo.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:e,onToggle:()=>s(`managedBy`)}):null,(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`Archive`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:`Thread is archived`})]})]}),i?(0,q.jsx)(_o,{id:oo.managedBy.body,labelledBy:oo.managedBy.toggle,isExpanded:e,children:(0,q.jsx)(ho,{managerName:i.managerName,href:i.href})}):null]})}let c=e!==null&&co(e.pendingTodos),l=t!==null,u=i!==null,d=a!==null&&a.items.length>0;if(!c&&!l&&!u&&!d)return null;let f=c&&e?e.pendingTodos.items:[],p=o===`todos`&&c,m=o===`git`&&l,h=o===`managedBy`&&u,g=o===`managerChildren`&&d,_=l?(0,q.jsxs)(q.Fragment,{children:[c?null:(0,q.jsxs)(q.Fragment,{children:[ao[t.changedFiles.kind],` · `]}),Ti(Si(t.changedFiles.stats))]}):null,v=l&&t.mergeBase?Qn({mergeBaseBranch:t.mergeBase.branch,mergeBaseBranchOptions:t.mergeBase.options}):[],y=u&&!c&&!l&&!d;return(0,q.jsxs)(no,{ariaLabel:`Thread context before sending`,className:`overflow-hidden`,style:{minHeight:32},children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-0.5 px-2 py-1 text-xs text-muted-foreground`,children:[u&&i&&y?(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5 px-1 py-0.5`,children:[(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,q.jsxs)(`span`,{className:`min-w-0 truncate`,children:[`Managed by`,` `,(0,q.jsx)(Ke,{to:i.href,className:`text-foreground/90 underline underline-offset-2`,children:i.managerName})]})]}):null,u&&i&&!y?(0,q.jsx)(fo,{id:oo.managedBy.toggle,controlsId:oo.managedBy.body,ariaLabel:`Managed by ${i.managerName}`,icon:(0,q.jsx)(L,{name:`UserRound`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:null,isExpanded:h,onToggle:()=>s(`managedBy`)}):null,d&&a?(0,q.jsx)(fo,{id:oo.managerChildren.toggle,controlsId:oo.managerChildren.body,icon:(0,q.jsx)(L,{name:`CircleDashed`,className:`size-3.5 shrink-0 animate-spin`,"aria-hidden":`true`}),label:`${a.items.length} active managed ${a.items.length===1?`thread`:`threads`}`,isExpanded:g,onToggle:()=>s(`managerChildren`)}):null,c?(0,q.jsx)(fo,{id:oo.todos.toggle,controlsId:oo.todos.body,icon:(0,q.jsx)(L,{name:`ListTodo`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:lo(f),isExpanded:p,onToggle:()=>s(`todos`)}):null,l&&_?(0,q.jsx)(fo,{id:oo.git.toggle,controlsId:oo.git.body,icon:(0,q.jsx)(L,{name:`FileDiff`,className:`size-3.5 shrink-0`,"aria-hidden":`true`}),label:_,isExpanded:m,onToggle:()=>s(`git`)}):null,l&&t.mergeBase?(0,q.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1.5 text-xs text-muted-foreground`,children:[(0,q.jsx)(`span`,{className:`shrink-0`,children:`Merge base:`}),(0,q.jsx)(jn,{value:t.mergeBase.branch,options:v,variant:`minimal`,loading:t.mergeBase.optionsLoading,onChange:t.mergeBase.onChange,onOpenChange:t.mergeBase.onPickerOpenChange,className:`max-w-[10rem]`,muted:!0,popoverAlign:`end`})]}):null]}),u&&i&&!y?(0,q.jsx)(_o,{id:oo.managedBy.body,labelledBy:oo.managedBy.toggle,isExpanded:h,children:(0,q.jsx)(ho,{managerName:i.managerName,href:i.href})}):null,d&&a?(0,q.jsx)(_o,{id:oo.managerChildren.body,labelledBy:oo.managerChildren.toggle,isExpanded:g,children:(0,q.jsx)(go,{items:a.items})}):null,c?(0,q.jsx)(_o,{id:oo.todos.body,labelledBy:oo.todos.toggle,isExpanded:p,children:(0,q.jsx)(mo,{items:f})}):null,l?(0,q.jsx)(_o,{id:oo.git.body,labelledBy:oo.git.toggle,isExpanded:m,children:(0,q.jsx)(ki,{files:t.changedFiles.files,className:`max-h-32 px-3 pb-2 pt-1`,onFileClick:e=>t.onPromptBannerFileClick({file:e,section:t.changedFiles})})}):null]})}var yo=220;function bo(e){let t=e.trim();return t.length===0?`Attachment`:tr(t)}function xo(e){let t=0;for(let n of e)(n.type===`localImage`||n.type===`localFile`)&&(t+=1);return t}function So(e){let t=e.filter(e=>e.type===`text`).map(e=>e.text.trim()).filter(e=>e.length>0).join(`
2
+
3
+ `).trim();if(t.length>0)return t.length<=yo?t:`${t.slice(0,yo-1)}...`;let n=xo(e);if(n===1){let t=e.find(e=>e.type===`localImage`||e.type===`localFile`);return t?t.type===`localFile`&&t.name?`Attachment only (${t.name})`:`Attachment only (${bo(t.path)})`:`Attachment only (1 file)`}return n>1?`Attachment only (${n} files)`:`(empty message)`}function Co(e){return fr(e)}var wo=(0,K.memo)(function({queuedMessage:e,index:t,isProcessing:n,sendDisabled:r,actionDisabled:i,onSendImmediately:a,onEdit:o,onDelete:s}){let c=(0,K.useMemo)(()=>So(e.content),[e.content]),l=(0,K.useMemo)(()=>xo(e.content),[e.content]);return(0,q.jsx)(`li`,{className:`px-2.5 py-0.5`,children:(0,q.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`div`,{className:`p-0.5 text-muted-foreground`,children:(0,q.jsx)(L,{name:`CornerDownRight`,className:`size-3.5`})}),(0,q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 text-xs leading-4`,children:[(0,q.jsx)(`p`,{className:`min-w-0 truncate text-foreground`,title:c,children:c}),l>0?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`.`}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:l===1?`1 attachment`:`${l} attachments`})]}):null,n?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`.`}),(0,q.jsx)(`span`,{className:`shrink-0 text-muted-foreground`,children:`Sending...`})]}):null]})}),(0,q.jsxs)(`div`,{className:`ml-1 flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(V,{type:`button`,size:`sm`,variant:`link`,className:`h-auto px-0 pr-1 text-xs text-muted-foreground underline`,disabled:r||n,onClick:()=>a(e.id),children:n?`Sending...`:`Send now`}),(0,q.jsx)(V,{type:`button`,size:`icon`,variant:`ghost`,className:`size-7 text-muted-foreground`,disabled:i||n,onClick:()=>o(e.id),"aria-label":`Edit queued message ${t+1}`,title:`Edit queued message`,children:(0,q.jsx)(L,{name:`Edit`,className:`size-3.5`})}),(0,q.jsx)(V,{type:`button`,size:`icon`,variant:`ghost`,className:`size-7 text-muted-foreground hover:text-destructive`,disabled:i||n,onClick:()=>s(e.id),"aria-label":`Delete queued message ${t+1}`,title:`Delete queued message`,children:(0,q.jsx)(L,{name:`Trash2`,className:`size-3.5`})})]})]})})});function To({queuedMessages:e,sendDisabled:t,actionDisabled:n,processingMessageId:r,onSendImmediately:i,onEdit:a,onDelete:o}){return e.length===0?null:(0,q.jsxs)(no,{ariaLabel:`Queued messages`,className:`overflow-hidden`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-between px-2.5 pb-1 pt-2.5`,children:(0,q.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Queued (`,e.length,`)`]})}),(0,q.jsx)(`ul`,{children:e.map((e,s)=>(0,q.jsx)(wo,{queuedMessage:e,index:s,isProcessing:r===e.id,sendDisabled:t,actionDisabled:n,onSendImmediately:i,onEdit:a,onDelete:o},e.id))})]})}var Eo=(0,K.memo)(function({environmentLabel:e,environmentHostLabel:t,environmentHostConnected:n,environmentIcon:r,environmentBranchName:i,onCreateNewThreadInWorktree:a}){return!e&&n===void 0?null:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 pr-1.5`,children:[e?(0,q.jsx)(gr,{label:`Environment`,value:(0,q.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`span`,{children:e}),t?(0,q.jsxs)(`span`,{className:`hidden text-muted-foreground lg:inline`,children:[`· `,t]}):null,n===void 0?null:(0,q.jsx)(Sn,{connected:n,className:`translate-y-px`})]}),leading:r?(0,q.jsx)(L,{name:r,className:`size-4 shrink-0`}):null,className:`h-6 shrink-0`,muted:!0}):n===void 0?null:(0,q.jsx)(Sn,{connected:n}),i?(0,q.jsxs)(`button`,{type:`button`,className:`hidden min-w-0 items-center gap-1 rounded-md px-1.5 py-0.5 text-xs text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground md:flex`,title:`Copy branch name: ${i}`,onClick:()=>{fn(i,{successMessage:`Branch name copied`,errorMessage:`Failed to copy branch name`})},children:[(0,q.jsx)(L,{name:`GitMerge`,className:`size-3.5 shrink-0`}),(0,q.jsx)(`span`,{className:`truncate`,children:i})]}):null,a?(0,q.jsx)(`button`,{type:`button`,"aria-label":`Create new thread in this worktree`,title:`New thread in this worktree`,onClick:a,className:`-ml-1 inline-flex shrink-0 items-center justify-center rounded-md px-1 py-0.5 text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:(0,q.jsx)(L,{name:`MessageSquarePlus`,className:`size-4`})}):null]})});function Do({visible:e,active:t=!1,onClick:n,className:r,ariaLabel:i=`Scroll to latest event`}){return(0,q.jsx)(`div`,{className:P(`flex h-0 items-center justify-center`,r),children:(0,q.jsx)(`button`,{onClick:n,className:P(`z-20 -mt-20 flex size-8 items-center justify-center rounded-full border border-border bg-surface-scrim backdrop-blur-md transition-all duration-200 hover:bg-state-hover`,e?`translate-y-0 opacity-100`:`pointer-events-none translate-y-2 opacity-0`),"aria-label":i,type:`button`,children:t?(0,q.jsx)(Oo,{}):(0,q.jsx)(L,{name:`ArrowDown`,className:`size-4`})})})}function Oo(){return(0,q.jsxs)(`span`,{className:`flex items-center gap-0.5`,"aria-hidden":!0,children:[(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current [animation-delay:-240ms]`}),(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current [animation-delay:-120ms]`}),(0,q.jsx)(`span`,{className:`size-1 animate-typing-dot rounded-full bg-current`})]})}function ko({active:e}){let t=re();return t?(0,q.jsx)(Do,{visible:!t.isAtBottom,active:e,onClick:t.scrollToBottom}):null}function Ao({onSubmit:e,submission:t,...n}){let r=re(),i=()=>{e(),r?.scrollToBottom()},a=t?.onModifierSubmit===void 0?void 0:()=>{t.onModifierSubmit?.(),r?.scrollToBottom()},o=t===void 0?void 0:{...t,...a?{onModifierSubmit:a}:{}};return(0,q.jsx)(Fn,{...n,onSubmit:i,submission:o})}var jo=68,Mo=jo+32,No=(0,K.memo)(function({attachments:e,stack:t,composer:n,environmentSummary:r,contextWindowUsage:i,execution:a,permission:o,mentions:s,zenModeResetKey:c}){let l=n.submitMode,u=l.kind===`queue`,d=l.kind===`ready`||l.kind===`queue`,f=l.kind===`blocked`&&l.reason===`stopping`,p=l.kind===`queue`||l.kind===`stop-only`?l.onStop:void 0,m=p!==void 0,h=(0,K.useRef)(null),g=Gn(h),_=n.canSteerSubmit?n.onSteerSubmit:void 0,v=(0,K.useRef)(null),[y,b]=(0,K.useState)(0);(0,K.useLayoutEffect)(()=>{let e=v.current;if(!e)return;let t=e.offsetHeight;b(e=>e===t?e:t)},[t]),(0,K.useEffect)(()=>{let e=v.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(e=>{let t=e[0];t&&b(t.contentRect.height)});return t.observe(e),()=>t.disconnect()},[]);let x=Math.max(jo,Mo-y);return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(ko,{active:n.threadRuntimeDisplayStatus===`active`}),(0,q.jsxs)(`div`,{className:`space-y-2`,children:[(0,q.jsx)(`div`,{ref:v,className:`space-y-2`,children:t}),(0,q.jsx)(Ao,{promptBoxRef:h,voice:g,minHeight:x,value:n.message,onChange:n.onChangeMessage,onSubmit:n.onSubmit,history:n.history,placeholder:n.promptPlaceholder,mentionMenuPlacement:`top`,autoFocus:!0,submission:{onStop:p,isSubmitting:n.isFollowUpSubmitting||f,disabled:!d||n.isFollowUpSubmitting,onModifierSubmit:_,title:u?`Queue follow-up (Enter)`:f?`Stopping run...`:`Submit (Enter)`,isRunning:m,mode:`enter`},mentions:s,attachments:e,zenMode:{layout:`thread`,storageKey:null,resetKey:c,resetOnSubmit:!0},footerStart:(0,q.jsx)(vr,{...a})}),(0,q.jsxs)(`div`,{className:`mt-1 flex min-h-6 items-center justify-between gap-2 pl-[15px] pr-3.5`,children:[(0,q.jsx)(`div`,{className:`flex min-w-0 flex-1 flex-wrap items-center gap-1`,children:r}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,q.jsx)(En,{value:o.value,options:o.options,onChange:o.onChange,supported:o.supported,className:`h-6`}),i?(0,q.jsx)(Ot,{usage:i}):null]})]})]})]})});function Po(e){return e===`active`||e===`host-reconnecting`}function Fo({hasPromptDraftInput:e,isFollowUpSubmitting:t,isQueueMutationPending:n,queuedMessageCount:r,runtimeDisplayStatus:i,submitModeKind:a}){return i===`active`&&a===`queue`&&!t&&!n&&(r>0||e)}function Io({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,mode:`auto`,...n.model?{model:n.model}:{},...Bo(n)}}function Lo({input:e,threadId:t}){return e.length===0?null:{id:t,input:e,mode:`steer`}}function Ro({input:e,threadId:t,...n}){return e.length===0?null:{id:t,input:e,model:n.model,...Bo(n)}}function zo({queuedMessages:e,threadId:t}){return e.map(e=>({id:t,mode:`steer`,queuedMessageId:e.id}))}function Bo({permissionMode:e,reasoningLevel:t,serviceTier:n,supportsServiceTier:r}){return{...r&&n?{serviceTier:n}:{},reasoningLevel:t,permissionMode:e}}function Vo(e,t){if(e===`created`||e===`provisioning`)return t?`Hiring manager...`:`Creating thread...`;switch(e){case`waiting-for-host`:return`Host daemon disconnected`;case`host-reconnecting`:return`Waiting for host daemon to reconnect...`;case`error`:return`Retry by sending a follow-up message`;case`idle`:case`active`:return t?`Send a message. @ to mention threads, files, or folders`:`Ask for follow-up changes. @ to mention files, or folders`;default:return oe(e)}}function Ho({canUseGitUi:e,composerQueriesEnabled:t,composerQueriesRefetchOnMount:n,composerQueriesStaleTime:r,contextWindowUsage:i,environmentBranchName:a,environmentHostConnected:o,environmentHostLabel:s,environmentIcon:c,environmentLabel:l,onCreateNewThreadInWorktree:u,isEnvironmentActionPending:d,pendingInteractions:f,onChangedFileClick:p,openThreadDiffPanel:m,projectId:h,workspaceChangedFilesSection:g,workspaceStatusPending:_,contextBannerMergeBase:v,pendingTodos:y,managedBySection:b,managerChildrenSection:x,sendMessage:S,thread:C}){let{data:w}=Te(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),{data:T=[]}=Re(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),E=(0,K.useRef)(new Map);E.current=(0,K.useMemo)(()=>{let e=new Map;for(let t of T)e.set(t.id,t);return e},[T]);let{data:D=[]}=Me(C.id,{enabled:t,refetchOnMount:n,staleTime:r}),O=bn(),k=wn(),A=Yn(),j=Un(),M=mt(),N=Ln({projectId:h,threadId:C.id}),P=qn(h,{threadSuggestionMode:C.type===`manager`?`all`:`managers`,currentThreadId:C.id,currentThreadType:C.type,environmentId:C.environmentId??null}),[F,I]=(0,K.useState)(null),[ee,te]=(0,K.useState)(null),[ne,L]=(0,K.useState)(null),[re,R]=(0,K.useState)(!1),ie=(0,K.useMemo)(()=>lr(D),[D]),{selectedProviderId:z,providerOptions:B,hasMultipleProviders:ae,selectedProviderDisplayName:oe,selectedModel:V,setSelectedModel:se,serviceTier:ce,setServiceTier:le,reasoningLevel:ue,setReasoningLevel:de,permissionMode:fe,setPermissionMode:pe,activeModel:me,modelOptions:he,reasoningOptions:H,permissionModeOptions:ge,supportsPermissionModeSelection:_e,supportsServiceTier:U,serviceTierSupportByProvider:ve}=rn({enabled:t,environmentId:C.environmentId??void 0,scope:`component-local`,resetKey:C.id,initialProviderId:C.providerId,initialModel:w?.model,initialServiceTier:w?.serviceTier,initialReasoningLevel:w?.reasoningLevel,initialPermissionMode:w?.permissionMode,initialEnvironmentSelectionValue:C.environmentId??void 0}),ye=C.runtime.displayStatus,be=ye===`created`,xe=ye===`provisioning`,Se=ye===`waiting-for-host`,Ce=C.stopRequestedAt!==null||j.isPending&&j.variables===C.id,we=Le(f),Ee=we!==null,De=O.isPending||k.isPending||A.isPending||re,Oe=S.isPending||d||O.isPending||re,ke=(0,K.useCallback)(()=>{j.mutate(C.id)},[j,C.id]),Ae=(0,K.useMemo)(()=>Ce?{kind:`blocked`,reason:`stopping`}:Ee?{kind:`blocked`,reason:`pending-interaction`}:be||xe?{kind:`blocked`,reason:`provisioning`}:Se?{kind:`stop-only`,onStop:ke}:ye===`active`||ye===`host-reconnecting`?{kind:`queue`,onStop:ke}:{kind:`ready`},[ke,Ee,be,xe,Ce,Se,ye]),je=Ce?`Stopping thread...`:Vo(ye,C.type===`manager`),Ne=(0,K.useMemo)(()=>({text:N.text,attachments:N.attachments}),[N.attachments,N.text]),Pe=(0,K.useMemo)(()=>vn(Ne),[Ne]),Fe=Fo({hasPromptDraftInput:Pe.length>0,isFollowUpSubmitting:Oe,isQueueMutationPending:De,queuedMessageCount:T.length,runtimeDisplayStatus:ye,submitModeKind:Ae.kind}),Ie=(0,K.useCallback)(async e=>{if(e.length===0)return;I(null);let t=[];for(let n of e)try{let e=await M.mutateAsync({projectId:h,file:n});N.addAttachment(e)}catch{t.push(n.name)}t.length>0&&I(`Failed to attach: ${t.join(`, `)}`)},[h,N,M]),ze=(0,K.useCallback)(async()=>{let e=Ne,t=Pe;if(t.length===0)return;N.clearIfCurrentMatches(e),I(null);let n=Po(ye);try{if(n){let e=Ro({threadId:C.id,input:t,model:me?.model??V,supportsServiceTier:U,serviceTier:ce,reasoningLevel:ue,permissionMode:fe});e&&await O.mutateAsync(e)}else{let e=Io({threadId:C.id,input:t,model:me?.model??V,supportsServiceTier:U,serviceTier:ce,reasoningLevel:ue,permissionMode:fe});e&&await S.mutateAsync(e)}}catch(t){N.restoreIfEmpty(e),en.error(mn({error:t,fallbackMessage:n?`Failed to queue message.`:`Failed to send follow-up.`}))}},[me?.model,O,Ne,Pe,N,ue,fe,V,S,ce,U,C.id,ye]),Be=(0,K.useCallback)(async()=>{if(!Fe)return;let e=Ne,t=Pe;if(!(T.length===0&&t.length===0)){R(!0),t.length>0&&N.clearIfCurrentMatches(e),I(null);try{for(let e of zo({queuedMessages:T,threadId:C.id}))await k.mutateAsync(e);let e=Lo({input:t,threadId:C.id});e&&await S.mutateAsync(e)}catch(t){N.restoreIfEmpty(e),en.error(mn({error:t,fallbackMessage:`Failed to send steer.`}))}finally{R(!1)}}},[Fe,Ne,Pe,N,T,S,k,C.id]),Ve=(0,K.useCallback)(e=>{E.current.has(e)&&(L(e),k.mutateAsync({id:C.id,mode:`auto`,queuedMessageId:e}).then(()=>{I(null)}).catch(e=>{en.error(mn({error:e,fallbackMessage:`Failed to send queued message.`}))}).finally(()=>{L(t=>t===e?null:t)}))},[k,C.id]),He=(0,K.useCallback)(e=>{let t=E.current.get(e);t&&(L(e),A.mutateAsync({id:C.id,queuedMessageId:e}).then(()=>{let e=Co(t.content);N.setDraft(e),I(null)}).catch(e=>{en.error(mn({error:e,fallbackMessage:`Failed to edit queued message.`}))}).finally(()=>{L(t=>t===e?null:t)}))},[A,N,C.id]),Ue=(0,K.useCallback)(e=>{L(e),A.mutateAsync({id:C.id,queuedMessageId:e}).catch(e=>{en.error(mn({error:e,fallbackMessage:`Failed to delete queued message.`}))}).finally(()=>{L(t=>t===e?null:t)})},[A,C.id]),We=(0,K.useCallback)(e=>{p(e)},[p]),Ge=(0,K.useCallback)(e=>{te(t=>t===e?null:e)},[]),Ke=(0,K.useMemo)(()=>({items:N.attachments,projectId:h,isAttaching:M.isPending,error:F,onAttachFiles:Ie,onRemove:N.removeAttachment}),[F,Ie,h,N.attachments,N.removeAttachment,M.isPending]),qe=(0,K.useMemo)(()=>({history:{currentDraft:Ne,entries:ie,onSelectEntry:N.setDraft,resetKey:C.id},isFollowUpSubmitting:Oe,message:N.text,onChangeMessage:N.setText,onSteerSubmit:Be,onSubmit:ze,promptPlaceholder:je,canSteerSubmit:Fe,submitMode:Ae,threadRuntimeDisplayStatus:ye}),[Fe,Ne,ze,Be,Oe,N.setDraft,N.setText,N.text,ie,je,ye,Ae,C.id]),Je=(0,K.useMemo)(()=>({provider:{options:B,selectedId:z,hasMultiple:ae,displayName:oe},model:{active:me,selected:V,options:he,onChange:se},serviceTier:{value:ce,onChange:le,supported:U,supportByProvider:ve},reasoning:{value:ue,options:H,onChange:de}}),[me,ae,he,B,ue,H,V,oe,z,ce,ve,de,se,le,U]),Ye=(0,K.useMemo)(()=>({value:fe,options:ge,onChange:pe,supported:_e}),[fe,ge,pe,_e]),Xe=(0,K.useMemo)(()=>({suggestions:P.suggestions,threadSectionMode:P.threadSectionMode,isLoading:P.isLoading,isError:P.isError,onQueryChange:P.setQuery}),[P.isError,P.isLoading,P.setQuery,P.suggestions,P.threadSectionMode]),W=(0,K.useMemo)(()=>l||o!==void 0?(0,q.jsx)(Eo,{environmentLabel:l,environmentHostLabel:s,environmentHostConnected:o,environmentIcon:c,environmentBranchName:a,onCreateNewThreadInWorktree:u}):null,[a,o,s,c,l,u]);return we?(0,q.jsx)(Ka,{interaction:we,threadId:C.id}):(0,q.jsx)(No,{attachments:Ke,stack:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(vo,{todoSection:C.type===`manager`||!y?null:{pendingTodos:y},archivedSection:C.archivedAt===null?null:{archivedAt:C.archivedAt},managedBySection:b,managerChildrenSection:x,gitSection:g?{changedFiles:g,mergeBase:v,onPromptBannerFileClick:e?We:()=>{}}:null,gitSectionPending:_,expandedSection:ee,onToggleSection:Ge}),(0,q.jsx)(To,{queuedMessages:T,sendDisabled:!(Ae.kind===`ready`||Ae.kind===`queue`)||Oe||De,actionDisabled:De,processingMessageId:ne,onSendImmediately:Ve,onEdit:He,onDelete:Ue})]}),composer:qe,zenModeResetKey:C.id,environmentSummary:W,contextWindowUsage:i??null,execution:Je,permission:Ye,mentions:Xe})}var Uo=A((t=>{Object.defineProperty(t,`__esModule`,{value:!0});var n=e();function r(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if(n!==`default`){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var i=r(n),a=typeof window<`u`,o=n.createContext(null);o.displayName=`PanelGroupContext`;var s={group:`data-panel-group`,groupDirection:`data-panel-group-direction`,groupId:`data-panel-group-id`,panel:`data-panel`,panelCollapsible:`data-panel-collapsible`,panelId:`data-panel-id`,panelSize:`data-panel-size`,resizeHandle:`data-resize-handle`,resizeHandleActive:`data-resize-handle-active`,resizeHandleEnabled:`data-panel-resize-handle-enabled`,resizeHandleId:`data-panel-resize-handle-id`,resizeHandleState:`data-resize-handle-state`},c=10,l=a?n.useLayoutEffect:()=>{},u=i.useId,d=typeof u==`function`?u:()=>null,f=0;function p(e=null){let t=d(),r=n.useRef(e||t||null);return r.current===null&&(r.current=``+ f++),e??r.current}function m({children:e,className:t=``,collapsedSize:r,collapsible:i,defaultSize:a,forwardedRef:c,id:u,maxSize:d,minSize:f,onCollapse:m,onExpand:h,onResize:g,order:_,style:v,tagName:y=`div`,...b}){let x=n.useContext(o);if(x===null)throw Error(`Panel components must be rendered within a PanelGroup container`);let{collapsePanel:S,expandPanel:C,getPanelSize:w,getPanelStyle:T,groupId:E,isPanelCollapsed:D,reevaluatePanelConstraints:O,registerPanel:k,resizePanel:A,unregisterPanel:j}=x,M=p(u),N=n.useRef({callbacks:{onCollapse:m,onExpand:h,onResize:g},constraints:{collapsedSize:r,collapsible:i,defaultSize:a,maxSize:d,minSize:f},id:M,idIsFromProps:u!==void 0,order:_});n.useRef({didLogMissingDefaultSizeWarning:!1}),l(()=>{let{callbacks:e,constraints:t}=N.current,n={...t};N.current.id=M,N.current.idIsFromProps=u!==void 0,N.current.order=_,e.onCollapse=m,e.onExpand=h,e.onResize=g,t.collapsedSize=r,t.collapsible=i,t.defaultSize=a,t.maxSize=d,t.minSize=f,(n.collapsedSize!==t.collapsedSize||n.collapsible!==t.collapsible||n.maxSize!==t.maxSize||n.minSize!==t.minSize)&&O(N.current,n)}),l(()=>{let e=N.current;return k(e),()=>{j(e)}},[_,M,k,j]),n.useImperativeHandle(c,()=>({collapse:()=>{S(N.current)},expand:e=>{C(N.current,e)},getId(){return M},getSize(){return w(N.current)},isCollapsed(){return D(N.current)},isExpanded(){return!D(N.current)},resize:e=>{A(N.current,e)}}),[S,C,w,D,M,A]);let P=T(N.current,a);return n.createElement(y,{...b,children:e,className:t,id:M,style:{...P,...v},[s.groupId]:E,[s.panel]:``,[s.panelCollapsible]:i||void 0,[s.panelId]:M,[s.panelSize]:parseFloat(``+P.flexGrow).toFixed(1)})}var h=n.forwardRef((e,t)=>n.createElement(m,{...e,forwardedRef:t}));m.displayName=`Panel`,h.displayName=`forwardRef(Panel)`;var g;function _(){return g}var v=null,y=!0,b=-1,x=null;function S(e,t){if(t){let e=(t&ne)!==0,n=(t&L)!==0,r=(t&re)!==0,i=(t&R)!==0;if(e)return r?`se-resize`:i?`ne-resize`:`e-resize`;if(n)return r?`sw-resize`:i?`nw-resize`:`w-resize`;if(r)return`s-resize`;if(i)return`n-resize`}switch(e){case`horizontal`:return`ew-resize`;case`intersection`:return`move`;case`vertical`:return`ns-resize`}}function C(){x!==null&&(document.head.removeChild(x),v=null,x=null,b=-1)}function w(e,t){if(!y)return;let n=S(e,t);if(v!==n){if(v=n,x===null){x=document.createElement(`style`);let e=_();e&&x.setAttribute(`nonce`,e),document.head.appendChild(x)}if(b>=0){var r;(r=x.sheet)==null||r.removeRule(b)}b=x.sheet?.insertRule(`*{cursor: ${n} !important;}`)??-1}}function T(e){return e.type===`keydown`}function E(e){return e.type.startsWith(`pointer`)}function D(e){return e.type.startsWith(`mouse`)}function O(e){if(E(e)){if(e.isPrimary)return{x:e.clientX,y:e.clientY}}else if(D(e))return{x:e.clientX,y:e.clientY};return{x:1/0,y:1/0}}function k(){if(typeof matchMedia==`function`)return matchMedia(`(pointer:coarse)`).matches?`coarse`:`fine`}function A(e,t,n){return n?e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y:e.x<=t.x+t.width&&e.x+e.width>=t.x&&e.y<=t.y+t.height&&e.y+e.height>=t.y}function j(e,t){if(e===t)throw Error(`Cannot compare node with itself`);let n={a:ee(e),b:ee(t)},r;for(;n.a.at(-1)===n.b.at(-1);)e=n.a.pop(),t=n.b.pop(),r=e;U(r,`Stacking order can only be calculated for elements with a common ancestor`);let i={a:I(F(n.a)),b:I(F(n.b))};if(i.a===i.b){let e=r.childNodes,t={a:n.a.at(-1),b:n.b.at(-1)},i=e.length;for(;i--;){let n=e[i];if(n===t.a)return 1;if(n===t.b)return-1}}return Math.sign(i.a-i.b)}var M=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function N(e){let t=getComputedStyle(te(e)??e).display;return t===`flex`||t===`inline-flex`}function P(e){let t=getComputedStyle(e);return!!(t.position===`fixed`||t.zIndex!==`auto`&&(t.position!==`static`||N(e))||+t.opacity<1||`transform`in t&&t.transform!==`none`||`webkitTransform`in t&&t.webkitTransform!==`none`||`mixBlendMode`in t&&t.mixBlendMode!==`normal`||`filter`in t&&t.filter!==`none`||`webkitFilter`in t&&t.webkitFilter!==`none`||`isolation`in t&&t.isolation===`isolate`||M.test(t.willChange)||t.webkitOverflowScrolling===`touch`)}function F(e){let t=e.length;for(;t--;){let n=e[t];if(U(n,`Missing node`),P(n))return n}return null}function I(e){return e&&Number(getComputedStyle(e).zIndex)||0}function ee(e){let t=[];for(;e;)t.push(e),e=te(e);return t}function te(e){let{parentNode:t}=e;return t&&t instanceof ShadowRoot?t.host:t}var ne=1,L=2,re=4,R=8,ie=k()===`coarse`,z=[],B=!1,ae=new Map,oe=new Map,V=new Set;function se(e,t,n,r,i){let{ownerDocument:a}=t,o={direction:n,element:t,hitAreaMargins:r,setResizeHandlerState:i},s=ae.get(a)??0;return ae.set(a,s+1),V.add(o),H(),function(){oe.delete(e),V.delete(o);let t=ae.get(a)??1;if(ae.set(a,t-1),H(),t===1&&ae.delete(a),z.includes(o)){let e=z.indexOf(o);e>=0&&z.splice(e,1),me(),i(`up`,!0,null)}}}function ce(e){let{target:t}=e,{x:n,y:r}=O(e);B=!0,fe({target:t,x:n,y:r}),H(),z.length>0&&(ge(`down`,e),e.preventDefault(),de(t)||e.stopImmediatePropagation())}function le(e){let{x:t,y:n}=O(e);if(B&&e.buttons===0&&(B=!1,ge(`up`,e)),!B){let{target:r}=e;fe({target:r,x:t,y:n})}ge(`move`,e),me(),z.length>0&&e.preventDefault()}function ue(e){let{target:t}=e,{x:n,y:r}=O(e);oe.clear(),B=!1,z.length>0&&(e.preventDefault(),de(t)||e.stopImmediatePropagation()),ge(`up`,e),fe({target:t,x:n,y:r}),me(),H()}function de(e){let t=e;for(;t;){if(t.hasAttribute(s.resizeHandle))return!0;t=t.parentElement}return!1}function fe({target:e,x:t,y:n}){z.splice(0);let r=null;(e instanceof HTMLElement||e instanceof SVGElement)&&(r=e),V.forEach(e=>{let{element:i,hitAreaMargins:a}=e,o=i.getBoundingClientRect(),{bottom:s,left:c,right:l,top:u}=o,d=ie?a.coarse:a.fine;if(t>=c-d&&t<=l+d&&n>=u-d&&n<=s+d){if(r!==null&&document.contains(r)&&i!==r&&!i.contains(r)&&!r.contains(i)&&j(r,i)>0){let e=r,t=!1;for(;e&&!e.contains(i);){if(A(e.getBoundingClientRect(),o,!0)){t=!0;break}e=e.parentElement}if(t)return}z.push(e)}})}function pe(e,t){oe.set(e,t)}function me(){let e=!1,t=!1;z.forEach(n=>{let{direction:r}=n;r===`horizontal`?e=!0:t=!0});let n=0;oe.forEach(e=>{n|=e}),e&&t?w(`intersection`,n):e?w(`horizontal`,n):t?w(`vertical`,n):C()}var he=new AbortController;function H(){he.abort(),he=new AbortController;let e={capture:!0,signal:he.signal};V.size&&(B?(z.length>0&&ae.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`contextmenu`,ue,e),r.addEventListener(`pointerleave`,le,e),r.addEventListener(`pointermove`,le,e))}),window.addEventListener(`pointerup`,ue,e),window.addEventListener(`pointercancel`,ue,e)):ae.forEach((t,n)=>{let{body:r}=n;t>0&&(r.addEventListener(`pointerdown`,ce,e),r.addEventListener(`pointermove`,le,e))}))}function ge(e,t){V.forEach(n=>{let{setResizeHandlerState:r}=n;r(e,z.includes(n),t)})}function _e(){let[e,t]=n.useState(0);return n.useCallback(()=>t(e=>e+1),[])}function U(e,t){if(!e)throw console.error(t),Error(t)}function ve(e,t,n=c){return e.toFixed(n)===t.toFixed(n)?0:e>t?1:-1}function ye(e,t,n=c){return ve(e,t,n)===0}function be(e,t,n){return ve(e,t,n)===0}function xe(e,t,n){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++){let i=e[r],a=t[r];if(!be(i,a,n))return!1}return!0}function Se({panelConstraints:e,panelIndex:t,size:n}){let r=e[t];U(r!=null,`Panel constraints not found for index ${t}`);let{collapsedSize:i=0,collapsible:a,maxSize:o=100,minSize:s=0}=r;if(ve(n,s)<0)if(a){let e=(i+s)/2;n=ve(n,e)<0?i:s}else n=s;return n=Math.min(o,n),n=parseFloat(n.toFixed(c)),n}function Ce({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:r,prevLayout:i,trigger:a}){if(be(e,0))return t;let o=[...t],[s,c]=r;U(s!=null,`Invalid first pivot index`),U(c!=null,`Invalid second pivot index`);let l=0;if(a===`keyboard`){{let r=e<0?c:s,i=n[r];U(i,`Panel constraints not found for index ${r}`);let{collapsedSize:a=0,collapsible:o,minSize:l=0}=i;if(o){let n=t[r];if(U(n!=null,`Previous layout not found for panel index ${r}`),be(n,a)){let t=l-n;ve(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}{let r=e<0?s:c,i=n[r];U(i,`No panel constraints found for index ${r}`);let{collapsedSize:a=0,collapsible:o,minSize:l=0}=i;if(o){let n=t[r];if(U(n!=null,`Previous layout not found for panel index ${r}`),be(n,l)){let t=n-a;ve(t,Math.abs(e))>0&&(e=e<0?0-t:t)}}}}{let r=e<0?1:-1,i=e<0?c:s,a=0;for(;;){let e=t[i];U(e!=null,`Previous layout not found for panel index ${i}`);let o=Se({panelConstraints:n,panelIndex:i,size:100})-e;if(a+=o,i+=r,i<0||i>=n.length)break}let o=Math.min(Math.abs(e),Math.abs(a));e=e<0?0-o:o}{let r=e<0?s:c;for(;r>=0&&r<n.length;){let i=Math.abs(e)-Math.abs(l),a=t[r];U(a!=null,`Previous layout not found for panel index ${r}`);let s=a-i,c=Se({panelConstraints:n,panelIndex:r,size:s});if(!be(a,c)&&(l+=a-c,o[r]=c,l.toPrecision(3).localeCompare(Math.abs(e).toPrecision(3),void 0,{numeric:!0})>=0))break;e<0?r--:r++}}if(xe(i,o))return i;{let r=e<0?c:s,i=t[r];U(i!=null,`Previous layout not found for panel index ${r}`);let a=i+l,u=Se({panelConstraints:n,panelIndex:r,size:a});if(o[r]=u,!be(u,a)){let t=a-u,r=e<0?c:s;for(;r>=0&&r<n.length;){let i=o[r];U(i!=null,`Previous layout not found for panel index ${r}`);let a=i+t,s=Se({panelConstraints:n,panelIndex:r,size:a});if(be(i,s)||(t-=s-i,o[r]=s),be(t,0))break;e>0?r--:r++}}}return be(o.reduce((e,t)=>t+e,0),100)?o:i}function we({layout:e,panelsArray:t,pivotIndices:n}){let r=0,i=100,a=0,o=0,s=n[0];return U(s!=null,`No pivot index found`),t.forEach((e,t)=>{let{constraints:n}=e,{maxSize:c=100,minSize:l=0}=n;t===s?(r=l,i=c):(a+=l,o+=c)}),{valueMax:Math.min(i,100-a),valueMin:Math.max(r,100-o),valueNow:e[s]}}function Te(e,t=document){return Array.from(t.querySelectorAll(`[${s.resizeHandleId}][data-panel-group-id="${e}"]`))}function Ee(e,t,n=document){return Te(e,n).findIndex(e=>e.getAttribute(s.resizeHandleId)===t)??null}function De(e,t,n){let r=Ee(e,t,n);return r==null?[-1,-1]:[r,r+1]}function Oe(e,t=document){return t instanceof HTMLElement&&t?.dataset?.panelGroupId==e?t:t.querySelector(`[data-panel-group][data-panel-group-id="${e}"]`)||null}function ke(e,t=document){return t.querySelector(`[${s.resizeHandleId}="${e}"]`)||null}function Ae(e,t,n,r=document){let i=ke(t,r),a=Te(e,r),o=i?a.indexOf(i):-1;return[n[o]?.id??null,n[o+1]?.id??null]}function je({committedValuesRef:e,eagerValuesRef:t,groupId:r,layout:i,panelDataArray:a,panelGroupElement:o,setLayout:c}){n.useRef({didWarnAboutMissingResizeHandle:!1}),l(()=>{if(!o)return;let e=Te(r,o);for(let t=0;t<a.length-1;t++){let{valueMax:n,valueMin:r,valueNow:o}=we({layout:i,panelsArray:a,pivotIndices:[t,t+1]}),s=e[t];if(s!=null){let e=a[t];U(e,`No panel data found for index "${t}"`),s.setAttribute(`aria-controls`,e.id),s.setAttribute(`aria-valuemax`,``+Math.round(n)),s.setAttribute(`aria-valuemin`,``+Math.round(r)),s.setAttribute(`aria-valuenow`,o==null?``:``+Math.round(o))}}return()=>{e.forEach((e,t)=>{e.removeAttribute(`aria-controls`),e.removeAttribute(`aria-valuemax`),e.removeAttribute(`aria-valuemin`),e.removeAttribute(`aria-valuenow`)})}},[r,i,a,o]),n.useEffect(()=>{if(!o)return;let e=t.current;U(e,`Eager values not found`);let{panelDataArray:n}=e;U(Oe(r,o)!=null,`No group found for id "${r}"`);let a=Te(r,o);U(a,`No resize handles found for group id "${r}"`);let l=a.map(e=>{let t=e.getAttribute(s.resizeHandleId);U(t,`Resize handle element has no handle id attribute`);let[a,l]=Ae(r,t,n,o);if(a==null||l==null)return()=>{};let u=e=>{if(!e.defaultPrevented)switch(e.key){case`Enter`:{e.preventDefault();let s=n.findIndex(e=>e.id===a);if(s>=0){let e=n[s];U(e,`No panel data found for index ${s}`);let a=i[s],{collapsedSize:l=0,collapsible:u,minSize:d=0}=e.constraints;if(a!=null&&u){let e=Ce({delta:be(a,l)?d-l:l-a,initialLayout:i,panelConstraints:n.map(e=>e.constraints),pivotIndices:De(r,t,o),prevLayout:i,trigger:`keyboard`});i!==e&&c(e)}}break}}};return e.addEventListener(`keydown`,u),()=>{e.removeEventListener(`keydown`,u)}});return()=>{l.forEach(e=>e())}},[o,e,t,r,i,a,c])}function Me(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Ne(e,t){let n=e===`horizontal`,{x:r,y:i}=O(t);return n?r:i}function Pe(e,t,n,r,i){let a=n===`horizontal`,o=ke(t,i);U(o,`No resize handle element found for id "${t}"`);let c=o.getAttribute(s.groupId);U(c,`Resize handle element has no group id attribute`);let{initialCursorPosition:l}=r,u=Ne(n,e),d=Oe(c,i);U(d,`No group element found for id "${c}"`);let f=d.getBoundingClientRect(),p=a?f.width:f.height;return(u-l)/p*100}function Fe(e,t,n,r,i,a){if(T(e)){let t=n===`horizontal`,r=0;r=e.shiftKey?100:i??10;let a=0;switch(e.key){case`ArrowDown`:a=t?0:r;break;case`ArrowLeft`:a=t?-r:0;break;case`ArrowRight`:a=t?r:0;break;case`ArrowUp`:a=t?0:-r;break;case`End`:a=100;break;case`Home`:a=-100;break}return a}else return r==null?0:Pe(e,t,n,r,a)}function Ie({panelDataArray:e}){let t=Array(e.length),n=e.map(e=>e.constraints),r=0,i=100;for(let a=0;a<e.length;a++){let e=n[a];U(e,`Panel constraints not found for index ${a}`);let{defaultSize:o}=e;o!=null&&(r++,t[a]=o,i-=o)}for(let a=0;a<e.length;a++){let o=n[a];U(o,`Panel constraints not found for index ${a}`);let{defaultSize:s}=o;if(s!=null)continue;let c=e.length-r,l=i/c;r++,t[a]=l,i-=l}return t}function Le(e,t,n){t.forEach((t,r)=>{let i=e[r];U(i,`Panel data not found for index ${r}`);let{callbacks:a,constraints:o,id:s}=i,{collapsedSize:c=0,collapsible:l}=o,u=n[s];if(u==null||t!==u){n[s]=t;let{onCollapse:e,onExpand:r,onResize:i}=a;i&&i(t,u),l&&(e||r)&&(r&&(u==null||ye(u,c))&&!ye(t,c)&&r(),e&&(u==null||!ye(u,c))&&ye(t,c)&&e())}})}function Re(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function ze({defaultSize:e,dragState:t,layout:n,panelData:r,panelIndex:i,precision:a=3}){let o=n[i],s;return s=o==null?e==null?`1`:e.toPrecision(a):r.length===1?`1`:o.toPrecision(a),{flexBasis:0,flexGrow:s,flexShrink:1,overflow:`hidden`,pointerEvents:t===null?void 0:`none`}}function Be(e,t=10){let n=null;return(...r)=>{n!==null&&clearTimeout(n),n=setTimeout(()=>{e(...r)},t)}}function Ve(e){try{if(typeof localStorage<`u`)e.getItem=e=>localStorage.getItem(e),e.setItem=(e,t)=>{localStorage.setItem(e,t)};else throw Error(`localStorage not supported in this environment`)}catch(t){console.error(t),e.getItem=()=>null,e.setItem=()=>{}}}function He(e){return`react-resizable-panels:${e}`}function Ue(e){return e.map(e=>{let{constraints:t,id:n,idIsFromProps:r,order:i}=e;return r?n:i?`${i}:${JSON.stringify(t)}`:JSON.stringify(t)}).sort((e,t)=>e.localeCompare(t)).join(`,`)}function We(e,t){try{let n=He(e),r=t.getItem(n);if(r){let e=JSON.parse(r);if(typeof e==`object`&&e)return e}}catch{}return null}function Ge(e,t,n){return(We(e,n)??{})[Ue(t)]??null}function Ke(e,t,n,r,i){let a=He(e),o=Ue(t),s=We(e,i)??{};s[o]={expandToSizes:Object.fromEntries(n.entries()),layout:r};try{i.setItem(a,JSON.stringify(s))}catch(e){console.error(e)}}function qe({layout:e,panelConstraints:t}){let n=[...e],r=n.reduce((e,t)=>e+t,0);if(n.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${n.map(e=>`${e}%`).join(`, `)}`);if(!be(r,100)&&n.length>0)for(let e=0;e<t.length;e++){let t=n[e];U(t!=null,`No layout data found for index ${e}`),n[e]=100/r*t}let i=0;for(let e=0;e<t.length;e++){let r=n[e];U(r!=null,`No layout data found for index ${e}`);let a=Se({panelConstraints:t,panelIndex:e,size:r});r!=a&&(i+=r-a,n[e]=a)}if(!be(i,0))for(let e=0;e<t.length;e++){let r=n[e];U(r!=null,`No layout data found for index ${e}`);let a=r+i,o=Se({panelConstraints:t,panelIndex:e,size:a});if(r!==o&&(i-=o-r,n[e]=o,be(i,0)))break}return n}var Je=100,Ye={getItem:e=>(Ve(Ye),Ye.getItem(e)),setItem:(e,t)=>{Ve(Ye),Ye.setItem(e,t)}},Xe={};function W({autoSaveId:e=null,children:t,className:r=``,direction:i,forwardedRef:a,id:c=null,onLayout:u=null,keyboardResizeBy:d=null,storage:f=Ye,style:m,tagName:h=`div`,...g}){let _=p(c),v=n.useRef(null),[y,b]=n.useState(null),[x,S]=n.useState([]),C=_e(),w=n.useRef({}),O=n.useRef(new Map),k=n.useRef(0),A=n.useRef({autoSaveId:e,direction:i,dragState:y,id:_,keyboardResizeBy:d,onLayout:u,storage:f}),j=n.useRef({layout:x,panelDataArray:[],panelDataArrayChanged:!1});n.useRef({didLogIdAndOrderWarning:!1,didLogPanelConstraintsWarning:!1,prevPanelIds:[]}),n.useImperativeHandle(a,()=>({getId:()=>A.current.id,getLayout:()=>{let{layout:e}=j.current;return e},setLayout:e=>{let{onLayout:t}=A.current,{layout:n,panelDataArray:r}=j.current,i=qe({layout:e,panelConstraints:r.map(e=>e.constraints)});Me(n,i)||(S(i),j.current.layout=i,t&&t(i),Le(r,i,w.current))}}),[]),l(()=>{A.current.autoSaveId=e,A.current.direction=i,A.current.dragState=y,A.current.id=_,A.current.onLayout=u,A.current.storage=f}),je({committedValuesRef:A,eagerValuesRef:j,groupId:_,layout:x,panelDataArray:j.current.panelDataArray,setLayout:S,panelGroupElement:v.current}),n.useEffect(()=>{let{panelDataArray:t}=j.current;if(e){if(x.length===0||x.length!==t.length)return;let n=Xe[e];n??(n=Be(Ke,Je),Xe[e]=n);let r=[...t],i=new Map(O.current);n(e,r,i,x,f)}},[e,x,f]),n.useEffect(()=>{});let M=n.useCallback(e=>{let{onLayout:t}=A.current,{layout:n,panelDataArray:r}=j.current;if(e.constraints.collapsible){let i=r.map(e=>e.constraints),{collapsedSize:a=0,panelSize:o,pivotIndices:s}=Qe(r,e,n);if(U(o!=null,`Panel size not found for panel "${e.id}"`),!ye(o,a)){O.current.set(e.id,o);let c=Ce({delta:Ze(r,e)===r.length-1?o-a:a-o,initialLayout:n,panelConstraints:i,pivotIndices:s,prevLayout:n,trigger:`imperative-api`});Re(n,c)||(S(c),j.current.layout=c,t&&t(c),Le(r,c,w.current))}}},[]),N=n.useCallback((e,t)=>{let{onLayout:n}=A.current,{layout:r,panelDataArray:i}=j.current;if(e.constraints.collapsible){let a=i.map(e=>e.constraints),{collapsedSize:o=0,panelSize:s=0,minSize:c=0,pivotIndices:l}=Qe(i,e,r),u=t??c;if(ye(s,o)){let t=O.current.get(e.id),o=t!=null&&t>=u?t:u,c=Ce({delta:Ze(i,e)===i.length-1?s-o:o-s,initialLayout:r,panelConstraints:a,pivotIndices:l,prevLayout:r,trigger:`imperative-api`});Re(r,c)||(S(c),j.current.layout=c,n&&n(c),Le(i,c,w.current))}}},[]),P=n.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{panelSize:r}=Qe(n,e,t);return U(r!=null,`Panel size not found for panel "${e.id}"`),r},[]),F=n.useCallback((e,t)=>{let{panelDataArray:n}=j.current;return ze({defaultSize:t,dragState:y,layout:x,panelData:n,panelIndex:Ze(n,e)})},[y,x]),I=n.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=Qe(n,e,t);return U(a!=null,`Panel size not found for panel "${e.id}"`),i===!0&&ye(a,r)},[]),ee=n.useCallback(e=>{let{layout:t,panelDataArray:n}=j.current,{collapsedSize:r=0,collapsible:i,panelSize:a}=Qe(n,e,t);return U(a!=null,`Panel size not found for panel "${e.id}"`),!i||ve(a,r)>0},[]),te=n.useCallback(e=>{let{panelDataArray:t}=j.current;t.push(e),t.sort((e,t)=>{let n=e.order,r=t.order;return n==null&&r==null?0:n==null?-1:r==null?1:n-r}),j.current.panelDataArrayChanged=!0,C()},[C]);l(()=>{if(j.current.panelDataArrayChanged){j.current.panelDataArrayChanged=!1;let{autoSaveId:e,onLayout:t,storage:n}=A.current,{layout:r,panelDataArray:i}=j.current,a=null;if(e){let t=Ge(e,i,n);t&&(O.current=new Map(Object.entries(t.expandToSizes)),a=t.layout)}a??=Ie({panelDataArray:i});let o=qe({layout:a,panelConstraints:i.map(e=>e.constraints)});Me(r,o)||(S(o),j.current.layout=o,t&&t(o),Le(i,o,w.current))}}),l(()=>{let e=j.current;return()=>{e.layout=[]}},[]);let ie=n.useCallback(e=>{let t=!1,n=v.current;return n&&window.getComputedStyle(n,null).getPropertyValue(`direction`)===`rtl`&&(t=!0),function(n){n.preventDefault();let r=v.current;if(!r)return()=>null;let{direction:i,dragState:a,id:o,keyboardResizeBy:s,onLayout:c}=A.current,{layout:l,panelDataArray:u}=j.current,{initialLayout:d}=a??{},f=De(o,e,r),p=Fe(n,e,i,a,s,r),m=i===`horizontal`;m&&t&&(p=-p);let h=u.map(e=>e.constraints),g=Ce({delta:p,initialLayout:d??l,panelConstraints:h,pivotIndices:f,prevLayout:l,trigger:T(n)?`keyboard`:`mouse-or-touch`}),_=!Re(l,g);(E(n)||D(n))&&k.current!=p&&(k.current=p,!_&&p!==0?m?pe(e,p<0?ne:L):pe(e,p<0?re:R):pe(e,0)),_&&(S(g),j.current.layout=g,c&&c(g),Le(u,g,w.current))}},[]),z=n.useCallback((e,t)=>{let{onLayout:n}=A.current,{layout:r,panelDataArray:i}=j.current,a=i.map(e=>e.constraints),{panelSize:o,pivotIndices:s}=Qe(i,e,r);U(o!=null,`Panel size not found for panel "${e.id}"`);let c=Ce({delta:Ze(i,e)===i.length-1?o-t:t-o,initialLayout:r,panelConstraints:a,pivotIndices:s,prevLayout:r,trigger:`imperative-api`});Re(r,c)||(S(c),j.current.layout=c,n&&n(c),Le(i,c,w.current))},[]),B=n.useCallback((e,t)=>{let{layout:n,panelDataArray:r}=j.current,{collapsedSize:i=0,collapsible:a}=t,{collapsedSize:o=0,collapsible:s,maxSize:c=100,minSize:l=0}=e.constraints,{panelSize:u}=Qe(r,e,n);u!=null&&(a&&s&&ye(u,i)?ye(i,o)||z(e,o):u<l?z(e,l):u>c&&z(e,c))},[z]),ae=n.useCallback((e,t)=>{let{direction:n}=A.current,{layout:r}=j.current;if(!v.current)return;let i=ke(e,v.current);U(i,`Drag handle element not found for id "${e}"`);let a=Ne(n,t);b({dragHandleId:e,dragHandleRect:i.getBoundingClientRect(),initialCursorPosition:a,initialLayout:r})},[]),oe=n.useCallback(()=>{b(null)},[]),V=n.useCallback(e=>{let{panelDataArray:t}=j.current,n=Ze(t,e);n>=0&&(t.splice(n,1),delete w.current[e.id],j.current.panelDataArrayChanged=!0,C())},[C]),se=n.useMemo(()=>({collapsePanel:M,direction:i,dragState:y,expandPanel:N,getPanelSize:P,getPanelStyle:F,groupId:_,isPanelCollapsed:I,isPanelExpanded:ee,reevaluatePanelConstraints:B,registerPanel:te,registerResizeHandle:ie,resizePanel:z,startDragging:ae,stopDragging:oe,unregisterPanel:V,panelGroupElement:v.current}),[M,y,i,N,P,F,_,I,ee,B,te,ie,z,ae,oe,V]),ce={display:`flex`,flexDirection:i===`horizontal`?`row`:`column`,height:`100%`,overflow:`hidden`,width:`100%`};return n.createElement(o.Provider,{value:se},n.createElement(h,{...g,children:t,className:r,id:c,ref:v,style:{...ce,...m},[s.group]:``,[s.groupDirection]:i,[s.groupId]:_}))}var G=n.forwardRef((e,t)=>n.createElement(W,{...e,forwardedRef:t}));W.displayName=`PanelGroup`,G.displayName=`forwardRef(PanelGroup)`;function Ze(e,t){return e.findIndex(e=>e===t||e.id===t.id)}function Qe(e,t,n){let r=Ze(e,t),i=r===e.length-1?[r-1,r]:[r,r+1],a=n[r];return{...t.constraints,panelSize:a,pivotIndices:i}}function $e({disabled:e,handleId:t,resizeHandler:r,panelGroupElement:i}){n.useEffect(()=>{if(e||r==null||i==null)return;let n=ke(t,i);if(n==null)return;let a=e=>{if(!e.defaultPrevented)switch(e.key){case`ArrowDown`:case`ArrowLeft`:case`ArrowRight`:case`ArrowUp`:case`End`:case`Home`:e.preventDefault(),r(e);break;case`F6`:{e.preventDefault();let r=n.getAttribute(s.groupId);U(r,`No group element found for id "${r}"`);let a=Te(r,i),o=Ee(r,t,i);U(o!==null,`No resize element found for id "${t}"`),a[e.shiftKey?o>0?o-1:a.length-1:o+1<a.length?o+1:0].focus();break}}};return n.addEventListener(`keydown`,a),()=>{n.removeEventListener(`keydown`,a)}},[i,e,t,r])}function et({children:e=null,className:t=``,disabled:r=!1,hitAreaMargins:i,id:a,onBlur:c,onClick:u,onDragging:d,onFocus:f,onPointerDown:m,onPointerUp:h,style:g={},tabIndex:_=0,tagName:v=`div`,...y}){let b=n.useRef(null),x=n.useRef({onClick:u,onDragging:d,onPointerDown:m,onPointerUp:h});n.useEffect(()=>{x.current.onClick=u,x.current.onDragging=d,x.current.onPointerDown=m,x.current.onPointerUp=h});let S=n.useContext(o);if(S===null)throw Error(`PanelResizeHandle components must be rendered within a PanelGroup container`);let{direction:C,groupId:w,registerResizeHandle:T,startDragging:E,stopDragging:D,panelGroupElement:O}=S,k=p(a),[A,j]=n.useState(`inactive`),[M,N]=n.useState(!1),[P,F]=n.useState(null),I=n.useRef({state:A});l(()=>{I.current.state=A}),n.useEffect(()=>{if(r)F(null);else{let e=T(k);F(()=>e)}},[r,k,T]);let ee=i?.coarse??15,te=i?.fine??5;n.useEffect(()=>{if(r||P==null)return;let e=b.current;U(e,`Element ref not attached`);let t=!1;return se(k,e,C,{coarse:ee,fine:te},(e,n,r)=>{if(!n){j(`inactive`);return}switch(e){case`down`:{j(`drag`),t=!1,U(r,`Expected event to be defined for "down" action`),E(k,r);let{onDragging:e,onPointerDown:n}=x.current;e?.(!0),n?.();break}case`move`:{let{state:e}=I.current;t=!0,e!==`drag`&&j(`hover`),U(r,`Expected event to be defined for "move" action`),P(r);break}case`up`:{j(`hover`),D();let{onClick:e,onDragging:n,onPointerUp:r}=x.current;n?.(!1),r?.(),t||e?.();break}}})},[ee,C,r,te,T,k,P,E,D]),$e({disabled:r,handleId:k,resizeHandler:P,panelGroupElement:O});let ne={touchAction:`none`,userSelect:`none`};return n.createElement(v,{...y,children:e,className:t,id:a,onBlur:()=>{N(!1),c?.()},onFocus:()=>{N(!0),f?.()},ref:b,role:`separator`,style:{...ne,...g},tabIndex:_,[s.groupDirection]:C,[s.groupId]:w,[s.resizeHandle]:``,[s.resizeHandleActive]:A===`drag`?`pointer`:M?`keyboard`:void 0,[s.resizeHandleEnabled]:!r,[s.resizeHandleId]:k,[s.resizeHandleState]:A})}et.displayName=`PanelResizeHandle`,t.Panel=h,t.PanelGroup=G,t.PanelResizeHandle=et}))(),Wo=`max-w-[180px]`;function Go({label:e,secondaryLabel:t=null,title:n,isActive:r,onSelect:i,labelMaxWidthClass:a=Wo,closeAction:o}){let s=o!==null;return(0,q.jsxs)(`div`,{className:P(`inline-flex h-7 shrink-0 items-center rounded-md text-xs transition-colors`,r?`bg-muted text-foreground`:`text-muted-foreground hover:bg-state-hover`),children:[(0,q.jsxs)(`button`,{type:`button`,onClick:i,"aria-pressed":r,title:n,className:P(`flex h-full min-w-0 items-center rounded-l-md pl-2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,s?`pr-1`:`rounded-r-md pr-2`),children:[(0,q.jsx)(`span`,{className:P(`truncate`,a),children:e}),t?(0,q.jsx)(`span`,{className:`ml-1 shrink-0 text-muted-foreground`,children:t}):null]}),o?(0,q.jsx)(`button`,{type:`button`,onClick:o.onClose,disabled:o.isClosing,"aria-label":o.closeLabel,title:o.closeTooltip,className:`mr-1 ml-0.5 inline-flex size-4 shrink-0 items-center justify-center rounded opacity-70 transition-opacity hover:bg-muted-foreground/15 hover:opacity-100 focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-30`,children:o.isClosing?(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}):(0,q.jsx)(L,{name:`X`,className:`size-3`})}):null]})}var Ko=`uncommitted`;function qo(e,t){if(e===`uncommitted`)return{type:`uncommitted`};if(e)return{type:`commit`,sha:e};if(t)return{type:`all`,mergeBaseBranch:t}}function Jo(e,t={hasUncommittedChanges:!1}){let n={value:`all`,label:`All changes`},r={value:Ko,label:`Uncommitted changes`},i=e.map(e=>({value:e.sha,label:e.subject,monoPrefix:e.shortSha}));return e.length>0||t.hasUncommittedChanges?[n,...t.hasUncommittedChanges?[r]:[],...i]:[n]}function Yo(e,t,n={hasUncommittedChanges:!1}){return e?e===`uncommitted`?!n.hasUncommittedChanges:!t.some(t=>t.sha===e):!1}function Xo(e){let t=e.currentGitDiff.trim().length>0,n=br(e.currentGitDiff),r=e.parsedGitDiffFileCount>0,i=t&&e.lastParsedGitDiffKey!==n;return{currentGitDiffKey:n,hasCurrentGitDiff:t,hasParsedGitDiffFiles:r,isAwaitingCurrentGitDiffParse:i,isPreparingGitDiff:!r&&(e.isAwaitingPrerequisites||e.isGitDiffLoading||e.isParsingGitDiffFiles||i)}}function Zo({entry:e,expectedFileCount:t}){return t>10?!0:tn(e.fileDiff)===`deleted`}function Qo({bulkCollapsePreference:e,currentCollapsedFileKeys:t,expectedFileCount:n,focusedFileKey:r,parsedGitDiffFileEntries:i,previousFileKeys:a}){if(e===`expanded-all`)return new Set;let o=new Set;for(let s of i){if(r!==null){s.key!==r&&o.add(s.key);continue}if(e===`collapsed-all`){o.add(s.key);continue}if(a.has(s.key)){t.has(s.key)&&o.add(s.key);continue}Zo({entry:s,expectedFileCount:n})&&o.add(s.key)}return o}function $o(e){let t=br(e.gitDiff);if(!e.isDiffPanelActive||e.gitDiff.trim().length===0)return{kind:`reset`,gitDiffKey:t,patchChunks:[]};let n=It(e.gitDiff);return n.length===0?{kind:`empty`,gitDiffKey:t,patchChunks:[]}:n.length<=24?{kind:`immediate`,gitDiffKey:t,patchChunks:n}:{kind:`batched`,gitDiffKey:t,patchChunks:n}}var es=150,ts=4,ns=6,rs=30,is=70;function as(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function os({environmentId:e,gitDiffIdentity:t,expectedGitDiffFileCount:n,parsedGitDiffFileEntries:r,isDiffPanelActive:i,isParsingGitDiffFiles:a}){let o=wr((0,K.useCallback)(e=>e(fa),[])),s=it(fa),c=it(pa),l=(0,K.useRef)(new Map),u=(0,K.useRef)(new Map),d=(0,K.useRef)(`default`),f=(0,K.useRef)(null),p=(0,K.useRef)(new Set),m=(0,K.useRef)(new Set),h=(0,K.useRef)(new Map),g=(0,K.useCallback)(e=>{let t=u.current.get(e);if(t===void 0)return;u.current.delete(e);let n=l.current.get(t);n&&(n.delete(e),n.size===0&&(window.clearTimeout(t),l.current.delete(t)))},[]),_=(0,K.useCallback)(()=>{for(let e of l.current.keys())window.clearTimeout(e);l.current.clear(),u.current.clear()},[]);(0,K.useLayoutEffect)(()=>{_(),d.current=`default`,f.current=null,p.current=new Set,m.current.clear(),s(new Set),c(new Set)},[e,t,_,s,c]),(0,K.useEffect)(()=>()=>{_(),m.current.clear()},[_]);let v=(0,K.useCallback)((e,t)=>{if(e.length===0)return;let n=[],r=new Set;for(let t of e)r.has(t)||(r.add(t),n.push(t));if(n.length===0)return;let i=Math.max(1,Math.min(t?.initialBatchSize??n.length,n.length)),a=Math.max(1,t?.batchSize??n.length),o=Math.max(0,t?.initialDelayMs??es),s=Math.max(0,t?.batchDelayMs??es);c(e=>{let t=new Set(e);for(let e of n)t.add(e);return t});for(let e of n)g(e);let d=(e,t)=>{let n=new Set(e),r=0;r=window.setTimeout(()=>{let e=l.current.get(r);if(e){l.current.delete(r);for(let t of e)u.current.delete(t);c(t=>{let n=!1,r=new Set(t);for(let t of e)n=r.delete(t)||n;return n?r:t})}},t),l.current.set(r,n);for(let e of n)u.current.set(e,r)};d(n.slice(0,i),o);let f=0;for(let e=i;e<n.length;e+=a){let t=o+(f+1)*s;d(n.slice(e,e+a),t),f+=1}},[g,c]);(0,K.useLayoutEffect)(()=>{if(!i)return;if(r.length===0&&!a&&n===0){p.current=new Set,m.current.clear(),s(e=>e.size===0?e:new Set),c(e=>e.size===0?e:new Set),_();return}if(r.length===0)return;let e=new Set(r.map(({key:e})=>e));f.current!==null&&!e.has(f.current)&&(f.current=null);for(let t of m.current)e.has(t)||m.current.delete(t);let t=Qo({bulkCollapsePreference:d.current,currentCollapsedFileKeys:o(),expectedFileCount:n,focusedFileKey:f.current,parsedGitDiffFileEntries:r,previousFileKeys:p.current});p.current=e,s(e=>as(e,t)?e:t);let l=[];for(let{key:e}of r)m.current.has(e)||(m.current.add(e),t.has(e)||l.push(e));l.length!==0&&v(l,n>10||a||l.length>ts?{initialBatchSize:ts,initialDelayMs:rs,batchSize:ns,batchDelayMs:is}:void 0)},[_,n,o,i,a,r,v,s,c]);let y=(0,K.useCallback)(e=>{d.current=`default`,f.current=null;let t=o().has(e);if(s(n=>{let r=new Set(n);return t?r.delete(e):r.add(e),r}),t){v([e]);return}g(e),c(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n})},[g,v,s,c,o]),b=(0,K.useCallback)(e=>{if(r.length===0)return;let t=r.map(({key:e})=>e);if(!t.includes(e))return;d.current=`default`,f.current=e,m.current.add(e);let n=o().has(e);for(let n of t)n!==e&&g(n);s(new Set(t.filter(t=>t!==e))),c(t=>{let n=!1,r=new Set(t);for(let i of t)i!==e&&(n=r.delete(i)||n);return n?r:t}),n&&v([e])},[g,o,r,v,s,c]),x=(0,K.useCallback)(()=>{if(r.length===0)return;let e=r.map(({key:e})=>e),t=o();if(e.every(e=>t.has(e))){d.current=`expanded-all`,f.current=null,s(new Set),v(e);return}d.current=`collapsed-all`,f.current=null,_(),s(new Set(e)),c(new Set)},[_,r,v,s,c,o]),S=(0,K.useCallback)((e,t)=>{if(t){h.current.set(e,t);return}h.current.delete(e)},[]);return{focusGitDiffFile:b,gitDiffFileRefs:h,queuedGitDiffFileRenderKeys:m.current,setGitDiffFileRef:S,toggleAllGitDiffFilesCollapsed:x,toggleGitDiffFileCollapsed:y}}function ss({environmentId:e,isDiffPanelActive:t,defaultMergeBaseBranch:n}){let r=ft(ma),i=ft(ha),a=it(ha),o=ft(fa),s=ft(pa),c=(0,K.useRef)(null),[l,u]=(0,K.useState)(null),[d,f]=(0,K.useState)([]),[p,h]=(0,K.useState)(0),[g,_]=(0,K.useState)(!1),[v,y]=(0,K.useState)(``),[b,x]=(0,K.useState)(null),C=r??n,w=(0,K.useMemo)(()=>qo(l,C),[C,l]),T=(0,K.useMemo)(()=>ls({environmentId:e,target:w}),[e,w]),{data:E}=vi(e??``,C,{enabled:!!e&&!!C&&t}),{data:D,isLoading:O,isPlaceholderData:k,error:A}=xi(e??``,{enabled:!!e&&t&&w!==void 0,target:w});(0,K.useEffect)(()=>{if(D&&!k){x(e=>e?.requestIdentity===T&&e.response===D?e:{requestIdentity:T,response:D});return}O||x(e=>e?.requestIdentity===T?e:null)},[D,T,O,k]);let j=D&&!k?D:b?.requestIdentity===T?b.response:void 0,M=j?.mergeBaseRef??null,N=(0,K.useMemo)(()=>cs({environmentId:e,mergeBaseRef:M,target:w}),[M,e,w]),P=j?.diff??``,F=(0,K.useMemo)(()=>Rt(d),[d]),{focusGitDiffFile:I,gitDiffFileRefs:te,queuedGitDiffFileRenderKeys:ne,setGitDiffFileRef:L,toggleAllGitDiffFilesCollapsed:re,toggleGitDiffFileCollapsed:R}=os({environmentId:e,gitDiffIdentity:N,expectedGitDiffFileCount:p,parsedGitDiffFileEntries:F,isDiffPanelActive:t,isParsingGitDiffFiles:g}),ie=Xo({currentGitDiff:P,isAwaitingPrerequisites:t&&!!e&&w===void 0,isGitDiffLoading:O,isParsingGitDiffFiles:g,lastParsedGitDiffKey:v,parsedGitDiffFileCount:F.length});(0,K.useEffect)(()=>{let e=$o({gitDiff:P,isDiffPanelActive:t});if(e.kind===`reset`){f([]),h(0),_(!1),y(``);return}if(f([]),h(e.patchChunks.length),e.kind===`empty`){_(!1),y(e.gitDiffKey);return}if(e.kind===`immediate`){f(Tt(P)),_(!1),y(e.gitDiffKey);return}let n=e.patchChunks,r=!1,i=null,a=0,o=!1,s=()=>{if(r)return;let t=a===0?6:18,c=n.slice(a,a+t);if(c.length===0){_(!1),y(e.gitDiffKey);return}let l=un(c);if(!r){if(a+=c.length,f(e=>o?[...e,...l]:l),o=!0,a>=n.length||r){_(!1),y(e.gitDiffKey);return}i=window.setTimeout(s,24)}};return _(!0),s(),()=>{r=!0,i!==null&&window.clearTimeout(i)}},[P,t]),(0,K.useEffect)(()=>{u(null)},[e]),(0,K.useEffect)(()=>{a(null)},[e,a]),(0,K.useEffect)(()=>{i&&u(null)},[i]);let z=(E?.workingTree.files.length??0)>0;(0,K.useEffect)(()=>{Yo(l,E?.mergeBase?.commits??[],{hasUncommittedChanges:z})&&u(null)},[E?.mergeBase?.commits,z,l]),(0,K.useLayoutEffect)(()=>{if(!i||!t){c.current=null;return}let e=F.find(({fileDiff:e})=>Wt(e,i));if(!e){!O&&!g&&!ie.isAwaitingCurrentGitDiffParse&&a(null);return}if(c.current!==i){c.current=i,I(e.key);return}let n=o.has(e.key),r=!ne.has(e.key)||s.has(e.key);n||r||(te.current.get(e.key)?.scrollIntoView({block:`start`,behavior:`instant`}),a(null))},[o,I,te,ie.isAwaitingCurrentGitDiffParse,t,O,g,s,F,i,ne,a]);let B=(0,K.useMemo)(()=>E?.mergeBase?.commits??[],[E?.mergeBase?.commits]),ae=l??`all`,oe=(0,K.useMemo)(()=>Jo(B,{hasUncommittedChanges:z}),[B,z]),V=(0,K.useMemo)(()=>cn(g?[]:d,P),[P,g,d]),{hasParsedGitDiffFiles:se,isPreparingGitDiff:ce}=ie,le=(0,K.useCallback)(e=>{u(e===`all`?null:e)},[]),ue=ee(),de=(0,K.useMemo)(()=>ds(w,M),[w,M]);return{currentGitDiff:P,gitDiffError:A,gitDiffSelectOptions:oe,gitDiffSelectValue:ae,gitDiffStats:V,hasParsedGitDiffFiles:se,isGitDiffLoading:O,isParsingGitDiffFiles:g,isPreparingGitDiff:ce,onGitDiffSelectionChange:le,onRequestFileContents:(0,K.useMemo)(()=>{if(!e||de===void 0)return;let t=e,n=de,r=us(n);return async(e,i)=>{let a=await ue.fetchQuery({queryKey:m(t,n.type,r,e,i),queryFn:()=>S(t,n,e,i),staleTime:5e3});return fs(e,a.content,a.contentEncoding)}},[e,de,ue]),parsedGitDiffFileEntries:F,queuedGitDiffFileRenderKeys:ne,setGitDiffFileRef:L,threadGitDiff:j,toggleAllGitDiffFilesCollapsed:re,toggleGitDiffFileCollapsed:R}}function cs({environmentId:e,mergeBaseRef:t,target:n}){let r=e??`none`;if(!n)return`${r}:none`;switch(n.type){case`uncommitted`:return`${r}:uncommitted`;case`branch_committed`:return[r,`branch_committed`,n.mergeBaseBranch,t??`pending`].join(`:`);case`all`:return[r,`all`,n.mergeBaseBranch,t??`pending`].join(`:`);case`commit`:return`${r}:commit:${n.sha}`;default:return n}}function ls({environmentId:e,target:t}){let n=e??`none`;if(!t)return`${n}:none`;switch(t.type){case`uncommitted`:return`${n}:uncommitted`;case`branch_committed`:return[n,`branch_committed`,t.mergeBaseBranch].join(`:`);case`all`:return[n,`all`,t.mergeBaseBranch].join(`:`);case`commit`:return`${n}:commit:${t.sha}`;default:return t}}function us(e){switch(e.type){case`uncommitted`:return null;case`branch_committed`:case`all`:return e.mergeBaseRef;case`commit`:return e.sha;default:return e}}function ds(e,t){if(e)switch(e.type){case`uncommitted`:return{type:`uncommitted`};case`branch_committed`:return t?{type:`branch_committed`,mergeBaseRef:t}:void 0;case`all`:return t?{type:`all`,mergeBaseRef:t}:void 0;case`commit`:return{type:`commit`,sha:e.sha};default:return e}}function fs(e,t,n){return n===`utf8`?{name:e,contents:t}:null}var ps=760;function ms({isSecondaryPanelOpen:e}){let[t,n]=(0,K.useState)(`unified`),r=it(ua),i=ft(da),a=it(da),o=(0,K.useRef)(null),s=(0,K.useRef)(null),c=(0,K.useRef)(i),l=(0,K.useRef)(null),u=(0,K.useRef)(!1),d=(0,K.useCallback)(t=>{if(!e||t===void 0)return;let r=t>=ps,i=l.current,a=i!==null&&i!==r;if(a&&u.current&&(u.current=!1),!u.current||a){let e=r?`split`:`unified`;n(t=>t===e?t:e)}l.current=r},[e,n]),f=(0,K.useRef)(e);return(0,K.useEffect)(()=>{if(f.current===e)return;f.current=e;let t=s.current;t&&(e?(t.expand(c.current),d(o.current?.getBoundingClientRect().width)):t.collapse())},[e,d]),(0,K.useEffect)(()=>{e||(u.current=!1,l.current=null)},[e]),Bt({ref:o,onResize:({width:e})=>{d(e??o.current?.getBoundingClientRect().width)}}),{gitDiffDisplayMode:t,handleGitDiffDisplayModeChange:(0,K.useCallback)(e=>{u.current=!0,n(e)},[n]),handleSecondaryPanelDragging:(0,K.useCallback)(e=>{if(r(e),e){u.current=!1;return}c.current>0&&a(c.current)},[r,a]),handleSecondaryPanelResize:(0,K.useCallback)(e=>{e<=0||(c.current=e)},[]),persistedWidthPercent:i,secondaryPanelRef:o,secondaryResizablePanelRef:s}}var hs=`20rem`;function gs({value:e,options:t,onChange:n,disabled:r,panelWidthPx:i}){let a=t.find(t=>t.value===e),o=a?.label??e,s=a?.monoPrefix;return(0,q.jsxs)(he,{children:[(0,q.jsx)(H,{asChild:!0,disabled:r,children:(0,q.jsxs)(V,{type:`button`,variant:`ghost`,size:`sm`,disabled:r,className:P(`h-8 w-full min-w-0 justify-between gap-2 rounded-lg border border-border bg-transparent px-2.5 text-xs font-normal`,r&&`opacity-60`),children:[(0,q.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-2`,children:[s?(0,q.jsx)(`span`,{className:`shrink-0 font-mono text-muted-foreground`,children:s}):null,(0,q.jsx)(`span`,{className:`truncate`,children:o})]}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3.5 shrink-0 text-muted-foreground`})]})}),(0,q.jsx)(ve,{align:`start`,className:`min-w-[var(--radix-dropdown-menu-trigger-width)]`,style:{maxWidth:`min(var(--radix-popper-available-width), max(${hs}, ${i}px))`},children:t.map(t=>(0,q.jsxs)(_e,{onSelect:()=>n(t.value),className:`flex items-center justify-between gap-2`,children:[(0,q.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-2`,title:t.monoPrefix?`${t.monoPrefix} ${t.label}`:t.label,children:[t.monoPrefix?(0,q.jsx)(`span`,{className:`shrink-0 font-mono text-muted-foreground`,children:t.monoPrefix}):null,(0,q.jsx)(`span`,{className:`truncate`,children:t.label})]}),(0,q.jsx)(L,{name:`Check`,className:P(ge,t.value===e?`opacity-100`:`opacity-0`)})]},t.value))})]})}function _s({selectionValue:e,selectionOptions:t,onSelectionChange:n,isSelectorDisabled:r,stats:i,isParsing:a,areAllFilesCollapsed:o,isCollapseAllDisabled:s,onToggleAllCollapsed:c,displayMode:l,onDisplayModeChange:u}){let d=(0,K.useRef)(null),{width:f=0}=Bt({ref:d,box:`content-box`});return(0,q.jsx)(`div`,{ref:d,className:`px-4 pb-3`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,q.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,q.jsx)(gs,{value:e,options:t,onChange:n,disabled:r,panelWidthPx:f})}),(0,q.jsx)(`span`,{className:`min-w-0 shrink truncate text-xs text-muted-foreground`,title:wi(i),children:Ti(i)}),a?(0,q.jsxs)(`span`,{className:`inline-flex shrink-0 items-center gap-1 text-xs text-muted-foreground`,children:[(0,q.jsx)(L,{name:`Spinner`,className:`size-3 animate-spin`}),`Parsing`]}):null,(0,q.jsxs)(`div`,{className:`ml-auto flex min-w-0 shrink-0 items-center justify-end gap-1`,children:[(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:c,disabled:s,"aria-label":o?`Expand all files`:`Collapse all files`,title:o?`Expand all files`:`Collapse all files`,children:o?(0,q.jsx)(L,{name:`ChevronsDown`,className:`size-3.5`}):(0,q.jsx)(L,{name:`ChevronsUp`,className:`size-3.5`})}),(0,q.jsxs)(`div`,{className:`inline-flex items-center gap-1 rounded-lg border border-border p-0.5`,role:`tablist`,"aria-label":`Diff view mode`,children:[(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:()=>u(`unified`),"aria-label":`Stacked diff view`,"aria-pressed":l===`unified`,title:`Stacked diff view`,children:(0,q.jsx)(L,{name:`Rows2`,className:`size-3.5`})}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 rounded-md p-0 text-muted-foreground`,onClick:()=>u(`split`),"aria-label":`Split diff view`,"aria-pressed":l===`split`,title:`Split diff view`,children:(0,q.jsx)(L,{name:`Columns2`,className:`size-3.5`})})]})]})]})})}var vs=new Set([`md`,`mdx`,`markdown`]),ys={"--diffs-font-size":`12px`,"--diffs-line-height":`18px`,"--diffs-gap-block":`16px`},bs={"--md-content-w":`100cqi`},xs={width:`100%`,height:`100%`,border:0};function Ss(e){let t=e.split(`.`).pop()?.toLowerCase();return t!==void 0&&vs.has(t)}function Cs({state:e,path:t,copyPath:n=null,onOpenInEditor:r,statusLabel:i=null}){let a=e.kind===`ready`&&Ss(e.file.name),[o,s]=(0,K.useState)(`preview`);return(0,K.useEffect)(()=>{s(`preview`)},[t]),(0,q.jsxs)(`div`,{className:e.kind===`html`||e.kind===`iframe`?`@container/page flex h-full min-h-0 flex-col`:`@container/page`,style:bs,children:[(0,q.jsx)(Ts,{path:t,copyPath:n,onOpenInEditor:r,statusLabel:i,markdownMode:a?o:null,onMarkdownModeChange:s}),(0,q.jsx)(ws,{state:e,path:t,markdownMode:a?o:`preview`})]})}function ws({state:e,path:t,markdownMode:n}){return e.kind===`loading`?(0,q.jsx)(Ms,{}):e.kind===`empty`?(0,q.jsx)(Ns,{message:`Empty file.`}):e.kind===`not-found`?(0,q.jsx)(Ns,{message:`File not found.`,role:`alert`}):e.kind===`manager-status-pending`?(0,q.jsx)(Ns,{message:`Manager hasn't written a status yet.`}):e.kind===`error`?(0,q.jsx)(Ns,{message:e.message??`Failed to load file`,role:e.message===void 0?`alert`:void 0}):e.kind===`image`?(0,q.jsx)(Ds,{url:e.url,alt:t}):e.kind===`html`?(0,q.jsx)(Os,{file:e.file}):e.kind===`iframe`?(0,q.jsx)(ks,{title:e.title,url:e.url}):Ss(e.file.name)&&n===`preview`?(0,q.jsx)(Es,{file:e.file}):(0,q.jsx)(Ps,{file:e.file,lineNumber:e.lineNumber??null})}function Ts({path:e,copyPath:t,onOpenInEditor:n,statusLabel:r,markdownMode:i,onMarkdownModeChange:a}){return(0,q.jsxs)(`div`,{className:`sticky top-0 z-10`,children:[(0,q.jsxs)(`div`,{className:`flex h-9 items-center gap-2 border-b border-border bg-background px-4`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,q.jsx)(er,{className:`min-w-0 font-mono text-xs font-medium leading-5 text-foreground`,title:e,children:e}),r===null?null:(0,q.jsxs)(`span`,{className:`shrink-0 text-xs leading-5 text-muted-foreground`,children:[`(`,r,`)`]}),t===null?null:(0,q.jsx)(Lt,{text:t,label:`Copy file path`,className:`shrink-0 rounded-md hover:bg-state-hover hover:text-foreground`}),n?(0,q.jsx)(`button`,{type:`button`,onClick:()=>n(e),"aria-label":`Open in editor`,title:`Open in editor`,className:`inline-flex size-5 shrink-0 items-center justify-center rounded-md text-muted-foreground hover:bg-state-hover hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,children:(0,q.jsx)(L,{name:`ExternalLink`,"aria-hidden":!0,className:`size-3`})}):null]}),i===null?null:(0,q.jsxs)(`div`,{className:`ml-auto inline-flex shrink-0 items-center gap-0.5 rounded-md border border-border p-0.5`,role:`tablist`,"aria-label":`Markdown view mode`,children:[(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 rounded-sm px-2 text-xs text-muted-foreground`,onClick:()=>a(`preview`),"aria-pressed":i===`preview`,title:`Rendered preview`,children:`Preview`}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-5 rounded-sm px-2 text-xs text-muted-foreground`,onClick:()=>a(`source`),"aria-pressed":i===`source`,title:`Markdown source`,children:`Raw`})]})]}),(0,q.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-x-0 top-full h-4 bg-gradient-to-b from-background to-transparent`})]})}function Es({file:e}){return(0,q.jsx)(`div`,{className:`px-4 pt-4`,children:(0,q.jsx)(nn,{allowHtml:!0,content:e.contents})})}function Ds({url:e,alt:t}){return(0,q.jsx)(`div`,{className:`pt-4`,children:(0,q.jsx)(`img`,{src:e,alt:t,className:`block max-h-[34rem] w-full object-contain`})})}function Os({file:e}){return(0,q.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,q.jsx)(`iframe`,{title:e.name,srcDoc:e.contents,style:xs})})}function ks({title:e,url:t}){return(0,q.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,q.jsx)(`iframe`,{title:e,src:t,style:xs})})}function As(e){let t=e.querySelectorAll(`[data-file-preview-target-line]`);for(let e of t)e.removeAttribute(`data-file-preview-target-line`),e.removeAttribute(`data-selected-line`)}function js(e,t){let n=e.querySelectorAll(`[data-line="${t}"]`);for(let e of n)if(e instanceof HTMLElement&&e.dataset.lineIndex!==void 0)return e;for(let e of n)if(e instanceof HTMLElement)return e;return null}function Ms(){return(0,q.jsxs)(`div`,{className:`space-y-2 px-4 pt-4`,"aria-busy":!0,children:[(0,q.jsx)(Dn,{className:`h-3 w-3/4 rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-5/6 rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-2/3 rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-3/5 rounded-sm`})]})}function Ns({message:e,role:t}){return(0,q.jsx)(`p`,{role:t,className:`mx-4 mt-4 rounded-lg border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:e})}function Ps({file:e,lineNumber:t}){let n=Et(),r=(0,K.useRef)(null),i=(0,K.useMemo)(()=>({themeType:n,overflow:`scroll`,disableFileHeader:!0,enableLineSelection:t!==null}),[t,n]),a=(0,K.useMemo)(()=>t===null?null:{start:t,end:t},[t]);return(0,K.useEffect)(()=>{let e=r.current,n=null,i=null,a=0;function o(){n=window.requestAnimationFrame(s),i=window.setTimeout(s,16)}function s(){let e=r.current;if(!e||(As(e),As(e.ownerDocument.body),t===null))return;let n=js(e,t)??js(e.ownerDocument.body,t);if(n){n.setAttribute(`data-file-preview-target-line`,``),n.setAttribute(`data-selected-line`,`single`),n.scrollIntoView?.({block:`center`});return}a+=1,a<8&&o()}return s(),()=>{e&&(As(e),As(e.ownerDocument.body)),n!==null&&window.cancelAnimationFrame(n),i!==null&&window.clearTimeout(i)}},[e.contents,e.name,t]),(0,q.jsx)(`div`,{ref:r,style:ys,"data-file-preview-line-number":t??void 0,children:(0,q.jsx)(Mr,{file:e,options:i,selectedLines:a})})}var Fs=`STATUS`;function Is(e){return e===`STATUS`||e===`STATUS.md`||e===`STATUS.html`}function Ls(e){return Fs}function Rs({activePath:e,copyPath:t=null,error:n,filePreview:r,isLoading:i,lineNumber:a=null,onOpenInEditor:o,pendingNotFoundPath:s,statusLabel:c=null}){if(n){let r=n instanceof p&&n.status===404;return r&&e===s?(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`manager-status-pending`}}):(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:r?`not-found`:`error`}})}return i||!r||r.path!==e?(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`loading`}}):r.kind===`text`?r.content.length===0?(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`empty`}}):(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`ready`,lineNumber:a,file:{name:r.name??e,contents:r.content}}}):r.kind===`image`?(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`image`,url:r.url}}):(0,q.jsx)(Cs,{path:e,copyPath:t,onOpenInEditor:o,statusLabel:c,state:{kind:`error`,message:`Preview not available for ${r.mimeType}.`}})}function zs({activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pinnedPath:s,threadId:c}){let l=De(c,{enabled:e===Fs});return e===`STATUS`?(0,q.jsx)(Cs,{path:e,copyPath:t,state:{kind:`iframe`,title:`Manager status`,url:f(c,l.data?.hash)}}):(0,q.jsx)(Rs,{activePath:e,copyPath:t,error:n,filePreview:r,isLoading:i,lineNumber:a,onOpenInEditor:o,pendingNotFoundPath:s})}var Bs=3,Vs=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function Hs({count:e=Bs}){return(0,q.jsx)(`div`,{className:`space-y-2 pt-2`,children:Array.from({length:e}).map((e,t)=>(0,q.jsxs)(`div`,{className:`rounded-lg border border-border bg-surface-raised`,children:[(0,q.jsx)(`div`,{className:`border-b border-border bg-surface-recessed px-3 py-1.5`,children:(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5`,children:[(0,q.jsx)(Dn,{className:`size-4 shrink-0 rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-48 max-w-full rounded-sm`})]}),(0,q.jsx)(Dn,{className:`h-3 w-14 shrink-0 rounded-sm`})]})}),(0,q.jsxs)(`div`,{className:`space-y-1.5 px-2.5 py-2`,children:[(0,q.jsx)(Dn,{className:`h-3 w-full rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-[94%] rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-[90%] rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-[86%] rounded-sm`})]})]},`git-diff-skeleton-${t}`))})}var Us=(0,K.memo)(function({fileKey:e,fileDiff:t,diffViewOptions:n,filePathRoot:r,onOpenFileInEditor:i,onOpenFilePreview:a,isCollapsed:o,isRendering:s,setGitDiffFileRef:c,toggleGitDiffFileCollapsed:l,onRequestFileContents:u}){return(0,q.jsx)(Mt,{fileDiff:t,diffViewOptions:n,filePathRoot:r,onOpenFileInEditor:i,onOpenFilePreview:a,isCollapsed:o,onToggleCollapsed:(0,K.useCallback)(()=>{l(e)},[e,l]),stickyHeader:!0,isRendering:s,cardRef:(0,K.useCallback)(t=>{c(e,t)},[e,c]),onRequestFileContents:u})});function Ws({collapsedGitDiffFileKeys:e,currentGitDiff:t,gitDiffError:n,gitDiffViewOptions:r,isParsingGitDiffFiles:i,isPreparingGitDiff:a,loadingGitDiffFileKeys:o,onOpenFileInEditor:s,onOpenFilePreview:c,onRequestFileContents:l,parsedGitDiffFileEntries:u,queuedGitDiffFileRenderKeys:d,setGitDiffFileRef:f,threadGitDiff:p,toggleGitDiffFileCollapsed:m,workspaceRootPath:h}){let g=t.trim().length>0;return(0,q.jsx)(`div`,{className:P(Vs,`px-4 pb-3`),children:a?(0,q.jsx)(Hs,{}):n?(0,q.jsx)(`p`,{className:`rounded-lg border border-surface-destructive-border bg-surface-destructive px-3 py-2 text-xs text-destructive`,children:n.message}):p&&g?(0,q.jsxs)(q.Fragment,{children:[u.length>0?(0,q.jsxs)(`div`,{className:`space-y-2`,children:[u.map(({key:t,fileDiff:n})=>(0,q.jsx)(Us,{fileKey:t,fileDiff:n,diffViewOptions:r,filePathRoot:h,onOpenFileInEditor:s,onOpenFilePreview:c,isCollapsed:e.has(t),isRendering:!d.has(t)||o.has(t),setGitDiffFileRef:f,toggleGitDiffFileCollapsed:m,onRequestFileContents:l},t)),i?(0,q.jsx)(`div`,{className:`rounded-lg border border-border bg-surface-raised px-3 py-3`,children:(0,q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,q.jsx)(Dn,{className:`h-3 w-52 max-w-full rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 w-5/6 rounded-sm`})]})}):null]}):(0,q.jsx)(`pre`,{className:`overflow-auto whitespace-pre rounded-lg border border-border bg-surface-raised p-3 font-mono text-xs text-foreground`,children:p.diff}),p.truncated?(0,q.jsx)(`p`,{className:`pt-2 text-xs text-muted-foreground`,children:`Diff output was truncated for display.`}):null]}):(0,q.jsx)(`p`,{className:`rounded-lg border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:`No diff to display.`})})}function Gs({metadataContent:e}){return(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-4 pb-3`,children:e})}function Ks({activePath:e,copyPath:t=null,environmentId:n,lineNumber:r,onOpenInEditor:i,source:a,statusLabel:o}){let{data:s,error:c,isLoading:l}=bi(n,e,a);return(0,q.jsx)(Rs,{activePath:e,copyPath:t,error:c,filePreview:s,isLoading:l,lineNumber:r,onOpenInEditor:i,statusLabel:o})}function qs({activePath:e,environmentId:t,lineNumber:n,onOpenInEditor:r,threadId:i}){let{data:a,error:o,isLoading:s}=Ie(i,t,e);return(0,q.jsx)(Rs,{activePath:e,error:o,filePreview:a,isLoading:s,lineNumber:n,onOpenInEditor:r,statusLabel:null})}function Js({activePath:e,copyPath:t=null,isManagerThread:n,onOpenInEditor:r,pinnedPath:i,threadId:a}){let{data:o,error:s,isLoading:c}=Oe(a,e,{enabled:n&&e!==`STATUS`});return(0,q.jsx)(zs,{activePath:e,copyPath:t,error:s,filePreview:o,isLoading:c,onOpenInEditor:r,pinnedPath:i,threadId:a})}var Ys=24,Xs=70,Zs=`duration-[220ms] ease-[cubic-bezier(0.32,0.72,0,1)]`,Qs=`min-h-0 flex-1 overflow-x-hidden overflow-y-auto`;function $s({activePanel:e,canUseGitUi:t,defaultMergeBaseBranch:n,environmentId:r,metadataContent:i,fileTabs:a,fileTabContent:o,isOpen:s,showGitDiffTab:c=!0,onPanelFocus:l,onPanelChange:u,onCollapse:d,onClose:f,onOpenFileSearch:p,workspaceRootPath:m,onOpenFileInEditor:h,onOpenFilePreview:g,renderAsDrawer:_}){let v=a?.find(e=>e.isActive)!==void 0,y=_?`X`:`PanelRight`,{gitDiffDisplayMode:b,handleGitDiffDisplayModeChange:x,handleSecondaryPanelDragging:S,handleSecondaryPanelResize:C,persistedWidthPercent:w,secondaryPanelRef:T,secondaryResizablePanelRef:E}=ms({isSecondaryPanelOpen:s}),D=!t&&e===`git-diff`?`thread-info`:e,O=D===`git-diff`,{currentGitDiff:k,gitDiffError:A,gitDiffSelectOptions:j,gitDiffSelectValue:M,gitDiffStats:N,hasParsedGitDiffFiles:F,isGitDiffLoading:I,isParsingGitDiffFiles:ee,isPreparingGitDiff:te,onGitDiffSelectionChange:ne,onRequestFileContents:re,parsedGitDiffFileEntries:R,queuedGitDiffFileRenderKeys:ie,setGitDiffFileRef:z,threadGitDiff:B,toggleAllGitDiffFilesCollapsed:ae,toggleGitDiffFileCollapsed:oe}=ss({environmentId:r,isDiffPanelActive:O,defaultMergeBaseBranch:n}),se=ft(fa),ce=ft(pa),le=(0,K.useMemo)(()=>F&&R.every(({key:e})=>se.has(e)),[se,F,R]),ue=Et(),de=(0,K.useMemo)(()=>({...Qt,diffStyle:b,themeType:ue}),[b,ue]),fe=(0,q.jsxs)(`aside`,{ref:T,"aria-hidden":!s,onFocusCapture:e=>{let t=e.relatedTarget;t instanceof Node&&e.currentTarget.contains(t)||l()},className:P(`flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,!_&&[`transition-[transform,opacity,background-color]`,Zs,s?`opacity-100`:`pointer-events-none translate-x-[8%] opacity-0`]),children:[(0,q.jsxs)(`div`,{className:`bg-background`,children:[(0,q.jsxs)(`div`,{className:`flex h-12 min-w-0 items-center justify-between gap-2 px-4`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1`,role:`tablist`,"aria-label":`Secondary panel views`,children:[(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:()=>u(`thread-info`),"aria-label":`Show thread info panel`,"aria-pressed":D===`thread-info`&&!v,title:`Info`,children:(0,q.jsx)(L,{name:`Info`})}),c===!1?null:(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:()=>u(`git-diff`),"aria-label":`Show diff panel`,"aria-pressed":O&&!v,title:`Diff`,children:(0,q.jsx)(L,{name:`FileDiff`})}),(0,q.jsx)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-x-auto`,children:a&&a.length>0?a.map(e=>(0,q.jsx)(tc,{tab:e},e.id)):null}),(0,q.jsx)(ec,{onOpenFileSearch:p})]}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0`,onClick:f,"aria-label":_?`Close secondary panel`:`Hide secondary panel`,title:_?`Close secondary panel`:`Hide secondary panel`,children:(0,q.jsx)(L,{name:y})})]}),O&&!v?(0,q.jsx)(_s,{selectionValue:M,selectionOptions:j,onSelectionChange:ne,isSelectorDisabled:I||B===void 0,stats:N,isParsing:ee,areAllFilesCollapsed:le,isCollapseAllDisabled:!F||I,onToggleAllCollapsed:ae,displayMode:b,onDisplayModeChange:x}):null]}),(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden bg-background`,children:v?(0,q.jsx)(`div`,{className:P(Qs,`pb-3`),children:o??(0,q.jsx)(`p`,{className:`mx-4 rounded-lg border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:`No file preview content provided.`})}):O?(0,q.jsx)(Ws,{collapsedGitDiffFileKeys:se,currentGitDiff:k,gitDiffError:A instanceof Error?A:A?Error(`Failed to load git diff`):null,gitDiffViewOptions:de,isParsingGitDiffFiles:ee,isPreparingGitDiff:te,loadingGitDiffFileKeys:ce,onOpenFileInEditor:h,onOpenFilePreview:g,onRequestFileContents:re,parsedGitDiffFileEntries:R,queuedGitDiffFileRenderKeys:ie,setGitDiffFileRef:z,threadGitDiff:B,toggleGitDiffFileCollapsed:oe,workspaceRootPath:m}):(0,q.jsx)(Gs,{metadataContent:i})})]});return _?fe:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(nc,{isOpen:s,onDragging:S}),(0,q.jsx)(Uo.Panel,{ref:E,id:`thread-detail-secondary-panel`,collapsible:!0,collapsedSize:0,defaultSize:s?w:0,minSize:Ys,maxSize:Xs,onCollapse:d,onResize:C,order:2,className:P(`min-w-0 overflow-hidden transition-[flex-grow,flex-basis,opacity]`,Zs,s?`opacity-100`:`opacity-0`),children:fe})]})}function ec({onOpenFileSearch:e}){return(0,q.jsxs)(he,{children:[(0,q.jsx)(H,{asChild:!0,children:(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`sm`,className:`h-7 w-7 shrink-0 rounded-md p-0`,"aria-label":`Add secondary panel tab`,title:`Add tab`,children:(0,q.jsx)(L,{name:`Plus`})})}),(0,q.jsx)(ve,{align:`end`,className:`w-40`,children:(0,q.jsxs)(_e,{onSelect:e,children:[(0,q.jsx)(L,{name:`File`}),`Open file`]})})]})}function tc({tab:e}){let t=e.statusLabel===null?e.filename:`${e.filename} (${e.statusLabel})`;return(0,q.jsx)(Go,{label:e.filename,secondaryLabel:e.statusLabel===null?null:`(${e.statusLabel})`,title:t,isActive:e.isActive,onSelect:e.onSelect,labelMaxWidthClass:`max-w-[160px]`,closeAction:e.isPinned?null:{onClose:e.onClose,closeLabel:`Close ${e.filename}`,closeTooltip:`Close tab`}})}function nc({isOpen:e,onDragging:t}){let n=ft(ua);return(0,q.jsx)(Uo.PanelResizeHandle,{id:`thread-detail-secondary-panel-handle`,disabled:!e,onDragging:t,className:P(`group relative shrink-0 cursor-col-resize overflow-visible bg-transparent transition-[width,opacity,background-color] before:absolute before:inset-y-0 before:-left-1.5 before:-right-1.5 before:content-['']`,Zs,e?`w-px opacity-100`:`pointer-events-none w-0 opacity-0`,n&&`bg-accent/20`),"aria-label":`Resize thread and secondary panels`,children:(0,q.jsx)(`span`,{className:P(`pointer-events-none absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors`,n?`bg-accent-foreground/50`:`group-hover:bg-accent-foreground/35`)})})}var rc=`file-tree-container`,ic=`data-file-tree-style`,ac=`data-file-tree-unsafe-css`,oc=`data-file-tree-scrollbar-measure`,sc=`data-file-tree-scrollbar-gutter-measured`,cc=`--trees-scrollbar-gutter-measured`,lc=`header`,uc=`context-menu`,dc=`context-menu-trigger`,fc=typeof window>`u`?K.useEffect:K.useLayoutEffect;function pc(e,t,n){let r=e==null?null:(0,q.jsx)(`div`,{slot:lc,children:e}),i=t!=null&&n!=null?(0,q.jsx)(`div`,{slot:uc,children:t(n.item,n.context)}):null;return r==null&&i==null?null:(0,q.jsxs)(q.Fragment,{children:[r,i]})}function mc(e,t){return typeof window>`u`&&t!=null?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`template`,{shadowrootmode:`open`,dangerouslySetInnerHTML:{__html:t.shadowHtml}}),e]}):(0,q.jsx)(q.Fragment,{children:e})}function hc(e){let t=e.shadowRoot;return t?.querySelector(`[data-file-tree-id]`)instanceof HTMLElement||t?.querySelector(`[data-file-tree-id]`)instanceof SVGElement?!0:e.querySelector(`template[shadowrootmode="open"]`)instanceof HTMLTemplateElement}function gc(e,t,n,r,i){let a={...e??{}};if(t!=null&&delete a.header,n){let t=e?.contextMenu,n=t?.onClose,o=t?.onOpen;a.contextMenu={...t??{},enabled:!0,onClose:()=>{n?.(),r()},onOpen:(e,t)=>{i(e,t),o?.(e,t)}},delete a.contextMenu.render}return a.header!=null||a.contextMenu!=null?a:void 0}function _c({header:e,id:t,model:n,preloadedData:r,renderContextMenu:i,...a}){let[o,s]=(0,K.useState)(null),[c,l]=(0,K.useState)(null),u=(0,K.useRef)(n.getComposition()),d=(0,K.useRef)(n);d.current!==n&&(d.current=n,u.current=n.getComposition());let f=i!=null,p=(0,K.useCallback)(()=>{s(null)},[]),m=(0,K.useCallback)((e,t)=>{s({context:t,item:e})},[]),h=u.current,g=(0,K.useMemo)(()=>gc(h,e,f,p,m),[h,p,m,f,e]),_=(0,K.useCallback)(e=>{l(e)},[]);(0,K.useEffect)(()=>{f||s(null)},[f]),fc(()=>{n.setComposition(g)},[g,n]),fc(()=>{if(c!=null)return r!=null&&hc(c)?n.hydrate({fileTreeContainer:c}):n.render({fileTreeContainer:c}),()=>{n.unmount(),n.setComposition(h)}},[h,c,n,r]);let v=mc(pc(e,i,o),r),y=t??r?.id,b={"--trees-item-height":`${String(n.getItemHeight())}px`,"--trees-density-override":n.getDensityFactor(),...a.style};return(0,q.jsx)(rc,{...a,id:y,ref:_,style:b,suppressHydrationWarning:r!=null,children:v})}var vc=`<svg data-icon-sprite aria-hidden="true" width="0" height="0">
4
+ <symbol id="file-tree-icon-chevron" viewBox="0 0 16 16">
5
+ <path d="M3.47 5.47a.75.75 0 0 1 1.06 0L8 8.94l3.47-3.47a.75.75 0 1 1 1.06 1.06l-4 4a.75.75 0 0 1-1.06 0l-4-4a.75.75 0 0 1 0-1.06" fill="currentcolor"/>
6
+ </symbol>
7
+ <symbol id="file-tree-icon-dot" viewBox="0 0 6 6">
8
+ <circle cx="3" cy="3" r="3" />
9
+ </symbol>
10
+ <symbol id="file-tree-icon-file" viewBox="0 0 16 16">
11
+ <path fill="currentColor" d="M8 1v3a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1z" class="bg" opacity=".5"/>
12
+ <path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
13
+ </symbol>
14
+ <symbol id="file-tree-icon-lock" viewBox="0 0 16 16">
15
+ <path fill="currentcolor" d="M4 5.336V4a4 4 0 1 1 8 0v1.336c1.586.54 2 1.843 2 4.664v1c0 4.118-.883 5-5 5H7c-4.117 0-5-.883-5-5v-1c0-2.821.414-4.124 2-4.664M5.5 4v1.054Q6.166 4.998 7 5h2q.834-.002 1.5.054V4a2.5 2.5 0 0 0-5 0m-2 6v1c0 .995.055 1.692.167 2.193.107.483.246.686.35.79s.307.243.79.35c.5.112 1.198.167 2.193.167h2c.995 0 1.692-.055 2.193-.166.483-.108.686-.247.79-.35.104-.105.243-.308.35-.791.112-.5.167-1.198.167-2.193v-1c0-.995-.055-1.692-.166-2.193-.108-.483-.247-.686-.35-.79-.105-.104-.308-.243-.791-.35C10.693 6.555 9.995 6.5 9 6.5H7c-.995 0-1.692.055-2.193.167-.483.107-.686.246-.79.35s-.243.307-.35.79C3.555 8.307 3.5 9.005 3.5 10" />
16
+ </symbol>
17
+ <symbol id="file-tree-icon-ellipsis" viewBox="0 0 16 16">
18
+ <path d="M5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M9.5 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0M14 8.5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0" />
19
+ </symbol>
20
+ </svg>`,yc=`<symbol id="file-tree-builtin-astro" viewBox="0 0 16 16">
21
+ <path fill="currentColor" d="M6.08 13.92c-.63-.57-.81-1.79-.55-2.67.45.56 1.08.73 1.73.83 1 .15 1.99.1 2.92-.37l.32-.19q.13.38.08.78a2.1 2.1 0 0 1-.9 1.5q-.3.24-.61.43c-.64.44-.81.95-.57 1.69l.02.08a1.7 1.7 0 0 1-.74-.64 2 2 0 0 1-.3-.98q0-.27-.02-.52-.07-.61-.61-.62a.7.7 0 0 0-.75.6z" class="bg" opacity=".6"/>
22
+ <path fill="currentColor" d="M2.5 11.1s1.86-.9 3.72-.9l1.4-4.39c.05-.21.2-.36.38-.36s.33.15.38.36l1.4 4.38c2.2 0 3.72.92 3.72.92l-3.16-8.69q-.13-.4-.45-.42H6.11q-.3.02-.45.42z" class="fg"/>
23
+ </symbol>`,bc=`<symbol id="file-tree-builtin-babel" viewBox="0 0 16 16">
24
+ <path fill="currentColor" fill-rule="evenodd" d="M9.49.5q1.92.05 2.66.54 1.27.6 1.35 1.52v.23a4 4 0 0 1-.53 1.9l-1.38 1.24q-.74.38-.72.63c.77.82 1.33 1.29.85 2.42q-.47 1.1-2.04 2.28c-.5.32-1.88 1.35-2.96 1.86-1.64.77-3.1 1.4-4.65 1.89-.51.16-1.5.16-1.5.16L.5 15A76 76 0 0 0 5.76 3.49q-.1-.08-.1-.2.1 0 .32-.35l-.03-.09q-1.17.39-2.38 1.3l-.13.03q0-.1-.21-.16-.46.31-.82.7l-.13-.19.16-.06-.03-.16-.34.29L2 4.5q.36-.48.72-.54l.04-.1V3.8q.16 0 .15-.06l.13-.06a6 6 0 0 0 1.13-.9v-.03H4.1l-.12.07q0-.1-.1-.1l-.15.07-.04-.1q.93-.52 1.63-1.05Q7.89.65 9.5.5M8.46 7.83l-.32.04c-1.31.54-2.31.82-2.91.88a71 71 0 0 0-2.2 4.54h.07q.58-.04 3.04-1.42.13 0 1.66-1.05L9.18 9.7v.03q.45-.2.81-1.3v-.2q-.5-.46-1.53-.4m.28-5.75c-.5.1-.75.19-.72.38l-1.16 2.6q-.17.1-.34.95-.3.48-.25.77v.1l.22.05A15 15 0 0 1 8.86 6c1.1-.71 2.12-1.38 2.8-2.54q.24-.33.21-.54-.02-.33-.4-.54c-.54 0-1.07-.34-1.63-.28l-.94-.03z" clip-rule="evenodd"/>
25
+ </symbol>`,xc=`<symbol id="file-tree-builtin-bash" viewBox="0 0 16 16">
26
+ <path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
27
+ <path fill="currentColor" d="M11.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zM7 6.75C7 6.42 6.64 6 6 6s-1 .42-1 .75q-.01.25.22.41.26.21.89.35.74.14 1.28.53c.37.29.61.7.61 1.21 0 .87-.68 1.5-1.5 1.7v.55a.5.5 0 0 1-1 0v-.56c-.82-.18-1.5-.82-1.5-1.69a.5.5 0 0 1 1 0c0 .33.36.75 1 .75s1-.42 1-.75q.01-.25-.22-.41a2 2 0 0 0-.89-.35q-.74-.14-1.28-.53A1.5 1.5 0 0 1 4 6.75c0-.87.68-1.5 1.5-1.7V4.5a.5.5 0 0 1 1 0v.56c.82.18 1.5.82 1.5 1.69a.5.5 0 0 1-1 0" class="fg-stroke"/>
28
+ </symbol>`,Sc=`<symbol id="file-tree-builtin-biome" viewBox="0 0 16 16">
29
+ <path fill="currentColor" d="M8 2 4.88 7.35a7 7 0 0 1 3.7-.13l1.04.25-.99 4.16-1.05-.25a2.7 2.7 0 0 0-3.07 1.45l-.98-.47a4 4 0 0 1 1.07-1.31 3.8 3.8 0 0 1 3.23-.71l.5-2.08a6 6 0 0 0-5.07 1.12A5.9 5.9 0 0 0 1 14h14z"/>
30
+ </symbol>`,Cc=`<symbol id="file-tree-builtin-bootstrap" viewBox="0 0 16 16">
31
+ <path fill="currentColor" fill-rule="evenodd" d="M11.72 1.5A2.5 2.5 0 0 1 14.2 4q.02 1.08.3 2.09c.22.73.56 1.24 1.08 1.45.22.08.4.27.4.5s-.18.43-.4.51q-.76.34-1.08 1.45c-.2.65-.27 1.32-.3 2a2.5 2.5 0 0 1-2.48 2.5H4.25A2.6 2.6 0 0 1 1.7 12c-.04-.85-.1-1.68-.22-2.04C1.26 9.23.92 8.7.4 8.5.18 8.42 0 8.23 0 8s.18-.42.4-.5q.77-.35 1.09-1.46c.1-.36.17-1.19.2-2.04a2.6 2.6 0 0 1 2.56-2.5z" class="bg" clip-rule="evenodd" opacity=".2"/>
32
+ <path fill="currentColor" fill-rule="evenodd" d="M8.47 4.54c1.23 0 2.04.68 2.04 1.73 0 .73-.55 1.39-1.24 1.5v.04c.94.1 1.58.77 1.58 1.7 0 1.2-.9 1.95-2.37 1.95H5.97a.3.3 0 0 1-.2-.08.3.3 0 0 1-.08-.2V4.82a.3.3 0 0 1 .08-.2.3.3 0 0 1 .2-.08zm-1.7 6.04h1.49q1.47-.01 1.49-1.15Q9.74 8.31 8.2 8.3H6.77zm0-5.16v2.06h1.21c.93 0 1.45-.38 1.45-1.06 0-.65-.44-1-1.22-1z" class="fg" clip-rule="evenodd"/>
33
+ </symbol>`,wc=`<symbol id="file-tree-builtin-browserslist" viewBox="0 0 16 16">
34
+ <path fill="currentColor" d="M8.88 6.96c0 3.82 3.72 4.7 5.7 3.74-.23.9-1.04 1.67-2.35 1.93-.02.4.42 1.28.82 1.63-.9.35-1.94-.12-2.51-.48a5 5 0 0 0-.32 1.87c-.68 0-1.57-1-1.8-1.37-.3.18-.85 1.15-.96 1.72a2.4 2.4 0 0 1-.81-.86 2.4 2.4 0 0 1-.3-1.15c-.38.27-1.48.95-1.99 1.18-.25-.58-.15-1.3 0-2.06-.21.12-1.8.27-2.43.12.32-.36.75-1.19.94-1.57A4.5 4.5 0 0 1 .44 10.6c.48-.22.97-.53 1.49-1.06C1.26 9.17.24 8.64 0 7.7a6 6 0 0 0 1.79-.32C1.28 7.08.44 6.15.6 5.01c.42.21 1.3.37 1.73.3a3.4 3.4 0 0 1-.25-2.75 5 5 0 0 0 1.48 1c-.08-.8.3-2.31.8-2.71.2.46.73 1.21 1.08 1.4.09-.61.87-2.06 1.57-2.25 0 .5.27 1.4.5 1.67.51-.54 2.25-1.44 3.64-1.13-.43.45-.75.61-.86.98 1.05 0 2.78.34 4.27 1.93-2.34-.89-5.69.56-5.69 3.5" class="bg" opacity=".5"/>
35
+ <path fill="currentColor" d="M11.21 3.59a4.1 4.1 0 0 0 2.47 2.89c.24-.22.61-.38.95-.19.76.44.2 1.26-.34 1.66l-.07.06a13 13 0 0 1-4.49 1.61l-.3-.43a10.5 10.5 0 0 0 4.13-1.31 1 1 0 0 0 .23-.25.5.5 0 0 0-.21-.69l-.15-.06a4.5 4.5 0 0 1-1.77-1.31 4.5 4.5 0 0 1-.88-1.77q.2-.12.43-.21"/>
36
+ <path fill="currentColor" d="M10.36 5.18a.4.4 0 0 0-.03.38c.09.2.3.3.46.23s.24-.3.15-.5l-.01-.02q.23.13.34.39a.83.83 0 0 1-.43 1.08.8.8 0 0 1-1.08-.43.83.83 0 0 1 .6-1.13"/>
37
+ </symbol>`,Tc=`<symbol id="file-tree-builtin-bun" viewBox="0 0 16 16">
38
+ <path fill="currentColor" d="M8 14c3.87 0 7-2.46 7-5.49 0-1.88-1.2-3.53-3.04-4.52q-1.1-.61-1.84-1.07C9.2 2.35 8.64 2 8 2s-1.36.45-2.31 1.03A29 29 0 0 1 4.04 4C2.2 4.98 1 6.63 1 8.51 1 11.54 4.13 14 8 14M7.18 3.88q.3-.66.3-1.37c0-.08.11-.1.13-.01.38 1.57-.53 2.35-1.2 2.61-.08.03-.12-.07-.06-.12a3 3 0 0 0 .83-1.12m1.2-.05a3 3 0 0 0-.45-1.3V2.5c-.04-.07.05-.15.1-.1 1.15 1.2.77 2.3.33 2.87-.05.05-.13 0-.11-.08q.21-.67.13-1.37m1.04-.32a3 3 0 0 0-.94-1.02v-.01c-.06-.05-.01-.16.07-.12 1.51.61 1.61 1.8 1.43 2.5l-.03.03a.07.07 0 0 1-.1-.06 3 3 0 0 0-.43-1.32m-2.97.32c-.36.3-.74.43-1.2.56q-.11 0-.1-.1a3.5 3.5 0 0 0 1.76-1.57s.09-.07.1.04c0 .18-.2.76-.56 1.07m2.89 6.36q-.13.52-.55.88a1.3 1.3 0 0 1-.75.35 1.3 1.3 0 0 1-.77-.35 1.7 1.7 0 0 1-.54-.88.13.13 0 0 1 .15-.15h2.31a.14.14 0 0 1 .15.15M6.15 8.95a1.1 1.1 0 0 1-1.39-.14A1.1 1.1 0 0 1 5.12 7a1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1-.17 1.69m4.96 0a1.1 1.1 0 0 1-1.4-.14 1.1 1.1 0 0 1 .37-1.8 1.1 1.1 0 0 1 1.2.25 1.1 1.1 0 0 1 .24 1.2 1 1 0 0 1-.41.5"/>
39
+ </symbol>`,Ec=`<symbol id="file-tree-builtin-claude" viewBox="0 0 16 16">
40
+ <path fill="currentColor" d="M3.75 10.31 6.5 8.77l.04-.14-.04-.07h-.14l-.46-.03-1.57-.04-1.38-.07-1.33-.07-.34-.07L1 7.86l.03-.21.28-.18.4.03.89.07 1.33.08.97.06 1.43.16h.22l.03-.1-.07-.05-.06-.06-1.39-.92-1.48-.98-.79-.57-.42-.28-.2-.28-.1-.6.39-.41.52.04.12.03.52.4 1.12.86L6.2 6.04l.2.17.09-.06.01-.04-.1-.15-.76-1.46-.85-1.46-.37-.6-.1-.36a1 1 0 0 1-.06-.42l.42-.59.25-.07.6.08.22.2.36.84.58 1.3.9 1.77.29.53.14.47.04.14h.1v-.07l.07-1 .14-1.22.14-1.57.04-.45.23-.53.42-.28.36.15.28.41-.04.25-.16 1.08-.36 1.7-.21 1.14h.12l.14-.15.58-.76.97-1.2.42-.5.5-.51.32-.25h.6l.44.66-.2.68-.61.79-.52.65-.74 1-.45.8.04.05h.1l1.68-.36.9-.16 1.06-.18.5.23.05.22-.2.48-1.15.28-1.34.28-2 .46-.04.01.03.04.9.09.4.03h.94l1.77.14.46.28.27.37-.04.28-.72.37-.95-.23-2.24-.53-.76-.18h-.11v.06l.64.63L12 10.86l1.48 1.35.07.34-.18.28-.2-.03-1.29-.98-.5-.42-1.12-.95h-.07v.1l.25.38 1.37 2.05.07.63-.1.2-.36.14-.38-.08-.8-1.12-.85-1.26-.66-1.15-.07.05-.4 4.23-.19.21-.42.17-.35-.28-.2-.42.2-.87.23-1.12.18-.9.17-1.1.1-.36v-.03h-.1l-.84 1.16-1.27 1.72-1 1.07-.24.1-.42-.22.04-.39.22-.32 1.4-1.8.84-1.1.57-.64-.02-.07h-.04l-3.7 2.4-.66.09-.28-.28.03-.42.14-.14 1.12-.77z"/>
41
+ </symbol>`,Dc=`<symbol id="file-tree-builtin-css" viewBox="0 0 16 16">
42
+ <path fill="currentColor" d="M8 15c-5.76 0-7-1.24-7-7V2a1 1 0 0 1 1-1h6c5.77 0 7 1.24 7 7s-1.24 7-7 7" class="vector" opacity=".2"/>
43
+ <path fill="currentColor" d="M10.1 9.19h.73c.03.49.22.6 1 .6.76 0 .93-.12.93-.68 0-.52-.17-.67-.94-.85-1.38-.3-1.68-.56-1.68-1.47 0-1.05.3-1.29 1.67-1.29 1.29 0 1.57.2 1.6 1.13h-.74c-.01-.34-.17-.42-.85-.42-.77 0-.94.1-.94.58 0 .42.17.55.96.73 1.36.3 1.66.58 1.66 1.59 0 1.14-.31 1.39-1.73 1.39-1.39 0-1.69-.24-1.67-1.31m-3.9 0h.74c.03.49.21.6.99.6.76 0 .93-.12.93-.68 0-.52-.17-.67-.93-.85-1.39-.3-1.69-.56-1.69-1.47 0-1.05.3-1.29 1.67-1.29 1.3 0 1.58.2 1.6 1.13h-.73c-.02-.34-.18-.42-.85-.42-.78 0-.95.1-.95.58 0 .42.17.55.96.73 1.37.3 1.67.58 1.67 1.59 0 1.14-.32 1.39-1.74 1.39-1.38 0-1.68-.24-1.66-1.31m-1.22 0h.75c-.09 1.07-.37 1.31-1.56 1.31-1.37 0-1.68-.45-1.68-2.5 0-1.96.36-2.5 1.68-2.5 1.16 0 1.44.25 1.52 1.35h-.76c-.08-.52-.22-.64-.76-.64-.74 0-.9.33-.9 1.78 0 1.47.16 1.8.9 1.8.58 0 .74-.11.8-.6"/>
44
+ </symbol>`,Oc=`<symbol id="file-tree-builtin-database" viewBox="0 0 16 16">
45
+ <path fill="currentColor" d="M14.953 9.733a12.4 12.4 0 0 1-.244 1.936c-.207.933-.532 1.58-.996 2.044s-1.11.789-2.044.996C10.73 14.918 9.533 15 8 15s-2.73-.082-3.669-.291c-.933-.207-1.58-.532-2.044-.996s-.789-1.11-.996-2.044c-.122-.547-.2-1.182-.244-1.92q.23.364.532.667c.64.639 1.482 1.031 2.533 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265a4 4 0 0 0 .541-.683"/>
46
+ <path fill="currentColor" d="M14.93 5.924c-.046.663-.118 1.24-.23 1.743-.207.932-.532 1.579-.995 2.042s-1.11.789-2.042.996c-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997s-.789-1.11-.996-2.042a12 12 0 0 1-.227-1.683l.016-.188a4 4 0 0 0 .5.62c.638.639 1.48 1.031 2.532 1.265 1.046.232 2.33.315 3.884.315 1.555 0 2.838-.083 3.884-.315 1.051-.234 1.893-.626 2.532-1.265.192-.192.357-.404.506-.633z"/>
47
+ <path fill="currentColor" d="M8 1c1.533 0 2.73.082 3.669.291.933.207 1.58.533 2.044.996.403.404.904.944.91 1.695.004.764-.509 1.318-.918 1.727-.463.463-1.11.789-2.042.996-.938.209-2.135.291-3.667.291-1.531 0-2.729-.082-3.667-.29-.932-.208-1.579-.534-2.042-.997-.406-.406-.915-.953-.915-1.71 0-.758.509-1.305.915-1.712.464-.463 1.11-.789 2.044-.996C5.27 1.082 6.467 1 8 1"/>
48
+ </symbol>`,kc=`<symbol id="file-tree-builtin-default" viewBox="0 0 16 16">
49
+ <path fill="currentColor" d="M8 1v3a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1z" class="bg" opacity=".4"/>
50
+ <path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
51
+ </symbol>`,Ac=`<symbol id="file-tree-builtin-docker" viewBox="0 0 16 16">
52
+ <path fill="currentColor" d="M15.85 6.54c-.05-.04-.45-.36-1.31-.36q-.34 0-.68.06a2.7 2.7 0 0 0-1.14-1.79l-.23-.14-.15.23a3 3 0 0 0-.4 1q-.24 1.01.26 1.84c-.4.24-1.03.3-1.17.3H.5a.5.5 0 0 0-.5.52q-.01 1.46.46 2.83.55 1.5 1.6 2.18c.79.5 2.08.79 3.54.79q.96 0 1.94-.18a8 8 0 0 0 2.55-.97 7 7 0 0 0 1.73-1.5 10 10 0 0 0 1.7-3.06h.15a2.4 2.4 0 0 0 1.8-.7 2 2 0 0 0 .47-.74l.06-.2z"/>
53
+ <path fill="currentColor" d="M1.48 7.36h1.4a.14.14 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H1.48a.13.13 0 0 0-.13.14v1.32q.02.13.13.13m1.94 0h1.41a.14.14 0 0 0 .13-.13V5.91q-.01-.12-.13-.14h-1.4a.13.13 0 0 0-.13.14v1.32q0 .13.12.13m1.98 0h1.4q.13 0 .14-.13V5.91a.13.13 0 0 0-.14-.14H5.4q-.1.01-.12.14v1.32q0 .13.12.13m1.95 0h1.42q.1 0 .12-.13V5.91q0-.12-.12-.14H7.35q-.1.01-.12.14v1.32q.01.13.12.13M3.42 5.5h1.41c.07 0 .13-.08.13-.15V4.03a.13.13 0 0 0-.13-.14h-1.4q-.12 0-.13.14v1.31q0 .13.12.15m1.98 0h1.4c.08 0 .14-.08.14-.15V4.03q0-.13-.14-.14H5.4q-.1 0-.12.14v1.31q0 .13.12.15m1.95 0h1.42c.06 0 .12-.08.12-.15V4.03q-.01-.13-.12-.14H7.35q-.1 0-.12.14v1.31q.01.13.12.15m0-1.9h1.42q.1-.02.12-.14v-1.3Q8.88 2 8.77 2H7.35q-.1 0-.12.14v1.3q.01.13.12.14m1.97 3.78h1.4a.13.13 0 0 0 .14-.13V5.91q-.01-.12-.13-.14H9.32q-.1.01-.12.14v1.32q.01.13.12.13" opacity=".5"/>
54
+ </symbol>`,jc=`<symbol id="file-tree-builtin-eslint" viewBox="0 0 16 16">
55
+ <path fill="currentColor" d="M11.16 6.1 8.12 4.35a.3.3 0 0 0-.24 0L4.84 6.1a.3.3 0 0 0-.12.2v3.5q0 .14.12.22l3.04 1.74q.12.08.24 0l3.04-1.74a.2.2 0 0 0 .13-.22V6.3a.3.3 0 0 0-.13-.2" opacity=".5"/>
56
+ <path fill="currentColor" d="m.1 7.69 3.63-6.3A.8.8 0 0 1 4.37 1h7.26c.26 0 .5.17.64.4l3.63 6.27a.8.8 0 0 1 0 .75l-3.63 6.24a.7.7 0 0 1-.64.34H4.37a.7.7 0 0 1-.64-.34L.1 8.41a.7.7 0 0 1 0-.72m3 3.02q.01.15.14.23l4.63 2.66q.13.06.26 0l4.63-2.66a.3.3 0 0 0 .14-.23V5.4a.3.3 0 0 0-.14-.23L8.13 2.52a.3.3 0 0 0-.26 0L3.24 5.17a.3.3 0 0 0-.14.23z"/>
57
+ </symbol>`,Mc=`<symbol id="file-tree-builtin-font" viewBox="0 0 16 16">
58
+ <path fill="currentColor" d="M12.3 13c-1.59 0-2.68-.99-2.68-2.5 0-1.43 1-2.34 2.88-2.35h2.16v-.83c0-1.08-.62-1.68-1.73-1.68-1.05 0-1.66.54-1.73 1.36H9.93c.09-1.43 1.06-2.48 3.05-2.48 1.75 0 3.02.95 3.02 2.68v5.66h-1.29v-1.02h-.04c-.41.66-1.16 1.16-2.37 1.16m.36-1.12c1.14 0 2-.72 2-1.74v-.96H12.6c-1.12 0-1.6.54-1.6 1.28 0 .97.8 1.42 1.66 1.42m-11.24.98H0L3.8 2h1.39l3.8 10.86H7.54l-1.08-3.2H2.5zm3.09-9.25h-.04l-1.6 4.95H6.1z"/>
59
+ </symbol>`,Nc=`<symbol id="file-tree-builtin-git" viewBox="0 0 16 16">
60
+ <path fill="currentColor" d="M14.74 7.38 8.62 1.26a.9.9 0 0 0-1.27 0L6.08 2.53l1.61 1.61a1.07 1.07 0 0 1 1.36 1.37l1.55 1.55a1.07 1.07 0 0 1 1.1 1.77 1.07 1.07 0 0 1-1.74-1.16L8.5 6.22v3.8a1.07 1.07 0 1 1-.89-.02V6.15a1.07 1.07 0 0 1-.58-1.4l-1.58-1.6-4.2 4.2a.9.9 0 0 0 0 1.27l6.12 6.12a.9.9 0 0 0 1.27 0l6.09-6.09a.9.9 0 0 0 0-1.27"/>
61
+ </symbol>`,Pc=`<symbol id="file-tree-builtin-go" viewBox="0 0 16 16">
62
+ <path fill="currentColor" fill-rule="evenodd" d="M4.41 4.57A3.2 3.2 0 0 1 6.87 5q.74.49 1.08 1.29.08.12-.1.16l-1.55.4c-.14.03-.15.04-.27-.1a1 1 0 0 0-.44-.34 1.6 1.6 0 0 0-1.68.14q-.95.61-.94 1.73c0 .73.52 1.33 1.25 1.43q.95.1 1.58-.6l.25-.34h-1.8c-.19 0-.24-.12-.17-.27.12-.28.34-.76.47-1a.3.3 0 0 1 .24-.14h2.98a4 4 0 0 1 .64-1.19 4 4 0 0 1 2.6-1.52 3.5 3.5 0 0 1 2.64.46q1.13.73 1.31 2.04a3.5 3.5 0 0 1-1.06 3.09q-.93.92-2.23 1.17l-.74.08a3.5 3.5 0 0 1-2.27-.8 3 3 0 0 1-.93-1.42 4 4 0 0 1-.39.61 4 4 0 0 1-2.64 1.56 3.3 3.3 0 0 1-2.5-.6 3 3 0 0 1-1.18-2.03 3.5 3.5 0 0 1 .8-2.67 4 4 0 0 1 2.6-1.58M13.1 7.5a1.53 1.53 0 0 0-1.9-1.21q-1.3.3-1.62 1.59a1.5 1.5 0 0 0 .85 1.72q.77.33 1.52-.05a2 2 0 0 0 1.18-1.74q0-.17-.03-.3" clip-rule="evenodd"/>
63
+ </symbol>`,Fc=`<symbol id="file-tree-builtin-graphql" viewBox="0 0 16 16">
64
+ <path fill="currentColor" fill-rule="evenodd" d="M8 1a1.25 1.25 0 0 1 1.18 1.65l2.8 1.61q.33-.25.77-.26a1.25 1.25 0 0 1 .48 2.4v3.2a1.25 1.25 0 1 1-1.25 2.13l-2.8 1.62A1.25 1.25 0 0 1 8 15a1.25 1.25 0 0 1-1.18-1.65l-2.8-1.62q-.33.26-.77.27a1.25 1.25 0 0 1-.48-2.4V6.4a1.25 1.25 0 1 1 1.25-2.14l2.8-1.61A1.25 1.25 0 0 1 8 1M4.44 11.14l-.06.13 2.75 1.58a1.25 1.25 0 0 1 1.74 0l2.74-1.58-.05-.13zm3.89-7.68a1.3 1.3 0 0 1-.66 0L4.03 9.77q.37.3.45.78h7.04q.08-.48.45-.78zM4.38 4.73a1.24 1.24 0 0 1-1.02 1.76v3.02l.13.01 3.67-6.35-.03-.02zm4.46-1.56 3.67 6.35.13-.01V6.49a1.25 1.25 0 0 1-1.03-1.76L8.87 3.15z" clip-rule="evenodd"/>
65
+ </symbol>`,Ic=`<symbol id="file-tree-builtin-html" viewBox="0 0 16 16">
66
+ <path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
67
+ <path fill="currentColor" d="M10.48 3.76a.5.5 0 0 1 .4.58L10.6 5.8h1.14a.5.5 0 0 1 0 1h-1.32L10 9.2h1.08a.5.5 0 0 1 0 1H9.8l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H6.4l-.3 1.64a.5.5 0 1 1-.98-.18l.27-1.46H4.25a.5.5 0 0 1 0-1h1.32L6 6.8H4.93a.5.5 0 0 1 0-1H6.2l.3-1.64a.5.5 0 1 1 .98.18L7.2 5.8h2.4l.3-1.64a.5.5 0 0 1 .58-.4M6.58 9.2h2.4l.44-2.4h-2.4z" class="fg"/>
68
+ </symbol>`,Lc=`<symbol id="file-tree-builtin-image" viewBox="0 0 16 16">
69
+ <path fill="currentColor" d="M12.5 2A2.5 2.5 0 0 1 15 4.5v4.67l-4.05-3.54-4.08 4.08-3-2L1 10.6V4.5A2.5 2.5 0 0 1 3.5 2z" opacity=".3"/>
70
+ <path fill="currentColor" d="M15 10.5v1a2.5 2.5 0 0 1-2.5 2.5h-9a2.5 2.5 0 0 1-2.46-2.04L4 9l3 2 4-4zm-7-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0"/>
71
+ </symbol>`,Rc=`<symbol id="file-tree-builtin-javascript" viewBox="0 0 16 16">
72
+ <path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
73
+ <path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66M3.5 9.5h.98c0 .76.15.92.85.92.77 0 .94-.18.94-1.02V5.1h1v4.34c0 1.54-.35 1.87-1.92 1.87-1.55 0-1.89-.32-1.86-1.8"/>
74
+ </symbol>`,zc=`<symbol id="file-tree-builtin-json" viewBox="0 0 16 16">
75
+ <path fill="currentColor" d="M13.25 11.5V9.75a.5.5 0 0 1 .36-.48l.55-.15a1.16 1.16 0 0 0 0-2.24l-.55-.15a.5.5 0 0 1-.36-.48V4.5a2.5 2.5 0 0 0-2.5-2.5h-.25a.5.5 0 0 0 0 1h.25a1.5 1.5 0 0 1 1.5 1.5v1.75a1.5 1.5 0 0 0 1.09 1.44l.54.15a.16.16 0 0 1 0 .32l-.54.15a1.5 1.5 0 0 0-1.09 1.44v1.75a1.5 1.5 0 0 1-1.5 1.5h-.25a.5.5 0 0 0 0 1h.25a2.5 2.5 0 0 0 2.5-2.5m-10.5 0V9.75a.5.5 0 0 0-.36-.48l-.55-.15a1.16 1.16 0 0 1 0-2.24l.55-.15a.5.5 0 0 0 .36-.48V4.5A2.5 2.5 0 0 1 5.25 2h.25a.5.5 0 0 1 0 1h-.25a1.5 1.5 0 0 0-1.5 1.5v1.75a1.5 1.5 0 0 1-1.09 1.44l-.54.15a.16.16 0 0 0 0 .32l.54.15a1.5 1.5 0 0 1 1.09 1.45v1.74a1.5 1.5 0 0 0 1.5 1.5h.25a.5.5 0 0 1 0 1h-.25a2.5 2.5 0 0 1-2.5-2.5"/>
76
+ </symbol>`,Bc=`<symbol id="file-tree-builtin-markdown" viewBox="0 0 16 16">
77
+ <path fill="currentColor" d="M1 12V4h2l2 2.5L7 4h2v8H7V7.5l-2 2-2-2V12zm9-3 3 3.5L16 9h-2V4h-2v5z"/>
78
+ </symbol>`,Vc=`<symbol id="file-tree-builtin-mcp" viewBox="0 0 16 16">
79
+ <path fill="currentColor" d="M9.26-.04a3 3 0 0 1 2 .82 2.8 2.8 0 0 1 .8 2.35 2.9 2.9 0 0 1 2.41.8l.03.02a2.74 2.74 0 0 1 0 3.94l-5.8 5.69-.04.06-.02.07q0 .04.02.07.01.04.04.06l1.2 1.17a.55.55 0 0 1 0 .79.6.6 0 0 1-.81 0l-1.2-1.17a1.3 1.3 0 0 1 0-1.84L13.7 7.1a1.65 1.65 0 0 0 .37-1.82 2 2 0 0 0-.37-.54l-.03-.03a1.73 1.73 0 0 0-2.4 0L6.47 9.4l-.07.06a.58.58 0 0 1-.92-.18.6.6 0 0 1 .12-.6l4.85-4.76a1.65 1.65 0 0 0 0-2.36 1.73 1.73 0 0 0-2.4 0l-6.43 6.3a.6.6 0 0 1-.8 0 .55.55 0 0 1 0-.8L7.25.79a3 3 0 0 1 2-.82"/>
80
+ <path fill="currentColor" d="M9.26 2.19a.6.6 0 0 1 .52.34.6.6 0 0 1 0 .43l-.12.18L4.9 7.79a1.65 1.65 0 0 0 0 2.36 1.73 1.73 0 0 0 2.4 0l4.75-4.66a.58.58 0 0 1 .93.18.6.6 0 0 1-.12.61l-4.75 4.66a2.9 2.9 0 0 1-4.01 0 2.75 2.75 0 0 1-.62-3.04A3 3 0 0 1 4.1 7l4.74-4.65a.6.6 0 0 1 .4-.16"/>
81
+ </symbol>`,Hc=`<symbol id="file-tree-builtin-nextjs" viewBox="0 0 16 16">
82
+ <defs>
83
+ <linearGradient id="a" x1="4.522" x2="14" y1="3.943" y2="16" gradientUnits="userSpaceOnUse">
84
+ <stop stop-color="currentColor"/>
85
+ <stop offset="1" stop-color="currentColor" stop-opacity="0"/>
86
+ </linearGradient>
87
+ </defs>
88
+ <path fill="currentColor" d="M3 2h1.522v9.09H3z"/>
89
+ <path fill="url(#a)" d="M4.903 2 15 15.075q-.565.5-1.195.925L4.522 3.943z"/>
90
+ <path fill="currentColor" d="M12.172 2h-1.508v9.094h1.508z"/>
91
+ </symbol>`,Uc=`<symbol id="file-tree-builtin-npm" viewBox="0 0 16 16">
92
+ <path fill="currentColor" d="M2 1a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1z" class="vector" opacity=".2"/>
93
+ <path fill="currentColor" d="M10.5 13H13V3H3v10h5V5.5h2.5z"/>
94
+ </symbol>`,Wc=`<symbol id="file-tree-builtin-oxc" viewBox="0 0 16 16">
95
+ <path fill="currentColor" d="M9.5 1a.5.5 0 0 1 .5.5V3h3.5a.5.5 0 0 1 .38.83L10.5 7.69v1.44q.41.04.95-.16a4 4 0 0 0 .72-.35l.04-.03h.01a.5.5 0 0 1 .67.1l2 2.5a.5.5 0 0 1 0 .62c-.76.96-3.14 2.69-6.89 2.69s-6.13-1.73-6.89-2.69a.5.5 0 0 1 0-.62l2-2.5a.5.5 0 0 1 .67-.1l.05.03.16.09q.22.13.56.26.54.2.95.16V7.69L2.12 3.83A.5.5 0 0 1 2.5 3H6V1.5a.5.5 0 0 1 .5-.5zM7 3.5a.5.5 0 0 1-.5.5H3.6l2.78 3.17a.5.5 0 0 1 .12.33v2a.5.5 0 0 1-.28.45c-.7.35-1.5.15-2.02-.05a5 5 0 0 1-.58-.26l-1.46 1.84c.82.78 2.8 2.02 5.84 2.02s5.02-1.24 5.84-2.02l-1.46-1.83a5 5 0 0 1-.58.26c-.52.2-1.33.39-2.02.04a.5.5 0 0 1-.28-.45v-2a.5.5 0 0 1 .12-.33L12.4 4H9.5a.5.5 0 0 1-.5-.5V2H7z"/>
96
+ </symbol>`,Gc=`<symbol id="file-tree-builtin-postcss" viewBox="0 0 16 16">
97
+ <path fill="currentColor" d="M14.5 8a6.5 6.5 0 0 0-5.9-6.47l5.42 8.93A7 7 0 0 0 14.5 8M2.88 12A6.5 6.5 0 0 0 8 14.5c2.08 0 3.93-.98 5.12-2.5zm8.62-1h1.68L11.5 8.24zm-1-.55a4 4 0 0 1-.7.55h.7zM8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M5.5 11h.7a4 4 0 0 1-.7-.55zm-2.68 0H4.5V8.24zm3.76-6.2A4 4 0 0 1 8 4.5q.76 0 1.42.3L8 2.46zM1.5 8q0 1.31.48 2.46L7.4 1.53A6.5 6.5 0 0 0 1.5 8m14 0a7.5 7.5 0 0 1-.99 3.72l-.01.03-.02.03A7.5 7.5 0 0 1 8 15.5a7.5 7.5 0 0 1-6.5-3.75l-.01-.03A7.5 7.5 0 1 1 15.5 8"/>
98
+ </symbol>`,Kc=`<symbol id="file-tree-builtin-prettier" viewBox="0 0 16 16">
99
+ <path fill="currentColor" d="M6 12v1H4.93v-1zm1-2v1H2v-1zm6-4v1h-3V6zm-1-4v1H9V2z"/>
100
+ <path fill="currentColor" d="M11.5 10v1H8v-1zM5 6v1H2V6zm5-2v1H9V4z" opacity=".8"/>
101
+ <path fill="currentColor" d="M6 14v1H2v-1zm-.5-6v1H2V8zM13 4v1h-3V4zM4.93 2v1H2V2z" opacity=".6"/>
102
+ <path fill="currentColor" d="M4.93 12v1H2v-1zM13 8v1H9V8zM5.5 4v1H2V4zM9 2v1H4.93V2z" opacity=".4"/>
103
+ </symbol>`,qc=`<symbol id="file-tree-builtin-python" viewBox="0 0 16 16">
104
+ <path fill="currentColor" d="M8.33 8.4H10c1.16 0 1.9-.73 1.9-1.86V5.08q0-.24.25-.24h.74c.75 0 1.33.32 1.66.97q.4.73.41 1.46c.09.9.09 1.78-.24 2.67-.25.73-.75 1.3-1.58 1.46h-4.8c-.08 0-.25 0-.25.08v.4s.17.09.25.09h2.82q.34-.02.33.32v1.06c0 .56-.25.97-.75 1.13-.41.16-.83.33-1.24.4a7 7 0 0 1-2.98-.07 3 3 0 0 1-1.16-.49c-.33-.32-.58-.65-.5-1.14v-2.91c0-1.13.67-1.78 1.82-1.78q.89-.1 1.66-.08m2.32 4.86a.65.65 0 0 0-.66-.65c-.34 0-.67.33-.67.65s.33.57.67.65a.65.65 0 0 0 .66-.65" class="bg" opacity=".8"/>
105
+ <path fill="currentColor" d="M7.67 7.6H6c-1.16 0-1.9.73-1.9 1.86v1.46q0 .24-.25.24h-.74c-.75 0-1.33-.32-1.66-.97a3 3 0 0 1-.41-1.46 6 6 0 0 1 .24-2.67c.25-.73.75-1.3 1.58-1.46h4.8c.08 0 .25 0 .25-.08v-.4s-.17-.09-.25-.09H4.85c-.24 0-.33-.08-.33-.32V2.65c0-.56.25-.97.75-1.13.41-.16.83-.33 1.24-.4a7 7 0 0 1 2.98.07c.41.09.83.25 1.16.49.33.32.58.65.5 1.13v2.92c0 1.14-.67 1.78-1.82 1.78-.58.08-1.16.08-1.66.08M5.35 2.73c0 .33.25.65.66.65.33 0 .66-.32.66-.65 0-.32-.33-.56-.66-.64a.65.65 0 0 0-.66.64" class="fg"/>
106
+ </symbol>`,Jc=`<symbol id="file-tree-builtin-react" viewBox="0 0 16 16">
107
+ <path fill="currentColor" d="M8 6.65c.73 0 1.31.6 1.31 1.35S8.73 9.35 8 9.35 6.69 8.75 6.69 8 7.27 6.65 8 6.65"/>
108
+ <path fill="currentColor" fill-rule="evenodd" d="M8 2.55c1.3-.99 2.59-1.34 3.5-.8.92.55 1.27 1.87 1.08 3.53C14.06 5.94 15 6.9 15 8s-.94 2.06-2.42 2.72c.19 1.65-.16 2.98-1.08 3.52-.91.55-2.2.2-3.5-.8-1.3 1-2.58 1.35-3.5.8-.91-.54-1.27-1.87-1.08-3.52C1.94 10.06 1 9.1 1 8s.94-2.06 2.42-2.72c-.19-1.66.17-2.98 1.08-3.52s2.2-.2 3.5.8M4.26 11.2c-.08 1.34.28 2.03.68 2.26s1.15.22 2.25-.52l.11-.09a12 12 0 0 1-1.24-1.39 11 11 0 0 1-1.8-.41zm7.47-.15q-.83.27-1.79.41-.6.8-1.24 1.4l.11.08c1.1.74 1.86.76 2.25.52.4-.23.76-.92.68-2.26zm-3.04.54a14 14 0 0 1-1.38 0q.34.38.69.7.35-.32.7-.7M8 5.29q-.76 0-1.47.1A13 13 0 0 0 5.07 8a14 14 0 0 0 1.46 2.62 13 13 0 0 0 2.94 0A13 13 0 0 0 10.93 8a14 14 0 0 0-1.46-2.62A13 13 0 0 0 8 5.3M4.64 9.18q-.15.5-.25.96.44.16.94.27a15 15 0 0 1-.7-1.23m6.73 0a15 15 0 0 1-.7 1.23q.5-.11.95-.27a10 10 0 0 0-.25-.96M3.44 6.26C2.27 6.86 1.87 7.53 1.87 8s.4 1.14 1.57 1.74l.13.07q.18-.88.55-1.81a12 12 0 0 1-.55-1.8q-.07.02-.13.06m8.99-.07A12 12 0 0 1 11.88 8q.36.94.55 1.8l.13-.06c1.17-.6 1.56-1.27 1.56-1.74s-.39-1.14-1.56-1.74zm-7.1-.6q-.5.11-.94.27.1.46.25.96a15 15 0 0 1 .69-1.23m5.34 0a15 15 0 0 1 .7 1.23q.14-.5.24-.96-.44-.15-.94-.27M7.18 3.06c-1.09-.74-1.85-.76-2.24-.52s-.76.92-.69 2.26l.01.15a11 11 0 0 1 1.8-.41q.6-.8 1.24-1.4zm3.88-.52c-.4-.24-1.15-.22-2.25.52l-.12.08q.65.6 1.25 1.4.96.15 1.8.41v-.14c.08-1.35-.28-2.04-.68-2.27M8 3.7a10 10 0 0 0-.7.7 14 14 0 0 1 1.4 0 10 10 0 0 0-.7-.7" clip-rule="evenodd"/>
109
+ </symbol>`,Yc=`<symbol id="file-tree-builtin-ruby" viewBox="0 0 16 16">
110
+ <path fill="currentColor" fill-rule="evenodd" d="M11.04 2c.48 0 .92.23 1.18.6l2.54 3.65c.37.52.3 1.23-.15 1.69l-5.58 5.64a1.47 1.47 0 0 1-2.06 0L1.39 7.94a1.3 1.3 0 0 1-.15-1.7l2.54-3.63q.2-.3.5-.45.33-.16.68-.16zm.84 2.17a.5.5 0 0 0-.7-.05L8 6.84 4.83 4.12a.5.5 0 0 0-.65.76L6.65 7H3.5a.5.5 0 0 0 0 1h9a.5.5 0 0 0 0-1H9.35l2.48-2.12a.5.5 0 0 0 .05-.7" clip-rule="evenodd"/>
111
+ </symbol>`,Xc=`<symbol id="file-tree-builtin-rust" viewBox="0 0 16 16">
112
+ <path fill="currentColor" fill-rule="evenodd" d="M8 .8a.2.2 0 0 1 .18.1l.38.6.16.02.5-.53.01-.01a.2.2 0 0 1 .33.08l.25.68.16.05.59-.43h.02a.2.2 0 0 1 .3.14l.12.71.15.08.65-.3a.2.2 0 0 1 .2.02.2.2 0 0 1 .1.18l-.03.72.12.1.71-.16a.2.2 0 0 1 .25.25l-.17.7q.06.06.1.13l.73-.03A.2.2 0 0 1 14 4a.2.2 0 0 1 .02.2l-.3.66.08.14.71.12a.2.2 0 0 1 .14.32l-.43.59.05.16.68.25a.2.2 0 0 1 .07.35l-.53.49.01.16.62.38a.2.2 0 0 1 0 .36l-.62.38-.01.16.53.5a.2.2 0 0 1-.07.34l-.68.25-.05.16.43.59a.2.2 0 0 1-.14.32l-.72.12-.07.15.3.65a.2.2 0 0 1-.02.2.2.2 0 0 1-.18.1l-.72-.03-.1.13.16.7a.2.2 0 0 1-.25.25l-.7-.17-.13.1.03.73a.2.2 0 0 1-.1.18.2.2 0 0 1-.2.02l-.66-.3-.14.08-.12.71a.2.2 0 0 1-.32.14l-.59-.43-.16.05-.25.68a.2.2 0 0 1-.34.07l-.5-.53-.16.01-.38.62a.2.2 0 0 1-.36 0l-.38-.62-.16-.01-.5.53a.2.2 0 0 1-.34-.07l-.25-.68-.16-.05-.59.43a.2.2 0 0 1-.32-.14L5 13.78l-.15-.07-.65.3a.2.2 0 0 1-.2-.02.2.2 0 0 1-.1-.18l.03-.72-.13-.1-.7.16a.2.2 0 0 1-.25-.25l.17-.7-.1-.13-.73.03a.2.2 0 0 1-.2-.3l.3-.66-.08-.14-.71-.12a.2.2 0 0 1-.14-.32l.43-.59-.05-.16-.68-.25A.2.2 0 0 1 1 9.22l.53-.5-.02-.16-.6-.38A.2.2 0 0 1 .8 8a.2.2 0 0 1 .1-.18l.6-.38.02-.16-.53-.5a.2.2 0 0 1 .07-.34l.68-.25.05-.16-.43-.59a.2.2 0 0 1 .14-.32L2.2 5l.08-.15L2 4.2a.2.2 0 0 1 .2-.3l.72.03.1-.13-.16-.7a.2.2 0 0 1 .25-.25l.7.16.13-.1-.03-.72A.2.2 0 0 1 4 2a.2.2 0 0 1 .2-.02l.65.3L5 2.2l.12-.71v-.03a.2.2 0 0 1 .32-.1l.59.41.16-.04.25-.68.01-.02A.2.2 0 0 1 6.8.99l.49.53.16-.02.38-.61.02-.02A.2.2 0 0 1 8 .79M6.8 9.45h1.26l.06.01q.03.01.03.05v1.52q0 .07-.09.06h-4.5A5.4 5.4 0 0 0 8 13.42a5.4 5.4 0 0 0 4.45-2.33h-2.42c-.36 0-.68-.5-.77-.75-.08-.22-.2-.91-.25-1.12-.15-.61-.59-.71-.78-.73H6.8zM8 2.58a5.4 5.4 0 0 0-4.07 1.85h5.74l.17.02c.23.03.6.12.96.35.34.23.83.68.83 1.4 0 .66-.55 1.16-1.08 1.5.42.33.7.53.86 1.44.04.17.34.32.62.29.29-.03.62-.16.62-.75v-.24q0-.1.07-.1h.68A5.43 5.43 0 0 0 8 2.59M2.96 6.03a5.4 5.4 0 0 0-.19 3.37h1.66V6.03zM6.8 7.06h1.66c.35 0 .77-.12.77-.47 0-.42-.55-.53-.65-.53H6.8z" clip-rule="evenodd"/>
113
+ </symbol>`,Zc=`<symbol id="file-tree-builtin-sass" viewBox="0 0 16 16">
114
+ <path fill="currentColor" fill-rule="evenodd" d="M8.08 1.44c2.41-.91 4.96-.37 5.35 1.27.39 1.62-.92 3.56-2.6 4.25a5 5 0 0 1-3.26.35c-.58-.2-.92-.62-1-.85-.03-.09-.09-.24 0-.3.05-.03.08-.02.22.15s.7.6 1.75.48c2.78-.34 4.45-2.64 3.92-3.88-.37-.87-2.5-1.26-5.18.16C4.03 4.81 3.85 6.24 3.82 6.8c-.08 1.5 1.73 2.28 2.7 3.4q.04.03.07.08c.3-.12.7-.19 1.35-.2 1.58-.03 2.47 1.08 2.43 2.08-.03.78-.7 1.1-.82 1.13-.1.01-.14.02-.15-.06q-.03-.06.13-.15c.16-.09.42-.3.48-.72.05-.43-.24-1.44-1.76-1.63a3 3 0 0 0-1.33.08c.27.62.32 1.87-.29 2.83-.63 1-1.8 1.61-2.93 1.27-.37-.1-.93-.92-.45-2.05.46-1.07 2.4-2.12 2.66-2.26-.9-.83-3.08-1.95-3.4-3.65-.08-.49.13-1.65 1.46-2.98a12 12 0 0 1 4.11-2.52m-1.88 9.7c-.01.01-.9.47-1.52 1.17-.59.66-.75 1.48-.43 1.69.3.18 1-.04 1.51-.62a3 3 0 0 0 .5-.9q.2-.64.02-1.39z" clip-rule="evenodd"/>
115
+ </symbol>`,Qc=`<symbol id="file-tree-builtin-stylelint" viewBox="0 0 16 16">
116
+ <path fill="currentColor" d="M4 3v3.5l1.5-1L7 15 .5 6l1-1.5L0 3l2.5-2h1zm12 0-1.5 1.5 1 1.5L9 15l1.5-9.5 1.5 1V3l.5-2h1zm-8 8.5a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1m0-3a.5.5 0 1 1 0 1 .5.5 0 0 1 0-1"/>
117
+ <path fill="currentColor" d="M6.5 2.5V4l-2 1.5v-4zm5 3L9.5 4V2.5l2-1zM9 4H7V2.5h2z"/>
118
+ </symbol>`,$c=`<symbol id="file-tree-builtin-svelte" viewBox="0 0 16 16">
119
+ <path fill="currentColor" d="m3.98 3.7 3.36-2.08a4.5 4.5 0 0 1 5.9 1.23 4 4 0 0 1 .7 3.02q-.16.75-.58 1.4c.42.77.56 1.66.4 2.52a3.7 3.7 0 0 1-1.57 2.4l-.17.1-3.36 2.09a4.5 4.5 0 0 1-5.9-1.23 4 4 0 0 1-.66-1.44 4 4 0 0 1-.04-1.58 4 4 0 0 1 .58-1.4 4 4 0 0 1-.4-2.52 3.7 3.7 0 0 1 1.57-2.4zl3.36-2.08zm7.87 0a2.7 2.7 0 0 0-1.26-.95 2.7 2.7 0 0 0-1.6-.07 3 3 0 0 0-.52.2l-.16.09-3.36 2.08a2 2 0 0 0-.69.64 2 2 0 0 0-.36.86 2.3 2.3 0 0 0 .42 1.81A2.7 2.7 0 0 0 7.18 9.4q.28-.06.53-.2l.16-.09 1.28-.79.2-.09a.8.8 0 0 1 .87.31.7.7 0 0 1 .13.55.7.7 0 0 1-.24.4l-.08.05-3.36 2.08-.2.09a1 1 0 0 1-.49-.02 1 1 0 0 1-.38-.3 1 1 0 0 1-.13-.37v-.1l.01-.13-.13-.03a4 4 0 0 1-1.1-.5l-.2-.14-.18-.12-.07.18-.08.3a2.3 2.3 0 0 0 .43 1.82q.45.64 1.19.93.73.28 1.51.14l.16-.04q.27-.07.52-.2l.16-.09 3.36-2.08q.4-.25.69-.64.27-.4.36-.86a2.3 2.3 0 0 0-.42-1.82 2.7 2.7 0 0 0-1.27-.95 2.7 2.7 0 0 0-1.6-.08q-.27.07-.52.2l-.16.1-1.28.79-.2.09a1 1 0 0 1-.49-.03 1 1 0 0 1-.38-.29.7.7 0 0 1-.13-.54.7.7 0 0 1 .24-.4l.08-.06L9.33 4.4l.2-.1a.8.8 0 0 1 .87.32 1 1 0 0 1 .13.38v.22l.11.04q.6.18 1.12.5l.2.14.17.12.06-.19.08-.3a2.3 2.3 0 0 0-.42-1.81z"/>
120
+ </symbol>`,el=`<symbol id="file-tree-builtin-svg" viewBox="0 0 16 16">
121
+ <path fill="currentColor" d="M5 7a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2z"/>
122
+ <path fill="currentColor" d="M6 1a5 5 0 0 1 4.58 3H7a3 3 0 0 0-3 3v3.58A5 5 0 0 1 6 1" opacity=".5"/>
123
+ </symbol>`,tl=`<symbol id="file-tree-builtin-svgo" viewBox="0 0 16 16">
124
+ <path fill="currentColor" d="M9.43 4.8A.6.6 0 1 1 9.19 6l-.56.96a1.2 1.2 0 0 1 .32 1.58l.7.53a.89.89 0 1 1-.17.22l-.7-.52a1.2 1.2 0 0 1-1.4.25l-.56.87a.75.75 0 1 1-.57-.2 1 1 0 0 1 .32.05l.56-.87a1.2 1.2 0 0 1-.4-1.24l-1.2-.47a.56.56 0 1 1 .1-.28v.02l1.2.47a1.2 1.2 0 0 1 1.56-.55l.56-.97a.6.6 0 0 1-.15-.64.6.6 0 0 1 .63-.4"/>
125
+ <path fill="currentColor" fill-rule="evenodd" d="M9.17 1q.16.63.27 1.26a6 6 0 0 1 1.61.67q.52-.38 1.08-.71l1.65 1.64q-.32.56-.68 1.05.48.78.72 1.67.6.09 1.18.25v2.32q-.55.15-1.11.24a6 6 0 0 1-.7 1.82q.31.44.59.91l-1.65 1.65-.85-.55a6 6 0 0 1-1.9.83q-.08.47-.2.95H6.84q-.12-.46-.2-.93a6 6 0 0 1-1.96-.81q-.39.27-.8.51l-1.65-1.65q.25-.43.53-.84a6 6 0 0 1-.75-1.9L1 9.16V6.83q.54-.14 1.09-.24a6 6 0 0 1 .77-1.74q-.33-.47-.63-.98l1.65-1.65q.54.32 1.03.68a6 6 0 0 1 1.66-.66q.1-.61.26-1.24zM7.96 3.73a4 4 0 0 0-1.74.36 4.5 4.5 0 0 0-2.3 2.3 4.4 4.4 0 0 0-.1 3.29l.03.06a4.4 4.4 0 0 0 2.4 2.47 4.4 4.4 0 0 0 3.48-.02l.03-.02a4.4 4.4 0 0 0 2.3-2.42l.06-.14a4.4 4.4 0 0 0-.2-3.4 4.4 4.4 0 0 0-2.13-2.07L9.47 4a4 4 0 0 0-1.51-.27" clip-rule="evenodd"/>
126
+ </symbol>`,nl=`<symbol id="file-tree-builtin-swift" viewBox="0 0 16 16">
127
+ <path fill="currentColor" d="M9.63 1c6.15 4.35 4.16 9.15 4.16 9.15s1.75 2.05 1.04 3.85c0 0-.72-1.26-1.93-1.26-1.17 0-1.85 1.26-4.2 1.26C3.47 14 1 9.46 1 9.46c4.71 3.22 7.93.94 7.93.94C6.8 9.12 2.29 3 2.29 3c3.93 3.47 5.63 4.39 5.63 4.39-1.01-.87-3.86-5.13-3.86-5.13C6.34 4.66 10.86 8 10.86 8c1.28-3.7-1.23-7-1.23-7"/>
128
+ </symbol>`,rl=`<symbol id="file-tree-builtin-table" viewBox="0 0 16 16">
129
+ <path fill="currentColor" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" opacity=".4"/>
130
+ <path fill="currentColor" d="M11.5 8a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5h-7a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5zM5 12h2.5v-1H5zm3.5 0H11v-1H8.5zM5 10h2.5V9H5zm3.5 0H11V9H8.5zm1-9a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z" class="fg"/>
131
+ </symbol>`,il=`<symbol id="file-tree-builtin-tailwind" viewBox="0 0 16 16">
132
+ <path fill="currentColor" fill-rule="evenodd" d="M8 4Q5.2 4 4.5 6.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C8.98 7.23 9.77 8 11.5 8q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C10.52 4.77 9.73 4 8 4M4.5 8Q1.7 8 1 10.67q1.05-1.34 2.45-1c.53.12.91.5 1.33.9C5.48 11.23 6.26 12 8 12q2.8 0 3.5-2.67-1.05 1.34-2.45 1c-.53-.12-.91-.5-1.33-.9C7.02 8.77 6.24 8 4.5 8" clip-rule="evenodd"/>
133
+ </symbol>`,al=`<symbol id="file-tree-builtin-terraform" viewBox="0 0 16 16">
134
+ <path fill="currentColor" d="M1 0v5.05l4.35 2.53V2.53zm9.18 5.34L5.83 2.82v5.05l4.35 2.53zm.47 5.06V5.34L15 2.82v5.05zm-.48 5.6-4.35-2.53V8.42l4.35 2.53z"/>
135
+ </symbol>`,ol=`<symbol id="file-tree-builtin-text" viewBox="0 0 16 16">
136
+ <path fill="currentColor" fill-rule="evenodd" d="M8 4a3 3 0 0 0 3 3h3v5.5a2.5 2.5 0 0 1-2.5 2.5h-7A2.5 2.5 0 0 1 2 12.5v-9A2.5 2.5 0 0 1 4.5 1H8z" class="bg" clip-rule="evenodd" opacity=".4"/>
137
+ <path fill="currentColor" d="M8.5 11a.5.5 0 0 1 0 1h-3a.5.5 0 0 1 0-1zm2-2a.5.5 0 0 1 0 1h-5a.5.5 0 0 1 0-1zm-1-8a.5.5 0 0 1 .354.146l4 4A.5.5 0 0 1 14 5.5V6h-3a2 2 0 0 1-2-2V1z"/>
138
+ </symbol>`,sl=`<symbol id="file-tree-builtin-typescript" viewBox="0 0 16 16">
139
+ <path fill="currentColor" d="M8 1C2.24 1 1 2.24 1 8s1.24 7 7 7 7-1.24 7-7-1.24-7-7-7" class="bg" opacity=".2"/>
140
+ <path fill="currentColor" d="M8.1 9.64h.95c.04.62.28.76 1.28.76s1.2-.14 1.2-.85c0-.66-.2-.85-1.2-1.07-1.79-.38-2.18-.7-2.18-1.86C8.15 5.3 8.54 5 10.31 5c1.67 0 2.04.26 2.07 1.42h-.95c-.02-.43-.23-.53-1.1-.53-1 0-1.22.14-1.22.74 0 .52.22.7 1.24.92 1.76.38 2.15.73 2.15 2 0 1.44-.4 1.75-2.24 1.75-1.8 0-2.18-.3-2.15-1.66m-3 1.57V5.99H3.5v-.9h4.21v.9H6.1v5.22z"/>
141
+ </symbol>`,cl=`<symbol id="file-tree-builtin-vite" viewBox="0 0 16 16">
142
+ <path fill="currentColor" d="M8.57 14.87c-.18.26-.55.11-.55-.22v-3.18l-.05-.27-.13-.22-.2-.15-.24-.06H4.29c-.26 0-.4-.32-.26-.55L6.08 7c.3-.46 0-1.1-.5-1.1H1.8c-.25 0-.4-.32-.25-.56l2.65-4.2A.3.3 0 0 1 4.46 1h7.9c.26 0 .4.32.26.55l-2.05 3.23c-.29.46 0 1.1.5 1.1h3.12c.26 0 .4.34.24.57z"/>
143
+ </symbol>`,ll=`<symbol id="file-tree-builtin-vscode" viewBox="0 0 16 16">
144
+ <path fill="currentColor" d="m5.11 9.68-2.4 1.84a.6.6 0 0 1-.75-.04l-.77-.7a.6.6 0 0 1 0-.87L3.28 8zm5.52-8.42a.51.51 0 0 1 .87.36V4.8L7.32 8 5.1 6.32z" opacity=".75"/>
145
+ <path fill="currentColor" d="M11.1 14.99h.03zM1.96 4.52a.6.6 0 0 1 .75-.04l8.8 6.71v3.19a.51.51 0 0 1-.88.36L1.19 6.1a.6.6 0 0 1 0-.87z" opacity=".65"/>
146
+ <path fill="currentColor" d="M11.62 14.91a.9.9 0 0 1-1-.17.51.51 0 0 0 .88-.36V1.62a.51.51 0 0 0-.87-.36.9.9 0 0 1 1-.17l2.87 1.39a.9.9 0 0 1 .5.8v9.44a.9.9 0 0 1-.5.8z"/>
147
+ </symbol>`,ul=`<symbol id="file-tree-builtin-vue" viewBox="0 0 16 16">
148
+ <path fill="currentColor" d="M9.62 2.25 8 5.02 6.38 2.25H1l7 12 7-12z" opacity=".5"/>
149
+ <path fill="currentColor" d="M9.54 2.25 8 4.95l-1.54-2.7H4l4 7 4-7z"/>
150
+ </symbol>`,dl=`<symbol id="file-tree-builtin-wasm" viewBox="0 0 16 16">
151
+ <path fill="currentColor" d="M13 1a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h3a2 2 0 1 0 4 0z" class="subtract" opacity=".2"/>
152
+ <path fill="currentColor" d="M4.64 11.4h.02l.8-3.4h.91l.73 3.45L7.88 8h.96l-1.25 5h-.97L5.9 9.6 5.1 13h-1L3 8h.98z"/>
153
+ <path fill="currentColor" fill-rule="evenodd" d="M13 13h-1.02l-.33-1.11H9.9L9.64 13h-.97l1.26-5h1.54zm-2.49-3.77-.42 1.84h1.32l-.49-1.84z" clip-rule="evenodd"/>
154
+ </symbol>`,fl=`<symbol id="file-tree-builtin-webpack" viewBox="0 0 16 16">
155
+ <path fill="currentColor" d="M14.1 11.79 8.26 15v-2.5l3.64-1.94zm.4-.35V4.73l-2.14 1.2v4.3zm-12.6.35L7.74 15v-2.5L4.1 10.56zm-.4-.35V4.73l2.14 1.2v4.3zm.25-7.15 6-3.29v2.42L3.9 5.47l-.03.01zm12.5 0L8.25 1v2.42l3.85 2.05.03.01z" class="bg" opacity=".4"/>
156
+ <path fill="currentColor" d="m7.74 11.93-3.59-1.92v-3.8l3.6 2.02zm.52 0 3.59-1.92v-3.8l-3.6 2.02zM4.4 5.77 8 3.85l3.6 1.93L8 7.8z" class="fg"/>
157
+ </symbol>`,pl=`<symbol id="file-tree-builtin-yml" viewBox="0 0 16 16">
158
+ <path fill="currentColor" d="M7.5 2A1.5 1.5 0 0 1 9 3.5v3A1.5 1.5 0 0 1 7.5 8h-2v2A1.5 1.5 0 0 0 7 11.5v-1A1.5 1.5 0 0 1 8.5 9h5a1.5 1.5 0 0 1 1.5 1.5v3a1.5 1.5 0 0 1-1.5 1.5h-5A1.5 1.5 0 0 1 7 13.5v-1A2.5 2.5 0 0 1 4.5 10V8h-2A1.5 1.5 0 0 1 1 6.5v-3A1.5 1.5 0 0 1 2.5 2zm1 8a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5zm-6-7a.5.5 0 0 0-.5.5v3a.5.5 0 0 0 .5.5h5a.5.5 0 0 0 .5-.5v-3a.5.5 0 0 0-.5-.5z"/>
159
+ </symbol>`,ml=`<symbol id="file-tree-builtin-zig" viewBox="0 0 16 16">
160
+ <path fill="currentColor" d="m14.73 1.5-7.29 8.82h4.17l-1.73 2.04H5.76L1.27 14.5l7.3-8.91H4.39l1.73-2.05h4.12z"/>
161
+ <path fill="currentColor" d="M5.21 3.54 3.56 5.6h-.55v4.73h.83L2.1 12.36H1V3.54zm9.79 0v8.82h-4.3l1.74-2.04h.55V5.68h-.83l1.74-2.14z"/>
162
+ </symbol>`,hl=[xc,Dc,Oc,kc,Mc,Nc,Pc,Ic,Lc,Rc,zc,Bc,Vc,qc,Yc,Xc,nl,rl,ol,sl,`<symbol id="file-tree-builtin-zip" viewBox="0 0 16 16">
163
+ <path fill="currentColor" d="M4.585 2a2 2 0 0 1 1.028.285l1.788 1.072a1 1 0 0 0 .514.143H12A2 2 0 0 1 13.935 5H0V4a2 2 0 0 1 2-2z" class="bg" opacity=".5"/>
164
+ <path fill="currentColor" fill-rule="evenodd" d="M14 12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-1.25h1v-1H0V6h14zM9.9 8.25c-.883 0-1.9.5-1.9.5H7v1h1v1s1.017.5 1.9.5c.884 0 1.6-.672 1.6-1.5s-.716-1.5-1.6-1.5M2 9.75v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1zm-5-1v1h1v-1zm2 0v1h1v-1zm2 0v1h1v-1z" class="fg" clip-rule="evenodd"/>
165
+ </symbol>`],gl=[yc,bc,Sc,Cc,wc,Tc,Ec,Ac,jc,Fc,Hc,Uc,Wc,Gc,Kc,Jc,Zc,Qc,$c,el,tl,il,al,cl,ll,ul,dl,fl,pl,ml];function _l(e,t){return t.length===0?e:e.replace(`</svg>`,`\n ${t.join(`
166
+ `)}\n</svg>`)}var vl=_l(vc,hl),yl={minimal:vc,standard:vl,complete:_l(vl,gl)},bl={".babelrc":`babel`,".babelrc.json":`babel`,".bash_profile":`bash`,".bashrc":`bash`,".browserslistrc":`browserslist`,".dockerignore":`docker`,".eslintignore":`eslint`,".eslintrc":`eslint`,".eslintrc.cjs":`eslint`,".eslintrc.js":`eslint`,".eslintrc.json":`eslint`,".eslintrc.yaml":`eslint`,".eslintrc.yml":`eslint`,".gitattributes":`git`,".gitignore":`git`,".gitkeep":`git`,".gitmodules":`git`,".oxlintrc.json":`oxc`,".postcssrc":`postcss`,".postcssrc.json":`postcss`,".postcssrc.yaml":`postcss`,".postcssrc.yml":`postcss`,".prettierignore":`prettier`,".prettierrc":`prettier`,".prettierrc.cjs":`prettier`,".prettierrc.js":`prettier`,".prettierrc.json":`prettier`,".prettierrc.mjs":`prettier`,".prettierrc.toml":`prettier`,".prettierrc.yaml":`prettier`,".prettierrc.yml":`prettier`,".stylelintignore":`stylelint`,".stylelintrc":`stylelint`,".stylelintrc.cjs":`stylelint`,".stylelintrc.js":`stylelint`,".stylelintrc.json":`stylelint`,".stylelintrc.mjs":`stylelint`,".stylelintrc.yaml":`stylelint`,".stylelintrc.yml":`stylelint`,".terraform.lock.hcl":`terraform`,".zprofile":`bash`,".zshenv":`bash`,".zshrc":`bash`,"babel.config.cjs":`babel`,"babel.config.js":`babel`,"babel.config.json":`babel`,"babel.config.mjs":`babel`,"biome.json":`biome`,"biome.jsonc":`biome`,"bootstrap.bundle.js":`bootstrap`,"bootstrap.bundle.min.js":`bootstrap`,"bootstrap.css":`bootstrap`,"bootstrap.js":`bootstrap`,"bootstrap.min.css":`bootstrap`,"bootstrap.min.js":`bootstrap`,"bun.lock":`bun`,"bun.lockb":`bun`,"bunfig.toml":`bun`,"claude.md":`claude`,"compose.yaml":`docker`,"compose.yml":`docker`,"docker-compose.override.yml":`docker`,"docker-compose.yaml":`docker`,"docker-compose.yml":`docker`,dockerfile:`docker`,"eslint.config.cjs":`eslint`,"eslint.config.js":`eslint`,"eslint.config.mjs":`eslint`,"eslint.config.mts":`eslint`,"eslint.config.ts":`eslint`,gemfile:`ruby`,"next.config.js":`nextjs`,"next.config.mjs":`nextjs`,"next.config.mts":`nextjs`,"next.config.ts":`nextjs`,"postcss.config.cjs":`postcss`,"postcss.config.js":`postcss`,"postcss.config.mjs":`postcss`,"postcss.config.ts":`postcss`,"prettier.config.cjs":`prettier`,"prettier.config.js":`prettier`,"prettier.config.mjs":`prettier`,rakefile:`ruby`,"readme.md":`markdown`,"stylelint.config.cjs":`stylelint`,"stylelint.config.js":`stylelint`,"stylelint.config.mjs":`stylelint`,"svgo.config.cjs":`svgo`,"svgo.config.js":`svgo`,"svgo.config.mjs":`svgo`,"svgo.config.ts":`svgo`,"tailwind.config.cjs":`tailwind`,"tailwind.config.js":`tailwind`,"tailwind.config.mjs":`tailwind`,"tailwind.config.ts":`tailwind`,"vite.config.js":`vite`,"vite.config.mjs":`vite`,"vite.config.mts":`vite`,"vite.config.ts":`vite`,"webpack.config.babel.js":`webpack`,"webpack.config.cjs":`webpack`,"webpack.config.js":`webpack`,"webpack.config.mjs":`webpack`,"webpack.config.ts":`webpack`},xl={"7z":`zip`,astro:`astro`,AUTHORS:`text`,avif:`image`,bash:`bash`,bmp:`image`,bz2:`zip`,cfg:`text`,CHANGELOG:`text`,cjs:`javascript`,"code-workspace":`vscode`,conf:`text`,CONTRIBUTORS:`text`,csh:`bash`,css:`css`,csv:`table`,cts:`typescript`,db:`database`,editorconfig:`text`,env:`text`,"env.development":`text`,"env.local":`text`,"env.production":`text`,eot:`font`,erb:`ruby`,fish:`bash`,gemspec:`ruby`,gif:`image`,go:`go`,gql:`graphql`,graphql:`graphql`,gz:`zip`,htm:`html`,html:`html`,icns:`image`,ico:`image`,ini:`text`,jar:`zip`,jpeg:`image`,jpg:`image`,js:`javascript`,json:`json`,json5:`json`,jsonc:`json`,jsonl:`json`,jsx:`javascript`,ksh:`bash`,less:`css`,LICENSE:`text`,log:`text`,markdown:`markdown`,mcp:`mcp`,md:`markdown`,mdx:`markdown`,"mdx.tsx":`markdown`,mjs:`javascript`,mts:`typescript`,ods:`table`,otf:`font`,png:`image`,postcss:`css`,py:`python`,pyi:`python`,pyw:`python`,pyx:`python`,rake:`ruby`,rar:`zip`,rb:`ruby`,rs:`rust`,rst:`text`,rtf:`text`,sass:`css`,scss:`css`,sh:`bash`,sql:`database`,sqlite:`database`,sqlite3:`database`,styl:`css`,svelte:`svelte`,svg:`svg`,swift:`swift`,tar:`zip`,tf:`terraform`,tfstate:`terraform`,tfvars:`terraform`,tgz:`zip`,tif:`image`,tiff:`image`,ts:`typescript`,tsv:`table`,tsx:`typescript`,ttf:`font`,txt:`text`,vue:`vue`,war:`zip`,wasm:`wasm`,wast:`wasm`,wat:`wasm`,webp:`image`,woff:`font`,woff2:`font`,xhtml:`html`,xls:`table`,xlsx:`table`,xz:`zip`,yaml:`yml`,yml:`yml`,zig:`zig`,zip:`zip`,zsh:`bash`},Sl={jsx:`react`,sass:`sass`,scss:`sass`,tsx:`react`},Cl=new Set([`bash`,`css`,`database`,`default`,`font`,`git`,`go`,`html`,`image`,`javascript`,`json`,`markdown`,`mcp`,`python`,`ruby`,`rust`,`swift`,`table`,`text`,`typescript`,`zip`]),wl=new Set([`complete`]);function Tl(e){return yl[e===`none`?`minimal`:e]}function El(e){return`file-tree-builtin-${e}`}function Dl(e){return e!==`none`&&wl.has(e)}function Ol(e,t,n){if(e===`minimal`||e===`none`)return;let r=e===`complete`,i=bl[t.toLowerCase()];if(i!=null&&(r||Cl.has(i)))return i;for(let e of n){if(r){let t=Sl[e];if(t!=null)return t}let t=xl[e];if(t!=null&&(r||Cl.has(t)))return t}return`default`}function kl(e){return e.spriteSheet!=null||e.remap!=null||e.byFileName!=null||e.byFileExtension!=null||e.byFileNameContains!=null}function Al(e){return e==null?{set:`complete`,colored:!0}:typeof e==`string`?{set:e,colored:!0}:{...e,set:e.set??(kl(e)?`none`:`complete`),colored:e.colored??!0}}var jl={compact:{itemHeight:24,factor:.8},default:{itemHeight:30,factor:1},relaxed:{itemHeight:36,factor:1.2}};function Ml(e,t){if(typeof e==`number`)return{itemHeight:t??jl.default.itemHeight,factor:e};let n=jl[e??`default`];return{itemHeight:t??n.itemHeight,factor:n.factor}}var Nl=jl.default.itemHeight,Pl=`@layer base, theme, unsafe;
167
+
168
+ @layer base {
169
+ :host {
170
+ /*
171
+ CSS variables use a fallback stack to ensure user and theme colors slot
172
+ in with ease. User colors take precedence over theme colors, which take
173
+ precedence over defaults.
174
+
175
+ Fallback order:
176
+
177
+ 1. --trees-*-override (explicit)
178
+ 2. --trees-theme-* (e.g. Shiki/VS Code tokens)
179
+ 3. defaults
180
+
181
+ Theme variable names mirror Shiki/VS Code theme file JSON tokens.
182
+
183
+ // Available CSS Color Overrides
184
+ --trees-fg-override
185
+ --trees-fg-muted-override
186
+ --trees-bg-override
187
+ --trees-bg-muted-override
188
+ --trees-accent-override
189
+ --trees-border-color-override
190
+
191
+ --trees-focus-ring-color-override
192
+ --trees-focus-ring-width-override
193
+ --trees-focus-ring-offset-override
194
+
195
+ --trees-search-fg-override
196
+ --trees-search-font-weight-override
197
+ --trees-search-bg-override
198
+
199
+ --trees-selected-fg-override
200
+ --trees-selected-bg-override
201
+ --trees-selected-focused-border-color-override
202
+
203
+ // Git Status Color Overrides
204
+ --trees-status-added-override
205
+ --trees-status-ignored-override
206
+ --trees-status-modified-override
207
+ --trees-status-renamed-override
208
+ --trees-status-untracked-override
209
+ --trees-status-deleted-override
210
+ --trees-git-added-color-override
211
+ --trees-git-ignored-color-override
212
+ --trees-git-modified-color-override
213
+ --trees-git-renamed-color-override
214
+ --trees-git-untracked-color-override
215
+ --trees-git-deleted-color-override
216
+
217
+ // Built-in File Icon Color Overrides
218
+ --trees-file-icon-color
219
+ --trees-file-icon-color-astro
220
+ --trees-file-icon-color-babel
221
+ --trees-file-icon-color-bash
222
+ --trees-file-icon-color-biome
223
+ --trees-file-icon-color-bootstrap
224
+ --trees-file-icon-color-browserslist
225
+ --trees-file-icon-color-bun
226
+ --trees-file-icon-color-claude
227
+ --trees-file-icon-color-css
228
+ --trees-file-icon-color-database
229
+ --trees-file-icon-color-default
230
+ --trees-file-icon-color-docker
231
+ --trees-file-icon-color-eslint
232
+ --trees-file-icon-color-git
233
+ --trees-file-icon-color-go
234
+ --trees-file-icon-color-graphql
235
+ --trees-file-icon-color-html
236
+ --trees-file-icon-color-image
237
+ --trees-file-icon-color-javascript
238
+ --trees-file-icon-color-json
239
+ --trees-file-icon-color-markdown
240
+ --trees-file-icon-color-mcp
241
+ --trees-file-icon-color-npm
242
+ --trees-file-icon-color-oxc
243
+ --trees-file-icon-color-postcss
244
+ --trees-file-icon-color-prettier
245
+ --trees-file-icon-color-python
246
+ --trees-file-icon-color-react
247
+ --trees-file-icon-color-ruby
248
+ --trees-file-icon-color-rust
249
+ --trees-file-icon-color-sass
250
+ --trees-file-icon-color-svg
251
+ --trees-file-icon-color-svelte
252
+ --trees-file-icon-color-svgo
253
+ --trees-file-icon-color-swift
254
+ --trees-file-icon-color-table
255
+ --trees-file-icon-color-text
256
+ --trees-file-icon-color-tailwind
257
+ --trees-file-icon-color-terraform
258
+ --trees-file-icon-color-typescript
259
+ --trees-file-icon-color-vite
260
+ --trees-file-icon-color-vscode
261
+ --trees-file-icon-color-vue
262
+ --trees-file-icon-color-wasm
263
+ --trees-file-icon-color-webpack
264
+ --trees-file-icon-color-yml
265
+ --trees-file-icon-color-zig
266
+ --trees-file-icon-color-zip
267
+
268
+ // Density
269
+ //
270
+ // A unitless scale factor for padding, gaps, and indentation. Usually
271
+ // set via \`density\` on useFileTree. Individual overrides take precedence.
272
+ //
273
+ // Compact: 0.8
274
+ // Default: 1
275
+ // Relaxed: 1.2
276
+ //
277
+ --trees-density-override
278
+
279
+ // Available CSS Layout Overrides
280
+ --trees-gap-override
281
+ --trees-border-radius-override
282
+ --trees-font-family-override
283
+ --trees-font-size-override
284
+ --trees-font-weight-regular-override
285
+ --trees-font-weight-semibold-override
286
+ --trees-level-gap-override
287
+ --trees-item-padding-x-override
288
+ --trees-item-margin-x-override
289
+ --trees-item-row-gap-override
290
+ --trees-icon-width-override
291
+ --trees-icon-nudge-override
292
+ --trees-scrollbar-gutter-override
293
+ --trees-padding-inline-override
294
+ */
295
+
296
+ --trees-accent: var(--trees-accent-override, #009fff);
297
+ --trees-fg: var(
298
+ --trees-fg-override,
299
+ var(--trees-theme-sidebar-fg, light-dark(#6c6c71, #adadb1))
300
+ );
301
+ --trees-fg-muted: var(
302
+ --trees-fg-muted-override,
303
+ var(--trees-theme-sidebar-header-fg, light-dark(#84848a, #84848a))
304
+ );
305
+ --trees-bg: var(
306
+ --trees-bg-override,
307
+ var(--trees-theme-sidebar-bg, light-dark(#f8f8f8, #141415))
308
+ );
309
+ /* var(--trees-theme-list-hover-bg, light-dark(#dfebff59, #19283c59)) */
310
+ --trees-bg-muted: var(
311
+ --trees-bg-muted-override,
312
+ var(
313
+ --trees-theme-list-hover-bg,
314
+ light-dark(
315
+ color-mix(
316
+ in lab,
317
+ var(--trees-accent) var(--trees-bg-alpha-light, 8%),
318
+ var(--trees-bg)
319
+ ),
320
+ color-mix(
321
+ in lab,
322
+ var(--trees-accent) var(--trees-bg-alpha-dark, 10%),
323
+ var(--trees-bg)
324
+ )
325
+ )
326
+ )
327
+ );
328
+ --trees-input-bg: var(
329
+ --trees-input-bg-override,
330
+ light-dark(#f8f8f8, #070707)
331
+ );
332
+
333
+ --trees-added-light: #16a994;
334
+ --trees-added-dark: #00cab1;
335
+ --trees-ignored-light: #adadb1;
336
+ --trees-ignored-dark: #4a4a4e;
337
+ --trees-modified-light: #1ca1c7;
338
+ --trees-modified-dark: #08c0ef;
339
+ --trees-renamed-light: #d5a910;
340
+ --trees-renamed-dark: #ffd452;
341
+ --trees-untracked-light: #16a994;
342
+ --trees-untracked-dark: #00cab1;
343
+ --trees-deleted-light: #ff2e3f;
344
+ --trees-deleted-dark: #ff6762;
345
+
346
+ --trees-border-color: var(
347
+ --trees-border-color-override,
348
+ var(--trees-theme-sidebar-border, light-dark(#eeeeef, #070707))
349
+ );
350
+ --trees-indent-guide-bg: var(
351
+ --trees-indent-guide-bg-override,
352
+ color-mix(in lab, var(--trees-fg-muted) 25%, transparent)
353
+ );
354
+ --trees-density: var(--trees-density-override, 1);
355
+ --trees-border-radius: var(
356
+ --trees-border-radius-override,
357
+ calc(6px * var(--trees-density))
358
+ );
359
+
360
+ --trees-font-family: var(--trees-font-family-override, system-ui);
361
+ --trees-font-size: var(--trees-font-size-override, 13px);
362
+ --trees-font-weight-regular: var(--trees-font-weight-regular-override, 400);
363
+ --trees-font-weight-semibold: var(
364
+ --trees-font-weight-semibold-override,
365
+ 600
366
+ );
367
+
368
+ --trees-focus-ring-color: var(
369
+ --trees-focus-ring-color-override,
370
+ var(--trees-theme-focus-ring, var(--trees-accent))
371
+ );
372
+ --trees-focus-ring-width: var(--trees-focus-ring-width-override, 1px);
373
+ --trees-focus-ring-offset: var(--trees-focus-ring-offset-override, -1px);
374
+
375
+ --trees-search-fg: var(
376
+ --trees-search-fg-override,
377
+ var(--trees-theme-input-fg, var(--trees-fg))
378
+ );
379
+ --trees-search-font-weight: var(--trees-search-font-weight-override, 600);
380
+ --trees-search-bg: var(
381
+ --trees-search-bg-override,
382
+ var(--trees-theme-input-bg, var(--trees-input-bg))
383
+ );
384
+
385
+ --trees-scrollbar-thumb: var(
386
+ --trees-scrollbar-thumb-override,
387
+ var(
388
+ --trees-theme-scrollbar-thumb,
389
+ color-mix(in lab, var(--trees-fg) 25%, var(--trees-bg))
390
+ )
391
+ );
392
+
393
+ --trees-selected-fg: var(
394
+ --trees-selected-fg-override,
395
+ var(--trees-theme-list-active-selection-fg, var(--trees-fg))
396
+ );
397
+ --trees-selected-bg: var(
398
+ --trees-selected-bg-override,
399
+ var(
400
+ --trees-theme-list-active-selection-bg,
401
+ light-dark(
402
+ color-mix(in lab, var(--trees-accent) 12%, var(--trees-bg)),
403
+ color-mix(in lab, var(--trees-accent) 15%, var(--trees-bg))
404
+ )
405
+ )
406
+ );
407
+ --trees-selected-focused-border-color: var(
408
+ --trees-selected-focused-border-color-override,
409
+ var(--trees-theme-focus-ring, var(--trees-accent))
410
+ );
411
+
412
+ /* Git status (e.g. from Shiki theme gitDecoration.*) */
413
+ --trees-status-added: var(
414
+ --trees-status-added-override,
415
+ var(
416
+ --trees-theme-git-added-fg,
417
+ light-dark(var(--trees-added-light), var(--trees-added-dark))
418
+ )
419
+ );
420
+ --trees-status-ignored: var(
421
+ --trees-status-ignored-override,
422
+ var(
423
+ --trees-theme-git-ignored-fg,
424
+ light-dark(var(--trees-ignored-light), var(--trees-ignored-dark))
425
+ )
426
+ );
427
+ --trees-status-modified: var(
428
+ --trees-status-modified-override,
429
+ var(
430
+ --trees-theme-git-modified-fg,
431
+ light-dark(var(--trees-modified-light), var(--trees-modified-dark))
432
+ )
433
+ );
434
+ --trees-status-renamed: var(
435
+ --trees-status-renamed-override,
436
+ var(
437
+ --trees-theme-git-renamed-fg,
438
+ light-dark(var(--trees-renamed-light), var(--trees-renamed-dark))
439
+ )
440
+ );
441
+ --trees-status-untracked: var(
442
+ --trees-status-untracked-override,
443
+ var(
444
+ --trees-theme-git-untracked-fg,
445
+ light-dark(var(--trees-untracked-light), var(--trees-untracked-dark))
446
+ )
447
+ );
448
+ --trees-status-deleted: var(
449
+ --trees-status-deleted-override,
450
+ var(
451
+ --trees-theme-git-deleted-fg,
452
+ light-dark(var(--trees-deleted-light), var(--trees-deleted-dark))
453
+ )
454
+ );
455
+ --trees-git-modified-color: var(
456
+ --trees-git-modified-color-override,
457
+ var(--trees-status-modified)
458
+ );
459
+ --trees-git-added-color: var(
460
+ --trees-git-added-color-override,
461
+ var(--trees-status-added)
462
+ );
463
+ --trees-git-ignored-color: var(
464
+ --trees-git-ignored-color-override,
465
+ var(--trees-status-ignored)
466
+ );
467
+ --trees-git-deleted-color: var(
468
+ --trees-git-deleted-color-override,
469
+ var(--trees-status-deleted)
470
+ );
471
+ --trees-git-renamed-color: var(
472
+ --trees-git-renamed-color-override,
473
+ var(--trees-status-renamed)
474
+ );
475
+ --trees-git-untracked-color: var(
476
+ --trees-git-untracked-color-override,
477
+ var(--trees-status-untracked)
478
+ );
479
+
480
+ --trees-icon-gray: light-dark(#84848a, #adadb1);
481
+ --trees-icon-red: light-dark(#d52c36, #ff6762);
482
+ --trees-icon-vermilion: light-dark(#ff8c5b, #d5512f);
483
+ --trees-icon-orange: light-dark(#d47628, #ffa359);
484
+ --trees-icon-yellow: light-dark(#d5a910, #ffd452);
485
+ --trees-icon-green: light-dark(#199f43, #5ecc71);
486
+ --trees-icon-teal: light-dark(#17a5af, #64d1db);
487
+ --trees-icon-cyan: light-dark(#1ca1c7, #68cdf2);
488
+ --trees-icon-blue: light-dark(#1a85d4, #69b1ff);
489
+ --trees-icon-indigo: light-dark(#693acf, #9d6afb);
490
+ --trees-icon-purple: light-dark(#a631be, #d568ea);
491
+ --trees-icon-pink: light-dark(#d32a61, #ff678d);
492
+ --trees-icon-mauve: light-dark(#594c5b, #79697b);
493
+
494
+ --trees-file-icon-color-default: var(
495
+ --trees-file-icon-color,
496
+ var(--trees-icon-gray)
497
+ );
498
+ --trees-file-icon-color-astro: var(
499
+ --trees-file-icon-color,
500
+ var(--trees-icon-purple)
501
+ );
502
+ --trees-file-icon-color-babel: var(
503
+ --trees-file-icon-color,
504
+ var(--trees-icon-yellow)
505
+ );
506
+ --trees-file-icon-color-bash: var(
507
+ --trees-file-icon-color,
508
+ var(--trees-icon-green)
509
+ );
510
+ --trees-file-icon-color-biome: var(
511
+ --trees-file-icon-color,
512
+ var(--trees-icon-blue)
513
+ );
514
+ --trees-file-icon-color-bootstrap: var(
515
+ --trees-file-icon-color,
516
+ var(--trees-icon-indigo)
517
+ );
518
+ --trees-file-icon-color-browserslist: var(
519
+ --trees-file-icon-color,
520
+ var(--trees-icon-yellow)
521
+ );
522
+ --trees-file-icon-color-bun: var(
523
+ --trees-file-icon-color,
524
+ var(--trees-icon-mauve)
525
+ );
526
+ --trees-file-icon-color-claude: var(
527
+ --trees-file-icon-color,
528
+ var(--trees-icon-orange)
529
+ );
530
+ --trees-file-icon-color-css: var(
531
+ --trees-file-icon-color,
532
+ var(--trees-icon-indigo)
533
+ );
534
+ --trees-file-icon-color-database: var(
535
+ --trees-file-icon-color,
536
+ var(--trees-icon-purple)
537
+ );
538
+ --trees-file-icon-color-docker: var(
539
+ --trees-file-icon-color,
540
+ var(--trees-icon-blue)
541
+ );
542
+ --trees-file-icon-color-eslint: var(
543
+ --trees-file-icon-color,
544
+ var(--trees-icon-indigo)
545
+ );
546
+ --trees-file-icon-color-git: var(
547
+ --trees-file-icon-vermilion,
548
+ var(--trees-icon-vermilion)
549
+ );
550
+ --trees-file-icon-color-go: var(
551
+ --trees-file-icon-color,
552
+ var(--trees-icon-cyan)
553
+ );
554
+ --trees-file-icon-color-graphql: var(
555
+ --trees-file-icon-color,
556
+ var(--trees-icon-pink)
557
+ );
558
+ --trees-file-icon-color-html: var(
559
+ --trees-file-icon-color,
560
+ var(--trees-icon-orange)
561
+ );
562
+ --trees-file-icon-color-image: var(
563
+ --trees-file-icon-color,
564
+ var(--trees-icon-pink)
565
+ );
566
+ --trees-file-icon-color-javascript: var(
567
+ --trees-file-icon-color,
568
+ var(--trees-icon-yellow)
569
+ );
570
+ --trees-file-icon-color-json: var(
571
+ --trees-file-icon-color,
572
+ var(--trees-icon-orange)
573
+ );
574
+ --trees-file-icon-color-markdown: var(
575
+ --trees-file-icon-color,
576
+ var(--trees-icon-green)
577
+ );
578
+ --trees-file-icon-color-mcp: var(
579
+ --trees-file-icon-color,
580
+ var(--trees-icon-teal)
581
+ );
582
+ --trees-file-icon-color-npm: var(
583
+ --trees-file-icon-color,
584
+ var(--trees-icon-red)
585
+ );
586
+ --trees-file-icon-color-oxc: var(
587
+ --trees-file-icon-cyan,
588
+ var(--trees-icon-cyan)
589
+ );
590
+ --trees-file-icon-color-postcss: var(
591
+ --trees-file-icon-color,
592
+ var(--trees-icon-red)
593
+ );
594
+ --trees-file-icon-color-prettier: var(
595
+ --trees-file-icon-color,
596
+ var(--trees-icon-teal)
597
+ );
598
+ --trees-file-icon-color-python: var(
599
+ --trees-file-icon-color,
600
+ var(--trees-icon-blue)
601
+ );
602
+ --trees-file-icon-color-react: var(
603
+ --trees-file-icon-color,
604
+ var(--trees-icon-cyan)
605
+ );
606
+ --trees-file-icon-color-ruby: var(
607
+ --trees-file-icon-color,
608
+ var(--trees-icon-red)
609
+ );
610
+ --trees-file-icon-color-rust: var(
611
+ --trees-file-icon-color,
612
+ var(--trees-icon-orange)
613
+ );
614
+ --trees-file-icon-color-sass: var(
615
+ --trees-file-icon-color,
616
+ var(--trees-icon-pink)
617
+ );
618
+ --trees-file-icon-color-svg: var(
619
+ --trees-file-icon-color,
620
+ var(--trees-icon-orange)
621
+ );
622
+ --trees-file-icon-color-svelte: var(
623
+ --trees-file-icon-color,
624
+ var(--trees-icon-red)
625
+ );
626
+ --trees-file-icon-color-svgo: var(
627
+ --trees-file-icon-color,
628
+ var(--trees-icon-green)
629
+ );
630
+ --trees-file-icon-color-swift: var(
631
+ --trees-file-icon-color,
632
+ var(--trees-icon-orange)
633
+ );
634
+ --trees-file-icon-color-table: var(
635
+ --trees-file-icon-color,
636
+ var(--trees-icon-teal)
637
+ );
638
+ --trees-file-icon-color-text: var(
639
+ --trees-file-icon-color,
640
+ var(--trees-icon-gray)
641
+ );
642
+ --trees-file-icon-color-tailwind: var(
643
+ --trees-file-icon-color,
644
+ var(--trees-icon-cyan)
645
+ );
646
+ --trees-file-icon-color-terraform: var(
647
+ --trees-file-icon-color,
648
+ var(--trees-icon-indigo)
649
+ );
650
+ --trees-file-icon-color-typescript: var(
651
+ --trees-file-icon-color,
652
+ var(--trees-icon-blue)
653
+ );
654
+ --trees-file-icon-color-vite: var(
655
+ --trees-file-icon-color,
656
+ var(--trees-icon-purple)
657
+ );
658
+ --trees-file-icon-color-vscode: var(
659
+ --trees-file-icon-color,
660
+ var(--trees-icon-blue)
661
+ );
662
+ --trees-file-icon-color-vue: var(
663
+ --trees-file-icon-color,
664
+ var(--trees-icon-green)
665
+ );
666
+ --trees-file-icon-color-wasm: var(
667
+ --trees-file-icon-color,
668
+ var(--trees-icon-indigo)
669
+ );
670
+ --trees-file-icon-color-webpack: var(
671
+ --trees-file-icon-color,
672
+ var(--trees-icon-blue)
673
+ );
674
+ --trees-file-icon-color-yml: var(
675
+ --trees-file-icon-color,
676
+ var(--trees-icon-red)
677
+ );
678
+ --trees-file-icon-color-zig: var(
679
+ --trees-file-icon-color,
680
+ var(--trees-icon-orange)
681
+ );
682
+ --trees-file-icon-color-zip: var(
683
+ --trees-file-icon-color,
684
+ var(--trees-icon-orange)
685
+ );
686
+
687
+ --trees-level-gap: var(
688
+ --trees-level-gap-override,
689
+ calc(8px * var(--trees-density))
690
+ );
691
+ --trees-item-padding-x: var(
692
+ --trees-item-padding-x-override,
693
+ calc(8px * var(--trees-density))
694
+ );
695
+ --trees-item-margin-x: var(
696
+ --trees-item-margin-x-override,
697
+ calc(2px * var(--trees-density))
698
+ );
699
+ --trees-item-row-gap: var(
700
+ --trees-item-row-gap-override,
701
+ calc(6px * var(--trees-density))
702
+ );
703
+ --trees-icon-width: var(--trees-icon-width-override, 16px);
704
+ --trees-icon-nudge: var(
705
+ --trees-icon-nudge-override,
706
+ calc(1px * var(--trees-density))
707
+ );
708
+ --trees-row-height: var(--trees-item-height, 30px);
709
+ --trees-git-lane-width: var(--trees-git-lane-width-override, 12px);
710
+ --trees-action-lane-width: var(
711
+ --trees-action-lane-width-override,
712
+ calc(var(--trees-icon-width) + 2px)
713
+ );
714
+ /* Keep the floating trigger aligned with the row's action lane. Going in
715
+ from the root's right edge: the scroll container reserves
716
+ \`--trees-padding-inline\` of effective inset on each side (its asymmetric
717
+ padding formula cancels the scrollbar gutter on the right), the row
718
+ sits inside that inset, and its trailing \`--trees-item-padding-x\` is the
719
+ action lane itself. The trigger's own focus-ring margin then trims one
720
+ pixel back so the button's visible right edge lines up with the lane. */
721
+ --trees-context-menu-trigger-inline-offset: calc(
722
+ var(--trees-padding-inline) + var(--trees-item-padding-x) -
723
+ var(--trees-focus-ring-width)
724
+ );
725
+
726
+ --trees-scrollbar-gutter: var(--trees-scrollbar-gutter-override, 6px);
727
+ --trees-padding-inline: var(--trees-padding-inline-override, 16px);
728
+
729
+ color-scheme: light dark;
730
+ display: flex;
731
+ flex-direction: column;
732
+ font-size: var(--trees-font-size);
733
+ color: var(--trees-fg);
734
+ background-color: var(--trees-bg);
735
+ --truncate-marker-background-color: var(--trees-bg);
736
+ --truncate-marker-background-overlay-color: transparent;
737
+ font-family: var(--trees-font-family);
738
+ font-weight: var(--trees-font-weight-regular);
739
+ }
740
+
741
+ :host([data-file-tree-virtualized='true']) {
742
+ height: 100%;
743
+ overflow: hidden;
744
+ }
745
+
746
+ [data-file-tree-virtualized-wrapper='true'] {
747
+ height: 100%;
748
+ overflow: hidden;
749
+ display: flex;
750
+ flex-direction: column;
751
+ }
752
+
753
+ [data-file-tree-virtualized-root='true'] {
754
+ height: 100%;
755
+ display: flex;
756
+ flex-direction: column;
757
+ overflow: hidden;
758
+ }
759
+
760
+ [data-file-tree-virtualized-scroll='true'],
761
+ [data-file-tree-scrollbar-measure='true'] {
762
+ overflow-y: auto;
763
+ scrollbar-gutter: stable;
764
+
765
+ &::-webkit-scrollbar {
766
+ width: var(--trees-scrollbar-gutter);
767
+ height: var(--trees-scrollbar-gutter);
768
+ }
769
+
770
+ &::-webkit-scrollbar-track {
771
+ background: transparent;
772
+ }
773
+
774
+ &::-webkit-scrollbar-thumb {
775
+ background-color: var(--trees-scrollbar-thumb);
776
+ border: 1px solid transparent;
777
+ background-clip: content-box;
778
+ border-radius: calc(var(--trees-scrollbar-gutter) / 2);
779
+ }
780
+
781
+ &::-webkit-scrollbar-corner {
782
+ background-color: transparent;
783
+ }
784
+ }
785
+
786
+ /* These are styles for a temporarily generated element to measure the size
787
+ * of the scrollbar. It's intended to be somewhat similar in scrollbar style
788
+ * scope to the scrollable tree so \`--trees-scrollbar-gutter-measured\` is an
789
+ * accurate reflection of the size the scrollbar gutter takes up. */
790
+ [data-file-tree-scrollbar-measure='true'] {
791
+ position: absolute;
792
+ top: 0;
793
+ left: 0;
794
+ visibility: hidden;
795
+ pointer-events: none;
796
+ width: 100px;
797
+ height: 100px;
798
+ }
799
+
800
+ @supports (-moz-appearance: none) {
801
+ [data-file-tree-virtualized-scroll='true'],
802
+ [data-file-tree-scrollbar-measure='true'] {
803
+ scrollbar-width: thin;
804
+ scrollbar-color: var(--trees-scrollbar-thumb) transparent;
805
+ }
806
+ }
807
+
808
+ [data-file-tree-virtualized-scroll='true'] {
809
+ position: relative;
810
+ overflow-y: auto;
811
+ flex: 1 1 0;
812
+ min-height: 0;
813
+ padding-inline: max(
814
+ calc(var(--trees-padding-inline) - var(--trees-item-margin-x)),
815
+ 0px
816
+ )
817
+ /* NOTE(amadeus): We can assume that all Webkit based browser gutters
818
+ * will align to the value of '--trees-scrollbar-gutter', however if not, then
819
+ * \`--trees-scrollbar-gutter-measured\` should correct it. Mostly we are
820
+ * hoping to avoid SSR alignment jumps if possible. In non-SSR'd environments
821
+ * \`--trees-scrollbar-gutter-measured\` should always be immediately available.
822
+ */
823
+ max(
824
+ calc(
825
+ var(--trees-padding-inline) - var(--trees-item-margin-x) -
826
+ var(
827
+ --trees-scrollbar-gutter-measured,
828
+ var(--trees-scrollbar-gutter)
829
+ )
830
+ ),
831
+ 0px
832
+ );
833
+ }
834
+
835
+ @supports (-moz-appearance: none) {
836
+ [data-file-tree-virtualized-scroll='true'] {
837
+ padding-inline: max(
838
+ calc(var(--trees-padding-inline) - var(--trees-item-margin-x)),
839
+ 0px
840
+ )
841
+ /* NOTE(amadeus): However on Firefox it can vary a little bit, but most
842
+ * likely the majority of cases will default to a 0px width scrollbar lets
843
+ * inherit that first to avoid SSR jumps. In non-SSR'd environments
844
+ * \`--trees-scrollbar-gutter-measured\` should always be immediately available.
845
+ */
846
+ max(
847
+ calc(
848
+ var(--trees-padding-inline) - var(--trees-item-margin-x) -
849
+ var(--trees-scrollbar-gutter-measured, 0px)
850
+ ),
851
+ 0px
852
+ );
853
+ }
854
+ }
855
+
856
+ [data-file-tree-sticky-overlay='true'] {
857
+ position: sticky;
858
+ top: 0;
859
+ height: 0;
860
+ z-index: 4;
861
+ overflow: visible;
862
+ pointer-events: none;
863
+ }
864
+
865
+ /* The overlay DOM is kept populated even at scrollTop=0 so the browser has
866
+ * the rendered rows on hand the moment scrolling begins — otherwise the
867
+ * compositor paints a scrolled frame before React can mount the overlay,
868
+ * and the topmost sticky folder jumps up by a couple of pixels before it
869
+ * "snaps" into its pinned position. We hide it via CSS whenever the scroll
870
+ * is at the top and no scroll is in progress, so the preview doesn't leak
871
+ * through at rest. \`data-overlay-reveal\` is stamped on the root only when
872
+ * the user initiates a scroll while already at the top — exactly the case
873
+ * where we need the pre-mounted overlay to be visible through the first
874
+ * compositor frame. It is deliberately distinct from the general
875
+ * \`data-is-scrolling\` flag so a scroll that ends at the top (e.g. ArrowUp
876
+ * navigation) re-hides the overlay the instant the scroll lands, rather
877
+ * than waiting for the hover-suppression timer to elapse. */
878
+ [data-file-tree-virtualized-root='true'][data-scroll-at-top='true']:not(
879
+ [data-overlay-reveal]
880
+ )
881
+ [data-file-tree-sticky-overlay='true'] {
882
+ visibility: hidden;
883
+ }
884
+
885
+ [data-file-tree-sticky-overlay-content='true'] {
886
+ background-color: var(--trees-bg);
887
+ position: relative;
888
+ pointer-events: none;
889
+ }
890
+
891
+ [data-file-tree-virtualized-list='true'] {
892
+ background-color: var(--trees-bg);
893
+ position: relative;
894
+ min-height: 100%;
895
+ width: 100%;
896
+ overflow-anchor: none;
897
+
898
+ &[data-is-scrolling] {
899
+ pointer-events: none;
900
+ }
901
+ }
902
+
903
+ [data-file-tree-virtualized-sticky-offset='true'] {
904
+ contain: layout size;
905
+ }
906
+
907
+ [data-file-tree-virtualized-sticky='true'] {
908
+ position: sticky;
909
+ top: 0;
910
+ width: 100%;
911
+ display: flex;
912
+ flex-direction: column;
913
+ isolation: isolate;
914
+ /* Promote to its own compositor layer so text inside the window is
915
+ * rasterized once and GPU-translated during scroll. Without this, the
916
+ * browser re-paints the window (and its text) at every scroll frame,
917
+ * which produces visible 1px shake / character tearing. */
918
+ will-change: transform;
919
+ }
920
+
921
+ [data-file-tree-search-container] {
922
+ display: flex;
923
+ padding: 0;
924
+ padding-inline: var(--trees-padding-inline);
925
+ margin-bottom: var(--trees-item-row-gap);
926
+ }
927
+
928
+ [data-file-tree-search-input] {
929
+ --trees-focus-ring-width: 2px;
930
+ font-family: var(--trees-font-family);
931
+ font-size: var(--trees-font-size);
932
+ flex: 1;
933
+ height: var(--trees-row-height);
934
+ /* 1px breathing room so the focus-visible outline isn't clipped when the
935
+ * input sits flush against the top of the scroll container. */
936
+ margin-block: 1px;
937
+ padding-inline: var(--trees-item-padding-x);
938
+ line-height: var(--trees-row-height);
939
+ color: var(--trees-search-fg);
940
+ background-color: var(--trees-search-bg);
941
+ border: 1px solid var(--trees-border-color);
942
+ border-radius: var(--trees-border-radius);
943
+ outline: none;
944
+
945
+ &::placeholder {
946
+ color: color-mix(
947
+ in lab,
948
+ var(--trees-search-fg) 65%,
949
+ var(--trees-search-bg)
950
+ );
951
+ }
952
+
953
+ &:focus-visible,
954
+ &[data-file-tree-search-input-fake-focus='true'] {
955
+ outline: var(--trees-focus-ring-width) solid var(--trees-focus-ring-color);
956
+ outline-offset: var(--trees-focus-ring-offset);
957
+ }
958
+ }
959
+
960
+ /* The wrapper for the tree items */
961
+ [role='tree'] {
962
+ position: relative;
963
+ display: flex;
964
+ flex-direction: column;
965
+ gap: var(--trees-gap-override, 0);
966
+ }
967
+
968
+ /* LIST ITEM */
969
+ [data-type='item'] {
970
+ color: inherit;
971
+ font-family: var(--trees-font-family);
972
+ font-size: var(--trees-font-size);
973
+ text-align: start;
974
+ outline: none;
975
+ background-color: var(--trees-bg);
976
+ border: none;
977
+ position: relative;
978
+
979
+ padding: 0 var(--trees-item-padding-x);
980
+ margin: 0 var(--trees-item-margin-x);
981
+ cursor: pointer;
982
+ -webkit-user-select: none;
983
+ user-select: none;
984
+ -webkit-touch-callout: none;
985
+ touch-action: manipulation;
986
+ display: flex;
987
+ flex: 0 0 var(--trees-row-height);
988
+ align-items: center;
989
+ height: var(--trees-row-height);
990
+ line-height: var(--trees-row-height);
991
+ gap: var(--trees-item-row-gap);
992
+ border-radius: var(--trees-border-radius);
993
+ /* Row states may be translucent, so markers paint the tree background first
994
+ * and then the state color on top to avoid compositing the same alpha twice. */
995
+ --truncate-marker-background-color: var(--trees-bg);
996
+ --truncate-marker-background-overlay-color: transparent;
997
+ --truncate-marker-block-inset: 0px;
998
+
999
+ &:hover,
1000
+ &[data-item-context-hover='true'] {
1001
+ background-color: var(--trees-bg-muted);
1002
+ --truncate-marker-background-overlay-color: var(--trees-bg-muted);
1003
+ }
1004
+
1005
+ &[data-item-focused='true'],
1006
+ &:focus-visible {
1007
+ z-index: 2;
1008
+
1009
+ /* Flattened segment markers sit high enough to cover the row outline unless
1010
+ * their painted background is inset by the focus ring width. */
1011
+ [data-item-flattened-subitems] {
1012
+ --truncate-marker-block-inset: var(--trees-focus-ring-width);
1013
+ }
1014
+
1015
+ &::before {
1016
+ position: absolute;
1017
+ inset: 0;
1018
+ content: '';
1019
+ display: block;
1020
+ border-radius: var(--trees-border-radius);
1021
+ outline: var(--trees-focus-ring-width) solid
1022
+ var(--trees-focus-ring-color);
1023
+ outline-offset: var(--trees-focus-ring-offset);
1024
+ pointer-events: none;
1025
+ }
1026
+
1027
+ &[data-item-selected='true']::before {
1028
+ outline-color: var(--trees-selected-focused-border-color);
1029
+ }
1030
+ }
1031
+
1032
+ &[data-item-selected='true'] {
1033
+ color: var(--trees-selected-fg);
1034
+ background-color: var(--trees-selected-bg);
1035
+ --truncate-marker-background-overlay-color: var(--trees-selected-bg);
1036
+ z-index: 3;
1037
+
1038
+ [data-item-section='icon'] {
1039
+ color: var(--trees-selected-fg);
1040
+ }
1041
+ }
1042
+
1043
+ &[data-item-search-match='true'] {
1044
+ font-weight: var(--trees-search-font-weight);
1045
+ }
1046
+ }
1047
+
1048
+ [data-type='item'][data-file-tree-sticky-row='true'] {
1049
+ pointer-events: auto;
1050
+ }
1051
+
1052
+ /* Sticky rows opt back into pointer events because the overlay wrapper is
1053
+ * inert. During scroll, put them back under the same hover suppression as
1054
+ * the virtualized list so translucent hover states and menu triggers do not
1055
+ * paint over rows moving beneath the sticky stack. */
1056
+ [data-file-tree-virtualized-root='true'][data-is-scrolling]
1057
+ [data-type='item'][data-file-tree-sticky-row='true'] {
1058
+ pointer-events: none;
1059
+ }
1060
+
1061
+ [data-file-tree-virtualized-root='true'][data-is-scrolling]
1062
+ [data-type='item'][data-file-tree-sticky-row='true']:hover:not(
1063
+ [data-item-selected='true']
1064
+ ),
1065
+ [data-file-tree-virtualized-root='true'][data-is-scrolling]
1066
+ [data-type='item'][data-file-tree-sticky-row='true'][data-item-context-hover='true']:not(
1067
+ [data-item-selected='true']
1068
+ ) {
1069
+ background-color: var(--trees-bg);
1070
+ --truncate-marker-background-overlay-color: transparent;
1071
+ }
1072
+
1073
+ [data-item-selected='true']:has(+ [data-item-selected='true']) {
1074
+ border-bottom-left-radius: 0;
1075
+ border-bottom-right-radius: 0;
1076
+ }
1077
+
1078
+ [data-item-selected='true'] + [data-item-selected='true'] {
1079
+ border-top-left-radius: 0;
1080
+ border-top-right-radius: 0;
1081
+ }
1082
+
1083
+ /* Flattened Directory Parts */
1084
+ [data-item-flattened-subitems] {
1085
+ display: inline-flex;
1086
+ align-items: center;
1087
+ gap: 2px;
1088
+ }
1089
+ [data-item-flattened-subitem]:hover,
1090
+ [data-item-flattened-subitem-drag-target='true'] {
1091
+ text-decoration: underline;
1092
+ }
1093
+
1094
+ /* Icon for each item */
1095
+ [data-item-section='icon'] {
1096
+ flex-shrink: 0;
1097
+ display: flex;
1098
+ align-items: center;
1099
+ justify-content: center;
1100
+ color: var(--trees-fg-muted);
1101
+ fill: currentColor;
1102
+ width: var(--trees-icon-width);
1103
+ }
1104
+
1105
+ :where([data-item-section='icon'] > [data-icon-token]) {
1106
+ color: var(--trees-fg-muted);
1107
+ }
1108
+
1109
+ [data-file-tree-colored-icons='true'] {
1110
+ [data-icon-token='astro'] {
1111
+ color: var(--trees-file-icon-color-astro);
1112
+ }
1113
+ [data-icon-token='babel'] {
1114
+ color: var(--trees-file-icon-color-babel);
1115
+ }
1116
+ [data-icon-token='bash'] {
1117
+ color: var(--trees-file-icon-color-bash);
1118
+ }
1119
+ [data-icon-token='biome'] {
1120
+ color: var(--trees-file-icon-color-biome);
1121
+ }
1122
+ [data-icon-token='bootstrap'] {
1123
+ color: var(--trees-file-icon-color-bootstrap);
1124
+ }
1125
+ [data-icon-token='browserslist'] {
1126
+ color: var(--trees-file-icon-color-browserslist);
1127
+ }
1128
+ [data-icon-token='bun'] {
1129
+ color: var(--trees-file-icon-color-bun);
1130
+ }
1131
+ [data-icon-token='claude'] {
1132
+ color: var(--trees-file-icon-color-claude);
1133
+ }
1134
+ [data-icon-token='css'] {
1135
+ color: var(--trees-file-icon-color-css);
1136
+ }
1137
+ [data-icon-token='database'] {
1138
+ color: var(--trees-file-icon-color-database);
1139
+ }
1140
+ [data-icon-token='default'] {
1141
+ color: var(--trees-file-icon-color-default);
1142
+ }
1143
+ [data-icon-token='docker'] {
1144
+ color: var(--trees-file-icon-color-docker);
1145
+ }
1146
+ [data-icon-token='eslint'] {
1147
+ color: var(--trees-file-icon-color-eslint);
1148
+ }
1149
+ [data-icon-token='git'] {
1150
+ color: var(--trees-file-icon-color-git);
1151
+ }
1152
+ [data-icon-token='go'] {
1153
+ color: var(--trees-file-icon-color-go);
1154
+ }
1155
+ [data-icon-token='graphql'] {
1156
+ color: var(--trees-file-icon-color-graphql);
1157
+ }
1158
+ [data-icon-token='html'] {
1159
+ color: var(--trees-file-icon-color-html);
1160
+ }
1161
+ [data-icon-token='image'] {
1162
+ color: var(--trees-file-icon-color-image);
1163
+ }
1164
+ [data-icon-token='javascript'] {
1165
+ color: var(--trees-file-icon-color-javascript);
1166
+ }
1167
+ [data-icon-token='json'] {
1168
+ color: var(--trees-file-icon-color-json);
1169
+ }
1170
+ [data-icon-token='markdown'] {
1171
+ color: var(--trees-file-icon-color-markdown);
1172
+ }
1173
+ [data-icon-token='mcp'] {
1174
+ color: var(--trees-file-icon-color-mcp);
1175
+ }
1176
+ [data-icon-token='npm'] {
1177
+ color: var(--trees-file-icon-color-npm);
1178
+ }
1179
+ [data-icon-token='oxc'] {
1180
+ color: var(--trees-file-icon-color-oxc);
1181
+ }
1182
+ [data-icon-token='postcss'] {
1183
+ color: var(--trees-file-icon-color-postcss);
1184
+ }
1185
+ [data-icon-token='prettier'] {
1186
+ color: var(--trees-file-icon-color-prettier);
1187
+ }
1188
+ [data-icon-token='python'] {
1189
+ color: var(--trees-file-icon-color-python);
1190
+ }
1191
+ [data-icon-token='react'] {
1192
+ color: var(--trees-file-icon-color-react);
1193
+ }
1194
+ [data-icon-token='ruby'] {
1195
+ color: var(--trees-file-icon-color-ruby);
1196
+ }
1197
+ [data-icon-token='rust'] {
1198
+ color: var(--trees-file-icon-color-rust);
1199
+ }
1200
+ [data-icon-token='sass'] {
1201
+ color: var(--trees-file-icon-color-sass);
1202
+ }
1203
+ [data-icon-token='svg'] {
1204
+ color: var(--trees-file-icon-color-svg);
1205
+ }
1206
+ [data-icon-token='svelte'] {
1207
+ color: var(--trees-file-icon-color-svelte);
1208
+ }
1209
+ [data-icon-token='svgo'] {
1210
+ color: var(--trees-file-icon-color-svgo);
1211
+ }
1212
+ [data-icon-token='swift'] {
1213
+ color: var(--trees-file-icon-color-swift);
1214
+ }
1215
+ [data-icon-token='table'] {
1216
+ color: var(--trees-file-icon-color-table);
1217
+ }
1218
+ [data-icon-token='text'] {
1219
+ color: var(--trees-file-icon-color-text);
1220
+ }
1221
+ [data-icon-token='tailwind'] {
1222
+ color: var(--trees-file-icon-color-tailwind);
1223
+ }
1224
+ [data-icon-token='terraform'] {
1225
+ color: var(--trees-file-icon-color-terraform);
1226
+ }
1227
+ [data-icon-token='typescript'] {
1228
+ color: var(--trees-file-icon-color-typescript);
1229
+ }
1230
+ [data-icon-token='vite'] {
1231
+ color: var(--trees-file-icon-color-vite);
1232
+ }
1233
+ [data-icon-token='vscode'] {
1234
+ color: var(--trees-file-icon-color-vscode);
1235
+ }
1236
+ [data-icon-token='vue'] {
1237
+ color: var(--trees-file-icon-color-vue);
1238
+ }
1239
+ [data-icon-token='wasm'] {
1240
+ color: var(--trees-file-icon-color-wasm);
1241
+ }
1242
+ [data-icon-token='webpack'] {
1243
+ color: var(--trees-file-icon-color-webpack);
1244
+ }
1245
+ [data-icon-token='yml'] {
1246
+ color: var(--trees-file-icon-color-yml);
1247
+ }
1248
+ [data-icon-token='zig'] {
1249
+ color: var(--trees-file-icon-color-zig);
1250
+ }
1251
+ [data-icon-token='zip'] {
1252
+ color: var(--trees-file-icon-color-zip);
1253
+ }
1254
+ }
1255
+
1256
+ /* Chevron rotation and visual alignment */
1257
+ /* Chevron pointing down */
1258
+ [data-icon-name='file-tree-icon-chevron'] {
1259
+ &[data-align-capitals='false'] {
1260
+ transform: translate(0, var(--trees-icon-nudge));
1261
+ }
1262
+ &[data-align-capitals='true'] {
1263
+ transform: translate(0, 0);
1264
+ }
1265
+ }
1266
+
1267
+ [data-item-section='content'] {
1268
+ flex: 0 1 auto;
1269
+ text-align: start;
1270
+ min-width: 0;
1271
+ max-width: 100%;
1272
+ overflow: hidden;
1273
+ text-overflow: ellipsis;
1274
+ /* Breaks middle truncate component to also set this */
1275
+ /* white-space: nowrap; */
1276
+ }
1277
+
1278
+ [data-item-section='decoration'] {
1279
+ flex: 1 1 0;
1280
+ min-width: 0;
1281
+ display: flex;
1282
+ justify-content: flex-end;
1283
+ text-align: end;
1284
+ overflow: hidden;
1285
+ color: var(--trees-fg-muted);
1286
+ }
1287
+
1288
+ [data-item-section='decoration'] > span {
1289
+ min-width: 0;
1290
+ max-width: 100%;
1291
+ display: inline-flex;
1292
+ align-items: center;
1293
+ justify-content: flex-end;
1294
+ overflow: hidden;
1295
+ text-overflow: ellipsis;
1296
+ white-space: nowrap;
1297
+ }
1298
+
1299
+ [data-item-section='git'],
1300
+ [data-item-section='action'] {
1301
+ flex: 0 0 auto;
1302
+ display: flex;
1303
+ align-items: center;
1304
+ justify-content: center;
1305
+ }
1306
+
1307
+ [data-item-section='git'] {
1308
+ width: var(--trees-git-lane-width);
1309
+ }
1310
+
1311
+ [data-item-section='action'] {
1312
+ width: var(--trees-action-lane-width);
1313
+ color: var(--trees-fg-muted);
1314
+ fill: currentColor;
1315
+ pointer-events: none;
1316
+ }
1317
+
1318
+ [data-item-section='git'] > span,
1319
+ [data-item-section='action'] > span {
1320
+ width: 100%;
1321
+ display: inline-flex;
1322
+ align-items: center;
1323
+ justify-content: center;
1324
+ }
1325
+
1326
+ [data-item-action-affordance='decorative'] {
1327
+ opacity: 0.85;
1328
+ }
1329
+
1330
+ [data-item-rename-input] {
1331
+ appearance: none;
1332
+ width: 100%;
1333
+ min-width: 0;
1334
+ height: calc(var(--trees-row-height) - 4px);
1335
+ font-family: inherit;
1336
+ font-size: inherit;
1337
+ /* line-height: calc(var(--trees-row-height) - 8px); */
1338
+ color: inherit;
1339
+ background-color: transparent;
1340
+ border: 0;
1341
+ padding-inline: 6px;
1342
+ outline: none;
1343
+ box-sizing: border-box;
1344
+ }
1345
+
1346
+ [data-item-section='content']:has([data-item-rename-input])
1347
+ ~ [data-item-section='action'],
1348
+ [data-item-section='content']:has([data-item-rename-input])
1349
+ ~ [data-item-section='decoration'] {
1350
+ display: none;
1351
+ }
1352
+
1353
+ /* Chevron pointing right */
1354
+ [aria-expanded='false'][data-item-type='folder']
1355
+ > [data-item-section='icon']
1356
+ > [data-icon-name='file-tree-icon-chevron'] {
1357
+ &[data-align-capitals='true'] {
1358
+ transform: rotate(-90deg)
1359
+ translate(
1360
+ calc(var(--trees-icon-nudge) / 2),
1361
+ calc(var(--trees-icon-nudge) / 2)
1362
+ );
1363
+ }
1364
+ &[data-align-capitals='false'] {
1365
+ transform: rotate(-90deg)
1366
+ translate(
1367
+ calc(var(--trees-icon-nudge) / 2 * -1),
1368
+ calc(var(--trees-icon-nudge) / 2)
1369
+ );
1370
+ }
1371
+ }
1372
+
1373
+ /* LIST IDENTATION */
1374
+ /* Spacing container */
1375
+ [data-item-section='spacing'] {
1376
+ display: flex;
1377
+ flex-direction: row;
1378
+ align-items: center;
1379
+ justify-content: center;
1380
+ height: var(--trees-row-height);
1381
+ padding-left: calc(calc(var(--trees-icon-width) / 2) - 0.5px);
1382
+
1383
+ &:empty {
1384
+ padding-left: 0;
1385
+ }
1386
+ }
1387
+
1388
+ /* Spacing per level */
1389
+ [data-item-section='spacing-item'] {
1390
+ transform: translateX(-0.25px);
1391
+ display: inline-block;
1392
+ border-left: 1px solid var(--trees-indent-guide-bg);
1393
+ height: 100%;
1394
+ margin-right: calc(var(--trees-level-gap) - 1px);
1395
+ opacity: 0;
1396
+ transition: opacity 150ms ease;
1397
+
1398
+ & + & {
1399
+ margin-left: calc(
1400
+ var(--trees-item-row-gap) + calc(var(--trees-icon-width) / 2) - 0.5px
1401
+ );
1402
+ }
1403
+ }
1404
+
1405
+ :host(:hover) [data-item-section='spacing-item'] {
1406
+ opacity: 0.75;
1407
+ }
1408
+
1409
+ /* Git status indicator */
1410
+
1411
+ /* This is a folder that contains a git change */
1412
+ [data-item-contains-git-change='true'] > [data-item-section='git'] {
1413
+ color: var(--trees-git-modified-color);
1414
+ opacity: 0.5;
1415
+ fill: currentColor;
1416
+ }
1417
+
1418
+ /* These are files that have a git change */
1419
+ [data-item-git-status] {
1420
+ &
1421
+ > :where([data-item-section='icon'])
1422
+ > :where(:not([data-icon-name='file-tree-icon-chevron'])) {
1423
+ color: var(--trees-item-git-status-color);
1424
+ }
1425
+ & > [data-item-section='content'] {
1426
+ color: var(--trees-item-git-status-color);
1427
+ }
1428
+ & > [data-item-section='git'] {
1429
+ color: var(--trees-item-git-status-color);
1430
+ font-weight: var(--trees-font-weight-semibold);
1431
+ }
1432
+ }
1433
+
1434
+ [data-item-git-status='added'] {
1435
+ --trees-item-git-status-color: var(--trees-git-added-color);
1436
+ }
1437
+
1438
+ [data-item-git-status='deleted'] {
1439
+ --trees-item-git-status-color: var(--trees-git-deleted-color);
1440
+ }
1441
+
1442
+ [data-item-git-status='ignored'] {
1443
+ --trees-item-git-status-color: var(--trees-git-ignored-color);
1444
+
1445
+ & > [data-item-section='icon'] {
1446
+ opacity: 0.5;
1447
+ }
1448
+ }
1449
+
1450
+ [data-item-section='git'] [data-icon-name='file-tree-icon-dot'] {
1451
+ /* this is a nudge to align the dot with the likely lowercase text. it's slightly
1452
+ generalizable, but other fonts are gonna need other nudges i assume */
1453
+ transform: translateY(calc(0.65ex - 50%));
1454
+ }
1455
+
1456
+ [data-item-git-status='modified'] {
1457
+ --trees-item-git-status-color: var(--trees-git-modified-color);
1458
+ }
1459
+
1460
+ [data-item-git-status='renamed'] {
1461
+ --trees-item-git-status-color: var(--trees-git-renamed-color);
1462
+ }
1463
+
1464
+ [data-item-git-status='untracked'] {
1465
+ --trees-item-git-status-color: var(--trees-git-untracked-color);
1466
+ }
1467
+
1468
+ /* Drag and drop */
1469
+ [data-item-drag-target='true'] {
1470
+ background-color: var(--trees-selected-bg);
1471
+ }
1472
+
1473
+ [data-item-dragging='true'] {
1474
+ opacity: 0.5;
1475
+ }
1476
+
1477
+ /* Lock icon for locked paths (sibling of content) */
1478
+ [data-item-section='lock'] {
1479
+ flex: 0 0 auto;
1480
+ margin-left: auto;
1481
+ display: flex;
1482
+ align-items: center;
1483
+ color: var(--trees-fg-muted);
1484
+ }
1485
+ [data-item-section='lock'] svg {
1486
+ display: block;
1487
+ }
1488
+
1489
+ [data-type='header-slot'] {
1490
+ display: block;
1491
+ flex: 0 0 auto;
1492
+ }
1493
+
1494
+ [data-type='context-menu-wash'] {
1495
+ position: absolute;
1496
+ inset: 0;
1497
+ z-index: 3;
1498
+ background-color: transparent;
1499
+ touch-action: none;
1500
+ }
1501
+
1502
+ [data-type='context-menu-anchor'] {
1503
+ position: absolute;
1504
+ top: 0;
1505
+ right: var(--trees-context-menu-trigger-inline-offset);
1506
+ z-index: 4;
1507
+ display: none;
1508
+ align-items: center;
1509
+
1510
+ &[data-visible='true'] {
1511
+ display: flex;
1512
+ }
1513
+ }
1514
+
1515
+ /* Hide the floating trigger while the scroll container is actively moving.
1516
+ * The anchor is positioned against the root, not the scroll content, so its
1517
+ * \`top\` follows the row via a React state update — one frame behind the
1518
+ * compositor. That delay is visible as the trigger hovering over the wrong
1519
+ * row during the first frame of a scroll. The \`data-is-scrolling\` flag on
1520
+ * the root is flipped synchronously on \`wheel\`/\`touchmove\`/\`keydown\` before
1521
+ * the compositor commits the next paint, so this selector hides the anchor
1522
+ * in the same frame the scroll begins. */
1523
+ [data-file-tree-virtualized-root='true'][data-is-scrolling]
1524
+ [data-type='context-menu-anchor'] {
1525
+ display: none;
1526
+ }
1527
+
1528
+ [data-type='context-menu-anchor'] > slot[name='context-menu'] {
1529
+ display: block;
1530
+ width: 0;
1531
+ min-width: 0;
1532
+ flex: 0 0 0;
1533
+ overflow: visible;
1534
+ }
1535
+
1536
+ /* Single floating context menu trigger */
1537
+ [data-type='context-menu-trigger'] {
1538
+ all: unset;
1539
+ align-items: center;
1540
+ justify-content: center;
1541
+ width: var(--trees-action-lane-width);
1542
+ color: var(--trees-fg-muted);
1543
+ fill: currentColor;
1544
+ cursor: pointer;
1545
+ font-family: var(--trees-font-family);
1546
+ font-size: var(--trees-font-size);
1547
+ border-top-right-radius: var(--trees-border-radius);
1548
+ border-bottom-right-radius: var(--trees-border-radius);
1549
+ margin: var(--trees-focus-ring-width);
1550
+ height: calc(var(--trees-row-height) - var(--trees-focus-ring-width) * 2);
1551
+ border-width: 0;
1552
+ transition: color 120ms ease;
1553
+
1554
+ display: flex;
1555
+ }
1556
+
1557
+ [data-type='context-menu-trigger']:hover,
1558
+ [data-type='context-menu-trigger'][aria-expanded='true'] {
1559
+ color: var(--trees-fg);
1560
+ }
1561
+
1562
+ /** @pierre/truncate css here, manually copy pasted for now */
1563
+ [data-truncate-container] {
1564
+ /* CUSTOM TO TREES, TO SUPPORT THE OUTLINE */
1565
+ margin-top: -1px;
1566
+ margin-bottom: -1px;
1567
+
1568
+ /* Width of the fade from default marker to text */
1569
+ --truncate-internal-marker-fade-width: var(
1570
+ --truncate-marker-fade-width,
1571
+ 2px
1572
+ );
1573
+ /* Width of the solid color between the fade from the default marker to the text */
1574
+ --truncate-internal-marker-gap: var(--truncate-marker-gap, 0px);
1575
+ /* Opacity of the marker 'color' property, not of the element itself */
1576
+ --truncate-internal-marker-opacity: var(--truncate-marker-opacity, 50%);
1577
+ /* Opacity of the marker 'color' property specifically for the middle truncate, not opacity of the element itself */
1578
+ --truncate-internal-middle-marker-opacity: var(
1579
+ --truncate-middle-marker-opacity,
1580
+ 80%
1581
+ );
1582
+ /* Background color of the default marker */
1583
+ --truncate-internal-marker-background-color: var(
1584
+ --truncate-marker-background-color,
1585
+ light-dark(white, black)
1586
+ );
1587
+ --truncate-internal-marker-background-overlay-color: var(
1588
+ --truncate-marker-background-overlay-color,
1589
+ transparent
1590
+ );
1591
+ --truncate-internal-marker-block-inset: var(
1592
+ --truncate-marker-block-inset,
1593
+ 0px
1594
+ );
1595
+ /* Duration of the fade out animation for the marker */
1596
+ --truncate-internal-marker-fade-out-duration: var(
1597
+ --truncate-marker-fade-out-duration,
1598
+ 0ms
1599
+ );
1600
+ /* Duration of the fade in animation for the marker */
1601
+ --truncate-internal-marker-fade-in-duration: var(
1602
+ --truncate-marker-fade-in-duration,
1603
+ 100ms
1604
+ );
1605
+
1606
+ /* FADE Variant specifics */
1607
+ --truncate-internal-fade-marker-color: var(
1608
+ --truncate-fade-marker-color,
1609
+ #000
1610
+ );
1611
+ --truncate-internal-fade-marker-width: var(
1612
+ --truncate-fade-marker-width,
1613
+ 0.2lh
1614
+ );
1615
+
1616
+ /*
1617
+ In some special cases people might be adding spacing in other ways
1618
+ that would benefit from being able to override this, however the container
1619
+ query below can't use this and would need to be redeclared with the overridden
1620
+ value. It's a bad time, but better than nothing.
1621
+ */
1622
+ --truncate-internal-single-line-height: 1lh;
1623
+
1624
+ height: var(--truncate-internal-single-line-height);
1625
+ min-width: 0;
1626
+ overflow: hidden;
1627
+ }
1628
+
1629
+ [data-truncate-marker] {
1630
+ display: flex;
1631
+ position: absolute;
1632
+ height: var(--truncate-internal-single-line-height);
1633
+ padding-block: var(--truncate-internal-marker-block-inset);
1634
+ box-sizing: border-box;
1635
+ align-items: center;
1636
+ background-clip: content-box;
1637
+ z-index: 2;
1638
+ color: color-mix(
1639
+ in srgb,
1640
+ currentColor var(--truncate-internal-marker-opacity),
1641
+ transparent
1642
+ );
1643
+
1644
+ /* Core trick for hiding the marker until overflow occurs */
1645
+ opacity: 0;
1646
+ transition: opacity var(--truncate-internal-marker-fade-out-duration)
1647
+ ease-in-out;
1648
+ }
1649
+
1650
+ @container measure (height > 1lh) {
1651
+ [data-truncate-marker] {
1652
+ opacity: 1;
1653
+ transition: opacity var(--truncate-internal-marker-fade-in-duration)
1654
+ ease-in-out;
1655
+ }
1656
+ }
1657
+
1658
+ [data-truncate-grid] {
1659
+ display: grid;
1660
+ position: relative;
1661
+ }
1662
+
1663
+ [data-truncate-content='visible'] {
1664
+ white-space: nowrap;
1665
+ }
1666
+
1667
+ [data-truncate-content='overflow'] {
1668
+ opacity: 0;
1669
+ pointer-events: none;
1670
+ -webkit-user-select: none;
1671
+ user-select: none;
1672
+ word-break: break-all;
1673
+ margin-top: calc(-1 * var(--truncate-internal-single-line-height));
1674
+ }
1675
+
1676
+ [data-truncate-marker-cell] {
1677
+ container: measure / size;
1678
+ overflow: visible;
1679
+ -webkit-user-select: none;
1680
+ user-select: none;
1681
+ pointer-events: none;
1682
+ }
1683
+
1684
+ [data-truncate-container='truncate'] {
1685
+ & [data-truncate-grid] {
1686
+ grid-template-columns: minmax(0, max-content) 0;
1687
+ }
1688
+ & [data-truncate-marker] {
1689
+ right: 0;
1690
+ }
1691
+ & [data-truncate-fade] {
1692
+ margin-right: calc(-2 * var(--truncate-internal-fade-marker-width));
1693
+ }
1694
+ }
1695
+
1696
+ [data-truncate-container='fruncate'] {
1697
+ & [data-truncate-grid] {
1698
+ grid-template-columns: 0 minmax(0, max-content) auto;
1699
+ }
1700
+ & [data-truncate-content] {
1701
+ direction: rtl;
1702
+ }
1703
+ & [data-truncate-content] > span {
1704
+ unicode-bidi: plaintext;
1705
+ }
1706
+ & [data-truncate-fade] {
1707
+ margin-left: calc(-2 * var(--truncate-internal-fade-marker-width));
1708
+ }
1709
+ }
1710
+
1711
+ [data-truncate-variant='default'] {
1712
+ & [data-truncate-marker] {
1713
+ background-color: var(--truncate-internal-marker-background-color);
1714
+ background-image: linear-gradient(
1715
+ var(--truncate-internal-marker-background-overlay-color),
1716
+ var(--truncate-internal-marker-background-overlay-color)
1717
+ );
1718
+ }
1719
+ & [data-truncate-marker]::after,
1720
+ & [data-truncate-marker]::before {
1721
+ content: '';
1722
+ position: absolute;
1723
+ width: calc(
1724
+ var(--truncate-internal-marker-fade-width) +
1725
+ var(--truncate-internal-marker-gap)
1726
+ );
1727
+ inset-block-start: var(--truncate-internal-marker-block-inset);
1728
+ height: max(
1729
+ 0px,
1730
+ calc(
1731
+ var(--truncate-internal-single-line-height) -
1732
+ var(--truncate-internal-marker-block-inset) * 2
1733
+ )
1734
+ );
1735
+ background-color: var(--truncate-internal-marker-background-color);
1736
+ background-image: linear-gradient(
1737
+ var(--truncate-internal-marker-background-overlay-color),
1738
+ var(--truncate-internal-marker-background-overlay-color)
1739
+ );
1740
+ mask-image: linear-gradient(
1741
+ var(--truncate-internal-fade-dir),
1742
+ #000 0%,
1743
+ #000 var(--truncate-internal-marker-gap),
1744
+ transparent 100%
1745
+ );
1746
+ }
1747
+ & [data-truncate-marker]::after {
1748
+ --truncate-internal-fade-dir: to right;
1749
+ right: calc(
1750
+ -1 *
1751
+ (
1752
+ var(--truncate-internal-marker-fade-width) +
1753
+ var(--truncate-internal-marker-gap)
1754
+ )
1755
+ );
1756
+ }
1757
+ & [data-truncate-marker]::before {
1758
+ --truncate-internal-fade-dir: to left;
1759
+ left: calc(
1760
+ -1 *
1761
+ (
1762
+ var(--truncate-internal-marker-fade-width) +
1763
+ var(--truncate-internal-marker-gap)
1764
+ )
1765
+ );
1766
+ }
1767
+ }
1768
+
1769
+ [data-truncate-variant='fade'] {
1770
+ & [data-truncate-marker] {
1771
+ background: transparent;
1772
+ }
1773
+ }
1774
+
1775
+ [data-truncate-fade] {
1776
+ box-shadow:
1777
+ 0 0 calc(var(--truncate-internal-fade-marker-width) / 2)
1778
+ var(--truncate-internal-fade-marker-color),
1779
+ 0 0 var(--truncate-internal-fade-marker-width)
1780
+ var(--truncate-internal-fade-marker-color);
1781
+ width: calc(var(--truncate-internal-fade-marker-width) * 2);
1782
+ height: calc(
1783
+ var(--truncate-internal-single-line-height) -
1784
+ (var(--truncate-internal-fade-marker-width) * 2)
1785
+ );
1786
+ margin: var(--truncate-internal-fade-marker-width) 0;
1787
+ }
1788
+
1789
+ [data-truncate-group-container='middle'] {
1790
+ & [data-truncate-container] {
1791
+ --truncate-marker-opacity: var(--truncate-internal-middle-marker-opacity);
1792
+ }
1793
+
1794
+ display: flex;
1795
+ min-width: 0;
1796
+
1797
+ & > div {
1798
+ min-width: 0;
1799
+ }
1800
+
1801
+ & > div[data-truncate-segment-priority='1'] {
1802
+ flex: 0 1 max-content;
1803
+ }
1804
+ & > div[data-truncate-segment-priority='2'] {
1805
+ flex: 0 999999 max-content;
1806
+ }
1807
+ }
1808
+ }
1809
+ `,Fl=`@layer base, unsafe;`;function Il(e){return`${Fl}
1810
+ @layer base {
1811
+ ${e}
1812
+ }`}function Ll(e){return`${Fl}
1813
+ @layer unsafe {
1814
+ ${e}
1815
+ }`}var Rl=new WeakMap;function zl(e){let t=Rl.get(e);if(t!=null)return t;let n=document.createElement(`div`);n.setAttribute(oc,`true`);let r=document.createElement(`div`);r.style.position=`relative`,r.style.height=`200%`,n.appendChild(r),e.appendChild(n);let i=Math.max(n.offsetWidth-n.clientWidth,0);return n.remove(),Rl.set(e,i),i}function Bl(e,t){if(!e.isConnected)return;let n=zl(t);if(n==null)return;let r=t.querySelector(`style[${sc}]`),i=r instanceof HTMLStyleElement?r:document.createElement(`style`);r instanceof HTMLStyleElement||(i.setAttribute(sc,``),t.appendChild(i)),i.textContent=`:host { ${cc}: ${n}px; }`}var Vl;function Hl(e){if(typeof CSSStyleSheet<`u`&&typeof CSSStyleSheet.prototype.replaceSync==`function`&&`adoptedStyleSheets`in e){Vl??(Vl=new CSSStyleSheet,Vl.replaceSync(Il(Pl)));let t=!1;try{e.adoptedStyleSheets=[Vl],t=!0}catch{}if(t){e.querySelector(`style[${ic}]`)?.remove();return}}if(e.querySelector(`style[data-file-tree-style]`)==null){let t=document.createElement(`style`);t.setAttribute(ic,``),t.textContent=Il(Pl),e.prepend(t)}}function Ul(e,t){Wl(e,t),Hl(t),Bl(e,t)}function Wl(e,t){let n=e.querySelector(`template[shadowrootmode="open"], template[data-file-tree-shadowrootmode="open"]`);n instanceof HTMLTemplateElement&&(t.childNodes.length>0||(t.appendChild(n.content.cloneNode(!0)),n.hasAttribute(`shadowrootmode`)&&n.remove()))}if(typeof HTMLElement<`u`&&customElements.get(`file-tree-container`)==null){class e extends HTMLElement{constructor(){super()}connectedCallback(){let e=this.shadowRoot??this.attachShadow({mode:`open`});Ul(this,e)}}if(customElements.define(rc,e),typeof document<`u`)for(let e of Array.from(document.querySelectorAll(rc)))e instanceof HTMLElement&&Ul(e,e.shadowRoot??e.attachShadow({mode:`open`}))}var Gl=5,Kl=1<<Gl,ql=Kl*4;function Jl(){return{childIdByNameId:new Map,childIds:[],childPositionById:new Map,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Yl(){return{childIdByNameId:null,childIds:[],childPositionById:null,childVisibleChunkSums:null,totalChildSubtreeNodeCount:0,totalChildVisibleSubtreeCount:0}}function Xl(e,t){if(t.childIdByNameId!=null)return t.childIdByNameId;let n=new Map;for(let r of t.childIds){let t=e[r];t!=null&&n.set(t.nameId,r)}return t.childIdByNameId=n,n}function Zl(e){if(e.childPositionById!=null)return e.childPositionById;let t=new Map;for(let n=0;n<e.childIds.length;n++){let r=e.childIds[n];r!=null&&t.set(r,n)}return e.childPositionById=t,t}function Ql(e,t){e.childPositionById!=null&&e.childPositionById.set(t,e.childIds.length),e.childIds.push(t)}function $l(e,t){if(e.childPositionById!=null)for(let n=t;n<e.childIds.length;n++){let t=e.childIds[n];t!=null&&e.childPositionById.set(t,n)}}function eu(e,t){let n=0,r=0;for(let i of t.childIds){let t=e[i];t!=null&&(n+=t.subtreeNodeCount,r+=t.visibleSubtreeCount)}t.totalChildSubtreeNodeCount=n,t.totalChildVisibleSubtreeCount=r,iu(e,t)}function tu(e,t,n,r){if(e.totalChildSubtreeNodeCount+=n,e.totalChildVisibleSubtreeCount+=r,e.childVisibleChunkSums==null||r===0)return;let i=Zl(e).get(t);if(i===void 0)return;let a=i>>Gl;e.childVisibleChunkSums[a]+=r}function nu(e,t,n){let r=t.childVisibleChunkSums;if(r!=null){let i=n,a=0;for(let o of r){if(i<o){let r=au(e,t,a,i);return{...r,childVisibleIndex:n-r.localVisibleIndex}}i-=o,a+=Kl}throw Error(`Visible child index ${String(n)} is out of range`)}let i=n;for(let r=0;r<t.childIds.length;r++){let a=t.childIds[r];if(a==null)continue;let o=e[a];if(o!=null){if(i<o.visibleSubtreeCount)return{childIndex:r,childVisibleIndex:n-i,localVisibleIndex:i};i-=o.visibleSubtreeCount}}throw Error(`Visible child index ${String(n)} is out of range`)}function ru(e,t,n){let r=0,i=t.childVisibleChunkSums,a=0;if(i!=null){let e=n>>Gl;for(let t=0;t<e;t+=1)r+=i[t]??0;a=e<<Gl}for(let i=a;i<n;i+=1){let n=t.childIds[i];if(n==null)continue;let a=e[n];a!=null&&(r+=a.visibleSubtreeCount)}return r}function iu(e,t){if(t.childIds.length<ql){t.childVisibleChunkSums=null;return}let n=Math.ceil(t.childIds.length/Kl),r=new Int32Array(n);for(let n=0;n<t.childIds.length;n++){let i=t.childIds[n];if(i==null)continue;let a=e[i];a!=null&&(r[n>>Gl]+=a.visibleSubtreeCount)}t.childVisibleChunkSums=r}function au(e,t,n,r){let i=Math.min(t.childIds.length,n+Kl),a=r;for(let r=n;r<i;r++){let n=t.childIds[r];if(n==null)continue;let i=e[n];if(i!=null){if(a<i.visibleSubtreeCount)return{childIndex:r,localVisibleIndex:a};a-=i.visibleSubtreeCount}}throw Error(`Visible child index ${String(r)} is out of range`)}var ou=7,su=3,cu=1<<su,lu=4;function uu(e,t,n=0){return e<<lu|n<<su|t}function du(e){return e.depthAndFlags>>>lu}function fu(e){return(e.depthAndFlags&cu)>>su}function J(e){return(e.depthAndFlags&cu)!==0}function pu(e){return e.depthAndFlags&ou}function mu(e,t){return(pu(e)&t)!==0}function hu(e,t){e.depthAndFlags|=t}function gu(e,t){e.depthAndFlags=uu(t,pu(e),fu(e))}var _u=Symbol(`benchmarkInstrumentation`);function vu(e,t){return t==null||Object.defineProperty(e,_u,{configurable:!0,enumerable:!1,value:t,writable:!1}),e}function yu(e){return e==null?null:e[_u]??null}function Y(e,t,n){return e==null?n():e.measurePhase(t,n)}function bu(e,t,n){!Number.isFinite(n)||e==null||e.setCounter(t,n)}function xu(e){return e>=48&&e<=57}function Su(e){let t=[],n=0,r=0;for(;r<e.length;){for(;r<e.length&&!xu(e.charCodeAt(r));)r+=1;if(r>=e.length)break;r>n&&t.push(e.slice(n,r));let i=0;for(;r<e.length&&xu(e.charCodeAt(r));)i=i*10+(e.charCodeAt(r)-48),r+=1;t.push(i),n=r}return(n<e.length||t.length===0)&&t.push(e.slice(n)),t}function Cu(e){let t=e.toLowerCase();return{lowerValue:t,tokens:Su(t)}}function wu(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++){let n=e[r],i=t[r];if(n===i)continue;if(typeof n==`number`&&typeof i==`number`)return n<i?-1:1;let a=String(n),o=String(i);if(a!==o)return a<o?-1:1}return e.length===t.length?0:e.length<t.length?-1:1}function Tu(e,t){if(e.tokens.length===1&&t.tokens.length===1&&typeof e.tokens[0]==`string`&&typeof t.tokens[0]==`string`)return e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1;let n=wu(e.tokens,t.tokens);return n===0?e.lowerValue===t.lowerValue?0:e.lowerValue<t.lowerValue?-1:1:n}function Eu(e,t,n){let r=Tu(n(e),n(t));return r===0?e===t?0:e<t?-1:1:r}function Du(e,t){return Eu(e,t,Cu)}function Ou(e,t){return t===e.segments.length-1?+!!e.isDirectory:1}function ku(e,t){let n=Math.min(e.segments.length,t.segments.length);for(let r=0;r<n;r++){let n=e.segments[r],i=t.segments[r];if(n===i)continue;let a=Ou(e,r);return a===Ou(t,r)?Du(n,i):a===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function Au(e,t){return ku(e,t)}function ju(e,t,n){let r=e=>{let t=n.get(e);if(t!=null)return t;let r=Cu(e);return n.set(e,r),r},i=Math.min(e.segments.length,t.segments.length);for(let n=0;n<i;n++){let i=e.segments[n],a=t.segments[n];if(i===a)continue;let o=Ou(e,n);return o===Ou(t,n)?Eu(i,a,r):o===1?-1:1}return e.segments.length===t.segments.length?e.isDirectory===t.isDirectory?0:e.isDirectory?-1:1:e.segments.length<t.segments.length?-1:1}function Mu(e,t){let n=e.sortKeyById[t];if(n!==void 0)return n;let r=e.valueById[t],i=Cu(r);return e.sortKeyById[t]=i,i}function Nu(e={}){return{flattenEmptyDirectories:e.flattenEmptyDirectories!==!1,sort:e.sort??`default`}}function Pu(e){let t=e.length>0&&e.charCodeAt(e.length-1)===47,n=t?e.length-1:e.length,r=[],i=0;for(let t=0;t<n;t++)e.charCodeAt(t)===47&&(r.push(e.slice(i,t)),i=t+1);return r.push(e.slice(i,n)),{hasTrailingSlash:t,segments:r}}function Fu(e){let{hasTrailingSlash:t,segments:n}=Pu(e);return{basename:n[n.length-1]??``,isDirectory:t,path:e,segments:n}}function Iu(e){if(e.length===0)return{requiresDirectory:!1,segments:[]};let{hasTrailingSlash:t,segments:n}=Pu(e);return{requiresDirectory:t,segments:n}}var Lu=``;function Ru(){let e=new Map;return e.set(Lu,0),{idByValue:e,valueById:[Lu],sortKeyById:[Cu(Lu)]}}function zu(e,t){let n=e.idByValue.get(t);if(n!==void 0)return n;let r=e.valueById.length;return e.idByValue.set(t,r),e.valueById.push(t),r}function Bu(e,t){let n=e.valueById[t];if(n===void 0)throw Error(`Unknown segment ID: ${String(t)}`);return n}var Vu=Symbol(`pathStorePreparedInputKind`);function Hu(e,t){return e[Vu]=t,e}function Uu(e){return{basename:e.basename,depth:e.segments.length,isDirectory:e.isDirectory,path:e.path,segments:e.segments}}function Wu(e,t,n){return n===`default`?Au(e,t):n(Uu(e),Uu(t))}function Gu(){return{depthAndFlags:uu(0,3,1),nameId:0,parentId:0,subtreeNodeCount:1,visibleSubtreeCount:1}}function Ku(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++)if(e[r]!==t[r])return r;return n}function qu(e){return e.isDirectory?e.segments.length:e.segments.length-1}function Ju(e){return Array.isArray(e)&&e.every(e=>typeof e==`object`&&!!e&&typeof e.path==`string`&&Array.isArray(e.segments)&&typeof e.basename==`string`&&typeof e.isDirectory==`boolean`)}function Yu(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function Xu(e,t={}){return nd(e,t).map(e=>e.path)}function Zu(e,t={}){let n=nd(e,t);return Hu({paths:n.map(e=>e.path),preparedPaths:n},`prepared`)}function Qu(e){let t=e.length,n=!1;for(let r=0;r<t;r+=1){let t=e[r];if(t.length>0&&t.charCodeAt(t.length-1)===47){n=!0;break}}return Hu({paths:e,presortedPaths:e,presortedPathsContainDirectories:n},`presorted`)}function $u(e){let t=e,n=t.preparedPaths;if(t[Vu]===`prepared`&&n!=null)return n;if(!Ju(n))throw Error(`preparedInput must come from PathStore.prepareInput()`);return n}function ed(e){let t=e;return t[Vu]===`presorted`&&t.presortedPaths!=null||Yu(t.presortedPaths)?t.presortedPaths:null}function td(e){let t=e;return typeof t.presortedPathsContainDirectories==`boolean`?t.presortedPathsContainDirectories:null}function nd(e,t={}){let n=Nu(t),r=yu(t);bu(r,`workload.inputFiles`,e.length);let i=Y(r,`store.preparePathEntries.parse`,()=>e.map(e=>Fu(e)));return Y(r,`store.preparePathEntries.sort`,()=>i.sort((e,t)=>Wu(e,t,n.sort))),i}var rd=class{directories=new Map;directoryStack=[0];presortedDirectoryNodeIds=[];initialExpandedPathSet;createdDirectoriesAllExpanded=!1;createdDirectoryCount=0;lastPreparedPath=null;nodes=[Gu()];options;instrumentation;segmentSortKeyCache=new Map;segmentTable=Ru();hasDeferredDirectoryIndexes=!1;constructor(e={}){this.instrumentation=yu(e),this.options=Nu(e);let t=e.initialExpandedPaths??null;if(t==null||t.length===0)this.initialExpandedPathSet=null;else{let e=new Set,n=t.length;for(let r=0;r<n;r+=1){let n=t[r],i=n.length;e.add(i>0&&n.charCodeAt(i-1)===47?n.slice(0,i-1):n)}this.initialExpandedPathSet=e,this.createdDirectoriesAllExpanded=!0}this.directories.set(0,Jl())}appendPaths(e){return Y(this.instrumentation,`store.builder.appendPaths.parse`,()=>this.appendPreparedPaths(e.map(e=>Fu(e))))}appendPreparedPaths(e,t=!0){return this.createdDirectoriesAllExpanded=!1,Y(this.instrumentation,`store.builder.appendPreparedPaths`,()=>{for(let n of e)this.appendPreparedPath(n,t)}),this}appendPresortedPaths(e,t=null){return Y(this.instrumentation,`store.builder.appendPresortedPaths`,()=>{if(t===!1){this.appendPresortedFilePaths(e);return}this.createdDirectoriesAllExpanded=!1;let n=null,r=0,i=this.nodes,a=this.segmentTable,o=a.idByValue,s=a.valueById,c=this.directoryStack,l=0,u=``,d=0;for(let t of e){if(n===t)throw Error(`Duplicate path: "${t}"`);let e=t.length>0&&t.charCodeAt(t.length-1)===47,a=e?t.length-1:t.length,f=0,p=0;if(n!=null)if(u.length>0&&t.length>u.length&&t.startsWith(u))f=d,p=u.length;else{let r=Math.min(a,n.length),i=!0;for(let e=0;e<r;e++){let r=t.charCodeAt(e);if(r!==n.charCodeAt(e)){i=!1;break}r===47&&(f++,p=e+1)}i&&e&&r===a&&n.length>a&&n.charCodeAt(a)===47&&(f++,p=a+1)}l=f,r=f;let m=p,h=t.indexOf(`/`,m);for(;h>=0&&h<a;){let e=c[l];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);r++;let n=t.slice(m,h),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n));let u=i.length;i.push({depthAndFlags:uu(r,0,1),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(t.slice(0,h)),l++,c[l]=u,m=h+1,h=t.indexOf(`/`,m)}if(e){if(m<a){let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory parent for "${t}"`);r++;let n=t.slice(m,a),u=o.get(n);u===void 0&&(u=s.length,o.set(n,u),s.push(n));let d=i.length;i.push({depthAndFlags:uu(r,0,1),nameId:u,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),l++,c[l]=d}let e=c[l];if(e===void 0)throw Error(`Unable to resolve directory node for "${t}"`);this.promoteDirectoryToExplicit(e,t)}else{let e=c[l];if(e===void 0)throw Error(`Unable to resolve file parent for "${t}"`);let n=t.slice(m),a=o.get(n);a===void 0&&(a=s.length,o.set(n,a),s.push(n)),i.push({depthAndFlags:uu(r+1,0),nameId:a,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1})}m!==u.length&&(u=t.substring(0,m),d=r),n=t}c.length=l+1,n!=null&&(this.lastPreparedPath=Fu(n)),this.hasDeferredDirectoryIndexes=!0}),this}appendPresortedFilePaths(e){let t=null,n=0,r=this.nodes,i=this.segmentTable,a=i.idByValue,o=i.valueById,s=this.directoryStack,c=0,l=``,u=0;for(let i of e){if(t===i)throw Error(`Duplicate path: "${i}"`);let e=i.length,d=0,f=0;if(t!=null)if(l.length>0&&i.length>l.length&&i.startsWith(l))d=u,f=l.length;else{let n=Math.min(e,t.length);for(let e=0;e<n;e++){let n=i.charCodeAt(e);if(n!==t.charCodeAt(e))break;n===47&&(d++,f=e+1)}}c=d,n=d;let p=f,m=i.indexOf(`/`,p);for(;m>=0;){let e=s[c];if(e===void 0)throw Error(`Directory stack underflow while building the path store`);n++;let t=i.slice(p,m),l=a.get(t);l===void 0&&(l=o.length,a.set(t,l),o.push(t));let u=r.length;r.push({depthAndFlags:uu(n,0,1),nameId:l,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),this.recordCreatedDirectoryPath(i.slice(0,m)),this.presortedDirectoryNodeIds.push(u),c++,s[c]=u,p=m+1,m=i.indexOf(`/`,p)}let h=s[c];if(h===void 0)throw Error(`Unable to resolve file parent for "${i}"`);let g=i.slice(p),_=a.get(g);_===void 0&&(_=o.length,a.set(g,_),o.push(g)),r.push({depthAndFlags:uu(n+1,0),nameId:_,parentId:h,subtreeNodeCount:1,visibleSubtreeCount:1}),p!==l.length&&(l=i.substring(0,p),u=n),t=i}s.length=c+1,t!=null&&(this.lastPreparedPath=Fu(t)),this.hasDeferredDirectoryIndexes=!0}finish(e={}){let t=e.skipSubtreeCountPass===!0;return this.hasDeferredDirectoryIndexes?(Y(this.instrumentation,`store.builder.buildDirectoryIndexes`,()=>this.buildPresortedFinish(t)),this.hasDeferredDirectoryIndexes=!1):t||Y(this.instrumentation,`store.builder.computeSubtreeCounts`,()=>this.computeSubtreeCounts(0)),{directories:this.directories,nodes:this.nodes,options:this.options,rootId:0,segmentTable:this.segmentTable,presortedDirectoryNodeIds:this.presortedDirectoryNodeIds.length>0?this.presortedDirectoryNodeIds:null}}didMatchAllInitialExpandedPaths(){return this.createdDirectoriesAllExpanded&&this.initialExpandedPathSet!=null&&this.createdDirectoryCount===this.initialExpandedPathSet.size}appendPreparedPath(e,t){if(this.hasDeferredDirectoryIndexes&&=(this.buildDirectoryIndexes(),!1),this.lastPreparedPath!=null){if(e.path===this.lastPreparedPath.path)throw Error(`Duplicate path: "${e.path}"`);if(t&&(this.options.sort===`default`?ju(this.lastPreparedPath,e,this.segmentSortKeyCache):Wu(this.lastPreparedPath,e,this.options.sort))>0)throw Error(`Builder input must be sorted before appendPaths(): "${e.path}"`)}let n=this.lastPreparedPath,r=qu(e),i=n==null?0:qu(n),a=n==null?0:Ku(n.segments,e.segments),o=Math.min(a,r,i);this.directoryStack.length=o+1;for(let n=o;n<r;n++){let r=this.directoryStack[this.directoryStack.length-1];if(r===void 0)throw Error(`Directory stack underflow while building the path store`);let i=t?this.getOrCreateDirectoryChild(r,e.segments[n]):this.createDirectoryChild(r,e.segments[n]);this.directoryStack.push(i)}if(e.isDirectory){let t=this.directoryStack[this.directoryStack.length-1];if(t===void 0)throw Error(`Unable to resolve directory node for "${e.path}"`);this.promoteDirectoryToExplicit(t,e.path),this.lastPreparedPath=e;return}let s=this.directoryStack[this.directoryStack.length-1];if(s===void 0)throw Error(`Unable to resolve file parent for "${e.path}"`);t?this.createFileChild(s,e.basename,e.path):this.createFileChildUnchecked(s,e.basename),this.lastPreparedPath=e}recordCreatedDirectoryPath(e){!this.createdDirectoriesAllExpanded||this.initialExpandedPathSet==null||(this.createdDirectoryCount+=1,this.initialExpandedPathSet.has(e)||(this.createdDirectoriesAllExpanded=!1))}createFileChild(e,t,n){let r=zu(this.segmentTable,t),i=this.getDirectoryIndex(e),a=i.childIdByNameId;if(a!=null&&a.get(r)!==void 0)throw Error(`Path collides with an existing entry: "${n}"`);let o=this.nodes[e];if(o===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let s=this.nodes.length;return this.nodes.push({depthAndFlags:uu(du(o)+1,0),nameId:r,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),a?.set(r,s),Ql(i,s),s}createFileChildUnchecked(e,t){let n=zu(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:uu(du(i)+1,0),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ql(r,a),a}getOrCreateDirectoryChild(e,t){let n=zu(this.segmentTable,t),r=this.getDirectoryIndex(e);if(r.childIdByNameId!=null){let e=r.childIdByNameId.get(n);if(e!==void 0){let n=this.nodes[e];if(n!=null&&!J(n))throw Error(`Path collides with an existing file while creating directory "${t}"`);return e}}let i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:uu(du(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ql(r,a),this.directories.set(a,Jl()),a}createDirectoryChild(e,t){let n=zu(this.segmentTable,t),r=this.getDirectoryIndex(e),i=this.nodes[e];if(i===void 0)throw Error(`Unknown parent node ID: ${String(e)}`);let a=this.nodes.length;return this.nodes.push({depthAndFlags:uu(du(i)+1,0,1),nameId:n,parentId:e,subtreeNodeCount:1,visibleSubtreeCount:1}),r.childIdByNameId!=null&&r.childIdByNameId.set(n,a),Ql(r,a),this.directories.set(a,Jl()),a}promoteDirectoryToExplicit(e,t){let n=this.nodes[e];if(n===void 0)throw Error(`Unknown directory node ID: ${String(e)}`);if(!J(n))throw Error(`Path is not a directory: "${t}"`);if(mu(n,1))throw Error(`Duplicate path: "${t}"`);hu(n,1)}getDirectoryIndex(e){let t=this.directories.get(e);if(t!==void 0)return t;throw Error(`Unknown directory child index for node ${String(e)}`)}buildPresortedFinish(e){let t=this.nodes,n=this.directories;n.set(0,Yl());let r=-1,i=null;for(let e=1;e<t.length;e++){let a=t[e];if(a==null)continue;if(J(a)){let t=Yl();n.set(e,t),r=e,i=t}let o;a.parentId===r?o=i:(o=n.get(a.parentId),r=a.parentId,i=o??null),o?.childIds.push(e)}if(!e)for(let e=t.length-1;e>=1;e--){let n=t[e];if(n==null)continue;let r=t[n.parentId];r!=null&&(r.subtreeNodeCount+=n.subtreeNodeCount,r.visibleSubtreeCount+=n.visibleSubtreeCount)}}buildDirectoryIndexes(){let e=this.nodes;for(let t=1;t<e.length;t++){let n=e[t];if(n==null)continue;J(n)&&this.directories.set(t,Jl());let r=this.directories.get(n.parentId);r!=null&&(r.childIdByNameId!=null&&r.childIdByNameId.set(n.nameId,t),Ql(r,t))}}computeSubtreeCounts(e){let t=this.nodes[e];if(t===void 0)throw Error(`Unknown node ID: ${String(e)}`);if(!J(t))return t.subtreeNodeCount=1,t.visibleSubtreeCount=1,1;let n=this.getDirectoryIndex(e),r=1;for(let e of n.childIds)r+=this.computeSubtreeCounts(e);return eu(this.nodes,n),t.subtreeNodeCount=r,t.visibleSubtreeCount=r,r}};function id(e,t=`closed`,n=null){let r=od(t);return{activeNodeCount:e.nodes.length-1,collapsedDirectoryIds:new Set,collapseNewDirectoriesByDefault:!1,defaultExpansion:r,directoriesOpenByDefault:r===`open`,hasCollapsedDirectoryOverrides:!1,directoryLoadInfoById:new Map,expandedDirectoryIds:new Set,instrumentation:n,listeners:new Map,pathCacheByNodeId:new Map([[e.rootId,{path:``,version:0}]]),pathCacheVersion:0,snapshot:e,transactionStack:[]}}function ad(){return{affectedAncestorIds:new Set,affectedNodeIds:new Set,events:[]}}function od(e){if(typeof e!=`number`)return e;if(!Number.isInteger(e)||e<0)throw Error(`initialExpansion must be "open", "closed", or a non-negative integer depth. Received: ${String(e)}`);return e}function sd(e,t){return mu(t,2)||e.defaultExpansion===`open`?!0:e.defaultExpansion===`closed`?!1:du(t)<=e.defaultExpansion}function cd(e,t,n=e.snapshot.nodes[t]){return n==null||!J(n)?!1:e.directoriesOpenByDefault&&!e.hasCollapsedDirectoryOverrides?!0:e.collapsedDirectoryIds.has(t)?!1:e.expandedDirectoryIds.has(t)?!0:sd(e,n)}function ld(e,t,n,r=e.snapshot.nodes[t]){if(r==null||!J(r))return;let i=sd(e,r);if(n){if(i){e.collapsedDirectoryIds.delete(t),e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0;return}e.expandedDirectoryIds.add(t);return}if(i){e.collapsedDirectoryIds.add(t),e.hasCollapsedDirectoryOverrides=!0;return}e.expandedDirectoryIds.delete(t)}function ud(e,t){let n=e.directoryLoadInfoById.get(t);if(n!=null)return n;let r={activeAttemptId:null,errorMessage:null,nextAttemptId:1,state:`loaded`};return e.directoryLoadInfoById.set(t,r),r}function dd(e,t){return e.directoryLoadInfoById.get(t)?.state??`loaded`}function fd(e,t){let n=ud(e,t);if(n.state===`loading`&&n.activeAttemptId!=null)return{attemptId:n.activeAttemptId,nodeId:t,reused:!0};let r=n.nextAttemptId;return n.activeAttemptId=r,n.errorMessage=null,n.nextAttemptId+=1,n.state=`loading`,{attemptId:r,nodeId:t,reused:!1}}function pd(e,t){let n=ud(e,t);n.activeAttemptId=null,n.errorMessage=null,n.state=`unloaded`}function md(e,t,n){let r=e.directoryLoadInfoById.get(t);return r==null||r.activeAttemptId!==n?!1:(r.activeAttemptId=null,r.errorMessage=null,r.state=`loaded`,!0)}function hd(e,t,n){return e.directoryLoadInfoById.get(t)?.activeAttemptId===n}function gd(e,t,n,r){let i=e.directoryLoadInfoById.get(t);return i==null||i.activeAttemptId!==n?!1:(i.activeAttemptId=null,i.errorMessage=r??null,i.state=`error`,!0)}function _d(e,t){e.directoryLoadInfoById.delete(t)}function vd(e,t,n){let r=n,i=e.listeners.get(t);return i==null?e.listeners.set(t,new Set([r])):i.add(r),()=>{let n=e.listeners.get(t);n!=null&&(n.delete(r),n.size===0&&e.listeners.delete(t))}}function yd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`add`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function bd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,operation:`remove`,path:e.path,projectionChanged:e.projectionChanged,recursive:e.recursive,visibleCountDelta:null}}function xd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!0,from:e.from,operation:`move`,projectionChanged:e.projectionChanged,to:e.to,visibleCountDelta:null}}function Sd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`expand`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function Cd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`collapse`,path:e.path,projectionChanged:!0,visibleCountDelta:null}}function wd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],canonicalChanged:!1,operation:`mark-directory-unloaded`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Td(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`begin-child-load`,path:e.path,projectionChanged:e.projectionChanged,reused:e.reused,visibleCountDelta:null}}function Ed(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:e.childEvents.some(e=>e.canonicalChanged),childEvents:e.childEvents,operation:`apply-child-patch`,path:e.path,projectionChanged:e.projectionChanged,visibleCountDelta:null}}function Dd(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,operation:`complete-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function Od(e){return{affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],attemptId:e.attemptId,canonicalChanged:!1,errorMessage:e.errorMessage,operation:`fail-child-load`,path:e.path,projectionChanged:e.projectionChanged,stale:e.stale,visibleCountDelta:null}}function kd(e){return{activeNodeCountAfter:e.activeNodeCountAfter,activeNodeCountBefore:e.activeNodeCountBefore,affectedAncestorIds:e.affectedAncestorIds??[],affectedNodeIds:e.affectedNodeIds??[],cachedPathEntryCountAfter:e.cachedPathEntryCountAfter,cachedPathEntryCountBefore:e.cachedPathEntryCountBefore,canonicalChanged:!1,idsPreserved:e.idsPreserved,loadInfoEntryCountAfter:e.loadInfoEntryCountAfter,loadInfoEntryCountBefore:e.loadInfoEntryCountBefore,mode:e.mode,operation:`cleanup`,projectionChanged:e.projectionChanged,reclaimedCachedPathEntryCount:e.reclaimedCachedPathEntryCount,reclaimedLoadInfoEntryCount:e.reclaimedLoadInfoEntryCount,reclaimedNodeSlotCount:e.reclaimedNodeSlotCount,reclaimedSegmentCount:e.reclaimedSegmentCount,segmentCountAfter:e.segmentCountAfter,segmentCountBefore:e.segmentCountBefore,totalNodeSlotCountAfter:e.totalNodeSlotCountAfter,totalNodeSlotCountBefore:e.totalNodeSlotCountBefore,visibleCountDelta:null}}function Ad(e,t,n){return{...n,visibleCountDelta:Vd(e)-t}}function jd(e,t){let n=Vd(e),r=ad();e.transactionStack.push(r);try{t()}catch(t){throw Pd(e,r,!1),t}Pd(e,r,!0,Vd(e)-n)}function Md(e,t){let n=e.instrumentation;if(n==null){Nd(e,t);return}Y(n,`store.events.record`,()=>Nd(e,t))}function Nd(e,t){let n=e.transactionStack[e.transactionStack.length-1]??null;if(n==null){zd(e,t);return}n.events.push(t),Rd(n,t)}function Pd(e,t,n,r=null){if(e.transactionStack.pop()!==t)throw Error(`Transaction stack underflow`);if(!n)return;let i=e.transactionStack[e.transactionStack.length-1]??null;if(i!=null){let n=e.instrumentation;n==null?Ld(i,t):Y(n,`store.events.batch.merge`,()=>Ld(i,t));return}let a=Fd(t,r),o=e.instrumentation;if(o==null){zd(e,a);return}Y(o,`store.events.batch.commit`,()=>zd(e,a))}function Fd(e,t){return{affectedAncestorIds:[...e.affectedAncestorIds],affectedNodeIds:[...e.affectedNodeIds],canonicalChanged:e.events.some(e=>e.canonicalChanged),events:[...e.events],operation:`batch`,projectionChanged:e.events.some(e=>e.projectionChanged),visibleCountDelta:t}}function Id(e,t){for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n);for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n)}function Ld(e,t){for(let n of t.events)e.events.push(n);Id(e,t)}function Rd(e,t){for(let n of t.affectedNodeIds)e.affectedNodeIds.add(n);for(let n of t.affectedAncestorIds)e.affectedAncestorIds.add(n)}function zd(e,t){let n=e.instrumentation;if(n==null){Bd(e,t);return}Y(n,`store.events.emit`,()=>Bd(e,t))}function Bd(e,t){e.listeners.get(t.operation)?.forEach(e=>e(t)),e.listeners.get(`*`)?.forEach(e=>e(t))}function Vd(e){return e.snapshot.nodes[e.snapshot.rootId]?.visibleSubtreeCount??0}function Hd(e,t){if(e.snapshot.options.flattenEmptyDirectories!==!0)return null;let n=e.snapshot.nodes[t];if(n==null||!J(n)||mu(n,2))return null;let r=e.snapshot.directories.get(t);if(r==null||r.childIds.length!==1)return null;let i=r.childIds[0];if(i==null)return null;let a=e.snapshot.nodes[i];return a==null||!J(a)?null:i}function Ud(e,t){let n=t;for(;;){let t=Hd(e,n);if(t==null)return n;n=t}}function Wd(e,t){let n=[t],r=t;for(;;){let t=Hd(e,r);if(t==null)return n;n.push(t),r=t}}function Gd(e,t){let n=t==null?e.snapshot.rootId:tf(e,t);return n==null?[]:af(e,n)}function Kd(e,t){let n=Fu(t),r=n.isDirectory?n.segments:n.segments.slice(0,-1),i=bf(e,yf(e,r)),{createdNodeIds:a,directoryId:o}=of(e,r),s=new Set(a),c=o;if(n.isDirectory){let n=X(e,o);if(mu(n,1))throw Error(`Path already exists: "${t}"`);hu(n,1),e.pathCacheByNodeId.set(o,{path:t,version:e.pathCacheVersion}),s.add(o)}else c=cf(e,o,n.basename),s.add(c);Qd(e,o);let l=bf(e,o);return yd({affectedAncestorIds:ef(e,c),affectedNodeIds:[...s],path:t,projectionChanged:xf(i,l)})}function qd(e,t,n){let r=tf(e,t);if(r==null)throw Error(`Path does not exist: "${t}"`);let i=X(e,r);if(mu(i,2))throw Error(`The root node cannot be removed`);if(J(i)&&rf(e,r).childIds.length>0&&n.recursive!==!0)throw Error(`Cannot remove a non-empty directory without recursive: "${t}"`);let a=i.parentId,o=bf(e,a),s=_f(e,r);df(e,a,r,i.nameId),vf(e,a),Qd(e,a);let c=bf(e,a);return bd({affectedAncestorIds:ef(e,a),affectedNodeIds:s,path:t,projectionChanged:xf(o,c),recursive:n.recursive===!0})}function Jd(e,t,n,r){let i=tf(e,t);if(i==null)throw Error(`Source path does not exist: "${t}"`);let a=X(e,i);if(mu(a,2))throw Error(`The root node cannot be moved`);let o=r.collision??`error`,s=hf(e,i,n),c=bf(e,a.parentId),l=bf(e,s.parentId),u=Bu(e.snapshot.segmentTable,a.nameId),d=zu(e.snapshot.segmentTable,s.basename);if(s.parentId===a.parentId&&u===s.basename)return null;if(J(a)&&Tf(e,i,s.parentId))throw Error(`Cannot move a directory into one of its descendants`);let f=Xl(e.snapshot.nodes,rf(e,s.parentId)).get(d),p=s.existingNodeId??f??null;if(p!=null&&p!==i&&gf(e,p,o,fu(a))===`skip`)return null;let m=a.parentId;df(e,m,i,a.nameId),a.parentId=s.parentId,a.nameId=d,e.pathCacheByNodeId.delete(i),wf(e,i),uf(e,s.parentId,i),vf(e,m),e.pathCacheVersion++,Qd(e,m),s.parentId!==m&&Qd(e,s.parentId);let h=bf(e,m),g=bf(e,s.parentId);return xd({affectedAncestorIds:[...new Set([...ef(e,m),...ef(e,s.parentId)])],affectedNodeIds:[i],from:t,projectionChanged:Sf([c,l],[h,g]),to:Zd(e,i)})}function Yd(e,t){let n=e.pathCacheByNodeId.get(t);return n!=null&&n.version===e.pathCacheVersion?n.path:null}function Xd(e,t,n){return e.pathCacheByNodeId.set(t,{path:n,version:e.pathCacheVersion}),n}function Zd(e,t){let n=X(e,t),r=Yd(e,t);if(r!=null)return r;if(mu(n,2))return Xd(e,t,``);let i=Zd(e,n.parentId),a=Bu(e.snapshot.segmentTable,n.nameId),o=i.length===0?a:`${i}${a}`;return Xd(e,t,J(n)?`${o}/`:o)}function Qd(e,t){let n=e.instrumentation;if(n==null){Df(e,t);return}Y(n,`store.recomputeCountsUpwardFrom`,()=>Df(e,t))}function $d(e,t){let n=[[t,0]],{nodes:r,directories:i}=e.snapshot;for(;n.length>0;){let t=n[n.length-1],a=t[0],o=r[a];if(o==null||!J(o)){Ef(e,a,o,!0),n.pop();continue}let s=i.get(a);if(s==null||t[1]>=s.childIds.length){Ef(e,a,o,!0),n.pop();continue}let c=s.childIds[t[1]++];n.push([c,0])}}function ef(e,t){let n=[],r=t;for(;r!=null;){let t=X(e,r);if(n.push(r),r===e.snapshot.rootId)break;r=t.parentId}return n}function tf(e,t){if(t.length===0)return e.snapshot.rootId;let n=Iu(t);return nf(e,n.segments,n.requiresDirectory)}function nf(e,t,n){let r=e.snapshot.rootId;for(let n of t){let t=e.snapshot.segmentTable.idByValue.get(n);if(t===void 0)return null;let i=rf(e,r),a=Xl(e.snapshot.nodes,i).get(t);if(a===void 0)return null;r=a}let i=X(e,r);return n&&!J(i)?null:r}function rf(e,t){let n=e.snapshot.directories.get(t);if(n===void 0)throw Error(`Unknown directory child index for node ${String(t)}`);return n}function X(e,t){let n=e.snapshot.nodes[t];if(n===void 0||mu(n,4))throw Error(`Unknown node ID: ${String(t)}`);return n}function af(e,t){let n=e.snapshot.nodes[t];if(n===void 0||mu(n,4))return[];if(!J(n))return[Zd(e,t)];if(rf(e,t).childIds.length===0)return mu(n,1)&&!mu(n,2)?[Zd(e,t)]:[];let r=[],i=[{childIndex:0,nodeId:t}];for(;i.length>0;){let t=i[i.length-1];if(t==null)break;let n=e.snapshot.nodes[t.nodeId];if(n===void 0||mu(n,4)){i.pop();continue}if(!J(n)){r.push(Zd(e,t.nodeId)),i.pop();continue}let a=rf(e,t.nodeId);if(a.childIds.length===0){mu(n,1)&&!mu(n,2)&&r.push(Zd(e,t.nodeId)),i.pop();continue}let o=a.childIds[t.childIndex];if(o==null){i.pop();continue}t.childIndex++,i.push({childIndex:0,nodeId:o})}return r}function of(e,t){let n=[],r=e.snapshot.rootId;for(let i of t){let t=zu(e.snapshot.segmentTable,i),a=rf(e,r),o=Xl(e.snapshot.nodes,a).get(t);if(o!==void 0){if(!J(X(e,o)))throw Error(`Cannot create a directory that collides with an existing file: "${i}"`);r=o;continue}r=sf(e,r,t),n.push(r)}return{createdNodeIds:n,directoryId:r}}function sf(e,t,n){let r=X(e,t),i=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:uu(du(r)+1,0,1),nameId:n,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),e.snapshot.directories.set(i,Jl()),uf(e,t,i),e.collapseNewDirectoriesByDefault&&(e.collapsedDirectoryIds.add(i),e.hasCollapsedDirectoryOverrides=!0),e.activeNodeCount++,i}function cf(e,t,n){let r=zu(e.snapshot.segmentTable,n),i=rf(e,t);if(Xl(e.snapshot.nodes,i).has(r))throw Error(`Path already exists: "${kf(e,t,n)}"`);let a=X(e,t),o=e.snapshot.nodes.length;return e.snapshot.nodes.push({depthAndFlags:uu(du(a)+1,0),nameId:r,parentId:t,subtreeNodeCount:1,visibleSubtreeCount:1}),uf(e,t,o),e.activeNodeCount++,o}function lf(e,t,n){let r=0,i=t.childIds.length;for(;r<i;){let a=r+i>>>1,o=t.childIds[a];if(o==null){i=a;continue}ff(e,n,o)<0?i=a:r=a+1}return r}function uf(e,t,n){let r=rf(e,t),i=X(e,n);Xl(e.snapshot.nodes,r).set(i.nameId,n),tu(r,n,i.subtreeNodeCount,i.visibleSubtreeCount);let a=lf(e,r,n);r.childIds.splice(a,0,n),$l(r,a),iu(e.snapshot.nodes,r)}function df(e,t,n,r){let i=rf(e,t),a=Zl(i),o=a.get(n)??-1;Xl(e.snapshot.nodes,i).delete(r),a.delete(n);let s=e.snapshot.nodes[n];s!=null&&tu(i,n,-s.subtreeNodeCount,-s.visibleSubtreeCount),o>=0&&(i.childIds.splice(o,1),$l(i,o),iu(e.snapshot.nodes,i))}function ff(e,t,n){let r=e.snapshot.options.sort;return r===`default`?pf(e,t,n):r(mf(e,t),mf(e,n))}function pf(e,t,n){let r=X(e,t),i=X(e,n),a=J(r);if(a!==J(i))return a?-1:1;let o=Tu(Mu(e.snapshot.segmentTable,r.nameId),Mu(e.snapshot.segmentTable,i.nameId));if(o!==0)return o;let s=Bu(e.snapshot.segmentTable,r.nameId),c=Bu(e.snapshot.segmentTable,i.nameId);return s===c?t<n?-1:1:s<c?-1:1}function mf(e,t){let n=X(e,t),r=Zd(e,t),i=J(n),a=i?r.slice(0,-1):r;return{basename:Bu(e.snapshot.segmentTable,n.nameId),depth:du(n),isDirectory:i,path:r,segments:a.length===0?[]:a.split(`/`)}}function hf(e,t,n){let r=X(e,t),i=tf(e,n);if(i!=null){let t=X(e,i);if(J(t))return{basename:Bu(e.snapshot.segmentTable,r.nameId),existingNodeId:null,parentId:i};let a=Iu(n).segments;return{basename:a[a.length-1]??``,existingNodeId:i,parentId:t.parentId}}let a=Iu(n),o=a.segments[a.segments.length-1]??``,s=a.segments.slice(0,-1),c=s.length===0?e.snapshot.rootId:nf(e,s,!0);if(c==null)throw Error(`Destination parent does not exist: "${n}"`);return{basename:o,existingNodeId:null,parentId:c}}function gf(e,t,n,r){if(n===`skip`)return`skip`;if(n===`error`)throw Error(`Destination already exists: "${Zd(e,t)}"`);let i=X(e,t);if(fu(i)!==r)throw Error(`replace collision requires the same source and destination kinds`);if(J(i)&&rf(e,t).childIds.length>0)throw Error(`replace collision does not support non-empty directories`);let a=i.parentId,o=i.nameId;return _f(e,t),df(e,a,t,o),vf(e,a),Qd(e,a),`handled`}function _f(e,t){let n=[],r=[{nodeId:t,visitedChildren:!1}];for(;r.length>0;){let t=r.pop();if(t==null)break;let i=X(e,t.nodeId);if(t.visitedChildren||!J(i)){J(i)&&e.snapshot.directories.delete(t.nodeId),hu(i,4),e.pathCacheByNodeId.delete(t.nodeId),e.collapsedDirectoryIds.delete(t.nodeId)&&(e.hasCollapsedDirectoryOverrides=e.collapsedDirectoryIds.size>0),e.expandedDirectoryIds.delete(t.nodeId),_d(e,t.nodeId),e.activeNodeCount--,n.push(t.nodeId);continue}r.push({nodeId:t.nodeId,visitedChildren:!0});let a=rf(e,t.nodeId);for(let e=a.childIds.length-1;e>=0;e--){let t=a.childIds[e];t!=null&&r.push({nodeId:t,visitedChildren:!1})}}return n}function vf(e,t){let n=t;for(;n!=null;){let t=X(e,n);if(!J(t)||mu(t,2)||rf(e,n).childIds.length>0)return;hu(t,1),n=t.parentId===n?null:t.parentId}}function yf(e,t){let n=e.snapshot.rootId;for(let r of t){let t=e.snapshot.segmentTable.idByValue.get(r);if(t==null)break;let i=Xl(e.snapshot.nodes,rf(e,n)).get(t);if(i==null||!J(X(e,i)))break;n=i}return n}function bf(e,t){let n=Cf(e,t);if(n==null)return null;let r=Ud(e,n),i=X(e,r),a=n===r?null:Wd(e,n).map(t=>Zd(e,t));return JSON.stringify({flattenedSegmentPaths:a,hasChildren:rf(e,r).childIds.length>0,path:Zd(e,r),terminalKind:fu(i)})}function xf(e,t){return Sf([e],[t])}function Sf(e,t){for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(r==null||i==null||r!==i)return!0}return!1}function Cf(e,t){let n=t;for(;n!=null;){let t=X(e,n);if(!J(t)||mu(t,2))return null;if(!cd(e,n,t))return n;n=t.parentId}return null}function wf(e,t){let n=X(e,t);if(gu(n,(t===e.snapshot.rootId?-1:du(X(e,n.parentId)))+1),!J(n))return;let r=rf(e,t);for(let t of r.childIds)wf(e,t)}function Tf(e,t,n){let r=n;for(;r!=null;){if(r===t)return!0;let n=X(e,r);if(r===e.snapshot.rootId)return!1;r=n.parentId}return!1}function Ef(e,t,n=X(e,t),r=!1){let i=e.instrumentation;if(i==null){Of(e,t,n,r);return}Y(i,`store.recomputeNodeCounts`,()=>Of(e,t,n,r))}function Df(e,t){let n=t;for(;n!=null;){let t=X(e,n),r=t.subtreeNodeCount,i=t.visibleSubtreeCount;if(Ef(e,n,t),n===e.snapshot.rootId)return;let a=t.subtreeNodeCount-r,o=t.visibleSubtreeCount-i,s=t.parentId;(a!==0||o!==0)&&tu(rf(e,s),n,a,o),n=s}}function Of(e,t,n,r){if(!J(n)){n.subtreeNodeCount=1,n.visibleSubtreeCount=1;return}let i=rf(e,t);if(r){let t=e.instrumentation;t==null?eu(e.snapshot.nodes,i):Y(t,`store.recomputeNodeCounts.rebuildChildAggregates`,()=>eu(e.snapshot.nodes,i))}let a=1+i.totalChildSubtreeNodeCount,o=i.totalChildVisibleSubtreeCount;if(n.subtreeNodeCount=a,mu(n,2)){n.visibleSubtreeCount=o;return}n.visibleSubtreeCount=Hd(e,t)==null?cd(e,t,n)?1+o:1:o}function kf(e,t,n){let r=Zd(e,t);return r.length===0?n:`${r}${n}`}function Af(e){return e!=null&&!mu(e,4)}function jf(e,t){let n=e.snapshot.nodes[t];return!Af(n)||!J(n)||mu(n,2)?null:n}function Mf(e){let t=0;for(let[n,r]of e.pathCacheByNodeId)r.version===e.pathCacheVersion&&Af(e.snapshot.nodes[n])&&(t+=1);return t}function Nf(e){return Math.max(0,e.valueById.length-1)}function Pf(e){return{activeNodeCount:e.activeNodeCount,cachedPathEntryCount:Mf(e),loadInfoEntryCount:e.directoryLoadInfoById.size,segmentCount:Nf(e.snapshot.segmentTable),totalNodeSlotCount:Math.max(0,e.snapshot.nodes.length-1)}}function Ff(e,t,n,r){return{activeNodeCountAfter:r.activeNodeCount,activeNodeCountBefore:n.activeNodeCount,cachedPathEntryCountAfter:r.cachedPathEntryCount,cachedPathEntryCountBefore:n.cachedPathEntryCount,idsPreserved:t,loadInfoEntryCountAfter:r.loadInfoEntryCount,loadInfoEntryCountBefore:n.loadInfoEntryCount,mode:e,reclaimedCachedPathEntryCount:n.cachedPathEntryCount-r.cachedPathEntryCount,reclaimedLoadInfoEntryCount:n.loadInfoEntryCount-r.loadInfoEntryCount,reclaimedNodeSlotCount:n.totalNodeSlotCount-r.totalNodeSlotCount,reclaimedSegmentCount:n.segmentCount-r.segmentCount,segmentCountAfter:r.segmentCount,segmentCountBefore:n.segmentCount,totalNodeSlotCountAfter:r.totalNodeSlotCount,totalNodeSlotCountBefore:n.totalNodeSlotCount}}function If(e){let t=[],n=[];for(let n of e.collapsedDirectoryIds)jf(e,n)!=null&&t.push(Zd(e,n));for(let t of e.expandedDirectoryIds)jf(e,t)!=null&&n.push(Zd(e,t));return{collapsedPaths:t,expandedPaths:n}}function Lf(e){let t=[];for(let[n,r]of e.directoryLoadInfoById)jf(e,n)==null||dd(e,n)===`loaded`||t.push({info:{activeAttemptId:null,errorMessage:r.errorMessage,nextAttemptId:r.nextAttemptId,state:r.state},path:Zd(e,n)});return t}function Rf(e,t){e.collapsedDirectoryIds.clear(),e.hasCollapsedDirectoryOverrides=!1,e.expandedDirectoryIds.clear();for(let n of t.expandedPaths){let t=tf(e,n);t!=null&&ld(e,t,!0,X(e,t))}for(let n of t.collapsedPaths){let t=tf(e,n);t!=null&&ld(e,t,!1,X(e,t))}}function zf(e,t){e.directoryLoadInfoById.clear();for(let n of t){let t=tf(e,n.path);t!=null&&jf(e,t)!=null&&e.directoryLoadInfoById.set(t,{activeAttemptId:null,errorMessage:n.info.errorMessage,nextAttemptId:n.info.nextAttemptId,state:n.info.state})}}function Bf(e){e.pathCacheVersion+=1,e.pathCacheByNodeId.clear(),e.pathCacheByNodeId.set(e.snapshot.rootId,{path:``,version:e.pathCacheVersion})}function Vf(e){let t=e.snapshot.segmentTable,n=Ru();for(let r of e.snapshot.nodes)if(Af(r)){if(mu(r,2)){r.nameId=0;continue}r.nameId=zu(n,Bu(t,r.nameId))}e.snapshot.segmentTable=n}function Hf(e){for(let[t,n]of e.snapshot.directories){let r=e.snapshot.nodes[t];if(!Af(r)||!J(r)){e.snapshot.directories.delete(t);continue}let i=n.childIds.filter(n=>{let r=e.snapshot.nodes[n];return Af(r)&&r.parentId===t});n.childIds=i,n.childIdByNameId=new Map(i.map(t=>[X(e,t).nameId,t])),n.childPositionById=new Map(i.map((e,t)=>[e,t])),eu(e.snapshot.nodes,n)}}function Uf(e){let t=e.snapshot.nodes.length-1;for(;t>e.snapshot.rootId;){let n=e.snapshot.nodes[t];if(Af(n))break;--t}e.snapshot.nodes.length=t+1}function Wf(e){let t=If(e),n=Lf(e);Y(e.instrumentation,`store.cleanup.stable.clearPathCaches`,()=>Bf(e)),Y(e.instrumentation,`store.cleanup.stable.rebuildSegmentTable`,()=>Vf(e)),Y(e.instrumentation,`store.cleanup.stable.rebuildDirectoryIndexes`,()=>Hf(e)),Y(e.instrumentation,`store.cleanup.stable.trimTrailingRemovedNodeSlots`,()=>Uf(e)),Y(e.instrumentation,`store.cleanup.stable.restoreExpansionOverrides`,()=>Rf(e,t)),Y(e.instrumentation,`store.cleanup.stable.restoreDirectoryLoadInfos`,()=>zf(e,n)),Y(e.instrumentation,`store.cleanup.stable.recomputeCounts`,()=>$d(e,e.snapshot.rootId))}function Gf(e){let t=If(e),n=Lf(e),r=Y(e.instrumentation,`store.cleanup.aggressive.listPaths`,()=>Gd(e)),i=vu({...e.snapshot.options},e.instrumentation),a=Y(e.instrumentation,`store.cleanup.aggressive.rebuildSnapshot`,()=>{let e=new rd(i);return e.appendPaths(r),e.finish()});e.snapshot=a,e.activeNodeCount=a.nodes.length-1,e.pathCacheByNodeId=new Map([[a.rootId,{path:``,version:0}]]),e.pathCacheVersion=0,Y(e.instrumentation,`store.cleanup.aggressive.restoreExpansionOverrides`,()=>Rf(e,t)),Y(e.instrumentation,`store.cleanup.aggressive.restoreDirectoryLoadInfos`,()=>zf(e,n)),Y(e.instrumentation,`store.cleanup.aggressive.recomputeCounts`,()=>$d(e,e.snapshot.rootId))}function Kf(e){for(let t of e.directoryLoadInfoById.values())if(t.state===`loading`&&t.activeAttemptId!=null)return!0;return!1}function qf(e,t){let n=Pf(e);t===`stable`?Y(e.instrumentation,`store.cleanup.stable`,()=>Wf(e)):Y(e.instrumentation,`store.cleanup.aggressive`,()=>Gf(e));let r=Pf(e);return Ff(t,t===`stable`,n,r)}var Jf=64;function Yf(e,t){let n=t+2;if(n<=e.length)return e;let r=e.length;for(;r<n;)r*=2;let i=new Int32Array(r);return i.fill(-1),i.set(e),i}function Xf(e){return X(e,e.snapshot.rootId).visibleSubtreeCount}function Zf(e,t,n,r){let i=X(e,t.terminalNodeId),a=Math.max(1,i.visibleSubtreeCount);return Math.min(r-1,n+a-1)}function Qf(e,t,n,r){return{ancestorPaths:r,index:t.index,posInSet:t.posInSet,row:_p(e,t.cursor),setSize:t.setSize,subtreeEndIndex:Zf(e,t.cursor,t.index,n)}}function $f(e,t,n,r,i,a){let o=rf(e,t),{childIndex:s,childVisibleIndex:c,localVisibleIndex:l}=nu(e.snapshot.nodes,o,n),u=o.childIds[s];if(u==null)throw Error(`Visible index ${String(n)} is out of range`);return ep(e,u,l,r+c,i+1,s,o.childIds.length,a)}function ep(e,t,n,r,i,a,o,s){if(!J(X(e,t))){if(n===0)return{ancestors:s,cursor:{headNodeId:t,terminalNodeId:t,visibleDepth:i},index:r,posInSet:a,setSize:o};throw Error(`Visible index ${String(n)} is out of range for file`)}let c=dp(e,t,i);if(n===0)return{ancestors:s,cursor:c,index:r,posInSet:a,setSize:o};let l=X(e,c.terminalNodeId);if(!J(l)||!cd(e,c.terminalNodeId,l))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return $f(e,c.terminalNodeId,n-1,r+1,c.visibleDepth,[...s,{cursor:c,index:r,posInSet:a,setSize:o}])}function tp(e,t){let n=Xf(e);if(t<0||t>=n)return null;let r=$f(e,e.snapshot.rootId,t,0,-1,[]),i=r.ancestors.map(t=>Zd(e,t.cursor.terminalNodeId)),a=null;return{ancestorPaths:i,get ancestorRows(){if(a!=null)return a;let t=[],i=[];for(let a of r.ancestors){let r=Qf(e,a,n,[...i]);t.push(r),i.push(r.row.path)}return a=t,a},index:r.index,posInSet:r.posInSet,row:_p(e,r.cursor),setSize:r.setSize,subtreeEndIndex:Zf(e,r.cursor,r.index,n)}}function np(e,t,n){let r=e.instrumentation,i=Xf(e);if(i<=0||n<t)return[];let a=Math.max(0,Math.min(t,i-1)),o=Math.max(a,Math.min(n,i-1));if(r==null){if(a===0)return gp(e,o+1);let t=[],n=cp(e,a);for(let r=a;r<=o&&n!=null;r++){let r=_p(e,n);t.push(r),n=pp(e,n)}return t}let s=[],c=0,l=0,u=Y(r,`store.getVisibleSlice.selectFirstRow`,()=>cp(e,a));for(let t=a;t<=o&&u!=null;t++){let t=Y(r,`store.getVisibleSlice.materializeRow`,()=>_p(e,u));s.push(t),t.isFlattened&&(c++,l+=t.flattenedSegments?.length??0),u=Y(r,`store.getVisibleSlice.advanceCursor`,()=>pp(e,u))}return bu(r,`workload.visibleRowsRead`,s.length),bu(r,`workload.flattenedRowsRead`,c),bu(r,`workload.flattenedSegmentsRead`,l),s}function rp(e,t=Xf(e)){let n=e.instrumentation;return n==null?hp(e,t):Y(n,`store.getVisibleTreeProjection`,()=>hp(e,t))}function ip(e){return mp(rp(e))}function ap(e,t){let n=tf(e,t);if(n==null||n===e.snapshot.rootId||J(X(e,n))&&Ud(e,n)!==n)return null;let r=0,i=n,{nodes:a,rootId:o}=e.snapshot;for(;i!==o;){let t=X(e,i).parentId,n=rf(e,t),s=Zl(n).get(i);if(s==null)throw Error(`Child ${String(i)} was not found in its parent index`);if(r+=ru(a,n,s),t!==o){let n=X(e,t),a=Hd(e,t);if(!cd(e,t,n)&&a!==i)return null;Ud(e,t)===t&&(r+=1)}i=t}return r}function op(e,t){let n=tf(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=X(e,n);if(!J(r))throw Error(`Path is not a directory: "${t}"`);return cd(e,n,r)?null:(ld(e,n,!0,r),Qd(e,n),Sd({affectedAncestorIds:ef(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0}))}function sp(e,t){let n=tf(e,t);if(n==null)throw Error(`Path does not exist: "${t}"`);let r=X(e,n);if(!J(r))throw Error(`Path is not a directory: "${t}"`);return cd(e,n,r)?(ld(e,n,!1,r),Qd(e,n),Cd({affectedAncestorIds:ef(e,n),affectedNodeIds:[n],path:t,projectionChanged:!0})):null}function cp(e,t){return t<0||t>=Xf(e)?null:lp(e,e.snapshot.rootId,t,-1)}function lp(e,t,n,r){let i=rf(e,t),a=e.instrumentation,{childIndex:o,localVisibleIndex:s}=a==null?nu(e.snapshot.nodes,i,n):Y(a,`store.getVisibleSlice.selectChildIndex`,()=>nu(e.snapshot.nodes,i,n)),c=i.childIds[o];if(c!=null)return up(e,c,s,r+1);throw Error(`Visible index ${String(n)} is out of range`)}function up(e,t,n,r){if(!J(X(e,t))){if(n===0)return{headNodeId:t,terminalNodeId:t,visibleDepth:r};throw Error(`Visible index ${String(n)} is out of range for file`)}let i=dp(e,t,r);if(n===0)return i;let a=X(e,i.terminalNodeId);if(!J(a)||!cd(e,i.terminalNodeId,a))throw Error(`Visible index ${String(n)} is out of range for collapsed directory`);return lp(e,i.terminalNodeId,n-1,i.visibleDepth)}function dp(e,t,n){return J(X(e,t))?e.instrumentation==null?{headNodeId:t,terminalNodeId:Ud(e,t),visibleDepth:n}:{headNodeId:t,terminalNodeId:Y(e.instrumentation,`store.getVisibleSlice.flatten.resolveTerminalDirectory`,()=>Ud(e,t)),visibleDepth:n}:{headNodeId:t,terminalNodeId:t,visibleDepth:n}}function fp(e,t){let n=X(e,t);if(!J(n))return!0;let r=n.parentId;return r===e.snapshot.rootId?!0:Hd(e,r)!==t}function pp(e,t){let n=X(e,t.terminalNodeId);if(J(n)){let r=rf(e,t.terminalNodeId);if(cd(e,t.terminalNodeId,n)&&r.childIds.length>0){let n=r.childIds[0];return n==null?null:up(e,n,0,t.visibleDepth+1)}}let r=t.terminalNodeId,i=t.visibleDepth;for(;;){let t=X(e,r);if(r===e.snapshot.rootId)return null;let n=t.parentId,a=rf(e,n),o=Zl(a).get(r)??-1;if(o<0)throw Error(`Child ${String(r)} was not found in its parent index`);let s=a.childIds[o+1]??null;if(s!=null)return up(e,s,0,i);fp(e,r)&&i--,r=n}}function mp(e){let t=e.paths.length,n=Array(t);for(let r=0;r<t;r+=1){let t=e.getParentIndex(r);n[r]={index:r,parentPath:t>=0?e.paths[t]??null:null,path:e.paths[r]??``,posInSet:e.posInSetByIndex[r]??0,setSize:e.setSizeByIndex[r]??0}}return{getParentIndex:e.getParentIndex,rows:n,get visibleIndexByPath(){return e.visibleIndexByPath}}}function hp(e,t){let n=Array(t),r=new Int32Array(t),i=new Int32Array(t),a=new Int32Array(t),o=new Int32Array(Jf);o.fill(-1);let s=0,{nodes:c,directories:l,segmentTable:u}=e.snapshot,d=[[l.get(e.snapshot.rootId),0,-1,``]],f=e.snapshot.options.flattenEmptyDirectories,p=e.pathCacheByNodeId,m=e.pathCacheVersion,h=u.valueById;for(;d.length>0&&s<t;){let t=d[d.length-1],u=t[0];if(t[1]>=u.childIds.length){d.pop();continue}let g=t[1],_=u.childIds[t[1]++],v=c[_],y=t[2]+1,b=t[3];o=Yf(o,y);let x,S=_;if(J(v))S=f?Ud(e,_):_,x=S===_?`${b}${h[v.nameId]}/`:Zd(e,S);else{let e=p.get(_);x=e!=null&&e.version===m?e.path:`${b}${h[v.nameId]}`}r[s]=o[y],n[s]=x,i[s]=g,a[s]=u.childIds.length,o[y+1]=s,s+=1;let C=c[S];C!=null&&J(C)&&cd(e,S,C)&&d.push([l.get(S),0,y,x])}s<t&&(n.length=s);let g=r.subarray(0,s),_=i.subarray(0,s),v=a.subarray(0,s),y=null;return{getParentIndex(e){return e<0||e>=s?-1:g[e]??-1},paths:n,posInSetByIndex:_,setSizeByIndex:v,get visibleIndexByPath(){if(y==null){y=new Map;for(let e=0;e<s;e+=1)y.set(n[e]??``,e)}return y}}}function gp(e,t){let n=Array(t),r=0,{nodes:i,directories:a,segmentTable:o}=e.snapshot,s=[[a.get(e.snapshot.rootId),0,-1]],c=o.valueById,l=e.snapshot.options.flattenEmptyDirectories,u=e.pathCacheByNodeId,d=e.pathCacheVersion;for(;s.length>0&&r<t;){let t=s[s.length-1],o=t[0];if(t[1]>=o.childIds.length){s.pop();continue}let f=o.childIds[t[1]++],p=i[f],m=t[2]+1;if(!J(p)){let t=u.get(f);n[r++]={depth:m,flattenedSegments:void 0,hasChildren:!1,id:f,isExpanded:!1,isFlattened:!1,isLoading:!1,kind:`file`,loadState:void 0,name:c[p.nameId],path:t!=null&&t.version===d?t.path:Zd(e,f)};continue}let h=l?Ud(e,f):f,g={headNodeId:f,terminalNodeId:h,visibleDepth:m};n[r++]=_p(e,g);let _=i[h];_!=null&&J(_)&&cd(e,h,_)&&s.push([a.get(h),0,m])}return r<t&&(n.length=r),n}function _p(e,t){let n=X(e,t.terminalNodeId),r=J(n)?vp(e,t):null,i=Zd(e,t.terminalNodeId),a=Bu(e.snapshot.segmentTable,n.nameId),o=J(n)&&rf(e,t.terminalNodeId).childIds.length>0,s=t.headNodeId!==t.terminalNodeId,c=e.instrumentation,l=s?c==null?Wd(e,t.headNodeId).map(n=>{let r=X(e,n);return{isTerminal:n===t.terminalNodeId,name:Bu(e.snapshot.segmentTable,r.nameId),nodeId:n,path:Zd(e,n)}}):Y(c,`store.getVisibleSlice.flatten.collectSegments`,()=>Wd(e,t.headNodeId).map(n=>{let r=X(e,n);return{isTerminal:n===t.terminalNodeId,name:Bu(e.snapshot.segmentTable,r.nameId),nodeId:n,path:Zd(e,n)}})):void 0;return{depth:t.visibleDepth,flattenedSegments:l,hasChildren:o,id:t.terminalNodeId,isExpanded:J(n)&&cd(e,t.terminalNodeId,n),isFlattened:s,isLoading:r===`loading`,kind:J(n)?`directory`:`file`,loadState:r==null||r===`loaded`?void 0:r,name:a,path:i}}function vp(e,t){if(t.headNodeId===t.terminalNodeId)return dd(e,t.terminalNodeId);let n=Wd(e,t.headNodeId),r=!1,i=!1;for(let t of n){let n=dd(e,t);if(n===`loading`)return`loading`;if(n===`error`){i=!0;continue}n===`unloaded`&&(r=!0)}return i?`error`:r?`unloaded`:`loaded`}function yp(e){let{directories:t,nodes:n,options:r,rootId:i,presortedDirectoryNodeIds:a}=e.snapshot,o=r.flattenEmptyDirectories===!0,s=e=>{let r=n[e];if(r==null||!J(r))return;let i=t.get(e);if(i==null)throw Error(`Unknown directory child index for node ${String(e)}`);let a=i.childIds,s=a.length,c=0,l=0;for(let e=0;e<s;e++){let t=a[e];if(t==null)continue;let r=n[t];c+=r.subtreeNodeCount,l+=r.visibleSubtreeCount}i.totalChildSubtreeNodeCount=c,i.totalChildVisibleSubtreeCount=l,s>=128&&iu(n,i),r.subtreeNodeCount=1+c;let u;if(o&&s===1){let e=n[a[0]];u=e!=null&&J(e)?l:1+l}else u=1+l;r.visibleSubtreeCount=u};if(a!=null)for(let e=a.length-1;e>=0;e--)s(a[e]);else for(let e=n.length-1;e>=1;e--)s(e);let c=n[i],l=t.get(i);if(c==null||l==null)return;let u=l.childIds,d=0,f=0;for(let e=0;e<u.length;e++){let t=u[e];if(t==null)continue;let r=n[t];d+=r.subtreeNodeCount,f+=r.visibleSubtreeCount}l.totalChildSubtreeNodeCount=d,l.totalChildVisibleSubtreeCount=f,iu(n,l),c.subtreeNodeCount=1+d,c.visibleSubtreeCount=f}function bp(e){return e.initialExpansion===`open`&&(e.initialExpandedPaths==null||e.initialExpandedPaths.length===0)}var xp=class e{#e;constructor(e={}){let t=yu(e),n=Y(t,`store.builder.create`,()=>new rd(e));if(e.preparedInput!=null){let t=ed(e.preparedInput);t==null?n.appendPreparedPaths($u(e.preparedInput),!1):n.appendPresortedPaths(t,td(e.preparedInput))}else{let r=e.paths??[];e.presorted===!0?n.appendPaths(r):n.appendPreparedPaths(Y(t,`store.preparePathEntries`,()=>nd(r,e)))}let r=Y(t,`store.builder.finish`,()=>n.finish({skipSubtreeCountPass:!0})),i=Y(t,`store.state.detectAllDirectoriesExpanded`,()=>(e.initialExpansion??`closed`)===`closed`&&n.didMatchAllInitialExpandedPaths());this.#e=Y(t,`store.state.create`,()=>id(r,i?`open`:e.initialExpansion??`closed`,t)),i&&(this.#e.collapseNewDirectoriesByDefault=!0);let a=i?this.#e.snapshot.directories.size-1:Y(t,`store.state.initializeExpandedPaths`,()=>this.initializeExpandedPaths(e.initialExpandedPaths));i||bp(e)||(e.initialExpansion??`closed`)===`closed`&&a===this.#e.snapshot.directories.size-1||(e.initialExpandedPaths?.length??0)>0&&Y(t,`store.state.checkAllDirectoriesExpanded`,()=>this.hasAllDirectoriesExpanded())?Y(t,`store.state.initializeOpenVisibleCounts`,()=>yp(this.#e)):Y(t,`store.state.recomputeCounts`,()=>$d(this.#e,this.#e.snapshot.rootId))}static preparePaths(e,t={}){return Xu(e,t)}static prepareInput(e,t={}){return Zu(e,t)}static preparePresortedInput(e){return Qu(e)}list(e){return Y(this.#e.instrumentation,`store.list`,()=>Gd(this.#e,e))}add(e){Y(this.#e.instrumentation,`store.add`,()=>{let t=Xf(this.#e);Md(this.#e,Ad(this.#e,t,Kd(this.#e,e)))})}remove(e,t={}){Y(this.#e.instrumentation,`store.remove`,()=>{let n=Xf(this.#e);Md(this.#e,Ad(this.#e,n,qd(this.#e,e,t)))})}move(e,t,n={}){Y(this.#e.instrumentation,`store.move`,()=>{let r=Xf(this.#e),i=Jd(this.#e,e,t,n);i!=null&&Md(this.#e,Ad(this.#e,r,i))})}batch(e){jd(this.#e,()=>{if(typeof e==`function`){e(this);return}for(let t of e)switch(t.type){case`add`:this.add(t.path);break;case`remove`:this.remove(t.path,{recursive:t.recursive});break;case`move`:this.move(t.from,t.to,{collision:t.collision});break}})}getVisibleCount(){return Y(this.#e.instrumentation,`store.getVisibleCount`,()=>Xf(this.#e))}getVisibleSlice(e,t){return Y(this.#e.instrumentation,`store.getVisibleSlice`,()=>np(this.#e,e,t))}getVisibleRowContext(e){return Y(this.#e.instrumentation,`store.getVisibleRowContext`,()=>tp(this.#e,e))}getVisibleTreeProjection(){return ip(this.#e)}getVisibleTreeProjectionData(e){return rp(this.#e,e)}getVisibleIndex(e){return Y(this.#e.instrumentation,`store.getVisibleIndex`,()=>ap(this.#e,e))}getPathInfo(e){return Y(this.#e.instrumentation,`store.getPathInfo`,()=>{let t=tf(this.#e,e);if(t==null)return null;let n=X(this.#e,t);return{depth:du(n),kind:J(n)?`directory`:`file`,path:Zd(this.#e,t)}})}isExpanded(e){return Y(this.#e.instrumentation,`store.isExpanded`,()=>{let t=this.requireDirectoryNodeId(e),n=X(this.#e,t);return cd(this.#e,t,n)})}expand(e){Y(this.#e.instrumentation,`store.expand`,()=>{let t=Xf(this.#e),n=op(this.#e,e);n!=null&&Md(this.#e,Ad(this.#e,t,n))})}collapse(e){Y(this.#e.instrumentation,`store.collapse`,()=>{let t=Xf(this.#e),n=sp(this.#e,e);n!=null&&Md(this.#e,Ad(this.#e,t,n))})}on(e,t){return vd(this.#e,e,t)}getDirectoryLoadState(e){let t=this.requireDirectoryNodeId(e);return dd(this.#e,t)}markDirectoryUnloaded(e){Y(this.#e.instrumentation,`store.markDirectoryUnloaded`,()=>{let t=this.requireDirectoryNodeId(e);if(rf(this.#e,t).childIds.length>0)throw Error(`Cannot mark a directory with known children as unloaded: "${e}"`);let n=Xf(this.#e);pd(this.#e,t),Md(this.#e,Ad(this.#e,n,wd({affectedAncestorIds:ef(this.#e,t),affectedNodeIds:[t],path:e,projectionChanged:this.isDirectoryProjectionVisible(t)})))})}beginChildLoad(e){return Y(this.#e.instrumentation,`store.beginChildLoad`,()=>{let t=this.requireDirectoryNodeId(e),n=Xf(this.#e),r=fd(this.#e,t);return Md(this.#e,Ad(this.#e,n,Td({affectedAncestorIds:ef(this.#e,t),affectedNodeIds:[t],attemptId:r.attemptId,path:e,projectionChanged:this.isDirectoryProjectionVisible(t),reused:r.reused}))),r})}applyChildPatch(e,t){return Y(this.#e.instrumentation,`store.applyChildPatch`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null||dd(this.#e,n)!==`loading`||!hd(this.#e,n,e.attemptId))return!1;let r=Zd(this.#e,n);this.validateChildPatch(r,t);let i=Xf(this.#e),a=[];for(let e of t.operations){Sp(r,e);let t=Xf(this.#e);switch(e.type){case`add`:a.push(Ad(this.#e,t,Kd(this.#e,e.path)));break;case`remove`:a.push(Ad(this.#e,t,qd(this.#e,e.path,{recursive:e.recursive})));break;case`move`:{let n=Jd(this.#e,e.from,e.to,{collision:e.collision});n!=null&&a.push(Ad(this.#e,t,n));break}}}let o=a.some(e=>e.projectionChanged)||this.isDirectoryProjectionVisible(n);return Md(this.#e,Ad(this.#e,i,Ed({affectedAncestorIds:ef(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,childEvents:a,path:Zd(this.#e,n),projectionChanged:o}))),!0})}completeChildLoad(e){return Y(this.#e.instrumentation,`store.completeChildLoad`,()=>{let t=this.resolveActiveDirectoryNodeId(e.nodeId);if(t==null)return!1;let n=Xf(this.#e),r=md(this.#e,t,e.attemptId);return Md(this.#e,Ad(this.#e,n,Dd({affectedAncestorIds:ef(this.#e,t),affectedNodeIds:[t],attemptId:e.attemptId,path:Zd(this.#e,t),projectionChanged:this.isDirectoryProjectionVisible(t),stale:!r}))),r})}failChildLoad(e,t){return Y(this.#e.instrumentation,`store.failChildLoad`,()=>{let n=this.resolveActiveDirectoryNodeId(e.nodeId);if(n==null)return!1;let r=Xf(this.#e),i=gd(this.#e,n,e.attemptId,t);return Md(this.#e,Ad(this.#e,r,Od({affectedAncestorIds:ef(this.#e,n),affectedNodeIds:[n],attemptId:e.attemptId,errorMessage:t,path:Zd(this.#e,n),projectionChanged:this.isDirectoryProjectionVisible(n),stale:!i}))),i})}cleanup(e={}){return Y(this.#e.instrumentation,`store.cleanup`,()=>{if(this.#e.transactionStack.length>0)throw Error(`Cleanup cannot run during an open batch or transaction.`);if(Kf(this.#e))throw Error(`Cleanup cannot run while directory loads are active.`);let t=Xf(this.#e),n=qf(this.#e,e.mode??`stable`);return Md(this.#e,Ad(this.#e,t,kd({...n,affectedAncestorIds:[],affectedNodeIds:[],projectionChanged:n.idsPreserved===!1}))),n})}getNodeCount(){return this.#e.activeNodeCount}initializeExpandedPaths(e){if(e==null||e.length===0)return 0;let t=0,n=[],r=[],i=0,a=null,o=this.#e.snapshot.segmentTable,s=o.valueById,c=this.#e.snapshot.nodes,l=new Map;for(let u of e){a!=null&&u<a&&(a=null,i=0,n.length=0,r.length=0);let e=u.length>0&&u.charCodeAt(u.length-1)===47?u.length-1:u.length;if(e===0){a=u,i=e,n.length=0,r.length=0;continue}let d=0,f=0;if(a!=null){let t=Math.min(e,i),n=!0;for(let e=0;e<t;e+=1){let t=u.charCodeAt(e);if(t!==a.charCodeAt(e)){n=!1;break}t===47&&(d+=1,f=e+1)}n&&(t===i&&e>t&&u.charCodeAt(t)===47?(d+=1,f=t+1):t===e&&i>t&&a.charCodeAt(t)===47&&(d+=1,f=e+1)),d=Math.min(d,r.length)}let p=d===0?this.#e.snapshot.rootId:r[d-1]??this.#e.snapshot.rootId,m=d,h=!0,g=f;for(;g<=e;){let t=u.indexOf(`/`,g),i=t===-1||t>e?e:t,a=u.slice(g,i),f=rf(this.#e,p).childIds,_=m===d?n[m]??0:0,v=_,y,b=l.get(a)??Cu(a);l.set(a,b);let x=(e,t)=>{for(v=e;v<t;v+=1){let e=f[v],t=c[e],n=s[t.nameId];if(n===a)return y=e,!0;let r=Tu(Mu(o,t.nameId),b);if(r>0||r===0&&n>a)return!1}return!1};if(!x(_,f.length)&&_>0&&x(0,_),y===void 0){h=!1;break}if(!J(X(this.#e,y))){h=!1;break}if(n[m]=v,r[m]=y,p=y,m+=1,i===e)break;g=i+1}if(a=u,i=e,n.length=m,r.length=m,!h){a=null,i=0,n.length=0,r.length=0;continue}for(let e=d;e<m;e+=1){let n=r[e];if(n==null)continue;let i=X(this.#e,n);cd(this.#e,n,i)||(ld(this.#e,n,!0,i),t+=1)}}return t}hasAllDirectoriesExpanded(){for(let e of this.#e.snapshot.directories.keys()){if(e===this.#e.snapshot.rootId)continue;let t=X(this.#e,e);if(!cd(this.#e,e,t))return!1}return!0}requireDirectoryNodeId(e){let t=tf(this.#e,e);if(t==null)throw Error(`Path does not exist: "${e}"`);if(!J(X(this.#e,t)))throw Error(`Path is not a directory: "${e}"`);return t}resolveActiveDirectoryNodeId(e){try{if(!J(X(this.#e,e)))throw Error(`Node is not a directory: ${String(e)}`);return e}catch{return null}}isDirectoryProjectionVisible(e){let t=e;for(;t!==this.#e.snapshot.rootId;){let e=X(this.#e,t).parentId;if(e!==this.#e.snapshot.rootId){let n=X(this.#e,e),r=Hd(this.#e,e);if(!cd(this.#e,e,n)&&r!==t)return!1}t=e}return!0}validateChildPatch(t,n){new e({paths:this.list(t),presorted:!0,sort:this.#e.snapshot.options.sort}).batch(n.operations)}};function Sp(e,t){switch(t.type){case`add`:case`remove`:if(!t.path.startsWith(e)||t.path===e)throw Error(`Child patch operation must stay within ${e}: "${t.path}"`);break;case`move`:if(!t.from.startsWith(e)||!t.to.startsWith(e)||t.from===e||t.to===e)throw Error(`Child patch move must stay within ${e}: "${t.from}" -> "${t.to}"`);break}}var Cp=e=>e.startsWith(`f::`)?e.slice(3):e;function wp(e){let t=e.lastIndexOf(`/`);return t<0?{parentPath:``,baseName:e}:{parentPath:e.slice(0,t),baseName:e.slice(t+1)}}function Tp(e,t){return e===``?t:`${e}/${t}`}function Ep({files:e,path:t,isFolder:n,nextBasename:r}){let i=Cp(t),a=r.trim();if(a.length===0)return{error:`Name cannot be empty.`};if(a.includes(`/`))return{error:`Name cannot include "/".`};let{parentPath:o,baseName:s}=wp(i);if(a===s)return{nextFiles:e,sourcePath:i,destinationPath:i,isFolder:n};let c=Tp(o,a),l=Array(e.length),u=new Set;if(!n){let t=`${c}/`,r=!1;for(let n=0;n<e.length;n++){let a=e[n];if(a!==i&&a.startsWith(t))return{error:`"${c}" already exists.`};let o=a===i?c:a;if(u.has(o))return{error:`"${c}" already exists.`};u.add(o),l[n]=o,a===i&&(r=!0)}return r?{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}:{error:`Could not find the selected file to rename.`}}let d=`${i}/`,f=`${c}/`,p=0;for(let t=0;t<e.length;t++){let n=e[t],r=n===i||n.startsWith(d);if(!r&&(n===c||n.startsWith(f)))return{error:`"${c}" already exists.`};let a=r?`${c}${n.slice(i.length)}`:n;if(u.has(a))return{error:`"${c}" already exists.`};u.add(a),l[t]=a,r&&p++}return p===0?{error:`Could not find the selected folder to rename.`}:{nextFiles:l,sourcePath:i,destinationPath:c,isFolder:n}}function Dp(e){return e.endsWith(`/`)}function Op(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`),r=n<0?t:t.slice(n+1);return e.endsWith(`/`)?`${r}/`:r}function kp(e){let t=[],n=new Set;for(let r of e)n.has(r)||(n.add(r),t.push(r));let r=new Set;for(let e of t.toSorted((e,t)=>e.length===t.length?e.localeCompare(t):e.length-t.length)){let t=(e.endsWith(`/`)?e.slice(0,-1):e).split(`/`),n=!1;for(let e=0;e<t.length-1;e+=1){let i=`${t.slice(0,e+1).join(`/`)}/`;if(r.has(i)){n=!0;break}}n||r.add(e)}return t.filter(e=>r.has(e))}function Ap(e,t){return t.includes(e)?kp(t):[e]}function jp(e,t){return e===t?!0:e==null||t==null?!1:e.kind===t.kind&&e.directoryPath===t.directoryPath&&e.flattenedSegmentPath===t.flattenedSegmentPath&&e.hoveredPath===t.hoveredPath}function Mp(e,t){return{draggedPaths:e,target:t}}function Np(e,t){if(t.kind!==`directory`||t.directoryPath==null)return!1;for(let n of e)if(Dp(n)&&(t.directoryPath===n||t.directoryPath.startsWith(n)))return!0;return!1}function Pp(e,t){return t.kind===`root`||t.directoryPath==null?Op(e):t.directoryPath}function Fp(e,t){let n=e.map(e=>{let n=Pp(e,t);return n===e?null:{from:e,to:n,type:`move`}}).filter(e=>e!=null);return n.length===0?null:{operations:n,result:{draggedPaths:e,operation:n.length===1?`move`:`batch`,target:t}}}var Ip=Symbol(`FILE_TREE_RENAME_VIEW`);function Lp(e){return e.operation===`add`||e.operation===`remove`||e.operation===`move`||e.operation===`batch`}var Rp=512,zp=512;function Bp(e,t){if(e.size!==t.length)return!1;for(let n of t)if(!e.has(n))return!1;return!0}function Vp(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function Hp(e){return Vp(e).at(-1)??null}function Up(e,t){return t==null?e:e.startsWith(t)?e.slice(t.length):e}var Wp=e=>{let t=e.trim();return t.length===0?``:(t.includes(`\\`)?t.replaceAll(`\\`,`/`):t).toLowerCase()},Gp=e=>e.toLowerCase();function Kp(e){return e.endsWith(`/`)}function qp(e){let t=e.endsWith(`/`)?e.slice(0,-1):e,n=t.lastIndexOf(`/`);return n<0?t:t.slice(n+1)}function Jp(e){return e.endsWith(`/`)?e.slice(0,-1):e}function Yp(e,t){return t&&!e.endsWith(`/`)?`${e}/`:e}function Xp(e,t,n){if(e===t)return n;let r=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(r)?`${n.endsWith(`/`)?n:`${n}/`}${e.slice(r.length)}`:e}function Zp(e,t){if(e===t)return!0;let n=t.endsWith(`/`)?t:`${t}/`;return e.startsWith(n)}function Qp(e,t,n=!1){if(e==null)return null;switch(t.operation){case`add`:case`expand`:case`collapse`:case`mark-directory-unloaded`:case`begin-child-load`:case`apply-child-patch`:case`complete-child-load`:case`fail-child-load`:case`cleanup`:return e;case`remove`:return Zp(e,t.path)?n?e:null:e;case`move`:return Xp(e,t.from,t.to);case`batch`:{let r=e;for(let e of t.events)if(r=Qp(r,e,n),r==null)return null;return r}}}function $p(e){return{canonicalChanged:e.canonicalChanged,projectionChanged:e.projectionChanged,visibleCountDelta:e.visibleCountDelta}}function em(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}function tm(e,t,n){let{paths:r,preparedInput:i}=e;if(i==null){if(r==null)throw Error(`FileTree requires paths or preparedInput`);return{paths:r,preparedInput:void 0}}let a=i.paths;if(r==null)return{paths:a,preparedInput:i};if(!em(xp.preparePaths(r,n==null?{}:{sort:n}),a))throw Error(`FileTree ${t} received paths and preparedInput for different path lists`);return{paths:a,preparedInput:i}}function nm(e){switch(e.operation){case`add`:return{...$p(e),operation:`add`,path:e.path};case`remove`:return{...$p(e),operation:`remove`,path:e.path,recursive:e.recursive};case`move`:return{...$p(e),from:e.from,operation:`move`,to:e.to}}}function rm(e){return{...$p(e),events:e.events.filter(e=>e.operation===`add`||e.operation===`remove`||e.operation===`move`).map(e=>nm(e)),operation:`batch`}}function im(e){switch(e.operation){case`add`:case`remove`:case`move`:return nm(e);case`batch`:return rm(e);default:return null}}function am(e,t,n){if(e===0)return-1;if(n!=null){let e=t(n);if(e!=null)return e;let r=Vp(n);for(let e=r.length-1;e>=0;--e){let n=r[e];if(n==null)continue;let i=t(n);if(i!=null)return i}}return 0}function om(e,t,n){if(e.paths.length===0)return{focusedIndex:-1,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};if(t==null)return{focusedIndex:0,getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex};let r=n??(t=>e.visibleIndexByPath.get(t)??null);return{focusedIndex:am(e.paths.length,r,t),getParentIndex:e.getParentIndex,paths:e.paths,posInSetByIndex:e.posInSetByIndex,setSizeByIndex:e.setSizeByIndex}}var sm=class{#e;#t=new Set;#n=new Map;#r=null;#i=null;#a=new Map;#o=new Map;#s=-1;#c=null;#l=!1;#u=e=>-1;#d=new Map;#f=null;#p=null;#m=null;#h=null;#g=null;#_;#v;#y;#b=[];#x=new Int32Array;#S=new Int32Array;#C=void 0;#w=!1;#T=null;#E=``;#D=!1;#O=new Set;#k=[];#A;#j=null;#M=null;#N=null;#P=null;#F=null;#I=null;#L=null;#R=new Set;#z=0;#B;#V=0;#H=!1;#U=0;#W;constructor(e){let{dragAndDrop:t,fileTreeSearchMode:n,initialSearchQuery:r,initialSelectedPaths:i,renaming:a,onSearchChange:o,paths:s,preparedInput:c,...l}=e,u=tm({paths:s,preparedInput:c},`constructor`,l.sort);this.#e=l,t!=null&&t!==!1&&(this.#r=t===!0?{}:t),this.#w=a!=null&&a!==!1,a!=null&&a!==!1&&a!==!0&&(this.#C=a.canRename,this.#v=a.onError,this.#_=a.onRename),this.#y=o,this.#A=n??`hide-non-matches`,this.#B=this.#se(u.paths,u.preparedInput);let d=i?.map(e=>this.#Ae(e)).filter(e=>e!=null)??[],f=d.at(-1)??null;d.length>0&&(this.#R=new Set(d),this.#L=f,this.#z=1),this.#Oe(f,!1),r!=null&&this.#Se(r,!1),this.#W=this.#Fe()}destroy(){this.#W?.(),this.#W=null,this.#n.clear(),this.#t.clear(),this.#d.clear(),this.#i=null,this.#pe()}focusFirstItem(){this.#ve().length>0&&this.#Me(0)}focusLastItem(){this.#U<=0||(this.#Ne(),this.#Me(this.#U-1))}focusNextItem(){this.#De(1)}focusParentItem(){if(this.#c==null)return;let e=Hp(this.#c);if(e==null)return;let t=this.#Y(e);t>=0&&this.#Me(t)}focusPath(e){let t=this.#B.getPathInfo(e)?.path??null;if(t==null)return;this.#Ne();let n=this.#Y(t);n>=0&&this.#Me(n)}focusNearestPath(e){let t=this.resolveNearestVisiblePath(e);if(t==null)return null;let n=this.#Y(t);return n>=0?(this.#Me(n),this.#ve()[n]??t):null}focusPreviousItem(){this.#De(-1)}getFocusedIndex(){return this.#s}getFocusedItem(){return this.#c==null?null:this.#X(this.#c)}getFocusedPath(){return this.#c}resolveNearestVisiblePath(e){let t=this.#ve();if(this.#U===0)return null;if(e==null)return this.#c??t[0]??null;let n=this.#B.getPathInfo(e)?.path??e,r=this.#Y(n);return r>=0?t[r]??n:this.#J(n)??this.#c??t[0]??null}getSelectedPaths(){return[...this.#R]}getSelectionVersion(){return this.#z}getVisibleCount(){return this.#U}getVisibleRows(e,t){if(t<e||this.#U===0)return[];let n=Math.max(0,e),r=Math.min(this.#U-1,t);if(r<n)return[];let i=r-n+1;if(this.#F==null&&!this.#l&&r>=this.#b.length&&i<=zp){let e=[];for(let t=n;t<=r;t+=1){let n=this.#B.getVisibleRowContext(t);if(n==null)break;e.push(this.#Q(n))}return e}if(!this.#l&&r>=this.#b.length&&this.#Ne(),this.#F!=null){let e=Array.from({length:r-n+1},(e,t)=>this.#ye(n+t)),t=new Map,i=e[0]??-1,a=i;for(let n=1;n<=e.length;n+=1){let r=e[n];if(r!=null&&r===a+1){a=r;continue}if(i>=0&&this.#B.getVisibleSlice(i,a).forEach((e,n)=>{t.set(i+n,e)}),r==null){i=-1,a=-1;continue}i=r,a=r}return Array.from({length:r-n+1},(e,r)=>{let i=n+r,a=this.#ye(i),o=t.get(a),s=this.#b[a];if(o==null||s==null)throw Error(`Missing projection row for filtered visible index ${String(i)}`);return this.#Z(o,i,a,{ancestorPaths:this.#te(a),path:s})})}return this.#B.getVisibleSlice(n,r).map((e,t)=>{let r=n+t,i=this.#b[r];if(i==null)throw Error(`Missing projection path for visible index ${String(r)}`);return this.#Z(e,r,r,{ancestorPaths:this.#te(r),path:i})})}getStickyRowCandidates(e,t){if(this.#F!=null)return null;if(this.#U===0||e<=0||t<=0)return[];let n=[];for(let r=0;r<this.#U;r+=1){let i=e+r*t,a=Math.min(this.#U-1,Math.floor(i/t)),o=this.#$(a,r)??(a>0?this.#$(a-1,r):void 0);if(o==null)break;n.push({row:this.#Q(o),subtreeEndIndex:o.subtreeEndIndex})}return n}getItem(e){let t=this.#B.getPathInfo(e);return t==null?null:this.#X(t.path,t)}selectAllVisiblePaths(){this.#Ne();let e=[...this.#ve()];this.#re(e,this.#c??this.#L)}selectOnlyPath(e){let t=this.#Ae(e);t!=null&&this.#re([t],t)}selectPath(e){let t=this.#Ae(e);t==null||this.#R.has(t)||this.#re([...this.#R,t])}deselectPath(e){let t=this.#Ae(e);t==null||!this.#R.has(t)||this.#re([...this.#R].filter(e=>e!==t))}toggleFocusedSelection(){this.#c!=null&&this.togglePathSelectionFromInput(this.#c)}togglePathSelection(e){let t=this.#Ae(e);if(t!=null){if(this.#R.has(t)){this.deselectPath(t);return}this.selectPath(t)}}togglePathSelectionFromInput(e){let t=this.#Ae(e);if(t!=null){if(this.#R.has(t)){this.#re([...this.#R].filter(e=>e!==t),t);return}this.#re([...this.#R,t],t)}}selectPathRange(e,t){let n=this.#Ae(e);if(n==null)return;this.#Ne();let r=this.#L,i=r==null?-1:this.#be(r),a=this.#be(n);if(i===-1||a===-1){let e=t?[...this.#R,n]:[n];this.#re(e,n);return}let[o,s]=i<=a?[i,a]:[a,i],c=this.#ve().slice(o,s+1),l=t?[...this.#R,...c]:c;this.#re(l,r)}extendSelectionFromFocused(e){if(this.#c==null)return;let t=this.#s;if(t===-1)return;let n=Math.min(this.#U-1,Math.max(0,t+e));if(n===t)return;!this.#l&&n>=this.#b.length&&this.#Ne();let r=this.#ve(),i=r[t]??null,a=r[n]??null;if(i==null||a==null)return;let o=new Set(this.#R);o.has(i)&&o.has(a)?o.delete(i):o.add(a),this.#re([...o],this.#L??i,!1),this.#Me(n)}getDragAndDropConfig(){return this.#r}isDragAndDropEnabled(){return this.#r!=null}getDragSession(){return this.#i==null?null:{draggedPaths:[...this.#i.draggedPaths],primaryPath:this.#i.primaryPath,target:this.#i.target==null?null:{...this.#i.target}}}startDrag(e){if(this.#r==null)return!1;let t=this.#Ae(e);if(t==null||this.#M!=null&&this.#M.length>0)return!1;let n=this.getSelectedPaths(),r=Ap(t,n);return this.#r.canDrag?.(r)===!1?!1:(n.includes(t)||this.#re([t],t,!1),this.#je(t),this.#i={draggedPaths:r,primaryPath:t,target:null},this.#we(),!0)}setDragTarget(e){let t=this.#i;if(t==null)return;let n=e;if(n!=null){let e=Mp(t.draggedPaths,n);(Np(t.draggedPaths,n)||this.#r?.canDrop?.(e)===!1)&&(n=null)}jp(t.target,n)||(this.#i={...t,target:n},this.#we())}cancelDrag(){this.#i!=null&&(this.#i=null,this.#we())}completeDrag(){let e=this.#i;if(e==null)return!1;this.#i=null;let t=e.target==null?null:{...e.target};if(t==null)return this.#we(),!1;let n=Mp(e.draggedPaths,t);if(Np(e.draggedPaths,t)||this.#r?.canDrop?.(n)===!1)return this.#we(),!1;let r=Fp(e.draggedPaths,t);if(r==null)return this.#we(),!1;try{if(r.operations.length===1){let e=r.operations[0];if(e==null||e.type!==`move`)throw Error(`Expected a single move operation for one-item drops`);this.#B.move(e.from,e.to,{collision:e.collision})}else this.#oe(r.operations),this.#B.batch(r.operations)}catch(e){return this.#we(),this.#r?.onDropError?.(e instanceof Error?e.message:String(e),n),!1}return this.#r?.onDropComplete?.(r.result),!0}subscribe(e){return this.#t.add(e),e(),()=>{this.#t.delete(e)}}add(e){this.#B.add(e)}remove(e,t={}){this.#B.remove(e,t)}move(e,t,n={}){this.#B.move(e,t,n)}batch(e){this.#B.batch(e)}onMutation(e,t){let n=e,r=t,i=this.#n.get(n);return i??(i=new Set,this.#n.set(n,i)),i.add(r),()=>{let e=this.#n.get(n);e?.delete(r),e?.size===0&&this.#n.delete(n)}}setSearch(e){this.#Se(e,!0)}openSearch(e=``){this.#Se(e,!0)}closeSearch(){this.#Se(null,!0)}isSearchOpen(){return this.#M!==null}getSearchValue(){return this.#M??``}getSearchMatchingPaths(){return this.#k}focusNextSearchMatch(){this.#xe(1)}focusPreviousSearchMatch(){this.#xe(-1)}startRenaming(e=this.#c??``,t={}){if(!this.#w)return!1;let n=this.#B.getPathInfo(e);if(n==null)return!1;let r=n.path,i=Kp(r),a=Jp(r);if(this.#C?.({isFolder:i,path:a})===!1)return!1;for(let e of Vp(r))this.#B.isExpanded(e)||this.#B.expand(e);return this.#re([r],r,!1),this.#M!=null&&(this.#Se(null,!1),this.#y?.(this.#M)),this.#je(r),this.#T=r,this.#E=qp(r),this.#D=t.removeIfCanceled??!1,this.#we(),!0}[Ip](){return{cancel:()=>{this.#G()},commit:()=>{this.#K()},getPath:()=>this.#T,getValue:()=>this.#E,isActive:()=>this.#T!=null,setValue:e=>{this.#q(e)}}}#G(){if(this.#T==null)return;let e=this.#T,t=this.#D;if(this.#T=null,this.#E=``,this.#D=!1,t){this.remove(e,Kp(e)?{recursive:!0}:void 0);return}this.#je(e),this.#we()}#K(){let e=this.#T;if(e==null)return;if(this.#D&&this.#E.trim().length===0){this.#T=null,this.#E=``,this.#D=!1,this.remove(e,Kp(e)?{recursive:!0}:void 0);return}let t=Kp(e),n=Ep({files:this.#B.list(),isFolder:t,nextBasename:this.#E,path:Jp(e)});if(this.#T=null,this.#E=``,this.#D=!1,`error`in n){this.#je(e),this.#v?.(n.error),this.#we();return}if(n.sourcePath===n.destinationPath){this.#je(e),this.#we();return}this.#_?.({destinationPath:n.destinationPath,isFolder:n.isFolder,sourcePath:n.sourcePath}),this.move(Yp(n.sourcePath,t),Yp(n.destinationPath,t))}#q(e){this.#T==null||this.#E===e||(this.#E=e,this.#we())}resetPaths(e,t={}){let n=this.#B.list().length,r=this.#U,i=tm({paths:e,preparedInput:t.preparedInput},`resetPaths`,this.#e.sort),a=this.#se(i.paths,i.preparedInput,t.initialExpandedPaths),o=this.#c,s=this.#T,c=this.getSelectedPaths(),l=this.#L;this.#W?.(),this.#B=a,this.#d.clear(),this.#pe();let u=c.map(e=>a.getPathInfo(e)?.path??null).filter(e=>e!=null),d=!Bp(this.#R,u);this.#R=new Set(u),d&&(this.#z+=1),this.#L=l==null?null:a.getPathInfo(l)?.path??null,this.#T=s==null?null:a.getPathInfo(s)?.path??null,this.#T??(this.#E=``,this.#D=!1),this.#Oe(o,o!=null||u.length>0||this.#L!=null),this.#W=this.#Fe(),this.#we(),this.#Te({canonicalChanged:!0,operation:`reset`,pathCountAfter:i.paths.length,pathCountBefore:n,projectionChanged:!0,usedPreparedInput:t.preparedInput!=null,visibleCountDelta:this.#U-r})}#J(e){this.#Ne();let t=Hp(e),n=Up(e,t),r=null,i=null;for(let e of this.#ve()){if(Hp(e)!==t)continue;let a=Up(e,t);if(a<n){r=e;continue}if(a>n){i=e;break}}return r??i}#Y(e){let t=this.#be(e);if(t!==-1)return t;let n=Vp(e);for(let e=n.length-1;e>=0;--e){let t=n[e];if(t==null)continue;let r=this.#be(t);if(r!==-1)return r}return this.#ve().length>0?0:-1}#X(e,t){let n=this.#d.get(e);if(n!=null)return n;let r=t??this.#B.getPathInfo(e);if(r==null)return null;let i=r.kind===`directory`?this.#ie(r.path):this.#ae(r.path);return this.#d.set(r.path,i),i}#Z(e,t,n,r){return{ancestorPaths:r.ancestorPaths,depth:e.depth,flattenedSegments:e.flattenedSegments?.map(e=>({isTerminal:e.isTerminal,name:e.name,path:e.path})),hasChildren:e.hasChildren,index:t,isExpanded:e.isExpanded,isFlattened:e.isFlattened,isFocused:r.path===this.#c,isSelected:this.#R.has(r.path),kind:e.kind,level:e.depth,name:e.name,path:r.path,posInSet:r.posInSet??this.#x[n]??0,setSize:r.setSize??this.#S[n]??0}}#Q(e){return this.#Z(e.row,e.index,e.index,{ancestorPaths:e.ancestorPaths,path:e.row.path,posInSet:e.posInSet,setSize:e.setSize})}#$(e,t){let n=this.#B.getVisibleRowContext(e);return n==null?void 0:n.ancestorRows[t]??(t===n.ancestorRows.length&&n.row.kind===`directory`&&n.row.isExpanded?n:void 0)}#ee(e){let t=this.#a.get(e);if(t!=null)return t;let n=this.#u(e),r=n<0?[]:[...this.#ee(n),n];return this.#a.set(e,r),r}#te(e){let t=this.#o.get(e);if(t!=null)return t;let n=this.#ee(e).map(e=>this.#b[e]??``).filter(e=>e!==``);return this.#o.set(e,n),n}#ne(e){this.#B.collapse(e)}#re(e,t=this.#L,n=!0){let r=[...new Set(e)],i=!Bp(this.#R,r),a=this.#L!==t;!i&&!a||(this.#R=new Set(r),this.#L=t,i&&(this.#z+=1),n&&this.#we())}#ie(e){return{collapse:()=>{this.#ne(e)},deselect:()=>{this.deselectPath(e)},expand:()=>{this.#Ee(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!0,isExpanded:()=>this.#B.isExpanded(e),isFocused:()=>this.#c===e,isSelected:()=>this.#R.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)},toggle:()=>{this.#Ie(e)}}}#ae(e){return{deselect:()=>{this.deselectPath(e)},focus:()=>{this.focusPath(e)},getPath:()=>e,isDirectory:()=>!1,isFocused:()=>this.#c===e,isSelected:()=>this.#R.has(e),select:()=>{this.selectPath(e)},toggleSelect:()=>{this.togglePathSelection(e)}}}#oe(e){let t=this.#B.list();this.#se(t).batch(e)}#se(e,t,n){return new xp({...this.#e,paths:e,preparedInput:t??void 0,...n===void 0?{}:{initialExpandedPaths:n}})}#ce(){return this.#h??=this.#B.list(),this.#h}#le(){if(this.#m!=null)return this.#m;let e=new Set;for(let t of this.#ce()){e.add(t);for(let n of Vp(t))e.add(n)}return this.#m=[...e].sort(),this.#m}#ue(){return this.#g??=this.#ce().map(Gp),this.#g}#de(){return this.#f??=this.#le().filter(e=>e.endsWith(`/`)),this.#f}#fe(){return this.#p??=this.#de().map(Gp),this.#p}#pe(){this.#f=null,this.#p=null,this.#m=null,this.#h=null,this.#g=null}#me(){return this.#de().filter(e=>this.#B.isExpanded(e))}#he(e){let t=new Set(this.#j??[]);if(e)for(let e of this.#R)for(let n of Vp(e))t.add(n);this.#ge(t)}#ge(e){this.#H=!0;try{for(let t of this.#de()){let n=e.has(t),r=this.#B.isExpanded(t);n&&!r?this.#B.expand(t):!n&&r&&this.#B.collapse(t)}}finally{this.#H=!1}}#_e(){let e=this.#b;if(this.#k=e.filter(e=>this.#O.has(e)),this.#M==null||this.#M.length===0||this.#A!==`hide-non-matches`||this.#O.size===0){this.#F=null,this.#I=null,this.#P=null,this.#U=this.#V;return}let t=[],n=[],r=new Map;for(let[i,a]of e.entries())this.#N?.has(a)===!0&&(r.set(a,n.length),t.push(i),n.push(a));this.#F=t,this.#I=n,this.#P=r,this.#U=n.length}#ve(){return this.#I??this.#b}#ye(e){return this.#F?.[e]??e}#be(e){return this.#P?.get(e)??this.#B.getVisibleIndex(e)??-1}#xe(e){let t=this.#k;if(t.length===0)return;let n=this.#c,r=n==null?-1:t.indexOf(n),i=t[r<0?e>0?0:t.length-1:Math.min(t.length-1,Math.max(0,r+e))];i!=null&&this.focusPath(i)}#Se(e,t){let n=e==null?null:Wp(e),r=this.#M;if(r!==n){if(r==null&&n!=null&&(this.#j=this.#me()),this.#M=n,n==null)this.#he(!0),this.#j=null,this.#O.clear(),this.#N=null,this.#Oe(this.#c,!0);else if(n.length===0)this.#he(!1),this.#O.clear(),this.#N=null,this.#Oe(this.#c,!0);else{let e=this.#Ce();this.#Oe(e,!0)}t&&(this.#y?.(this.#M),this.#we())}}#Ce(){if(this.#M==null||this.#M.length===0)return this.#O.clear(),this.#c;let e=this.#M,t=this.#ce(),n=this.#ue(),r=[],i=new Set,a=null;for(let o=0;o<t.length;o+=1){if(!n[o].includes(e))continue;let s=t[o];r.push(s),i.add(s),a??=s}let o=this.#de(),s=this.#fe();for(let t=0;t<o.length;t+=1){if(!s[t].includes(e))continue;let n=o[t];i.has(n)||(r.push(n),i.add(n),a??=n)}this.#O=i;let c=this.#A===`hide-non-matches`&&r.length>0?new Set:null;this.#N=c;let l=this.#A===`expand-matches`?new Set(this.#j??[]):new Set;for(let e of r){c?.add(e),e.endsWith(`/`)&&l.add(e);for(let t of Vp(e))l.add(t),c?.add(t)}return this.#ge(l),a??this.#c}#we(){for(let e of this.#t)e()}#Te(e){this.#n.get(e.operation)?.forEach(t=>{t(e)}),this.#n.get(`*`)?.forEach(t=>{t(e)})}#Ee(e){for(let t of Vp(e))this.#B.isExpanded(t)||this.#B.expand(t);this.#B.isExpanded(e)||this.#B.expand(e)}#De(e){let t=this.#U;if(t===0)return;let n=this.#s===-1?0:this.#s,r=Math.min(t-1,Math.max(0,n+e));(r!==n||this.#s===-1)&&(!this.#l&&this.#F==null&&r>=this.#b.length&&this.#Ne(),this.#Me(r))}#Oe(e,t=!0){let n=this.#B.getVisibleCount();this.#V=n;let r=om(this.#B.getVisibleTreeProjectionData(t?void 0:Math.min(n,Rp)),e,t?e=>this.#B.getVisibleIndex(e):void 0);this.#a.clear(),this.#o.clear(),this.#l=r.paths.length>=n,this.#u=r.getParentIndex,this.#b=r.paths,this.#x=r.posInSetByIndex,this.#S=r.setSizeByIndex,this.#_e(),this.#s=e==null?this.#ve().length>0?0:-1:this.#Y(e),this.#c=this.#s<0?null:this.#ke(this.#s)}#ke(e){return this.#ve()[e]??(this.#F==null?this.#B.getVisibleRowContext(e)?.row.path??null:null)}#Ae(e){return this.#B.getPathInfo(e)?.path??null}#je(e){if(e==null)return;let t=this.#Y(e);t>=0&&this.#Me(t,!1)}#Me(e,t=!0){let n=this.#ke(e);n!=null&&(this.#s===e&&this.#c===n||(this.#s=e,this.#c=n,t&&this.#we()))}#Ne(){this.#l||this.#Oe(this.#c,!0)}#Pe(e){let t=Qp(this.#T,e);t==null&&this.#T!=null&&(this.#E=``),this.#T=t;let n=Qp(this.#c,e,!0),r=[...this.#R].map(t=>Qp(t,e)).filter(e=>e!=null).map(e=>this.#B.getPathInfo(e)?.path??null).filter(e=>e!=null),i=Qp(this.#L,e),a=i==null?null:this.#B.getPathInfo(i)?.path??null,o=[...new Set(r)];return Bp(this.#R,o)||(this.#R=new Set(o),this.#z+=1),this.#L=a,n}#Fe(){return this.#B.on(`*`,e=>{if(this.#H)return;e.canonicalChanged&&(this.#d.clear(),this.#pe()),this.#i!=null&&Lp(e)&&(this.#i=null);let t=Lp(e)?this.#Pe(e):this.#c,n=this.#M!=null&&this.#M.length>0?this.#Ce():this.#M===``?this.#c:t,r=this.#M!=null||e.operation!==`expand`&&e.operation!==`collapse`;this.#Oe(n,r),this.#we();let i=im(e);i!=null&&this.#Te(i)})}#Ie(e){if(this.#B.isExpanded(e)){this.#ne(e);return}this.#Ee(e)}},cm=e=>{if(e==null||e.length===0)return`0`;let t=`${e.length}`;for(let n of e)t+=`\0${n.path}\0${n.status}`;return t};function lm(e){let t=e.endsWith(`/`),n=``,r=-1;for(let t=0;t<=e.length;t+=1){if(!(e[t]===`/`||t===e.length)){r===-1&&(r=t);continue}r!==-1&&(n!==``&&(n+=`/`),n+=e.slice(r,t),r=-1)}return n===``?null:{isDirectory:t,path:n}}function um(e){let t=e.endsWith(`/`)?e.slice(0,-1):e;if(t.length===0)return[];let n=t.split(`/`);return n.slice(0,-1).map((e,t)=>`${n.slice(0,t+1).join(`/`)}/`)}function dm(e,t){return t?`${e}/`:e}function fm(e,t=null){let n=cm(e==null?void 0:[...e]);if(n===`0`)return null;if(t?.signature===n)return t;let r=new Map,i=new Set,a=new Set;for(let t of e??[]){let e=lm(t.path);if(e==null)continue;let n=dm(e.path,e.isDirectory);r.set(n,t.status),t.status===`ignored`&&e.isDirectory?a.add(n):e.isDirectory&&a.delete(n);for(let t of um(e.path))i.add(t)}return{directoriesWithChanges:i,ignoredDirectoryPaths:a,signature:n,statusByPath:r}}var pm=e=>e.trim().toLowerCase(),mm=e=>e.split(`/`).at(-1)??e,hm=e=>{let t=e.toLowerCase().split(`.`),n=[];for(let e=1;e<t.length;e+=1)n.push(t.slice(e).join(`.`));return n};function gm(e,t){return typeof e==`string`?{name:e,remappedFrom:t}:{...e,remappedFrom:t}}function _m(e){let t=Al(e),n=t.remap,r=new Map;for(let[e,n]of Object.entries(t.byFileName??{}))r.set(e.toLowerCase(),n);let i=new Map;for(let[e,n]of Object.entries(t.byFileExtension??{}))i.set(pm(e),n);let a=Object.entries(t.byFileNameContains??{}).map(([e,t])=>[e.toLowerCase(),t]);return{resolveIcon:(e,o)=>{if(e===`file-tree-icon-file`&&o!=null){let n=mm(o),s=n.toLowerCase(),c=r.get(s);if(c!=null)return gm(c,e);for(let[t,n]of a)if(s.includes(t))return gm(n,e);let l=hm(n);for(let t of l){let n=i.get(t);if(n!=null)return gm(n,e)}let u=Ol(t.set,n,l);if(u!=null&&t.set!==`none`)return{name:El(u),remappedFrom:e,token:u}}let s=n?.[e];return s==null?{name:e}:gm(s,e)}}}var Z,vm,ym,bm,xm,Sm,Cm,wm,Tm,Em,Dm={},Om=[],km=Array.isArray,Am=Om.slice,jm=Object.assign;function Mm(e){e&&e.parentNode&&e.remove()}function Nm(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`&&typeof e!=`function`?i=t[a]:o[a]=t[a];return arguments.length>2&&(o.children=arguments.length>3?Am.call(arguments,2):n),Pm(e,o,r,i,null)}function Pm(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++vm,__i:-1,__u:0};return i==null&&Z.vnode!=null&&Z.vnode(a),a}function Fm(e){return e.children}function Im(e,t){this.props=e,this.context=t,this.__g=0}function Lm(e,t){if(t==null)return e.__?Lm(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?Lm(e):null}function Rm(e){var t,n;if((e=e.__)!=null&&e.__c!=null){for(e.__e=null,t=0;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null){e.__e=n.__e;break}return Rm(e)}}function zm(e){(8&e.__g||!(e.__g|=8)||!ym.push(e)||xm++)&&bm==Z.debounceRendering||((bm=Z.debounceRendering)||queueMicrotask)(Bm)}function Bm(){for(var e,t,n,r,i,a,o,s,c=1;ym.length;)ym.length>c&&ym.sort(Sm),e=ym.shift(),c=ym.length,8&e.__g&&(n=void 0,i=(r=(t=e).__v).__e,a=[],o=[],(s=t.__P)&&((n=jm({},r)).__v=r.__v+1,Z.vnode&&Z.vnode(n),Jm(s,n,r,t.__n,s.namespaceURI,32&r.__u?[i]:null,a,i??Lm(r),!!(32&r.__u),o,s.ownerDocument),n.__v=r.__v,n.__.__k[n.__i]=n,Xm(a,n,o),n.__e!=i&&Rm(n)));xm=0}function Vm(e,t,n,r,i,a,o,s,c,l,u,d){var f,p,m,h,g,_,v,y=r&&r.__k||Om,b=t.length;for(c=Hm(n,t,y,c,b),f=0;f<b;f++)(m=n.__k[f])!=null&&(p=m.__i==-1?Dm:y[m.__i]||Dm,m.__i=f,_=Jm(e,m,p,i,a,o,s,c,l,u,d),h=m.__e,m.ref&&p.ref!=m.ref&&(p.ref&&$m(p.ref,null,m),u.push(m.ref,m.__c||h,m)),g==null&&h!=null&&(g=h),(v=!!(4&m.__u))||p.__k===m.__k?c=Um(m,c,e,v):typeof m.type==`function`&&_!==void 0?c=_:h&&(c=h.nextSibling),m.__u&=-7);return n.__e=g,c}function Hm(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(c=a+f,(o=e.__k[a]=typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?Pm(null,o,null,null,null):km(o)?Pm(Fm,{children:o},null,null,null):o.constructor==null&&o.__b>0?Pm(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):o).__=e,o.__b=e.__b+1,s=null,(l=o.__i=Wm(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=Lm(s)),eh(s,s));return r}function Um(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=Um(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=Lm(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function Wm(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&e.key==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function Gm(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n??``}function Km(e,t,n,r,i){var a;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||Gm(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||Gm(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(Cm,`$1`)),(t=t.slice(2))[0].toLowerCase()!=t[0]&&(t=t.toLowerCase()),e.__l||={},e.__l[t+a]=n,n?r?n.l=r.l:(n.l=wm,e.addEventListener(t,a?Em:Tm,a)):e.removeEventListener(t,a?Em:Tm,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function qm(e){return function(t){if(this.__l){var n=this.__l[t.type+e];if(t.u==null)t.u=wm++;else if(t.u<n.l)return;return n(Z.event?Z.event(t):t)}}}function Jm(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j,M=t.type;if(t.constructor!=null)return null;128&n.__u&&(c=!!(32&n.__u),n.__c.__z&&(s=t.__e=n.__e=(a=n.__c.__z)[0],n.__c.__z=null)),(d=Z.__b)&&d(t);n:if(typeof M==`function`)try{if(v=t.props,y=`prototype`in M&&M.prototype.render,b=(d=M.contextType)&&r[d.__c],x=d?b?b.props.value:d.__:r,n.__c?2&(f=t.__c=n.__c).__g&&(f.__g|=1,_=!0):(y?t.__c=f=new M(v,x):(t.__c=f=new Im(v,x),f.constructor=M,f.render=th),b&&b.sub(f),f.props=v,f.state||={},f.context=x,f.__n=r,p=!0,f.__g|=8,f.__h=[],f._sb=[]),y&&f.__s==null&&(f.__s=f.state),y&&M.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=jm({},f.__s)),jm(f.__s,M.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,p)y&&M.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),y&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(y&&M.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,x),!(4&f.__g)&&f.shouldComponentUpdate!=null&&!1===f.shouldComponentUpdate(v,f.__s,x)||t.__v==n.__v){for(t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__g&=-9),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),S=0;S<f._sb.length;S++)f.__h.push(f._sb[S]);f._sb=[],f.__h.length&&o.push(f);break n}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,x),y&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,g)})}if(f.context=x,f.props=v,f.__P=e,f.__g&=-5,C=Z.__r,w=0,y){for(f.state=f.__s,f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),T=0;T<f._sb.length;T++)f.__h.push(f._sb[T]);f._sb=[]}else do f.__g&=-9,C&&C(t),d=f.render(f.props,f.state,f.context),f.state=f.__s;while(8&f.__g&&++w<25);f.state=f.__s,f.getChildContext!=null&&(r=jm({},r,f.getChildContext())),y&&!p&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(m,h)),E=d,d!=null&&d.type===Fm&&d.key==null&&(E=Zm(d.props.children)),s=Vm(e,km(E)?E:[E],t,n,r,i,a,o,s,c,l,u),t.__u&=-161,f.__h.length&&o.push(f),_&&(f.__g&=-4)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(D=0,O=!1,t.__u|=c?160:128,t.__c.__z=[],k=0;k<a.length;k++)(A=a[k])==null||O||(A.nodeType==8&&A.data==`$s`?(D>0&&t.__c.__z.push(A),D++,a[k]=null):A.nodeType==8&&A.data==`/$s`?(--D>0&&t.__c.__z.push(A),O=D===0,s=a[k],a[k]=null):D>0&&(t.__c.__z.push(A),a[k]=null));if(!O){for(;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__c.__z=[s]}t.__e=s}else{for(j=a.length;j--;)Mm(a[j]);Ym(t)}else t.__e=n.__e,t.__k=n.__k,e.then||Ym(t);Z.__e(e,t,n)}else s=t.__e=Qm(n.__e,t,n,r,i,a,o,c,l,u);return(d=Z.diffed)&&d(t),128&t.__u?void 0:s}function Ym(e){e&&e.__c&&(e.__c.__g|=4),e&&e.__k&&e.__k.forEach(Ym)}function Xm(e,t,n){for(var r=0;r<n.length;r++)$m(n[r],n[++r],n[++r]);Z.__c&&Z.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){Z.__e(e,t.__v)}})}function Zm(e){return typeof e!=`object`||!e||e.__b&&e.__b>0?e:km(e)?e.map(Zm):jm({},e)}function Qm(e,t,n,r,i,a,o,s,c,l){var u,d,f,p,m,h,g,_,v=n.props,y=t.props,b=t.type;if(b==`svg`?i=`http://www.w3.org/2000/svg`:b==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(u=0;u<a.length;u++)if((m=a[u])&&`setAttribute`in m==!!b&&(b?m.localName==b:m.nodeType==3)){e=m,a[u]=null;break}}if(e==null){if(b==null)return l.createTextNode(y);e=l.createElementNS(i,b,y.is&&y),s&&=(Z.__m&&Z.__m(t,a),!1),a=null}if(b==null)v===y||s&&e.data==y||(e.data=y);else{if(a&&=Am.call(e.childNodes),v=n.props||Dm,!s&&a!=null)for(v={},u=0;u<e.attributes.length;u++)v[(m=e.attributes[u]).name]=m.value;for(u in v)if(m=v[u],u!=`children`){if(u==`dangerouslySetInnerHTML`)f=m;else if(!(u in y)){if(u==`value`&&`defaultValue`in y||u==`checked`&&`defaultChecked`in y)continue;Km(e,u,null,m,i)}}for(u in _=1&n.__u,y)m=y[u],u==`children`?p=m:u==`dangerouslySetInnerHTML`?d=m:u==`value`?h=m:u==`checked`?g=m:s&&typeof m!=`function`||v[u]===m&&!_||Km(e,u,m,v[u],i);if(d)s||f&&(d.__html==f.__html||d.__html==e.innerHTML)||(e.innerHTML=d.__html),t.__k=[];else if(f&&(e.innerHTML=``),Vm(b==`template`?e.content:e,km(p)?p:[p],t,n,r,b==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&Lm(n,0),s,c,l),a!=null)for(u=a.length;u--;)Mm(a[u]);s||(u=`value`,b==`progress`&&h==null?e.removeAttribute(`value`):h==null||h===e[u]&&(b!==`progress`||h)||Km(e,u,h,v[u],i),u=`checked`,g!=null&&g!=e[u]&&Km(e,u,g,v[u],i))}return e}function $m(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){Z.__e(e,n)}}function eh(e,t,n){var r,i;if(Z.unmount&&Z.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||$m(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){Z.__e(e,t)}r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&eh(r[i],t,n||typeof e.type!=`function`);n||Mm(e.__e),e.__e&&e.__e.__l&&(e.__e.__l=null),e.__e=e.__c=e.__=null}function th(e,t,n){return this.constructor(e,n)}function nh(e,t){var n,r,i,a;t==document&&(t=document.documentElement),Z.__&&Z.__(e,t),r=(n=!!(e&&32&e.__u))?null:t.__k,e=t.__k=Nm(Fm,null,[e]),i=[],a=[],Jm(t,e,r||Dm,Dm,t.namespaceURI,r?null:t.firstChild?Am.call(t.childNodes):null,i,r?r.__e:t.firstChild,n,a,t.ownerDocument),Xm(i,e,a)}function rh(e,t){e.__u|=32,nh(e,t)}Z={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!(1&i.__g)){i.__g|=4;try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=8&i.__g),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=8&i.__g),o)return void(i.__g|=2)}catch(t){e=t}}throw xm=0,e}},vm=0,Im.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=jm({},this.state);typeof e==`function`&&(e=e(jm({},n),this.props)),e&&jm(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),zm(this))},Im.prototype.forceUpdate=function(e){this.__v&&(this.__g|=4,e&&this.__h.push(e),zm(this))},Im.prototype.render=Fm,ym=[],xm=0,Sm=function(e,t){return e.__v.__b-t.__v.__b},Cm=/(PointerCapture)$|Capture$/i,wm=0,Tm=qm(!1),Em=qm(!0);var ih=0;Array.isArray;function Q(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c&&typeof e!=`function`)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--ih,__i:-1,__u:0,__source:i,__self:a};return Z.vnode&&Z.vnode(l),l}var ah=16,oh=16,sh={};function ch({name:e,remappedFrom:t,token:n,width:r,height:i,viewBox:a,label:o,alignCapitals:s=!1}){"use no memo";let c=`#${e.replace(/^#/,``)}`,{width:l,height:u,viewBox:d}=sh[e]??{width:ah,height:oh},f=r??l,p=i??u,m=a??d??`0 0 ${l} ${u}`;return Q(`svg`,{"data-icon-name":t??e,"data-icon-token":n,"data-align-capitals":s,...o==null?{"aria-hidden":!0}:{"aria-label":o,role:`img`},viewBox:m,width:f,height:p,children:Q(`use`,{href:c})})}var lh=e=>{if(e.length<2)return[e,``];let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]},uh=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`.`)+1,n=e.length-t>10,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},dh=e=>{if(e.length<4)return[e,``];let t=e.lastIndexOf(`/`)+1,n=e.length-t>25,r=t>=1&&!n?t:Math.ceil(e.length/2);return[e.slice(0,r),e.slice(r)]},fh=(e,{splitIndex:t}={})=>{if(typeof t!=`number`){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}return[e.slice(0,t),e.slice(t)]},ph=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=e.length-t;return[e.slice(0,n),e.slice(n)]},mh=(e,{splitOffset:t}={})=>{if(typeof t!=`number`||t<=0||t>=e.length){let t=Math.ceil(e.length/2);return[e.slice(0,t),e.slice(t)]}let n=t;return[e.slice(0,n),e.slice(n)]};function hh({children:e,marker:t,variant:n=`default`}){"use no memo";return Q(`div`,{"aria-hidden":!0,"data-truncate-marker-cell":!0,children:Q(`div`,{"data-truncate-marker":!0,children:typeof t==`function`?t({children:e}):n===`fade`?Q(`span`,{"data-truncate-fade":!0}):t})})}function gh(e){"use no memo";let{mode:t,children:n}=e;return Q(`div`,{children:[Q(`div`,{"data-truncate-content":`visible`,children:t===`fruncate`?Q(`span`,{children:n}):n}),Q(`div`,{"data-truncate-content":`overflow`,"aria-hidden":!0,children:t===`fruncate`?Q(`span`,{children:n}):n})]})}function _h({children:e,mode:t=`truncate`,marker:n=`…`,variant:r=`default`,...i}){"use no memo";let a=Q(gh,{mode:t,children:e},`content`),o=Q(hh,{marker:n,mode:t,variant:r},`marker`),s=Q(`div`,{"data-truncate-fill":!0},`fill`);return Q(`div`,{"data-truncate-container":t,"data-truncate-variant":r,...i,children:Q(`div`,{"data-truncate-grid":!0,children:t===`truncate`?[a,o]:[o,a,s]})})}function vh({children:e,...t}){"use no memo";return Q(_h,{mode:`truncate`,...t,children:e})}function yh({children:e,...t}){"use no memo";return Q(_h,{mode:`fruncate`,...t,children:e})}function bh({children:e,contents:t,priority:n=`end`,split:r=`center`,minimumLength:i=12,className:a,style:o,...s}){"use no memo";let c=null,l=null;if(Array.isArray(t)){if(t.length!==2)return console.error(`MiddleTruncate: contents must be an array of two items`),null;c=Q(vh,{...s,children:t[0]}),l=Q(yh,{...s,children:t[1]})}else{if(typeof e!=`string`)return console.error(`MiddleTruncate: children must be a string`),null;if(e.length===0)return Q(`div`,{className:a,style:o});if(e.length<i)return Q(n===`end`?yh:vh,{...s,className:a,style:o,children:e});let t=null,u=null,d=null;if(typeof r==`string`)r===`center`?t=lh:r===`extension`?t=uh:r===`leaf-path`&&(t=dh);else if(typeof r==`number`)t=fh,u=r;else if(Array.isArray(r)){let[e,n]=r;d=n,e===`last`?t=ph:e===`first`&&(t=mh)}else typeof r==`function`&&(t=r);t??=lh;let[f,p]=t(e,{priority:n,variant:s.variant,splitIndex:typeof u==`number`?u:void 0,splitOffset:typeof d==`number`?d:void 0}),m=f.length>=p.length,h=n===`equal`&&!m,g=n===`equal`&&m,_={},v={};h&&(_.marker=``),g&&(v.marker=``),c=Q(vh,{...s,..._,children:f}),l=Q(yh,{...s,...v,children:p})}return Q(`div`,{"data-truncate-group-container":`middle`,className:a,style:o,children:[Q(`div`,{"data-truncate-segment-priority":n===`start`||n===`equal`?`1`:`2`,children:c}),Q(`div`,{"data-truncate-segment-priority":n===`end`||n===`equal`?`1`:`2`,children:l})]})}var xh={endIndex:-1,startIndex:-1};function Sh(e,t,n){return Math.min(Math.max(e,t),n)}function Ch(e,t){return e<0||t<e?xh:{endIndex:t,startIndex:e}}function wh(e){return e.startIndex<0||e.endIndex<e.startIndex}function Th(e,t){return wh(e)?0:(e.endIndex-e.startIndex+1)*t}function Eh(e,t,n){if(t<=0)return-1;let r=t*n;return e<=0?0:e>=r?t:Math.floor(e/n)}function Dh(e,t,n){return t<=0||e<=0?-1:e>=t*n?t-1:Math.ceil(e/n)-1}function Oh(e){let t=new Map;return e.forEach((e,n)=>{if(e.kind!==`directory`||!e.isExpanded)return;let r=e.ancestorPaths.length,i=t.get(r);if(i==null){t.set(r,[n]);return}i.push(n)}),t}function kh(e,t){let n=0,r=e.length-1,i=-1;for(;n<=r;){let a=Math.floor((n+r)/2),o=e[a];if(o==null)break;if(o<=t){i=a,n=a+1;continue}r=a-1}return i}function Ah(e){let t=new Map,n=[];for(let r=0;r<e.length;r+=1){let i=e[r];if(i==null)continue;let a=i.kind===`directory`&&i.isExpanded?[...i.ancestorPaths,i.path]:i.ancestorPaths,o=0;for(;o<n.length&&o<a.length&&n[o]===a[o];)o+=1;for(let e=n.length-1;e>=o;--e){let i=n[e];i!=null&&t.set(i,r-1)}n.length=o;for(let e=o;e<a.length;e+=1){let t=a[e];t!=null&&n.push(t)}}let r=e.length-1;for(let e of n)t.set(e,r);return t}function jh(e,t,n){if(e.length===0||t<=0)return[];let r=Ah(e),i=Oh(e),a=[];for(let r=0;r<e.length;r+=1){let o=i.get(r);if(o==null||o.length===0)break;let s=t+r*n,c=kh(o,Math.min(e.length-1,Math.floor(s/n))),l=null;for(;c>=0;){let t=o[c],n=t==null?null:e[t]??null;if(n!=null&&(r===0||n.ancestorPaths[r-1]===a[r-1]?.path)){l=n;break}--c}if(l==null)break;a.push(l)}return a.map((i,a)=>{let o=a*n,s=(r.get(i.path)??e.length-1)+1;if(s>=e.length)return{row:i,top:o};let c=s*n-t;return{row:i,top:Math.min(o,c-n)}}).filter(e=>e.top+n>0)}function Mh(e,t){let n=t.totalRowCount??e.length,r=n*t.itemHeight,i=Math.max(0,t.viewportHeight),a=Math.max(0,Math.floor(t.overscan)),o=Math.max(0,r-i),s=Sh(t.scrollTop,0,o),c=t.stickyRows??jh(e,s,t.itemHeight),l=c.reduce((e,n)=>Math.max(e,n.top+t.itemHeight),0),u=Math.min(r,s+l),d=Math.max(0,i-l),f=Math.max(0,r-u),p=Eh(s,n,t.itemHeight),m=Eh(u,n,t.itemHeight),h=l<=0||p<0||p>=n?-1:p,g=h===-1?-1:Math.min(n-1,m-1),_=h===-1||g<h?0:g-h+1,v=d<=0||m>=n?xh:Ch(m,Dh(u+d,n,t.itemHeight)),y=g+1,b=wh(v)?xh:Ch(Math.max(y,v.startIndex-a),Math.min(n-1,v.endIndex+a)),x=Th(b,t.itemHeight);return{occlusion:{firstOccludedIndex:h,lastOccludedIndex:g,occludedCount:_},physical:{itemHeight:t.itemHeight,maxScrollTop:o,overscan:a,scrollTop:s,totalHeight:r,totalRowCount:n,viewportHeight:i},projected:{contentHeight:f,paneHeight:d,paneTop:u},sticky:{height:l,rows:c},visible:v,window:{endIndex:b.endIndex,height:x,offsetTop:wh(b)?0:b.startIndex*t.itemHeight,startIndex:b.startIndex}}}var Nh={added:`A`,deleted:`D`,ignored:null,modified:`M`,renamed:`R`,untracked:`U`},Ph={added:`Git status: added`,deleted:`Git status: deleted`,ignored:`Git status: ignored`,modified:`Git status: modified`,renamed:`Git status: renamed`,untracked:`Git status: untracked`},Fh=`Contains git status items`;function Ih(e){let{renamingPath:t,previousRenamingPath:n,hasRenderedInput:r}=e;return t==null?`reset`:r?n===t?`ignore`:`focus-input`:`reveal-canonical`}function Lh(e){let{row:t,mode:n,targetPath:r,ariaLabel:i,domId:a,isParked:o,itemHeight:s,features:c,state:l,extraStyle:u}=e,d=n===`sticky`,f=t.ancestorPaths.at(-1)??``,p={};return l.isFocusRinged&&(p[`data-item-focused`]=!0),t.isSelected&&(p[`data-item-selected`]=!0),l.isContextHovered&&(p[`data-item-context-hover`]=`true`),l.isDragTarget&&(p[`data-item-drag-target`]=!0),l.isDragging&&(p[`data-item-dragging`]=!0),l.effectiveGitStatus!=null&&(p[`data-item-git-status`]=l.effectiveGitStatus),l.containsGitChange&&(p[`data-item-contains-git-change`]=`true`),{"aria-expanded":!d&&t.kind===`directory`?t.isExpanded:void 0,"aria-haspopup":c.contextMenuEnabled?`menu`:void 0,"aria-label":i,"aria-level":d?void 0:t.level+1,"aria-posinset":d?void 0:t.posInSet+1,"aria-selected":d?void 0:t.isSelected?`true`:`false`,"aria-setsize":d?void 0:t.setSize,"data-file-tree-sticky-path":d?r:void 0,"data-file-tree-sticky-row":d?`true`:void 0,"data-item-context-menu-button-visibility":c.actionLaneEnabled?c.contextMenuButtonVisibility:void 0,"data-item-context-menu-trigger-mode":c.contextMenuEnabled?c.contextMenuTriggerMode:void 0,"data-item-has-context-menu-action-lane":c.actionLaneEnabled?`true`:void 0,"data-item-has-git-lane":c.gitLaneActive?`true`:void 0,"data-item-parent-path":f.length>0?f:void 0,"data-item-parked":o?`true`:void 0,"data-item-path":r,"data-item-type":t.kind===`directory`?`folder`:`file`,"data-type":`item`,id:d?void 0:a,role:d?void 0:`treeitem`,style:{minHeight:`${s}px`,...u},tabIndex:!d&&t.isFocused?0:-1,...p}}function Rh(e){let{event:t,mode:n,isSearchOpen:r,isDirectory:i}=e,a=t.ctrlKey||t.metaKey,o=t.shiftKey||a,s=t.shiftKey?{additive:a,kind:`range`}:a?{kind:`toggle`}:{kind:`single`};return{closeSearch:r,revealCanonical:n===`sticky`,selection:s,toggleDirectory:!o&&i}}function zh(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,topInset:i=0,viewportHeight:a}=e;if(n<0)return null;let o=Math.max(0,i),s=n*r,c=s+r;if(s<t+o){let e=Math.max(0,s-o);return e===t?null:e}if(c>t+a){let e=c-a;return e===t?null:e}return null}function Bh(e){let{currentScrollTop:t,focusedIndex:n,itemHeight:r,targetViewportOffset:i,totalHeight:a,viewportHeight:o}=e;if(n<0)return null;let s=Math.max(0,i),c=n*r,l=c+r,u=t+s,d=t+o;if(c>=u&&l<=d)return null;let f=Math.max(0,a-o),p=Math.max(0,Math.min(c-s,f));return p===t?null:p}var Vh,Hh,Uh,Wh,Gh=Object.is,Kh=0,qh=[],Jh=Z,Yh=Jh.__b,Xh=Jh.__r,Zh=Jh.diffed,Qh=Jh.__c,$h=Jh.unmount,eg=Jh.__;function tg(e,t){Jh.__h&&Jh.__h(Hh,e,Kh||t),Kh=0;var n=Hh.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function ng(e){return Kh=1,rg(mg,e)}function rg(e,t,n){var r=tg(Vh++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):mg(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);Gh(t,n)||(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=Hh,!Hh.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return!!e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.forEach(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,Gh(t,e.__[0])||(o=!0)}}),a&&a.call(this,e,t,n)||o};Hh.__f=!0;var a=Hh.shouldComponentUpdate,o=Hh.componentWillUpdate;Hh.componentWillUpdate=function(e,t,n){if(4&this.__g){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},Hh.shouldComponentUpdate=i}return r.__N||r.__}function ig(e,t){var n=tg(Vh++,3);!Jh.__s&&pg(n.__H,t)&&(n.__=e,n.u=t,Hh.__H.__h.push(n))}function ag(e,t){var n=tg(Vh++,4);!Jh.__s&&pg(n.__H,t)&&(n.__=e,n.u=t,Hh.__h.push(n))}function $(e){return Kh=5,og(function(){return{current:e}},[])}function og(e,t){var n=tg(Vh++,7);return pg(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function sg(e,t){return Kh=8,og(function(){return e},t)}function cg(){for(var e;e=qh.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(dg),e.__H.__h.forEach(fg),e.__H.__h=[]}catch(t){e.__H.__h=[],Jh.__e(t,e.__v)}}Jh.__b=function(e){Hh=null,Yh&&Yh(e)},Jh.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),eg&&eg(e,t)},Jh.__r=function(e){Xh&&Xh(e),Vh=0;var t=(Hh=e.__c).__H;t&&(Uh===Hh?(t.__h=[],Hh.__h=[],t.__.forEach(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.forEach(dg),t.__h.forEach(fg),t.__h=[],Vh=0)),Uh=Hh},Jh.diffed=function(e){Zh&&Zh(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(qh.push(t)!==1&&Wh===Jh.requestAnimationFrame||((Wh=Jh.requestAnimationFrame)||ug)(cg)),t.__H.__.forEach(function(e){e.u&&(e.__H=e.u),e.u=void 0})),Uh=Hh=null},Jh.__c=function(e,t){t.some(function(e){try{e.__h.forEach(dg),e.__h=e.__h.filter(function(e){return!e.__||fg(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],Jh.__e(n,e.__v)}}),Qh&&Qh(e,t)},Jh.unmount=function(e){$h&&$h(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(e){try{dg(e)}catch(e){t=e}}),n.__H=void 0,t&&Jh.__e(t,n.__v))};var lg=typeof requestAnimationFrame==`function`;function ug(e){var t,n=function(){clearTimeout(r),lg&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);lg&&(t=requestAnimationFrame(n))}function dg(e){var t=Hh,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),Hh=t}function fg(e){var t=Hh;e.__c=e.__(),Hh=t}function pg(e,t){return!e||e.length!==t.length||t.some(function(t,n){return!Gh(t,e[n])})}function mg(e,t){return typeof t==`function`?t(e):t}function hg(e){if(e==null||!e.isConnected||e===document.body||e===document.documentElement)return!1;e.focus({preventScroll:!0});let t=e.getRootNode();return t instanceof ShadowRoot?t.activeElement===e:document.activeElement===e}function gg(e){let t=e.getRootNode();if(t instanceof ShadowRoot){let e=t.activeElement;return e instanceof HTMLElement?e:null}let n=document.activeElement;return n instanceof HTMLElement&&e.contains(n)?n:null}function _g({ariaLabel:e,isFlattened:t=!1,ref:n,value:r,onBlur:i,onInput:a}){return Q(`input`,{ref:n,"data-item-rename-input":!0,...t?{"data-item-flattened-rename-input":!0}:{},"aria-label":e,value:r,onBlur:i,onInput:a,onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),onPointerDown:e=>e.stopPropagation()})}function vg(e,t=null,n=null){"use no memo";let r=e.flattenedSegments;return r==null||r.length===0?t??e.name:Q(`span`,{"data-item-flattened-subitems":!0,children:r.map((e,i)=>{let a=i===r.length-1;return Q(Fm,{children:[Q(`span`,{"data-item-flattened-subitem":e.path,"data-item-flattened-subitem-drag-target":n===e.path?`true`:void 0,children:a&&t!=null?t:Q(vh,{children:e.name})}),i<r.length-1?` / `:``]},e.path)})})}function yg(e){return e.isFlattened?e.flattenedSegments?.findLast(e=>e.isTerminal)?.path??e.path:e.path}function bg(e){let t=e.flattenedSegments;return t==null||t.length===0?e.name:t.map(e=>e.name).join(` / `)}function xg(e,t,n,r){return e.map((e,i)=>{let a=i*n,o=e.subtreeEndIndex+1;if(o>=r)return{row:e.row,top:a};let s=o*n-t;return{row:e.row,top:Math.min(a,s-n)}}).filter(e=>e.top+n>0)}function Sg({controller:e,itemHeight:t,overscan:n,scrollTop:r,stickyFolders:i,viewportHeight:a}){let o=e.getVisibleCount(),s=i&&o>0?e.getStickyRowCandidates(r,t):[],c=s==null&&i&&o>0?e.getVisibleRows(0,o-1):[],l=Mh(c,{itemHeight:t,overscan:n,scrollTop:r,stickyRows:s==null?void 0:xg(s,r,t,o),totalRowCount:o,viewportHeight:a}),u=i&&r<=0&&o>0?e.getStickyRowCandidates(1,t):[],d=u!=null&&r<=0?xg(u,1,t,o):i&&r<=0&&c.length>0?jh(c,1,t):l.sticky.rows;return{overlayHeight:d.reduce((e,n)=>Math.max(e,n.top+t),0),overlayRows:d,snapshot:l,visibleRows:c}}var Cg=400,wg=10,Tg=40,Eg=18;function Dg(e,t,n){let r=e,i=document.elementFromPoint?.bind(document)??null,a=r.elementFromPoint?.(t,n)??i?.(t,n)??null;return e instanceof ShadowRoot&&(a==null||!e.contains(a))?Og(e,t,n):a instanceof HTMLElement?a:null}function Og(e,t,n){let r=Array.from(e.querySelectorAll(`[data-type="item"], [data-item-flattened-subitem]`));for(let e=r.length-1;e>=0;e--){let i=r[e],a=i.getBoundingClientRect();if(t>=a.left&&t<=a.right&&n>=a.top&&n<=a.bottom)return i}return null}function kg(e){let t=e?.closest?.(`[data-type="item"]`);if(!(t instanceof HTMLElement))return null;let n=t.dataset.itemPath??null;if(n==null)return null;let r=e?.closest?.(`[data-item-flattened-subitem]`),i=r instanceof HTMLElement?r.getAttribute(`data-item-flattened-subitem`)??null:null;if(i!=null&&i.endsWith(`/`))return{directoryPath:i,flattenedSegmentPath:i,hoveredPath:n,kind:`directory`};if(t.dataset.itemType===`folder`)return{directoryPath:n,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`};let a=t.dataset.itemParentPath??null;return a==null||a.length===0?{directoryPath:null,flattenedSegmentPath:null,hoveredPath:n,kind:`root`}:{directoryPath:a,flattenedSegmentPath:null,hoveredPath:n,kind:`directory`}}function Ag(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t.dataset.fileTreeDragPreview=`true`,t.setAttribute(`aria-hidden`,`true`),t.tabIndex=-1,Object.assign(t.style,{boxShadow:`0 4px 12px rgba(0, 0, 0, 0.15)`,left:`0px`,margin:`0`,pointerEvents:`none`,position:`fixed`,top:`0px`,willChange:`transform`,zIndex:`10000`}),t}function jg(){return navigator.vendor!==`Apple Computer, Inc.`}function Mg(e,t){let n=e-t.top;if(n<Tg)return-Math.ceil((Tg-Math.max(0,n))/Tg*Eg);let r=t.bottom-e;return r<Tg?Math.ceil((Tg-Math.max(0,r))/Tg*Eg):0}function Ng(e,t){if(e!=null){let t=Nh[e];return t==null?null:{text:t,title:Ph[e]}}return t?{icon:{name:`file-tree-icon-dot`,width:6,height:6},title:Fh}:null}function Pg(e,t,n){if(t==null||t.size===0)return null;let r=[];for(let i=e.length-1;i>=0;--i){let a=e[i],o=n.get(a);if(o!=null){for(let e of r)n.set(e,o);return o?`ignored`:null}if(t.has(a)){n.set(a,!0);for(let e of r)n.set(e,!0);return`ignored`}r.push(a)}for(let e of r)n.set(e,!1);return null}function Fg(e){return e!=null&&`toggle`in e}function Ig(e){return e.code===`Space`||e.key===` `||e.key===`Spacebar`}function Lg(e){return e.key.length===1&&/^[\p{L}\p{N}]$/u.test(e.key)&&!e.ctrlKey&&!e.metaKey&&!e.altKey}function Rg(e,t){if(e==null)return t;let n=e.getBoundingClientRect().height;return n>0?n:e.clientHeight>0?e.clientHeight:t}function zg(e,t){return e!=null&&e>0?e:t}function Bg(e){let t=e.borderBoxSize,n=Array.isArray(t)?t[0]:t;return n!=null&&Number.isFinite(n.blockSize)&&n.blockSize>0?n.blockSize:e.contentRect.height>0?e.contentRect.height:null}function Vg(e,t,n,r,i=0){let a=zh({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,topInset:i,viewportHeight:r});return a==null?!1:(e.scrollTop=a,!0)}function Hg(e,t,n,r,i,a){let o=Bh({currentScrollTop:e.scrollTop,focusedIndex:t,itemHeight:n,targetViewportOffset:a,totalHeight:i,viewportHeight:r});return o==null?!1:(e.scrollTop=o,!0)}function Ug(e,t,n,r){return n.end<n.start?null:e<n.start?-t:e>n.end?r:null}function Wg(e){return e==null?``:`[data-item-section="spacing-item"][data-ancestor-path="${e.replaceAll(`\\`,`\\\\`).replaceAll(`"`,`\\"`)}"] { opacity: 1; }`}function Gg(e){return e.shiftKey&&e.key===`F10`||e.key===`ContextMenu`}function Kg(e,t){return t&&Gg(e)||(e.ctrlKey||e.metaKey)&&Ig(e)?!0:e.key===`ArrowDown`||e.key===`ArrowLeft`||e.key===`ArrowRight`||e.key===`ArrowUp`}var qg=new Set([`ArrowDown`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`]);function Jg(e){for(let t of e.composedPath())if(t instanceof HTMLElement&&(t.dataset.fileTreeContextMenuRoot===`true`||t.dataset.type===`context-menu-anchor`||t.dataset.type===`context-menu-trigger`||t.getAttribute(`slot`)===`context-menu`))return!0;return!1}function Yg(e){return{bottom:e.bottom,height:e.height,left:e.left,right:e.right,top:e.top,width:e.width,x:e.x,y:e.y}}function Xg(e,t){return{bottom:t,height:0,left:e,right:e,top:t,width:0,x:e,y:t}}function Zg(e,t){if(e==null)return t.offsetTop;let n=t.getBoundingClientRect(),r=e.getBoundingClientRect();return n.top-r.top}function Qg(e,t,n){if(n==null){e.delete(t);return}e.set(t,n)}function $g(e,t,n){if(e==null)return null;let r=t.get(e)??null;if(r!=null)return r;let i=n.get(e)??null;return i?.dataset.itemParked===`true`?null:i}function e_(e){if(e==null)return[];let t=[];for(let n of e.querySelectorAll(`button[data-file-tree-sticky-row="true"]`)){if(!(n instanceof HTMLElement))continue;let e=n.dataset.fileTreeStickyPath;e!=null&&t.push(e)}return t}function t_(e,t){if(e==null||t==null)return null;for(let n of e.querySelectorAll(`button[data-item-focused="true"][data-item-parked="true"]`))if(n instanceof HTMLElement&&n.dataset.itemPath===t)return n;return null}function n_(e,t,n,r,i,a,o){let s=Math.max(0,a-i),c=t?.getBoundingClientRect()??null,l=c==null||n==null?null:n.getBoundingClientRect().top-c.top,u=t_(e,r),d=c==null||u==null?null:u.getBoundingClientRect().top-c.top;return Math.max(0,Math.min(d??Math.max(l??0,s),Math.max(0,o-i)))}function r_(e,t){return{kind:e.kind,name:bg(e),path:t}}function i_(e){return e==null?void 0:`${e}__tree`}function a_(e,t,n){if(e!=null)return`${e}__focused-item-${encodeURIComponent(t)}${n?`__parked`:``}`}function o_(e){return e===`file-tree-icon-chevron`||e===`file-tree-icon-dot`||e===`file-tree-icon-file`||e===`file-tree-icon-lock`}function s_(e,t){if(e==null)return null;if(`text`in e)return Q(`span`,{title:e.title,children:e.text});let n=typeof e.icon==`string`?o_(e.icon)?t(e.icon):{name:e.icon}:o_(e.icon.name)?(()=>{let n=t(e.icon.name),{name:r,...i}=e.icon;return{...n,...i}})():e.icon;return Q(`span`,{title:e.title,children:Q(ch,{...n})})}function c_(e){e!=null&&hg(e.querySelector([`button:not([disabled])`,`[href]`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`, `))??e)}function l_(e,t,{actionLaneEnabled:n=!1,customDecoration:r=null,decorationLaneEnabled:i=!1,dragTargetFlattenedSegmentPath:a=null,gitDecoration:o=null,gitLaneActive:s=!1,renameInput:c=null,showDecorativeActionAffordance:l=!1}={}){let u=yg(e);return Q(Fm,{children:[e.depth>0?Q(`div`,{"data-item-section":`spacing`,children:Array.from({length:e.depth}).map((t,n)=>Q(`div`,{"data-item-section":`spacing-item`,"data-ancestor-path":e.ancestorPaths[n]},n))}):null,Q(`div`,{"data-item-section":`icon`,children:e.kind===`directory`?Q(ch,{...t(`file-tree-icon-chevron`)}):Q(ch,{...t(`file-tree-icon-file`,u)})}),Q(`div`,{"data-item-section":`content`,children:e.isFlattened?vg(e,c,a):c??Q(bh,{minimumLength:5,split:`extension`,children:e.name})}),i?Q(`div`,{"data-item-section":`decoration`,children:r==null?null:s_(r,t)}):null,s?Q(`div`,{"data-item-section":`git`,children:s_(o,t)}):null,n?Q(`div`,{"data-item-section":`action`,children:l?Q(`span`,{"aria-hidden":`true`,"data-item-action-affordance":`decorative`,children:Q(ch,{...t(`file-tree-icon-ellipsis`)})}):null}):null]})}function u_(e,t,n,r={}){let{controller:i,renameView:a,visualFocusPath:o,contextHoverPath:s,draggedPathSet:c,dragTarget:l,dragAndDropEnabled:u,shouldSuppressContextMenu:d,handleRowDragStart:f,handleRowDragEnd:p,handleRowTouchStart:m,instanceId:h,itemHeight:g,gitStatusByPath:_,ignoredGitDirectories:v,ignoredInheritanceCache:y,directoriesWithGitChanges:b,gitLaneActive:x,contextMenuEnabled:S,contextMenuTriggerMode:C,contextMenuButtonTriggerEnabled:w,contextMenuButtonVisibility:T,contextMenuRightClickEnabled:E,registerRenameInput:D,registerButton:O,resolveIcon:k,renderDecorationForRow:A,openContextMenuForRow:j,onRowClick:M,onKeyDown:N}=e,P=yg(t),{isParked:F=!1,mode:I=`flow`,style:ee}=r,te=I===`sticky`,ne=_?.get(P)??null??Pg(t.ancestorPaths,v,y),L=t.kind===`directory`&&(b?.has(P)??!1),re=A(t,P),R=Ng(ne,L),ie=S&&w,z=re!=null||x||ie,B=ie&&T===`always`,ae=a.getPath()===P,oe=ae?a.getValue():``,V=te||!ae?null:Q(_g,{ref:D,ariaLabel:`Rename ${bg(t)}`,isFlattened:t.isFlattened,value:oe,onBlur:()=>{a.commit()},onInput:e=>{a.setValue(e.currentTarget.value)}}),se=l_(t,k,{actionLaneEnabled:ie,customDecoration:re,decorationLaneEnabled:z,dragTargetFlattenedSegmentPath:l?.flattenedSegmentPath??null,gitDecoration:R,gitLaneActive:x,renameInput:V,showDecorativeActionAffordance:B}),ce={...Lh({ariaLabel:bg(t),domId:t.isFocused?a_(h,P,F):void 0,extraStyle:ee,features:{actionLaneEnabled:ie,contextMenuButtonVisibility:ie?T:null,contextMenuEnabled:S,contextMenuTriggerMode:S?C:null,gitLaneActive:x},isParked:F,itemHeight:g,mode:I,row:t,state:{containsGitChange:L,effectiveGitStatus:ne,isContextHovered:s===P,isDragTarget:l?.kind===`directory`&&l.directoryPath===P,isDragging:c?.has(P)===!0,isFocusRinged:t.isFocused&&o===P},targetPath:P}),key:n,onContextMenu:S||u?e=>{if(d()){e.preventDefault();return}S&&(e.preventDefault(),E&&(i.focusPath(P),j(t,P,{anchorRect:Xg(e.clientX,e.clientY),source:`right-click`})))}:void 0,onFocus:te?void 0:()=>{i.focusPath(P)},onKeyDown:te?void 0:N,ref:e=>{O(P,e)}};return!te&&ae?Q(`div`,{...ce,children:se}):Q(`button`,{...ce,type:`button`,draggable:u&&!F,onDragEnd:u&&!F?p:void 0,onDragStart:u&&!F?e=>{f(e,t,P)}:void 0,onMouseDown:e=>{if(te){e.preventDefault();return}i.isSearchOpen()&&e.preventDefault()},onTouchStart:u&&!F?e=>{m(e,t,P)}:void 0,onClick:e=>{M(e,t,P,I)},children:se})}function d_(e,t,n){return t.end<t.start?[]:e.controller.getVisibleRows(t.start,t.end).filter(e=>!n.has(yg(e))).map((n,r)=>u_(e,n,t.start+r))}function f_({composition:e,controller:t,gitStatusByPath:n,ignoredGitDirectories:r,directoriesWithGitChanges:i,icons:a,instanceId:o,itemHeight:s=Nl,overscan:c=10,renamingEnabled:l=!1,renderRowDecoration:u,searchBlurBehavior:d=`close`,searchEnabled:f=!1,searchFakeFocus:p=!1,slotHost:m,stickyFolders:h=!1,initialViewportHeight:g=420}){"use no memo";let _=$(null),v=$(null),y=$(!1),b=$(null),x=$(null),S=$(null),C=$(null),w=$(null),T=$(new Map),E=$(new Map),D=$(()=>{}),O=$(null),k=$(!1),A=$(null),j=$(null),M=$(!1),N=$(null),P=$(null),F=$(null),I=$(null),ee=$(null),te=$(null),ne=$(null),L=$(null),re=$(!1),R=$(null),ie=$(null),z=$(null),B=$(null),ae=og(()=>new Map,[]),[,oe]=ng(0),[V,se]=ng(null),[ce,le]=ng(null),[ue,de]=ng(null),[fe,pe]=ng(null),[me,he]=ng(0),[H,ge]=ng(null),_e=$(H);_e.current=H;let U=$(null),ve=$(null),ye=$(null),be=$(null),xe=$(null),Se=$(!1),Ce=()=>{ve.current=null,ye.current=null,be.current=null},we=(e,t)=>{ve.current=e,ye.current=null,be.current=t==null?null:{path:e,scrollTop:t}},Te=(e,t)=>{ve.current=null,ye.current={path:e,viewportOffset:t},be.current=null},Ee=$(d===`retain`&&t.isSearchOpen()),[De,Oe]=ng(p);ig(()=>{p||Oe(!1)},[p]);let ke=$(!1),Ae=sg(()=>{ke.current=!0,Oe(e=>e&&!1)},[]),[je,Me]=ng(()=>Sg({controller:t,itemHeight:s,overscan:c,scrollTop:0,stickyFolders:h,viewportHeight:g})),[Ne,Pe]=ng(!1);ig(()=>{Pe(!0)},[]);let Fe=e?.contextMenu?.enabled===!0||e?.contextMenu?.render!=null||e?.contextMenu?.onOpen!=null||e?.contextMenu?.onClose!=null,Ie=e?.contextMenu?.triggerMode??(Fe?`right-click`:`both`),Le=Ie===`both`||Ie===`button`,Re=e?.contextMenu?.buttonVisibility??`when-needed`,ze=Ie===`both`||Ie===`right-click`;ag(()=>{let e=S.current;if(e==null)return;let t=e=>{if(!(e instanceof CustomEvent))return;let t=e.detail?.path??null;xe.current=t,le(t),pe(t==null?null:`pointer`)},n=e=>{e instanceof CustomEvent&&(Se.current=e.detail?.disabled===!0)};return e.addEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.addEventListener(`file-tree-debug-set-scroll-suppression`,n),()=>{e.removeEventListener(`file-tree-debug-set-context-menu-trigger`,t),e.removeEventListener(`file-tree-debug-set-scroll-suppression`,n)}},[]);let Be=sg((e,t)=>{Qg(T.current,e,t)},[]),Ve=sg((e,t)=>{Qg(E.current,e,t)},[]),He=sg(e=>{x.current=e},[]),Ue=sg(e=>$g(e,E.current,T.current),[]),We=n!=null||r!=null||i!=null,{resolveIcon:Ge}=og(()=>_m(a),[a]),Ke=t[Ip](),qe=Ke.getPath(),Je=qe!=null,Ye=t.isSearchOpen(),Xe=t.getSearchValue(),W=t.getFocusedPath(),G=t.getFocusedIndex(),Ze=t.isDragAndDropEnabled(),Qe=t.getDragSession(),$e=og(()=>Qe==null?null:new Set(Qe.draggedPaths),[Qe]),et=Qe?.target??null,tt=Qe?.primaryPath??null,nt=i_(o),{overlayHeight:rt,overlayRows:it,snapshot:at,visibleRows:ot}=je,st=at.physical.viewportHeight,ct=og(()=>({end:at.window.endIndex,start:at.window.startIndex}),[at.window.endIndex,at.window.startIndex]),lt=it,ut=at.sticky.rows,dt=at.physical.totalHeight,ft=at.sticky.height,pt=og(()=>new Set(ut.map(e=>yg(e.row))),[ut]),mt=G>=0&&G>=ct.start&&G<=ct.end,ht=sg((e,t)=>u?.({item:r_(e,t),row:e})??null,[u]),gt=sg(e=>hg(e==null?null:T.current.get(e)??null)?!0:hg(S.current),[]),_t=sg(e=>{gt(t.focusNearestPath(e))},[t,gt]),vt=$(_t);vt.current=_t;let yt=$(!0),bt=$(()=>{}),xt=sg((t=!0)=>{let n=_e.current;n!=null&&(yt.current=yt.current&&t,ge(null),e?.contextMenu?.onClose?.(),yt.current&&_t(n.path))},[e?.contextMenu,_t]);bt.current=xt;let St=sg(e=>{let t=e==null?null:Zg(S.current,e);de(e=>e===t?e:t)},[]),Ct=sg((e,n,r)=>{let i=t.getItem(n);if(i==null)return;let a=Ue(n);if(a?.dataset.fileTreeStickyRow===`true`){let e=C.current;we(n,e?.scrollTop??null),k.current=!0,se(e=>e===n?e:n)}i.focus(),St(a),yt.current=!0,ge({anchorRect:r?.anchorRect??null,item:r_(e,n),path:n,source:r?.source??`keyboard`})},[t,Ue,St]),wt=sg(e=>{if(l){if(t.isSearchOpen()){let e=C.current,t=Rg(e,st);N.current=G<0||e==null?null:Math.max(0,Math.min(G*s-e.scrollTop,Math.max(0,t-s))),M.current=!0}t.startRenaming(e)!==!1&&(pe(`focus`),oe(e=>e+1))}},[t,G,s,l,st]),Tt=sg((e,{restoreTreeFocus:n=!0,targetOffset:r=`live-overlay`}={})=>{let i=C.current;if(i==null)return!1;t.focusPath(e);let a=t.getFocusedIndex();if(a<0)return!1;let o=t.getVisibleRows(a,a)[0]??null;if(o==null)return!1;let l=Rg(i,st),u=t.getVisibleCount()*s,d=r===`sticky-parents`?o.ancestorPaths.length*s:Sg({controller:t,itemHeight:s,overscan:c,scrollTop:i.scrollTop,stickyFolders:h,viewportHeight:l}).snapshot.sticky.height;return k.current=!0,Hg(i,a,s,l,u,d),D.current(),U.current=n?e:null,!0},[t,s,c,st,h]),Et=()=>y.current===!0||B.current!=null||re.current===!0,Dt=e=>typeof window.requestAnimationFrame==`function`?window.requestAnimationFrame(()=>{e()}):window.setTimeout(e,16),Ot=e=>{if(e!=null){if(typeof window.cancelAnimationFrame==`function`){window.cancelAnimationFrame(e);return}window.clearTimeout(e)}},kt=()=>{I.current!=null&&(clearTimeout(I.current),I.current=null),F.current=null},At=()=>{te.current?.remove(),te.current=null},jt=()=>{Ot(P.current),P.current=null,ee.current=null},Mt=e=>{let t=S.current?.getRootNode();if(t instanceof ShadowRoot){t.append(e);return}document.body.append(e)},Nt=()=>{L.current?.(),L.current=null,B.current!=null&&(clearTimeout(B.current),B.current=null),re.current=!1,R.current=null,z.current=null,ie.current!=null&&(ie.current.setAttribute(`draggable`,`true`),ie.current.style.removeProperty(`touch-action`),ie.current=null),At(),kt(),jt(),ne.current=null},Pt=(e,n)=>{let r=S.current?.getRootNode(),i=kg(Dg(r instanceof ShadowRoot?r:document,e,n));return t.setDragTarget(i),t.getDragSession()?.target??null},Ft=e=>{let n=t.getDragAndDropConfig()?.openOnDropDelay??800;if(e==null||e.kind!==`directory`||e.directoryPath==null||n<=0){kt();return}let r=t.getItem(e.directoryPath),i=Fg(r)?r:null;if(i==null||i.isExpanded()){kt();return}let a=`${e.directoryPath}::${e.flattenedSegmentPath??``}`;F.current!==a&&(kt(),F.current=a,I.current=setTimeout(()=>{let n=t.getDragSession()?.target;n?.kind!==`directory`||n.directoryPath!==e.directoryPath||n.flattenedSegmentPath!==e.flattenedSegmentPath||i.expand()},n))},It=()=>{P.current=null;let e=ee.current,n=C.current;if(e==null||n==null||t.getDragSession()==null)return;let r=n.getBoundingClientRect(),i=Mg(e.clientY,r);if(i===0)return;let a=Math.max(0,n.scrollHeight-n.clientHeight),o=Math.max(0,Math.min(a,n.scrollTop+i));o!==n.scrollTop&&(n.scrollTop=o,D.current()),Ft(Pt(e.clientX,e.clientY)),P.current=Dt(It)},Lt=(e,t)=>{ee.current={clientX:e,clientY:t},P.current??=Dt(It)},Rt=(e,n,r)=>{let i=e.currentTarget;if(i!=null){if(Nt(),At(),kt(),jt(),t.startDrag(r)===!1){e.preventDefault();return}if(ne.current=n,e.dataTransfer!=null&&(e.dataTransfer.effectAllowed=`move`,e.dataTransfer.dropEffect=`move`,e.dataTransfer.setData(`text/plain`,r),jg())){let t=Ag(i),n=i.getBoundingClientRect();Object.assign(t.style,{height:`${n.height}px`,opacity:`0.85`,transform:`translate3d(-9999px, 0px, 0)`,width:`${n.width}px`}),Mt(t),te.current=t,e.dataTransfer.setDragImage(t,Math.max(0,e.clientX-n.left),Math.max(0,e.clientY-n.top))}}},zt=()=>{At(),kt(),jt(),ne.current=null,t.cancelDrag()},Bt=(e,n,r)=>{if(B.current!=null||re.current)return;let i=e.touches[0],a=e.currentTarget;if(i==null||a==null)return;z.current={clientX:i.clientX,clientY:i.clientY},ie.current=a,a.setAttribute(`draggable`,`false`);let o=(e={})=>{let t=e.restoreNativeDraggable??!re.current;B.current!=null&&(clearTimeout(B.current),B.current=null),document.removeEventListener(`touchmove`,s),document.removeEventListener(`touchend`,c),document.removeEventListener(`touchcancel`,c),L.current===o&&(L.current=null),t&&(a.setAttribute(`draggable`,`true`),ie.current===a&&(ie.current=null),z.current=null)},s=e=>{let t=e.touches[0],n=z.current;if(t==null||n==null)return;let r=t.clientX-n.clientX,i=t.clientY-n.clientY;r*r+i*i<=wg*wg||o()},c=()=>{o()};document.addEventListener(`touchmove`,s,{passive:!0}),document.addEventListener(`touchend`,c),document.addEventListener(`touchcancel`,c),L.current=o,B.current=setTimeout(()=>{if(o({restoreNativeDraggable:!1}),t.startDrag(r)===!1){a.setAttribute(`draggable`,`true`),ie.current===a&&(ie.current=null),z.current=null;return}re.current=!0,ie.current=a,a.setAttribute(`draggable`,`false`),a.style.setProperty(`touch-action`,`none`),ne.current=n;let e=a.getBoundingClientRect(),s=Ag(a);Object.assign(s.style,{height:`${e.height}px`,opacity:`0.85`,transform:`translate3d(${e.left}px, ${e.top}px, 0)`,width:`${e.width}px`}),Mt(s),te.current=s,R.current={x:i.clientX-e.left,y:i.clientY-e.top};let c=e=>{let t=e.touches[0];if(t==null)return;e.preventDefault();let n=R.current;n!=null&&te.current!=null&&(te.current.style.transform=`translate3d(${t.clientX-n.x}px, ${t.clientY-n.y}px, 0)`),Ft(Pt(t.clientX,t.clientY)),Lt(t.clientX,t.clientY)},l=e=>{let n=e.changedTouches[0];n!=null&&Pt(n.clientX,n.clientY),t.completeDrag(),Nt()},u=()=>{t.cancelDrag(),Nt()};L.current=()=>{document.removeEventListener(`touchmove`,c),document.removeEventListener(`touchend`,l),document.removeEventListener(`touchcancel`,u)},document.addEventListener(`touchmove`,c,{passive:!1}),document.addEventListener(`touchend`,l),document.addEventListener(`touchcancel`,u)},Cg)},Vt=e=>{if(H!=null){if(e.key===`Escape`){xt(),e.preventDefault(),e.stopPropagation();return}qg.has(e.key)&&(e.preventDefault(),e.stopPropagation());return}if(Ke.isActive()){if(e.key===`Escape`)Ke.cancel();else if(e.key===`Enter`)Ke.commit();else return;pe(`focus`),oe(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(l&&e.key===`F2`){wt(W??void 0),e.preventDefault(),e.stopPropagation();return}if(Ye){if(e.key===`Escape`)M.current=!1,N.current=null,t.closeSearch();else if(e.key===`Enter`){let e=t.getFocusedPath();e!=null&&t.selectOnlyPath(e);let n=C.current,r=Rg(n,st);N.current=G<0||n==null?null:Math.max(0,Math.min(G*s-n.scrollTop,Math.max(0,r-s))),M.current=!0,t.closeSearch()}else if(e.key===`ArrowDown`)t.focusNextSearchMatch();else if(e.key===`ArrowUp`)t.focusPreviousSearchMatch();else return;pe(`focus`),oe(e=>e+1),e.preventDefault(),e.stopPropagation();return}if(f&&Lg(e)){t.openSearch(e.key),oe(e=>e+1),e.preventDefault(),e.stopPropagation();return}let n=Fe&&Gg(e),r=Kg(e,Fe),i=r&&S.current!=null?gg(S.current):null,a=r?new Set(e_(S.current)):new Set,o=i?.dataset.fileTreeStickyPath??null,c=i?.dataset.fileTreeStickyRow===`true`&&o!=null;if(c&&o!==W&&a.has(o)){let e=C.current;we(o,e?.scrollTop??null),t.focusPath(o)}let u=t.getFocusedPath(),d=t.getFocusedIndex(),p=t.getFocusedItem();if(p==null)return;let m=Fg(p)?p:null,h=u!=null&&(pt.has(u)||c&&o===u&&a.has(u)),g=e.key===`ArrowDown`||e.key===`ArrowUp`||e.key===`ArrowRight`&&m!=null&&m.isExpanded(),_=e.key===`ArrowLeft`&&h&&m!=null&&m.isExpanded(),v=C.current,y=!0;if(e.shiftKey&&e.key===`ArrowDown`)t.extendSelectionFromFocused(1);else if(e.shiftKey&&e.key===`ArrowUp`)t.extendSelectionFromFocused(-1);else if(n&&u!=null&&d>=0){let e=t.getVisibleRows(d,d)[0]??null,n=$g(u,E.current,T.current);e==null||n==null?y=!1:Ct(e,u)}else if((e.ctrlKey||e.metaKey)&&Ig(e))t.toggleFocusedSelection();else if((e.ctrlKey||e.metaKey)&&e.key.toLowerCase()===`a`)t.selectAllVisiblePaths();else switch(e.key){case`ArrowDown`:t.focusNextItem();break;case`ArrowUp`:t.focusPreviousItem();break;case`ArrowRight`:m==null||m.isExpanded()?t.focusNextItem():m.expand();break;case`ArrowLeft`:m!=null&&m.isExpanded()?m.collapse():t.focusParentItem();break;case`Home`:t.focusFirstItem();break;case`End`:t.focusLastItem();break;default:y=!1}if(!y)return;pe(`focus`);let b=t.getFocusedPath(),x=b!=null&&(pt.has(b)||a.has(b)),w=g&&b!==u,D=n&&c&&o===u&&b===u;if((h||D)&&b!=null&&(w&&x||D))we(b,v?.scrollTop??null),k.current=!0,se(e=>e===b?e:b);else{let t=e.key===`ArrowUp`&&h&&b!==u;b!=null&&(t||_&&b===u)?(Te(b,n_(S.current,v,i,u,s,ft,st)),k.current=!0,se(e=>e===b?e:b)):Ce()}oe(e=>e+1),e.preventDefault(),e.stopPropagation()};ag(()=>{if(!(!f||!Ye)){if(Ee.current){Ee.current=!1;return}hg(w.current)}},[Ye,f]),ag(()=>{let e=x.current;switch(Ih({hasRenderedInput:e!=null,previousRenamingPath:j.current,renamingPath:qe})){case`reset`:j.current=null;return;case`reveal-canonical`:qe!=null&&Tt(qe,{restoreTreeFocus:!1,targetOffset:`live-overlay`});return;case`ignore`:return;case`focus-input`:e!=null&&(U.current=null,j.current=qe,hg(e),e.select());return}},[ct.end,ct.start,qe,Tt,pt]),ag(()=>{let e=S.current;if(e==null)return;let t=null,n=()=>{t!=null&&(clearTimeout(t),t=null)},r=()=>{let t=gg(e)?.dataset.itemPath??null;se(e=>e===t?e:t)},i=()=>{n(),k.current=!0,r()},a=i=>{let a=i.relatedTarget;if(a==null){n(),t=setTimeout(()=>{if(t=null,gg(e)!=null){r();return}k.current=!1,se(null)},0);return}if(!(a instanceof Node)||!e.contains(a)){n(),k.current=!1,se(null);return}let o=a instanceof HTMLElement?a.dataset.itemPath??null:null;se(e=>e===o?e:o)};return e.addEventListener(`focusin`,i),e.addEventListener(`focusout`,a),()=>{n(),e.removeEventListener(`focusin`,i),e.removeEventListener(`focusout`,a)}},[]),ag(()=>{let e=S.current;e!=null&&(at.physical.scrollTop<=0?e.dataset.scrollAtTop=`true`:delete e.dataset.scrollAtTop)},[at.physical.scrollTop]),ag(()=>{let e=null,n=C.current,r=b.current,i=S.current;if(n==null)return;O.current=Rg(n,g);let a=()=>{let e=t.getVisibleCount(),r=zg(O.current,g),i=Math.max(0,e*s-r);n.scrollTop>i&&(n.scrollTop=i),Me(Sg({controller:t,itemHeight:s,overscan:c,scrollTop:Math.min(n.scrollTop,i),stickyFolders:h,viewportHeight:r}))};D.current=a;let o=!1,l=t.subscribe(()=>{o?oe(e=>e+1):o=!0,a()}),u=()=>{Se.current!==!0&&(r!=null&&(r.dataset.isScrolling??=``),i!=null&&(i.dataset.isScrolling??=``),y.current=!0,e!=null&&clearTimeout(e),e=setTimeout(()=>{r!=null&&delete r.dataset.isScrolling,i!=null&&delete i.dataset.isScrolling,y.current=!1,he(e=>e+1),e=null},50))},d=null,f=()=>{i!=null&&delete i.dataset.overlayReveal,d!=null&&(clearTimeout(d),d=null)},p=()=>{i==null||Se.current===!0||n.scrollTop>0||(i.dataset.overlayReveal=`true`,d!=null&&clearTimeout(d),d=setTimeout(()=>{f()},200))},m=()=>{if(a(),n.scrollTop>0&&f(),_e.current!=null&&y.current&&bt.current(),Se.current===!0){y.current=!1;return}le(e=>e==null?e:null),u()},_=()=>{u(),p()},v=new Set([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`,` `,`Spacebar`]),x=e=>{v.has(e.key)&&_()};n.addEventListener(`scroll`,m,{passive:!0}),n.addEventListener(`wheel`,_,{passive:!0}),n.addEventListener(`touchmove`,_,{passive:!0}),n.addEventListener(`keydown`,x);let w=typeof ResizeObserver<`u`?new ResizeObserver(e=>{O.current=(e[0]==null?null:Bg(e[0]))??Rg(n,g),a()}):null;return w?.observe(n),()=>{D.current=()=>{},l(),n.removeEventListener(`scroll`,m),n.removeEventListener(`wheel`,_),n.removeEventListener(`touchmove`,_),n.removeEventListener(`keydown`,x),e!=null&&clearTimeout(e),d!=null&&clearTimeout(d),r!=null&&delete r.dataset.isScrolling,i!=null&&(delete i.dataset.isScrolling,delete i.dataset.overlayReveal),y.current=!1,O.current=null,w?.disconnect()}},[t,g,s,c,h]),ag(()=>{Fe||H==null||xt(!1)},[xt,Fe,H]);let Ht=og(()=>H==null?null:`${H.path}::${H.source}`,[H]);ag(()=>{if(Ht==null){m?.clearSlotContent(uc);return}let t=_e.current;if(t==null)return;let n=v.current??_.current;if(n==null)return;let r={anchorElement:n,anchorRect:t.anchorRect??Yg(n.getBoundingClientRect()),close:e=>{bt.current(e?.restoreFocus??!0)},restoreFocus:()=>{yt.current&&vt.current(_e.current?.path??null)}},i=e?.contextMenu?.render?.(t.item,r)??null;return m?.setSlotContent(uc,i),e?.contextMenu?.onOpen?.(t.item,r),c_(i),queueMicrotask(()=>{i==null||!i.isConnected||document.activeElement===i&&c_(i)}),()=>{m?.clearSlotContent(uc)}},[Ht,e?.contextMenu,m]),ag(()=>{H!=null&&t.getItem(H.path)==null&&xt()},[xt,H,t]),ag(()=>{if(H==null)return;let e=S.current?.getRootNode(),t=e instanceof ShadowRoot?e.host:S.current,n=e=>{let n=e.target;n instanceof Node&&(Jg(e)||_.current?.contains(n)!==!0&&t?.contains(n)!==!0&&xt())},r=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),xt())};return document.addEventListener(`mousedown`,n,!0),document.addEventListener(`keydown`,r,!0),()=>{document.removeEventListener(`mousedown`,n,!0),document.removeEventListener(`keydown`,r,!0)}},[xt,H]),ag(()=>{let e=C.current,t=S.current;if(e==null||t==null){A.current=W;return}let n=W==null?null:T.current.get(W)??null,r=gg(t),i=r?.dataset.itemPath??null,a=Je&&x.current===r,o=f&&w.current===r,c=M.current&&!Ye,l=N.current??0,u=U.current,d=ve.current,p=ye.current,m=be.current,h=r!=null,g=k.current||h,_=A.current!==W,v=d!=null&&d===W&&W!=null,y=c&&Hg(e,G,s,st,dt,l),b=u!=null&&u===W&&Hg(e,G,s,st,dt,ft),E=p!=null&&p.path===W&&Hg(e,G,s,st,dt,p.viewportOffset),O=m!=null&&m.path===W&&e.scrollTop!==m.scrollTop;if(O&&(e.scrollTop=m.scrollTop),(O||b||E||y||g&&_&&u!==W&&!v&&Vg(e,G,s,st,ft))&&D.current(),!g){A.current=W;return}if(a){A.current=W;return}if(o&&!c){A.current=W;return}if(n==null){c&&G>=0&&(Hg(e,G,s,st,dt,l),D.current()),A.current=W;return}(_||c||u===W||d===W||p?.path===W||m?.path===W||i==null||i!==W)&&(hg(n),u===W&&(U.current=null),d===W&&(ve.current=null),p?.path===W&&(ye.current=null),m?.path===W&&(be.current=null),M.current=!1,N.current=null),A.current=W},[t,G,W,mt,s,Je,Ye,ct,st,f,ft,dt,ot]);let Ut=G>=0&&G>=at.visible.startIndex&&G<=at.visible.endIndex,Wt=W!=null&&lt.some(e=>yg(e.row)===W),Gt=Ut||Wt,Kt=Le&&k.current===!0&&Gt?W:null,qt=fe===`pointer`?ce:null,Jt=H?.path??xe.current??qt??Kt??ce,Yt=H?.source===`right-click`;ag(()=>{y.current&&H==null||St(Ue(Jt))},[H,Ue,ct,st,me,lt,Jt,St,ot]);let Xt=sg(e=>{if(y.current||Jg(e))return;let t=e.target;if(!(t instanceof HTMLElement)||t.closest?.(`[data-type="context-menu-trigger"]`)!=null)return;let n=t.closest?.(`[data-file-tree-sticky-row="true"]`),r=t.closest?.(`[data-type="item"]`),i=n instanceof HTMLElement?n.dataset.fileTreeStickyPath??null:r instanceof HTMLElement?r.dataset.itemPath??null:null;i!=null&&pe(e=>e===`pointer`?e:`pointer`),le(e=>e===i?e:i)},[]),Zt=sg(()=>{le(null)},[]);ag(()=>{if(!Ze)return;let e=()=>{Nt(),t.cancelDrag()};return window.addEventListener(`dragend`,e),()=>{window.removeEventListener(`dragend`,e),Nt(),t.cancelDrag()}},[t,Ze]);let Qt=e=>{if(!Ze||t.getDragSession()==null||re.current)return;let n=kg(e.target instanceof HTMLElement?e.target:null);t.setDragTarget(n),Ft(t.getDragSession()?.target??null),Lt(e.clientX,e.clientY),e.dataTransfer!=null&&(e.dataTransfer.dropEffect=`move`),e.preventDefault()},$t=e=>{if(!Ze||t.getDragSession()==null||re.current)return;let n=e.relatedTarget;n instanceof Node&&S.current?.contains(n)===!0||(kt(),jt(),t.setDragTarget(null))},en=e=>{!Ze||t.getDragSession()==null||re.current||(e.preventDefault(),Pt(e.clientX,e.clientY),t.completeDrag(),At(),kt(),jt(),ne.current=null)},tn=at.window.height,nn=at.window.offsetTop,rn=Math.min(0,st-tn-ft),an=V===W||M.current,on=W!=null&&an&&!mt&&G>=0?ot[G]??t.getVisibleRows(G,G)[0]??null:null,sn=on==null?null:Ug(G,s,ct,tn),cn=ne.current,ln=tt!=null&&cn!=null&&cn.path===tt&&cn.index>=ct.start&&cn.index<=ct.end,un=tt!=null&&cn!=null&&cn.path===tt&&!ln&&cn.path!==on?.path?cn:null,dn=un==null?null:Ug(un.index,s,ct,tn),fn=Wg((G>=0?ot[G]??t.getVisibleRows(G,G)[0]??null:null)?.ancestorPaths.at(-1)??null),pn=Ye&&W!=null?a_(o,W,!mt):void 0,mn=H?.path??(Ye?W:V),hn=H?.path??ce,gn=Ue(Jt),_n=Fe&&Le&&!Yt&&!Je&&gn!=null&&ue!=null&&Jt!=null,vn=Fe&&(_n||H!=null),yn=H?.anchorRect,bn=yn==null&&gn!=null&&ue!=null&&(H!=null||_n)?ue:null,xn=yn==null?bn==null?void 0:{top:`${bn}px`}:{left:`${yn.left}px`,position:`fixed`,right:`auto`,top:`${yn.top}px`},Sn=Yt?{opacity:`0`}:void 0,Cn=sg((e,n,r,i)=>{let a=t.getItem(r),o=Rh({event:{ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey},isDirectory:n.kind===`directory`,isSearchOpen:t.isSearchOpen(),mode:i});switch(o.selection.kind){case`range`:t.selectPathRange(r,o.selection.additive);break;case`toggle`:t.togglePathSelectionFromInput(r);break;case`single`:t.selectOnlyPath(r);break}let s=e.currentTarget instanceof HTMLElement?e.currentTarget:null,c=n.index>=at.visible.startIndex&&n.index<=at.visible.endIndex,l=i===`flow`&&c&&s!=null&&s.dataset.itemParked!==`true`;a?.focus(),l&&(k.current=!0,se(e=>e===r?e:r),pe(`focus`)),o.toggleDirectory&&Fg(a)&&a.toggle(),o.closeSearch&&t.closeSearch(),o.revealCanonical&&Tt(r,{targetOffset:`sticky-parents`})},[t,at.visible.endIndex,at.visible.startIndex,Tt]),wn=()=>{if(y.current||!Le||Jt==null||gn==null)return;let e=t.getItem(Jt);e!=null&&(St(gn),yt.current=!0,ge({anchorRect:null,item:{kind:e.isDirectory()?`directory`:`file`,name:gn.getAttribute(`aria-label`)??Jt,path:e.getPath()},path:e.getPath(),source:`button`}))},Tn={contextHoverPath:hn,contextMenuButtonTriggerEnabled:Le,contextMenuButtonVisibility:Re,contextMenuEnabled:Fe,contextMenuRightClickEnabled:ze,contextMenuTriggerMode:Ie,controller:t,directoriesWithGitChanges:i,dragAndDropEnabled:Ze,draggedPathSet:$e,dragTarget:et,gitLaneActive:We,gitStatusByPath:n,handleRowDragEnd:zt,handleRowDragStart:Rt,handleRowTouchStart:Bt,ignoredGitDirectories:r,ignoredInheritanceCache:ae,instanceId:o,itemHeight:s,onKeyDown:Vt,onRowClick:Cn,openContextMenuForRow:Ct,registerButton:Be,registerRenameInput:He,renameView:Ke,renderDecorationForRow:ht,resolveIcon:Ge,shouldSuppressContextMenu:Et,visualFocusPath:mn},En={...Tn,registerButton:Ve};return Q(`div`,{ref:S,id:nt,"data-file-tree-context-menu-button-visibility":Fe&&Le?Re:void 0,"data-file-tree-context-menu-trigger-mode":Fe?Ie:void 0,"data-file-tree-has-context-menu-action-lane":Fe&&Le?`true`:void 0,"data-file-tree-has-git-lane":We?`true`:void 0,"data-file-tree-virtualized-root":`true`,onDragLeave:Ze?$t:void 0,onDragOver:Ze?Qt:void 0,onDrop:Ze?en:void 0,onKeyDown:Vt,onPointerLeave:Fe?Zt:void 0,onPointerOver:Fe?Xt:void 0,role:`tree`,tabIndex:-1,style:{outline:`none`,position:`relative`},children:[Q(`style`,{"data-file-tree-guide-style":`true`,dangerouslySetInnerHTML:{__html:fn}}),Q(`slot`,{name:lc,"data-type":`header-slot`}),f?Q(`div`,{"data-file-tree-search-container":!0,"data-open":Ye?`true`:`false`,children:Q(`input`,{ref:w,"aria-activedescendant":pn,"aria-controls":nt,placeholder:`Search…`,"data-file-tree-search-input":!0,"data-file-tree-search-input-fake-focus":De?`true`:void 0,value:Xe,onBlur:()=>{d===`retain`&&!ke.current||t.closeSearch()},onFocus:Ae,onPointerDown:Ae,onInput:e=>{Ae();let n=e.currentTarget;t.setSearch(n.value)}})}):null,Q(`div`,{ref:C,"data-file-tree-virtualized-scroll":`true`,children:[h&&Ne&&lt.length>0?Q(`div`,{"aria-hidden":`true`,"data-file-tree-sticky-overlay":`true`,children:Q(`div`,{"data-file-tree-sticky-overlay-content":`true`,style:{height:`${rt}px`},children:lt.map((e,t)=>u_(En,e.row,`sticky:${yg(e.row)}`,{mode:`sticky`,style:{left:`0`,position:`absolute`,right:`0`,top:`${e.top}px`,zIndex:`${lt.length-t}`}}))})}):null,Q(`div`,{ref:b,"data-file-tree-virtualized-list":`true`,style:{height:`${dt}px`},children:[Q(`div`,{"data-file-tree-virtualized-sticky-offset":`true`,"aria-hidden":`true`,style:{height:`${nn}px`}}),Q(`div`,{"data-file-tree-virtualized-sticky":`true`,style:{height:`${tn}px`,top:`${rn}px`,bottom:`${rn}px`},children:[d_(Tn,ct,pt),on!=null&&sn!=null?u_(Tn,on,`parked:${on.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:tt===on.path?`none`:void 0,position:`absolute`,right:`0`,top:`${sn}px`}}):null,un!=null&&dn!=null?u_(Tn,un,`parked-drag:${un.path}`,{isParked:!0,style:{left:`0`,opacity:`0`,pointerEvents:`none`,position:`absolute`,right:`0`,top:`${dn}px`}}):null]})]})]}),Fe?Q(`div`,{ref:_,"data-type":`context-menu-anchor`,"data-visible":vn?`true`:`false`,style:xn,children:[Q(`button`,{ref:v,type:`button`,"data-type":dc,"aria-label":`Options`,"aria-haspopup":`menu`,"aria-expanded":H==null?`false`:`true`,"data-visible":_n?`true`:`false`,onMouseDown:e=>{e.preventDefault()},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),H!=null){xt();return}wn()},tabIndex:-1,style:Sn,children:Q(ch,{...Ge(`file-tree-icon-ellipsis`)})}),H==null?null:Q(`slot`,{name:uc})]}):null,H==null?null:Q(`div`,{"data-type":`context-menu-wash`,"aria-hidden":`true`,onMouseDownCapture:e=>{e.preventDefault(),xt()},onTouchStartCapture:e=>{e.preventDefault(),e.stopPropagation(),xt()},onTouchMoveCapture:e=>{e.preventDefault(),e.stopPropagation()},onWheelCapture:e=>{e.preventDefault(),e.stopPropagation()}})]})}var p_={hydrateRoot:(e,t)=>{rh(Nm(f_,t),e)},renderRoot:(e,t)=>{nh(Nm(f_,t),e)},unmountRoot:e=>{nh(null,e)}};function m_(e,t){p_.renderRoot(e,t)}function h_(e,t){p_.hydrateRoot(e,t)}function g_(e){p_.unmountRoot(e)}var __=class{#e=new Map;#t=null;clearAll(){for(let e of this.#e.values())e.remove();this.#e.clear()}clearSlotContent(e){let t=this.#n(e);t!=null&&(t.remove(),this.#e.delete(e))}setHost(e){if(this.#t=e,e!=null){this.#i(e);for(let[e,t]of this.#e)this.#r(e,t)}}setSlotContent(e,t){let n=this.#n(e);if(n===t){t!=null&&(this.#e.set(e,t),this.#r(e,t));return}if(n?.remove(),t==null){this.#e.delete(e);return}this.#e.set(e,t),this.#r(e,t)}setSlotHtml(e,t){let n=t?.trim()??``;if(n.length===0){this.setSlotContent(e,null);return}let r=this.#n(e);if(r!=null&&r.innerHTML===n){this.#e.set(e,r),this.#r(e,r);return}let i=document.createElement(`div`);i.innerHTML=n,this.setSlotContent(e,i)}#n(e){let t=this.#e.get(e)??null;if(t!=null)return t;let n=this.#t;if(n==null)return null;for(let t of Array.from(n.children))if(t instanceof HTMLElement&&t.dataset.fileTreeManagedSlot===e)return t;return null}#r(e,t){t.slot=e,t.dataset.fileTreeManagedSlot=e,this.#t!=null&&t.parentNode!==this.#t&&this.#t.appendChild(t)}#i(e){for(let t of Array.from(e.children)){if(!(t instanceof HTMLElement))continue;let e=t.dataset.fileTreeManagedSlot;e==null||this.#e.has(e)||this.#e.set(e,t)}}},v_=`__c`,y_=`__k`,b_=`__d`,x_=`__s`,S_=/[\s\n\\/='"\0<>]/,C_=/^(xlink|xmlns|xml)([A-Z])/,w_=/^(?:accessK|auto[A-Z]|cell|ch|col|cont|cross|dateT|encT|form[A-Z]|frame|hrefL|inputM|maxL|minL|noV|playsI|popoverT|readO|rowS|src[A-Z]|tabI|useM|item[A-Z])/,T_=/^ac|^ali|arabic|basel|cap|clipPath$|clipRule$|color|dominant|enable|fill|flood|font|glyph[^R]|horiz|image|letter|lighting|marker[^WUH]|overline|panose|pointe|paint|rendering|shape|stop|strikethrough|stroke|text[^L]|transform|underline|unicode|units|^v[^i]|^w|^xH/,E_=new Set([`draggable`,`spellcheck`]);function D_(e){e.__g===void 0?e[b_]=!0:e.__g|=8}function O_(e){e.__g===void 0?e[b_]=!1:e.__g&=-9}function k_(e){return e.__g===void 0?!0===e[b_]:!!(8&e.__g)}var A_=/["&<]/;function j_(e){if(e.length===0||!1===A_.test(e))return e;for(var t=0,n=0,r=``,i=``;n<e.length;n++){switch(e.charCodeAt(n)){case 34:i=`&quot;`;break;case 38:i=`&amp;`;break;case 60:i=`&lt;`;break;default:continue}n!==t&&(r+=e.slice(t,n)),r+=i,t=n+1}return n!==t&&(r+=e.slice(t,n)),r}var M_={},N_=new Set(`animation-iteration-count.border-image-outset.border-image-slice.border-image-width.box-flex.box-flex-group.box-ordinal-group.column-count.fill-opacity.flex.flex-grow.flex-negative.flex-order.flex-positive.flex-shrink.flood-opacity.font-weight.grid-column.grid-row.line-clamp.line-height.opacity.order.orphans.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-miterlimit.stroke-opacity.stroke-width.tab-size.widows.z-index.zoom`.split(`.`)),P_=/[A-Z]/g;function F_(e){var t=``;for(var n in e){var r=e[n];if(r!=null&&r!==``){var i=n[0]==`-`?n:M_[n]||(M_[n]=n.replace(P_,`-$&`).toLowerCase()),a=`;`;typeof r!=`number`||i.startsWith(`--`)||N_.has(i)||(a=`px;`),t=t+i+`:`+r+a}}return t||void 0}function I_(){this.__d=!0}function L_(e,t){return{__v:e,context:t,props:e.props,setState:I_,forceUpdate:I_,__d:!0,__h:[]}}function R_(e,t,n){if(!e.s){if(n instanceof z_){if(!n.s)return void(n.o=R_.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(R_.bind(null,e,t),R_.bind(null,e,2));e.s=t,e.v=n;let r=e.o;r&&r(e)}}var z_=function(){function e(){}return e.prototype.then=function(t,n){var r=new e,i=this.s;if(i){var a=1&i?t:n;if(a){try{R_(r,1,a(this.v))}catch(e){R_(r,2,e)}return r}return this}return this.o=function(e){try{var i=e.v;1&e.s?R_(r,1,t?t(i):i):n?R_(r,1,n(i)):R_(r,2,i)}catch(e){R_(r,2,e)}},r},e}(),B_,V_,H_,U_,W_={},G_=Array.isArray,K_=Object.assign,q_=``,J_=`<!--$s-->`,Y_=`<!--/$s-->`;function X_(e,t){var n,r=e.type,i=!0;return e[v_]?(i=!1,(n=e[v_]).state=n[x_]):n=new r(e.props,t),e[v_]=n,n.__v=e,n.props=e.props,n.context=t,D_(n),n.state??=W_,n[x_]??(n[x_]=n.state),r.getDerivedStateFromProps?n.state=K_({},n.state,r.getDerivedStateFromProps(n.props,n.state)):i&&n.componentWillMount?(n.componentWillMount(),n.state=n[x_]===n.state?n.state:n[x_]):!i&&n.componentWillUpdate&&n.componentWillUpdate(),H_&&H_(e),n.render(n.props,n.state,t)}function Z_(e,t,n,r,i,a,o){if(e==null||!0===e||!1===e||e===q_)return q_;var s=typeof e;if(s!=`object`)return s==`function`?q_:s==`string`?j_(e):e+q_;if(G_(e)){var c,l=q_;i[y_]=e;for(var u=e.length,d=0;d<u;d++){var f=e[d];if(f!=null&&typeof f!=`boolean`){var p,m=Z_(f,t,n,r,i,a,o);typeof m==`string`?l+=m:(c||=Array(u),l&&c.push(l),l=q_,G_(m)?(p=c).push.apply(p,m):c.push(m))}}return c?(l&&c.push(l),c):l}if(e.constructor!==void 0)return q_;e.__=i,B_&&B_(e);var h=e.type,g=e.props;if(typeof h==`function`){var _,v,y,b=t;if(h===Fm){if(`tpl`in g){for(var x=q_,S=0;S<g.tpl.length;S++)if(x+=g.tpl[S],g.exprs&&S<g.exprs.length){var C=g.exprs[S];if(C==null)continue;typeof C!=`object`||C.constructor!==void 0&&!G_(C)?x+=C:x+=Z_(C,t,n,r,e,a,o)}return x}if(`UNSTABLE_comment`in g)return`<!--`+j_(g.UNSTABLE_comment)+`-->`;v=g.children}else{if((_=h.contextType)!=null){var w=t[_.__c];b=w?w.props.value:_.__}var T=h.prototype&&typeof h.prototype.render==`function`;if(T)v=X_(e,b),y=e[v_];else{e[v_]=y=L_(e,b);for(var E=0;k_(y)&&E++<25;){O_(y),H_&&H_(e);try{v=h.call(y,g,b)}catch(t){throw a&&t&&typeof t.then==`function`&&(e._suspended=!0),t}}D_(y)}if(y.getChildContext!=null&&(t=K_({},t,y.getChildContext())),T&&Z.errorBoundaries&&(h.getDerivedStateFromError||y.componentDidCatch)){v=v!=null&&v.type===Fm&&v.key==null&&v.props.tpl==null?v.props.children:v;try{return Z_(v,t,n,r,e,a,!1)}catch(i){return h.getDerivedStateFromError&&(y[x_]=h.getDerivedStateFromError(i)),y.componentDidCatch&&y.componentDidCatch(i,W_),k_(y)?(v=X_(e,t),(y=e[v_]).getChildContext!=null&&(t=K_({},t,y.getChildContext())),Z_(v=v!=null&&v.type===Fm&&v.key==null&&v.props.tpl==null?v.props.children:v,t,n,r,e,a,o)):q_}finally{V_&&V_(e),U_&&U_(e)}}}v=v!=null&&v.type===Fm&&v.key==null&&v.props.tpl==null?v.props.children:v;try{var D=Z_(v,t,n,r,e,a,o);return V_&&V_(e),Z.unmount&&Z.unmount(e),e._suspended?typeof D==`string`?J_+D+Y_:G_(D)?(D.unshift(J_),D.push(Y_),D):D.then(function(e){return J_+e+Y_}):D}catch(i){if(!a&&o&&o.onError){var O=function i(s){return o.onError(s,e,function(e,s){try{return Z_(e,t,n,r,s,a,o)}catch(e){return i(e)}})}(i);if(O!==void 0)return O;var k=Z.__e;return k&&k(i,e),q_}if(!a||!i||typeof i.then!=`function`)throw i;return i.then(function i(){try{var s=Z_(v,t,n,r,e,a,o);return e._suspended?J_+s+Y_:s}catch(e){if(!e||typeof e.then!=`function`)throw e;return e.then(i)}})}}var A,j=`<`+h,M=q_;for(var N in g){var P=g[N];if(typeof(P=$_(P)?P.value:P)!=`function`||N===`class`||N===`className`){switch(N){case`children`:A=P;continue;case`key`:case`ref`:case`__self`:case`__source`:continue;case`htmlFor`:if(`for`in g)continue;N=`for`;break;case`className`:if(`class`in g)continue;N=`class`;break;case`defaultChecked`:N=`checked`;break;case`defaultSelected`:N=`selected`;break;case`defaultValue`:case`value`:switch(N=`value`,h){case`textarea`:A=P;continue;case`select`:r=P;continue;case`option`:r!=P||`selected`in g||(j+=` selected`)}break;case`dangerouslySetInnerHTML`:M=P&&P.__html;continue;case`style`:typeof P==`object`&&(P=F_(P));break;case`acceptCharset`:N=`accept-charset`;break;case`httpEquiv`:N=`http-equiv`;break;default:if(C_.test(N))N=N.replace(C_,`$1:$2`).toLowerCase();else{if(S_.test(N))continue;N[4]!==`-`&&!E_.has(N)||P==null?n?T_.test(N)&&(N=N===`panose1`?`panose-1`:N.replace(/([A-Z])/g,`-$1`).toLowerCase()):w_.test(N)&&(N=N.toLowerCase()):P+=q_}}P!=null&&!1!==P&&(j=!0===P||P===q_?j+` `+N:j+` `+N+`="`+(typeof P==`string`?j_(P):P+q_)+`"`)}}if(S_.test(h))throw Error(h+` is not a valid HTML tag name in `+j+`>`);if(M||(typeof A==`string`?M=j_(A):A!=null&&!1!==A&&!0!==A&&(M=Z_(A,t,h===`svg`||h!==`foreignObject`&&n,r,e,a,o))),V_&&V_(e),U_&&U_(e),!M&&Q_.has(h))return j+`/>`;var F=`</`+h+`>`,I=j+`>`;return G_(M)?[I].concat(M,[F]):typeof M==`string`?I+M+F:[I,M,F]}var Q_=new Set([`area`,`base`,`br`,`col`,`command`,`embed`,`hr`,`img`,`input`,`keygen`,`link`,`meta`,`param`,`source`,`track`,`wbr`]);function $_(e){return typeof e==`object`&&!!e&&typeof e.peek==`function`&&`value`in e}var ev=0;function tv(e){return e!=null&&e.length>0?e:(ev+=1,`pst_ft_${ev}`)}function nv({initialVisibleRowCount:e,itemHeight:t}){return e==null?420:Math.max(0,e)*(t??Nl)}function rv(e){if(typeof document>`u`)return;let t=document.createElement(`div`);t.innerHTML=e;let n=t.querySelector(`svg`);return n instanceof SVGElement?n:void 0}function iv(e){return e.querySelector(`#file-tree-icon-chevron`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-file`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-dot`)instanceof SVGElement&&e.querySelector(`#file-tree-icon-lock`)instanceof SVGElement}function av(e){return Array.from(e.children).filter(e=>e instanceof SVGElement)}var ov=class{static LoadedCustomComponent=!0;#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=new __;#u;#d;#f;#p;#m;#h;#g;#_;#v;#y=null;#b;#x=!1;#S=!1;constructor(e){let{composition:t,density:n,fileTreeSearchMode:r,gitStatus:i,id:a,initialSearchQuery:o,icons:s,itemHeight:c,onSearchChange:l,onSelectionChange:u,overscan:d,renderRowDecoration:f,renaming:p,search:m,searchBlurBehavior:h,searchFakeFocus:g,stickyFolders:_,unsafeCSS:v,initialVisibleRowCount:y,...b}=e;this.#e=t,this.#n=tv(a),this.#p=fm(i),this.#m=s,this.#h=v,this.#r=u,this.#i=f,this.#a=p!=null&&p!==!1,this.#o=h,this.#s=m===!0,this.#c=g===!0,this.#u=Ml(n,c),this.#d={itemHeight:this.#u.itemHeight,overscan:d,stickyFolders:_,initialVisibleRowCount:y},this.#t=new sm({...b,fileTreeSearchMode:r,initialSearchQuery:o,onSearchChange:l,renaming:p}),this.#v=this.#t.getSelectionVersion(),this.#y=this.#r==null?null:this.subscribe(()=>{this.#D()})}unmount(){this.#b!=null&&(g_(this.#b),delete this.#b.dataset.fileTreeVirtualizedWrapper,this.#b=void 0),this.#l.clearAll(),this.#l.setHost(null),this.#f!=null&&(delete this.#f.dataset.fileTreeVirtualized,this.#I(this.#f),this.#f=void 0)}cleanUp(){this.unmount(),this.#y?.(),this.#y=null,this.#t.destroy()}getFileTreeContainer(){return this.#f}getItem(e){return this.#t.getItem(e)}getFocusedItem(){return this.#t.getFocusedItem()}getFocusedPath(){return this.#t.getFocusedPath()}getSelectedPaths(){return this.#t.getSelectedPaths()}getComposition(){return this.#e}getItemHeight(){return this.#u.itemHeight}getDensityFactor(){return this.#u.factor}subscribe(e){let t=!1;return this.#t.subscribe(()=>{if(!t){t=!0;return}e()})}focusPath(e){this.#t.focusPath(e)}focusNearestPath(e){return this.#t.focusNearestPath(e)}add(e){this.#t.add(e)}batch(e){this.#t.batch(e)}move(e,t,n){this.#t.move(e,t,n)}onMutation(e,t){return this.#t.onMutation(e,t)}setSearch(e){this.#t.setSearch(e)}openSearch(e){this.#t.openSearch(e)}closeSearch(){this.#t.closeSearch()}isSearchOpen(){return this.#t.isSearchOpen()}getSearchValue(){return this.#t.getSearchValue()}getSearchMatchingPaths(){return this.#t.getSearchMatchingPaths()}focusNextSearchMatch(){this.#t.focusNextSearchMatch()}focusPreviousSearchMatch(){this.#t.focusPreviousSearchMatch()}startRenaming(e,t){return this.#t.startRenaming(e,t)}remove(e,t){this.#t.remove(e,t)}resetPaths(e,t){this.#t.resetPaths(e,t)}setComposition(e){this.#e=e;let t=this.#T();t!=null&&(this.#O(),m_(t.wrapper,this.#w()))}setGitStatus(e){this.#p=fm(e,this.#p);let t=this.#T();t!=null&&m_(t.wrapper,this.#w())}setIcons(e){this.#m=e;let t=this.#T();t!=null&&(this.#E(t.host,t.wrapper),m_(t.wrapper,this.#w()))}hydrate({fileTreeContainer:e}){let t=this.#P(e),n=this.#N(t);this.#O(),h_(n,this.#w())}render({containerWrapper:e,fileTreeContainer:t}){let n=this.#P(t??this.#f,e),r=this.#N(n);this.#O(),m_(r,this.#w())}#C(){return{initialViewportHeight:nv({initialVisibleRowCount:this.#d.initialVisibleRowCount,itemHeight:this.#d.itemHeight}),itemHeight:this.#d.itemHeight,overscan:this.#d.overscan,stickyFolders:this.#d.stickyFolders}}#w(){return{composition:this.#e,controller:this.#t,gitStatusByPath:this.#p?.statusByPath,ignoredGitDirectories:this.#p?.ignoredDirectoryPaths,directoriesWithGitChanges:this.#p?.directoriesWithChanges,icons:this.#m,instanceId:this.#n,renamingEnabled:this.#a,renderRowDecoration:this.#i,searchBlurBehavior:this.#o,searchEnabled:this.#s,searchFakeFocus:this.#c,slotHost:this.#l,...this.#C()}}#T(){let e=this.#f,t=this.#b;return e==null||t==null?null:{host:e,wrapper:t}}#E(e,t){let n=e.shadowRoot;n!=null&&(this.#k(n),this.#A(n)),this.#j(t)}#D(){let e=this.#r;if(e==null)return;let t=this.#t.getSelectionVersion();t!==this.#v&&(this.#v=t,e(this.#t.getSelectedPaths()))}#O(){let e=this.#e?.header?.render;if(e!=null){this.#l.setSlotContent(lc,e());return}this.#l.setSlotHtml(lc,this.#e?.header?.html??null)}#k(e){let t=av(e).find(e=>iv(e)),n=rv(Tl(Al(this.#m).set));n!=null&&(t!=null&&t.outerHTML===n.outerHTML||(t==null?e.prepend(n):t.replaceWith(n)))}#A(e){let t=av(e),n=t.find(e=>iv(e)),r=t.filter(e=>e!==n),i=Al(this.#m).spriteSheet?.trim()??``;if(i.length===0){for(let e of r)e.remove();return}let a=rv(i);if(a==null){for(let e of r)e.remove();return}if(!(r.length===1&&r[0].outerHTML===a.outerHTML)){for(let e of r)e.remove();e.appendChild(a)}}#j(e){let t=Al(this.#m);t.colored&&Dl(t.set)?e.dataset.fileTreeColoredIcons=`true`:delete e.dataset.fileTreeColoredIcons}#M(e){let t=e.querySelector(`style[${ac}]`);if(this.#g==null&&t instanceof HTMLStyleElement&&(this.#g=t),this.#h==null||this.#h===``){this.#g?.remove(),this.#g=void 0,this.#_=void 0;return}this.#g?.parentNode===e&&this.#_===this.#h||(this.#g??=document.createElement(`style`),this.#g.setAttribute(ac,``),this.#g.parentNode!==e&&e.appendChild(this.#g),this.#g.textContent=Ll(this.#h),this.#_=this.#h)}#N(e){if(this.#b!=null)return this.#b;let t=e.shadowRoot;if(t==null)throw Error(`FileTree requires a shadow root`);let n=Array.from(t.children).filter(e=>e instanceof HTMLDivElement&&typeof e.dataset.fileTreeId==`string`&&e.dataset.fileTreeId.length>0),r=n.find(e=>e.dataset.fileTreeId===this.#n)??n[0];return r!=null&&(this.#n=r.dataset.fileTreeId??this.#n),this.#b=r??document.createElement(`div`),this.#b.dataset.fileTreeId=this.#n,this.#b.dataset.fileTreeVirtualizedWrapper=`true`,this.#E(e,this.#b),this.#b.parentNode!==t&&t.appendChild(this.#b),this.#b}#P(e,t){let n=e??this.#f??document.createElement(`file-tree-container`);t!=null&&n.parentNode!==t&&t.appendChild(n);let r=n.shadowRoot??n.attachShadow({mode:`open`});return Ul(n,r),this.#M(r),n.dataset.fileTreeVirtualized=`true`,n.style.display=`flex`,this.#F(n),this.#l.setHost(n),this.#f=n,n}#F(e){e.style.getPropertyValue(`--trees-item-height`)===``&&(e.style.setProperty(`--trees-item-height`,`${String(this.#u.itemHeight)}px`),this.#x=!0),e.style.getPropertyValue(`--trees-density-override`)===``&&(e.style.setProperty(`--trees-density-override`,String(this.#u.factor)),this.#S=!0)}#I(e){this.#x&&=(e.style.removeProperty(`--trees-item-height`),!1),this.#S&&=(e.style.removeProperty(`--trees-density-override`),!1)}};function sv(e){let t=(0,K.useRef)(null);return t.current??=new ov(e),(0,K.useEffect)(()=>{let e=t.current;return()=>{e?.cleanUp(),t.current=null}},[]),{model:t.current}}var cv={"--trees-accent-override":`var(--ring)`,"--trees-bg-muted-override":`color-mix(in srgb, var(--muted) 45%, transparent)`,"--trees-bg-override":`transparent`,"--trees-border-color-override":`var(--border)`,"--trees-fg-muted-override":`var(--muted-foreground)`,"--trees-fg-override":`var(--foreground)`,"--trees-focus-ring-color-override":`var(--ring)`,"--trees-font-family-override":`var(--font-sans)`,"--trees-font-size-override":`var(--text-sm)`,"--trees-item-margin-x-override":`0`,"--trees-padding-inline-override":`0`,"--trees-scrollbar-thumb-override":`color-mix(in srgb, var(--muted-foreground) 35%, transparent)`,"--trees-selected-bg-override":`color-mix(in srgb, var(--accent) 65%, transparent)`,"--trees-selected-fg-override":`var(--foreground)`,"--trees-selected-focused-border-color-override":`var(--ring)`,height:`100%`};function lv({controller:e,filesError:t,isFilesLoading:n}){let{closeSearch:r,filteredFiles:i,isSearchOpen:a,loadedFiles:o,model:s,searchQuery:c,setSearchQuery:l}=e,u=Et(),d=(0,K.useRef)(null);(0,K.useEffect)(()=>{a&&d.current?.focus()},[a]);let f=(0,K.useMemo)(()=>({...cv,colorScheme:u}),[u]),p;return p=t?(0,q.jsx)(ar,{message:t.message,messageClassName:`text-destructive`}):n&&o.length===0?(0,q.jsx)(ar,{icon:`Spinner`,message:`Loading files...`,iconClassName:`animate-spin`}):o.length===0?(0,q.jsx)(ar,{message:`No files yet.`}):i.length===0?(0,q.jsx)(ar,{message:`No files match search.`}):(0,q.jsx)(_c,{"aria-label":`Thread storage file tree`,className:`block h-full min-h-0`,model:s,style:f}),(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-1`,children:[a?(0,q.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2`,children:[(0,q.jsxs)(`div`,{className:`relative min-w-0 flex-1`,children:[(0,q.jsx)(L,{name:`Search`,className:`pointer-events-none absolute left-2 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground`}),(0,q.jsx)(Xe,{ref:d,"aria-label":`Search files`,className:`h-7 pl-7 pr-2 text-xs focus-visible:ring-0`,placeholder:`Search files`,value:c,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),r())}})]}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,"aria-label":`Close search`,onClick:r,children:(0,q.jsx)(L,{name:`X`,className:`size-3.5`})})]}):null,(0,q.jsx)(`div`,{className:`min-h-0 flex-1`,children:p})]})}function uv(e){return e?.type===`standard`&&e.parentThreadId===null}function dv({currentThreadId:e,isManagerThread:t,managerThreads:n,parentThreadDisplayName:r,parentThreadId:i}){if(!e||t)return[];let a=[{value:`none`,label:`None`}],o=new Set([`none`]),s=(t,n)=>{!t||t===e||o.has(t)||(o.add(t),a.push({value:t,label:n}))};s(i??void 0,r??`Manager`);for(let e of n)s(e.id,e.title?.trim()?e.title:`Manager`);return a}function fv({thread:e,projectId:t,parentThreadDisplayName:n,managerThreads:r,canAssignToManager:i,canTakeOverThread:a,updateThreadPending:o,onAssignManager:s,defaultOpen:c}){let l=e.type===`manager`,u=e.parentThreadId??void 0,d=(0,K.useMemo)(()=>dv({currentThreadId:e.id,isManagerThread:l,managerThreads:r,parentThreadDisplayName:n,parentThreadId:u}),[l,r,n,u,e.id]),f=u??`none`,p=d.find(e=>e.value===f)?.label;return l||!u&&!i&&!a?null:(0,q.jsx)(Jt,{label:`Manager`,valueClassName:`min-w-0`,children:u?(0,q.jsxs)(`div`,{className:`inline-flex max-w-full min-w-0 items-center gap-1 text-xs text-foreground`,children:[(0,q.jsx)(We,{to:`/projects/${t}/threads/${u}`,className:`min-w-0 truncate text-xs text-foreground no-underline transition-[text-decoration-color] duration-150 hover:underline hover:underline-offset-2`,children:p??`Manager`}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`size-3.5 shrink-0 rounded-full p-0 text-muted-foreground hover:bg-transparent hover:text-foreground [&_svg]:size-3`,disabled:o,onClick:()=>{s(null)},"aria-label":`Unassign manager`,children:(0,q.jsx)(L,{name:`X`})})]}):(0,q.jsxs)(he,{defaultOpen:c,children:[(0,q.jsx)(H,{asChild:!0,children:(0,q.jsxs)(`div`,{role:`button`,tabIndex:o||d.length<=1&&f===`none`?-1:0,className:`inline-flex w-fit max-w-full min-w-0 items-center gap-1 rounded-md px-0 text-xs leading-tight text-foreground outline-none ring-sidebar-ring transition-colors hover:text-foreground focus-visible:ring-2`,children:[(0,q.jsx)(`span`,{className:`min-w-0 truncate text-xs text-foreground`,children:p??`None`}),(0,q.jsx)(L,{name:`ChevronDown`,className:`size-3.5 shrink-0 text-muted-foreground`})]})}),(0,q.jsxs)(ve,{align:`start`,className:`min-w-40 max-w-72`,children:[(0,q.jsx)(be,{children:`Assign to manager`}),d.map(e=>(0,q.jsxs)(_e,{onSelect:()=>{s(e.value===`none`?null:e.value)},className:`flex items-center justify-between gap-3`,children:[(0,q.jsx)(`span`,{className:`truncate`,title:e.label,children:e.label}),(0,q.jsx)(L,{name:`Check`,className:f===e.value?P(`opacity-100`,me):P(`opacity-0`,me)})]},e.value))]})]})})}function pv({thread:e}){return e.type===`manager`?(0,q.jsx)(Jt,{label:`Kind`,valueClassName:`min-w-0 truncate`,children:`Manager`}):null}function mv({environmentHost:e,environment:t,environmentIsLocal:n}){if(!e)return null;let r=t?n:void 0,i=e.status===`connected`;return(0,q.jsx)(Jt,{label:`Host`,valueClassName:`min-w-0 truncate`,children:(0,q.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.name}),r?(0,q.jsx)(ht,{}):null,(0,q.jsx)(Sn,{connected:i})]})})}function hv({thread:e,environment:t,environmentHost:n,environmentIsLocal:r}){let i=Xn({projectId:e.projectId,environmentId:t?.id??``});if(e.type===`manager`||!t)return null;let a=ie({environment:t,isLocalHost:r,hostName:n?.name}),o=gv(t);return(0,q.jsx)(Jt,{label:`Environment`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[(0,q.jsx)(`span`,{className:`min-w-0 truncate`,children:a.modeLabel}),o?(0,q.jsx)(`button`,{type:`button`,"aria-label":`Create new thread in this worktree`,title:`New thread in this worktree`,onClick:i,className:`inline-flex shrink-0 items-center justify-center rounded-md p-0.5 text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:(0,q.jsx)(L,{name:`MessageSquarePlus`,className:`size-4`})}):null]})})}function gv(e){return e.isWorktree||e.workspaceProvisionType===`managed-worktree`}function _v({thread:e,environment:t}){return e.type===`manager`||!t?.path||!gv(t)?null:(0,q.jsx)(Jt,{label:`Worktree path`,valueClassName:`min-w-0`,children:(0,q.jsx)(ln,{text:t.path,label:`Copy worktree path`,title:t.path,successMessage:`Worktree path copied`,errorMessage:`Failed to copy worktree path`})})}function vv({thread:e,workspaceStatus:t}){let n=t?.branch.currentBranch??null;return e.type===`manager`||!n?null:(0,q.jsx)(Jt,{label:`Branch`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(ln,{text:n,label:`Copy branch name`,successMessage:`Branch name copied`,errorMessage:`Failed to copy branch name`})})}function yv({thread:e,workspaceStatus:t,selectedMergeBaseBranch:n,mergeBaseBranchOptions:r,isLoadingMergeBaseBranchOptions:i,onMergeBaseBranchChange:a,defaultOpen:o}){let s=n??t?.mergeBase?.mergeBaseBranch??t?.branch.defaultBranch,c=s,l=(0,K.useMemo)(()=>Qn({mergeBaseBranch:c,mergeBaseBranchOptions:r}),[c,r]),u=!!(s||t?.branch.defaultBranch),d=t?.branch.currentBranch!=null&&t.branch.currentBranch===t.branch.defaultBranch,f=u&&!!c&&!d;return e.type===`manager`||!f?null:(0,q.jsx)(Jt,{label:`Merge base`,valueClassName:`min-w-0 truncate`,children:c&&l.length>0&&c?(0,q.jsx)(jn,{value:c,options:l,variant:`minimal`,loading:i,onChange:a,className:`max-w-full`,defaultOpen:o}):c})}function bv({thread:e,environment:t,workspaceStatus:n,workspaceStatusError:r,selectedMergeBaseBranch:i}){let a=e.type!==`manager`,o=t?.status===`destroyed`;if(!(a&&(n||r||o)&&!(e.archivedAt!=null&&t?.managed!==!0)))return null;let s=i??n?.mergeBase?.mergeBaseBranch??n?.branch.defaultBranch,c=la(n,{mergeBaseBranch:s,showBranchComparison:!!(s||n?.branch.defaultBranch),error:r,workspaceDeleted:o}),l=n?.workingTree.state===`untracked`?`text-muted-foreground`:`text-foreground`;return(0,q.jsx)(Jt,{label:`Git status`,align:`start`,valueClassName:`min-w-0`,children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-baseline gap-2 whitespace-nowrap`,title:`${c.label} ${c.summary}`,children:[(0,q.jsx)(`span`,{className:P(`shrink-0 font-medium`,l),children:c.label}),(0,q.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:c.summaryContent})]})})}function xv({thread:e}){let t=Be(),n=t.isPending&&t.variables?.id===e.id,r=(0,K.useCallback)(()=>{t.mutate({id:e.id})},[e.id,t]);return e.archivedAt==null?null:(0,q.jsx)(Jt,{label:`Archived`,valueClassName:`min-w-0 truncate`,children:(0,q.jsx)(Cr,{isPending:n,onUnarchive:r,threadType:e.type})})}function Sv({thread:e,workspaceStatus:t,onChangedFileClick:n}){return e.type===`manager`?null:(0,q.jsx)(Ai,{sections:Ei(t),onFileClick:n,rowClassName:`min-h-0 flex-1`,rowValueClassName:`min-h-0 flex-1`,listClassName:`h-full`})}function Cv({controller:e,filesError:t,isFilesLoading:n}){let{isSearchOpen:r,openSearch:i}=e;return(0,q.jsx)(Jt,{orientation:`vertical`,className:`min-h-0 flex-1`,valueClassName:`min-h-0 flex-1 overflow-hidden`,labelClassName:`flex items-center justify-between gap-2`,label:(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`span`,{children:`Manager workspace`}),r?null:(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`h-5 w-5 shrink-0 rounded-md p-0 text-muted-foreground`,"aria-label":`Search files`,onClick:i,children:(0,q.jsx)(L,{name:`Search`,className:`size-3.5`})})]}),children:(0,q.jsx)(lv,{controller:e,filesError:t,isFilesLoading:n})})}function wv({thread:e,parentThreadDisplayName:t,environment:n,workspaceStatus:r,workspaceStatusError:i}){let a=e.type===`manager`,o=e.parentThreadId??void 0,s=!a,c=n?.status===`destroyed`,l=s&&(!!r||!!i||c)&&!(e.archivedAt!=null&&n?.managed!==!0),u=r?.branch.currentBranch??null,d=Ei(r),f=s&&d.length>0;return!!(a||o||!a&&n||!a&&u||l||f||e.archivedAt!=null||t&&o)}function Tv({hasFlexibleHeight:e,children:t}){return(0,q.jsx)(Kt,{appearance:`flat`,className:P(`h-full min-h-0`,e?`flex-1`:`shrink-0`),children:t})}function Ev(e){let{thread:t,projectId:n,parentThreadDisplayName:r,managerThreads:i,canAssignToManager:a,canTakeOverThread:o,environmentHost:s,environmentIsLocal:c,environment:l,workspaceStatus:u,workspaceStatusError:d,selectedMergeBaseBranch:f,mergeBaseBranchOptions:p,isLoadingMergeBaseBranchOptions:m,updateThreadPending:h,storage:g,onAssignManager:_,onMergeBaseBranchChange:v,onChangedFileClick:y}=e;return(0,q.jsxs)(Tv,{hasFlexibleHeight:g!==void 0||t.type!==`manager`&&Ei(u).length>0,children:[(0,q.jsx)(pv,{thread:t}),(0,q.jsx)(fv,{thread:t,projectId:n,parentThreadDisplayName:r,managerThreads:i,canAssignToManager:a,canTakeOverThread:o,updateThreadPending:h,onAssignManager:_}),(0,q.jsx)(mv,{environmentHost:s,environment:l,environmentIsLocal:c}),(0,q.jsx)(hv,{thread:t,environment:l,environmentHost:s,environmentIsLocal:c}),(0,q.jsx)(_v,{thread:t,environment:l}),(0,q.jsx)(vv,{thread:t,workspaceStatus:u}),(0,q.jsx)(yv,{thread:t,workspaceStatus:u,selectedMergeBaseBranch:f,mergeBaseBranchOptions:p,isLoadingMergeBaseBranchOptions:m,onMergeBaseBranchChange:v}),(0,q.jsx)(bv,{thread:t,environment:l,workspaceStatus:u,workspaceStatusError:d,selectedMergeBaseBranch:f}),(0,q.jsx)(xv,{thread:t}),(0,q.jsx)(Sv,{thread:t,workspaceStatus:u,onChangedFileClick:y}),g?(0,q.jsx)(Cv,{...g}):null]})}function Dv({children:e,className:t}){return(0,q.jsx)(`div`,{className:P(`flex min-w-0 flex-col gap-1`,t),children:e})}function Ov({stopRequestedAt:e,threadId:t}){return{id:`${t}:pending-stop:${e}`,threadId:t,turnId:null,sourceSeqStart:0,sourceSeqEnd:0,startedAt:e,createdAt:e,kind:`system`,systemKind:`operation`,operationKind:`thread-interrupted`,title:`Stop requested`,detail:null,status:`pending`,completedAt:null}}function kv(e,t){return e.some(e=>e.kind===`system`&&e.systemKind===`operation`&&e.operationKind===`thread-interrupted`&&e.createdAt>=t)}function Av({rows:e,stopRequestedAt:t,threadId:n}){return(0,K.useMemo)(()=>t===null||kv(e,t)?e:[...e,Ov({stopRequestedAt:t,threadId:n})],[e,t,n])}function jv({activeThinking:e,footer:t,hasOlderTimelineRows:n,header:r,hostConnectionNotice:i,isLoadingOlderTimelineRows:a,isThreadTimelinePending:o,timelineError:s,loadingTurnSummaryIds:c,erroredTurnSummaryIds:l,onLoadOlderRows:u,onLoadTurnSummaryRows:d,onOpenLocalFileLink:f,onTitleAction:p,projectId:m,showOngoingIndicator:h,ongoingIndicatorLabel:g,stopRequestedAt:_,timelineRows:v,threadId:y,threadRuntimeDisplayStatus:b,turnSummaryRowsIdentity:x,turnSummaryRowsById:S,unreadDividerPlacement:C,workspaceRootPath:w}){let T=Et(),E=e!==null&&g===void 0,D=e?.text.trim()??``,O=E&&D.length>0?e?.text:void 0,k=E&&e?e.id:g??`working`,A=Av({rows:v,stopRequestedAt:_,threadId:y});return(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col overflow-hidden`,children:[r,(0,q.jsx)(se,{scrollBehavior:`bottom-anchor`,shellClassName:`!mx-0 !mt-0 md:!mx-0 md:!mt-0`,contentClassName:`min-h-full gap-2 pt-4`,footerClassName:`chat-prompt-box`,footer:t,children:(0,q.jsxs)(Dv,{className:`flex-1`,children:[n&&!o&&!s?(0,q.jsx)(Mv,{isLoadingOlderTimelineRows:a,onLoadOlderRows:u}):null,o?(0,q.jsx)(Nv,{}):s?(0,q.jsx)(Vn,{label:`Failed to load timeline`,className:`mt-6 text-destructive`}):A.length>0?(0,q.jsx)(Ct,{loadingTurnSummaryIds:c,erroredTurnSummaryIds:l,onLoadTurnSummaryRows:d,onOpenLocalFileLink:f,onTitleAction:p,projectId:m,resolveUserAttachmentImageSrc:Nn,themeType:T,timelineRows:A,threadRuntimeDisplayStatus:b,turnSummaryRowsIdentity:x,turnSummaryRowsById:S,unreadDividerPlacement:C,workspaceRootPath:w}):null,i?(0,q.jsx)(Vn,{label:i.label,className:i.tone===`error`?`mt-4 text-destructive`:`mt-4`}):null,(0,q.jsx)(zn,{visible:h,children:(0,q.jsx)(Xt,{details:O,isThinking:E,label:g},k)})]})},y)]})}function Mv({isLoadingOlderTimelineRows:e,onLoadOlderRows:t}){let n=re();return(0,q.jsx)(`div`,{className:`flex justify-center pt-2 mb-3`,children:(0,q.jsxs)(V,{type:`button`,variant:`outline`,size:`sm`,onClick:(0,K.useCallback)(()=>{n?.captureScrollAnchor(),t()},[n,t]),disabled:e,children:[(0,q.jsx)(L,{name:`ChevronUp`,"aria-hidden":`true`}),e?`Loading older messages...`:`Load older messages`]})})}function Nv(){let[e,t]=(0,K.useState)(!1);return(0,K.useEffect)(()=>{let e=window.setTimeout(()=>t(!0),200);return()=>window.clearTimeout(e)},[]),e?(0,q.jsx)(Vn,{label:`Loading thread...`,className:`mt-6`}):null}var Pv=100,Fv=`duration-[220ms] ease-[cubic-bezier(0.32,0.72,0,1)]`;function Iv({footer:e,header:t,isMetadataLoading:n,isSecondaryPanelOpen:r,metadata:i,onTerminalPanelResize:a,secondaryPanel:o,terminalPanel:s,terminalPanelHeightPercent:c,terminalPanelOpen:l,timeline:u}){let d=fe(),f=ft(da),p=(0,K.useRef)(null),m=(0,K.useRef)(c),h=(0,K.useRef)(!1);(0,K.useEffect)(()=>{if(!h.current){h.current=!0;return}let e=p.current;e&&(l?e.expand(m.current):e.collapse())},[l]);let g=(0,K.useCallback)(e=>{e<=0||(m.current=e,a(e))},[a]),_=wv(i)?(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:(0,q.jsx)(Ev,{...i})}):n?(0,q.jsx)(zv,{}):(0,q.jsx)(`div`,{className:`pt-1 text-sm text-muted-foreground`,children:`No thread details available.`}),v=d?null:(0,q.jsx)($s,{...o,renderAsDrawer:!1,metadataContent:_}),y=d?(0,q.jsx)($s,{...o,renderAsDrawer:!0,metadataContent:_}):null;return(0,q.jsxs)(`div`,{className:`-mx-4 -mb-4 -mt-4 flex h-full min-h-0 min-w-0 flex-1 flex-col overflow-hidden md:-mx-5 md:-mb-5 md:-mt-5`,children:[(0,q.jsxs)(Uo.PanelGroup,{direction:`vertical`,className:`h-full w-full min-w-0`,children:[(0,q.jsx)(Uo.Panel,{id:`thread-detail-main-panel`,defaultSize:l?100-c:100,minSize:30,order:1,className:`min-w-0 overflow-hidden`,children:(0,q.jsxs)(Uo.PanelGroup,{direction:`horizontal`,className:`h-full w-full min-w-0`,children:[(0,q.jsx)(Uo.Panel,{id:`thread-detail-timeline-panel`,defaultSize:r&&!d?100-f:Pv,minSize:30,order:1,className:`min-w-0 overflow-hidden`,children:(0,q.jsx)(jv,{...u,footer:e,header:t})}),v]})}),s?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Lv,{isOpen:l}),(0,q.jsx)(Uo.Panel,{ref:p,id:`thread-detail-terminal-panel`,collapsible:!0,collapsedSize:0,defaultSize:l?c:0,minSize:18,maxSize:70,order:2,onResize:g,className:P(`min-h-0 min-w-0 overflow-hidden transition-[flex-grow,flex-basis,opacity]`,Fv,l?`opacity-100`:`opacity-0`),children:s})]}):null]}),d?(0,q.jsx)(U,{open:r,onOpenChange:e=>{e||o.onClose()},srLabel:`Thread details`,contentClassName:`h-[92dvh] max-h-[92dvh]`,handleOnly:!0,children:(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:y})}):null]})}function Lv({isOpen:e}){return(0,q.jsx)(Uo.PanelResizeHandle,{id:`thread-detail-terminal-panel-handle`,disabled:!e,className:P(`group relative shrink-0 cursor-row-resize overflow-visible bg-transparent transition-[height,opacity,background-color]`,Fv,`before:absolute before:-inset-y-1.5 before:inset-x-0 before:content-['']`,e?`h-px opacity-100`:`pointer-events-none h-0 opacity-0`),"aria-label":`Resize thread and terminal panels`,children:(0,q.jsx)(`span`,{className:`pointer-events-none absolute inset-x-0 top-1/2 h-px -translate-y-1/2 bg-border transition-colors group-hover:bg-accent-foreground/35`})})}var Rv=[`w-40`,`w-28`,`w-36`,`w-24`];function zv(){return(0,q.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:(0,q.jsx)(Tv,{hasFlexibleHeight:!1,children:Rv.map((e,t)=>(0,q.jsxs)(`div`,{className:`grid grid-cols-[var(--detail-label-width,96px)_minmax(0,1fr)] items-center gap-x-3 py-0.5`,children:[(0,q.jsx)(Dn,{className:`h-3 w-14 rounded-sm`}),(0,q.jsx)(Dn,{className:`h-3 ${e} max-w-full rounded-sm`})]},t))})})}function Bv(e){return e!==void 0&&e.length>0}function Vv({closePersistedPanel:e,isCompactViewport:t,isPersistedOpen:n,openPersistedDiffFile:r,openPersistedDiffPanel:i,openPersistedPanel:a,threadId:o,togglePersistedPanel:s}){let[c,l]=(0,K.useState)(null);(0,K.useEffect)(()=>{l(null)},[o]),(0,K.useEffect)(()=>{t||l(null)},[t]);let u=(0,K.useCallback)(()=>{Bv(o)&&l(o)},[o]),d=(0,K.useCallback)(()=>{l(e=>e===o?null:e)},[o]),f=Bv(o)&&c===o,p=t?f:n,m=(0,K.useCallback)(e=>{a(e),t&&u()},[t,u,a]),h=(0,K.useCallback)(()=>{i(),t&&u()},[t,u,i]),g=(0,K.useCallback)(e=>{r(e),t&&u()},[t,u,r]),_=(0,K.useCallback)(()=>{if(t){d();return}e()},[d,e,t]),v=(0,K.useCallback)(()=>{if(!t){s();return}if(f){d();return}u()},[d,t,f,u,s]);return(0,K.useMemo)(()=>({closePanel:_,isOpen:p,openDiffFile:g,openDiffPanel:h,openPanel:m,togglePanel:v}),[_,p,g,h,m,v])}function Hv({activePath:e,fileListEnabled:t=!0,fileListOptions:n=I,filePreviewEnabled:r=!0,threadId:i,threadType:a}){let o=a===`manager`,{data:s,isLoading:c,error:l}=Pe(i??``,n,{enabled:o&&t}),{data:u,isLoading:d,error:f}=Oe(i??``,e,{enabled:o&&r&&e!==null});return{isThreadStorageFilePreviewLoading:d,isThreadStorageFilesLoading:c,threadStorageFilePreview:u,threadStorageFilePreviewError:f,threadStorageFilesError:l,threadStorageFiles:s,threadStorageRootPath:s?.storageRootPath??null}}var Uv=8;function Wv(e){return e.entryKind===`file`}function Gv(e){return{source:e.source,entryKind:`file`,path:e.path,name:e.name,score:e.score,positions:e.positions}}function Kv(e){let t=e.limit??Uv,n=nr({projectId:e.projectId,query:e.query,limit:t,environmentId:e.environmentId,currentThreadId:e.currentThreadId,currentThreadType:e.currentThreadType,includeDirectories:!1}),r=(0,K.useMemo)(()=>n.suggestions.filter(Wv).map(Gv),[n.suggestions]),i=!!e.projectId,a=e.currentThreadType===`manager`&&!!e.currentThreadId;return{suggestions:r,isLoading:n.isLoading,isError:n.isError,isDebouncing:n.isDebouncing,isUnavailable:!i&&!a}}var qv=20,Jv=[`workspace`,`thread-storage`],Yv={workspace:`Workspace`,"thread-storage":`Manager Storage`};function Xv({projectId:e,currentThreadId:t,currentThreadType:n}){let r=[];return e&&r.push(`workspace`),n===`manager`&&t.length>0&&r.push(`thread-storage`),r}function Zv(e){return`open-file-result-${e.source}-${encodeURIComponent(e.path)}`}function Qv(e){let t=e.lastIndexOf(`/`);return t===-1?{name:e,directory:``}:{name:e.slice(t+1),directory:e.slice(0,t)}}function $v(e){return`${Yv[e.source]}: ${e.path}`}function ey({availableSources:e,suggestions:t}){let n=new Set(e),r=new Map;for(let e of t){let t=e.source;if(!n.has(t))continue;let i=r.get(t);if(i){i.items.push({suggestion:e,index:i.items.length});continue}r.set(t,{source:t,label:Yv[t],items:[{suggestion:e,index:0}]})}let i=0;return Jv.flatMap(e=>{let t=r.get(e);return t?[{...t,items:t.items.map(({suggestion:e})=>{let t=i;return i+=1,{suggestion:e,index:t}})}]:[]})}function ty({iconName:e,iconClassName:t,message:n}){return(0,q.jsx)(`div`,{className:`flex min-h-24 items-center justify-center rounded-md border border-dashed border-border bg-surface-raised px-3 py-6 text-center text-sm text-muted-foreground`,children:(0,q.jsxs)(`div`,{className:`flex max-w-64 flex-col items-center gap-2`,children:[(0,q.jsx)(L,{name:e,className:P(`size-4`,t)}),(0,q.jsx)(`p`,{children:n})]})})}function ny({id:e,suggestion:t,isActive:n,onActivate:r,onSelect:i}){let{directory:a}=Qv(t.path),o=a||null;return(0,q.jsx)(`button`,{type:`button`,id:e,role:`option`,"aria-selected":n,onClick:(0,K.useCallback)(()=>{i(t)},[i,t]),onMouseEnter:r,title:$v(t),className:P(`w-full scroll-mt-7 rounded px-2 py-1.5 text-left text-xs transition-colors`,n?`bg-state-active`:`hover:bg-state-hover`),children:(0,q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,q.jsx)(L,{name:`File`,className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,q.jsx)(`span`,{className:`truncate`,children:t.name}),o===null?null:(0,q.jsx)(er,{className:`text-muted-foreground [flex-shrink:9999]`,children:o})]})})}function ry({projectId:e,environmentId:t,currentThreadId:n,currentThreadType:r,focusRequest:i,initialQuery:a=``,onSelect:o}){let s=(0,K.useRef)(null),[c,l]=(0,K.useState)(a),[u,d]=(0,K.useState)(-1),f=c.trim().length>0,{suggestions:p,isLoading:m,isError:h,isDebouncing:g,isUnavailable:_}=Kv({projectId:e,query:c,limit:qv,environmentId:t,currentThreadId:n,currentThreadType:r}),v=(0,K.useMemo)(()=>Xv({projectId:e,currentThreadId:n,currentThreadType:r}),[n,r,e]),y=(0,K.useMemo)(()=>ey({availableSources:v,suggestions:p}),[v,p]),b=(0,K.useMemo)(()=>y.flatMap(e=>e.items.map(({suggestion:e})=>e)),[y]),x=(0,K.useMemo)(()=>u>=0&&u<b.length?b[u]??null:null,[u,b]);(0,K.useEffect)(()=>{s.current?.focus()},[i]),(0,K.useEffect)(()=>{d(b.length>0?0:-1)},[b]);let S=(0,K.useCallback)(e=>{o({source:e.source,path:e.path})},[o]),C=(0,K.useCallback)(e=>{if(b.length!==0){if(e.key===`ArrowDown`){e.preventDefault(),d(e=>(e+1)%b.length);return}if(e.key===`ArrowUp`){e.preventDefault(),d(e=>e<=0?b.length-1:e-1);return}e.key===`Enter`&&x&&(e.preventDefault(),S(x))}},[x,S,b.length]);return(0,q.jsxs)(`div`,{className:`flex min-h-full flex-col gap-2 px-4 pt-1`,children:[(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(L,{name:`Search`,className:`pointer-events-none absolute left-2.5 top-1/2 size-4 -translate-y-1/2 text-muted-foreground`}),(0,q.jsx)(Xe,{ref:s,value:c,onChange:e=>l(e.target.value),onKeyDown:C,disabled:_,"aria-label":`Search files`,"aria-activedescendant":x?Zv(x):void 0,placeholder:_?`No searchable source`:`Search files`,className:`h-8 pl-8 pr-8 font-mono text-xs focus-visible:ring-0`}),g?(0,q.jsx)(L,{name:`Spinner`,className:`pointer-events-none absolute right-2.5 top-1/2 size-3.5 -translate-y-1/2 animate-spin text-muted-foreground`}):null]}),_?(0,q.jsx)(ty,{iconName:`FileQuestion`,message:`No searchable file source is available.`}):h?(0,q.jsx)(ty,{iconName:`AlertCircle`,message:`File search failed.`}):m?(0,q.jsx)(ty,{iconName:`Spinner`,iconClassName:`animate-spin`,message:`Searching files...`}):y.length>0?(0,q.jsx)(`div`,{role:`listbox`,"aria-label":`File search results`,className:`min-h-0 flex-1 overflow-y-auto pb-1`,children:y.map((e,t)=>(0,q.jsxs)(`div`,{className:P(t>0&&`mt-2`),children:[(0,q.jsx)(`div`,{className:P(`sticky top-0 z-10 bg-background px-2 pb-1 text-xs text-muted-foreground`,t===0?`pt-0`:`pt-1.5`),children:e.label}),(0,q.jsx)(`div`,{className:`flex flex-col gap-px`,children:e.items.map(({suggestion:e,index:t})=>(0,q.jsx)(ny,{id:Zv(e),suggestion:e,isActive:t===u,onActivate:()=>d(t),onSelect:S},`${e.source}:${e.path}`))})]},e.source))}):(0,q.jsx)(ty,{iconName:`Search`,message:f?`No files match.`:`Type to search files.`})]})}var iy=[];function ay(e){let t=new Set;for(let n of e){let e=n.split(`/`).filter(e=>e.length>0),r=``;for(let n of e.slice(0,-1))r=`${r}${n}/`,t.add(r)}return Array.from(t)}function oy({files:e,onSelectPath:t,selectedPath:n}){let[r,i]=(0,K.useState)(!1),[a,o]=(0,K.useState)(``),s=e??iy,c=(0,K.useMemo)(()=>{let e=a.trim().toLowerCase();return e.length===0?s:s.filter(t=>t.path.toLowerCase().includes(e))},[s,a]),l=(0,K.useMemo)(()=>c.map(e=>e.path),[c]),u=(0,K.useMemo)(()=>new Set(l),[l]),d=(0,K.useRef)(u),f=(0,K.useRef)(t),p=(0,K.useRef)(!1);(0,K.useEffect)(()=>{d.current=u},[u]),(0,K.useEffect)(()=>{f.current=t},[t]);let{model:m}=sv({density:`compact`,initialExpansion:`closed`,onSelectionChange:(0,K.useCallback)(e=>{if(p.current)return;let t=e[0];!t||!d.current.has(t)||f.current(t)},[]),paths:[],search:!1}),h=a.trim().length>0,g=(0,K.useMemo)(()=>h?ay(l):[],[h,l]);(0,K.useEffect)(()=>{m.resetPaths(l,{initialExpandedPaths:g})},[g,l,m]),(0,K.useEffect)(()=>{let e=m.getSelectedPaths(),t=n!==null&&u.has(n);if(!(t?e.length===1&&e[0]===n:e.length===0)){p.current=!0;try{for(let r of e)t&&r===n||m.getItem(r)?.deselect();t&&m.getItem(n)?.select()}finally{p.current=!1}}},[u,m,n]);let _=(0,K.useCallback)(()=>{i(!0)},[]);return{closeSearch:(0,K.useCallback)(()=>{i(!1),o(``)},[]),filteredFiles:c,isSearchOpen:r,loadedFiles:s,model:m,openSearch:_,searchQuery:a,setSearchQuery:o}}var sy=`bb.thread.fixedPanelTabsState`,cy=336*60*60*1e3,ly=`thread-info`,uy=`git-diff`,dy=`open-file-search`,fy=T(`kind`,[j({kind:_(`working-tree`)}).strict(),j({kind:_(`head`)}).strict(),j({kind:_(`merge-base`),ref:R().min(1)}).strict()]),py=_(`deleted`).nullable(),my=j({id:_(ly),kind:_(`thread-info`)}).strict(),hy=j({id:_(uy),kind:_(`git-diff`)}).strict(),gy=j({environmentId:R().min(1).nullable(),id:R().min(1),kind:_(`workspace-file-preview`),lineNumber:t().int().positive().nullable(),path:R().min(1),source:fy,statusLabel:py}).strict(),_y=j({id:R().min(1),kind:_(`host-file-preview`),lineNumber:t().int().positive().nullable(),path:R().min(1)}).strict(),vy=j({id:R().min(1),isPinned:C(),kind:_(`thread-storage-file-preview`),path:R().min(1)}).strict(),yy=j({id:_(dy),kind:_(`open-file-search`)}).strict(),by=j({id:R().min(1),kind:_(`terminal`),terminalId:R().min(1)}).strict(),xy=T(`kind`,[my,hy,gy,_y,vy,yy]),Sy=T(`kind`,[by]),Cy=j({tabs:u(xy),activeTabId:R().min(1).nullable(),isOpen:C()}).strict(),wy=j({tabs:u(xy),activeTabId:R().min(1).nullable()}).strict(),Ty=j({tabs:u(Sy),activeTabId:R().min(1).nullable()}).strict(),Ey=j({version:_(1),secondary:Cy,bottom:Ty,lastUsedAt:t().int().nonnegative()}).strict(),Dy=j({version:_(1),secondary:wy,bottom:Ty,lastUsedAt:t().int().nonnegative()}).strict();function Oy(){return typeof window>`u`?null:window.localStorage}function ky(e){return encodeURIComponent(e.trim())}function Ay(e,t){return`${e}:${encodeURIComponent(t)}`}function jy(){return{id:ly,kind:`thread-info`}}function My(){return{id:uy,kind:`git-diff`}}function Ny({environmentId:e,tab:t}){return{environmentId:e,id:Ay(`workspace-file-preview`,t.path),kind:`workspace-file-preview`,lineNumber:t.lineNumber,path:t.path,source:t.source,statusLabel:t.statusLabel}}function Py(e){return{id:Ay(`host-file-preview`,e.path),kind:`host-file-preview`,lineNumber:e.lineNumber,path:e.path}}function Fy({isPinned:e,path:t}){return{id:Ay(`thread-storage-file-preview`,t),isPinned:e,kind:`thread-storage-file-preview`,path:t}}function Iy(){return{id:dy,kind:`open-file-search`}}function Ly({terminalId:e}){return{id:`terminal:${encodeURIComponent(e)}`,kind:`terminal`,terminalId:e}}function Ry(e,t){return e===`bottom`?t.kind===`terminal`:t.kind!==`terminal`}function zy(e){return e.kind===`open-file-search`}function By({group:e,region:t}){let n=new Set,r=[];for(let i of e.tabs)zy(i)||!Ry(t,i)||n.has(i.id)||(n.add(i.id),r.push(i));return{tabs:r,activeTabId:e.activeTabId!==null&&n.has(e.activeTabId)?e.activeTabId:null}}function Vy(e){return{...By({group:e,region:`secondary`}),isOpen:e.isOpen}}function Hy({state:e}){return{...e,secondary:Vy(e.secondary),bottom:By({group:e.bottom,region:`bottom`})}}function Uy(e={}){return Hy({state:{version:1,secondary:e.secondary??{tabs:[],activeTabId:null,isOpen:!1},bottom:e.bottom??{tabs:[],activeTabId:null},lastUsedAt:e.lastUsedAt??0}})}var Wy=Uy();function Gy({threadId:e}){return`${sy}-${ky(e)}-1`}function Ky(e){return e.startsWith(`bb.thread.fixedPanelTabsState-`)&&e.endsWith(`-1`)}function qy({now:e,state:t}){return e-t.lastUsedAt>cy}function Jy({initialValue:e,now:t,storedValue:n}){return Yy({initialValue:e,now:t,storedValue:n}).state}function Yy({initialValue:e,now:t,storedValue:n}){if(n===null)return{shouldPrune:!1,state:e};let r;try{r=JSON.parse(n)}catch{return{shouldPrune:!0,state:e}}let i=Ey.safeParse(r);if(i.success){let n=Hy({state:i.data});return qy({now:t,state:n})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:n}}let a=Dy.safeParse(r);if(!a.success)return{shouldPrune:!0,state:e};let o=Hy({state:{...a.data,secondary:{...a.data.secondary,isOpen:a.data.secondary.activeTabId!==null}}});return qy({now:t,state:o})?{shouldPrune:!0,state:e}:{shouldPrune:!1,state:o}}function Xy({state:e}){return JSON.stringify(Hy({state:e}))}function Zy({now:e}){let t=Oy();if(!t)return;let n=[];for(let e=0;e<t.length;e+=1){let r=t.key(e);r&&Ky(r)&&n.push(r)}for(let r of n)Yy({initialValue:Wy,now:e,storedValue:t.getItem(r)}).shouldPrune&&t.removeItem(r)}function Qy(e,t){if(e.id!==t.id||e.kind!==t.kind)return!1;switch(e.kind){case`thread-info`:case`git-diff`:case`open-file-search`:return!0;case`workspace-file-preview`:return t.kind===`workspace-file-preview`&&e.environmentId===t.environmentId&&e.lineNumber===t.lineNumber&&e.path===t.path&&B(e.source,t.source)&&e.statusLabel===t.statusLabel;case`host-file-preview`:return t.kind===`host-file-preview`&&e.lineNumber===t.lineNumber&&e.path===t.path;case`thread-storage-file-preview`:return t.kind===`thread-storage-file-preview`&&e.isPinned===t.isPinned&&e.path===t.path;case`terminal`:return t.kind===`terminal`&&e.terminalId===t.terminalId}}var $y=`secondaryPanel`,eb=`git-diff`,tb=`thread-info`;function nb(e){switch(e){case eb:return`git-diff`;case tb:return`thread-info`;default:return null}}function rb(e){return nb(new URLSearchParams(e).get($y))}function ib(e,t){let n=new URLSearchParams(e);return t?n.set($y,t):n.delete($y),n.toString()}var ab=60*1e3;function ob(e){return e!=null&&e.length>0}function sb(e,t){return{...e,lastUsedAt:t}}var cb=tt({parse:(e,t)=>Jy({initialValue:t,now:Date.now(),storedValue:e}),serialize:e=>Xy({state:e})}),lb=rt(Wy),ub=W(e=>nt(Gy({threadId:e}),Wy,cb,{getOnInit:!0}));function db(e){return ob(e)?ub(e):lb}function fb(e){switch(e){case`thread-info`:return jy().id;case`git-diff`:return My().id}}function pb(e){switch(e){case`thread-info`:return jy();case`git-diff`:return My()}}function mb(e){let t=e.bottom.activeTabId;if(t===null)return null;let n=e.bottom.tabs.find(e=>e.id===t);return n?.kind===`terminal`?n:null}function hb(e,t){let n=Ly({terminalId:t});return e.find(e=>e.id===n.id)?e:[...e,n]}function gb(e,t){let n=Ly({terminalId:t}),r=e.filter(e=>e.id!==n.id);return r.length===e.length?e:r}function _b(e,t){let n=fb(t);return e.some(e=>e.id===n)?e:[...e,pb(t)]}function vb(e,t){return t!==null&&e.some(e=>e.id===t)}function yb(e){if(vb(e.secondary.tabs,e.secondary.activeTabId))return e.secondary.isOpen?e:{...e,secondary:{...e.secondary,isOpen:!0}};let t=`thread-info`,n=_b(e.secondary.tabs,t),r=fb(t);return{...e,secondary:{tabs:n,activeTabId:r,isOpen:!0}}}function bb(e){return e.secondary.isOpen?{...e,secondary:{...e.secondary,isOpen:!1}}:e}function xb(e){(0,K.useEffect)(()=>{Zy({now:Date.now()})},[e])}function Sb(e){return ft(db(e))}function Cb(e){let t=it(db(e));return(0,K.useCallback)(n=>{if(!ob(e))return;let r=Date.now();t(e=>{let t=n(e);return t===e?e:sb(t,r)})},[t,e])}function wb(e){let t=Cb(e),n=(0,K.useRef)(null);return(0,K.useCallback)(()=>{let r=Date.now();n.current!==null&&n.current.threadId===e&&r-n.current.touchedAt<ab||(n.current={threadId:e,touchedAt:r},t(e=>!e.secondary.isOpen&&e.secondary.tabs.length===0&&e.bottom.tabs.length===0||r-e.lastUsedAt<ab?e:{...e}))},[e,t])}function Tb(e){let t=Cb(e);return(0,K.useCallback)(e=>{t(t=>{let n=_b(t.secondary.tabs,e),r=fb(e);return n===t.secondary.tabs&&t.secondary.activeTabId===r&&t.secondary.isOpen?t:{...t,secondary:{tabs:n,activeTabId:r,isOpen:!0}}})},[t])}function Eb(e){let t=Cb(e);return(0,K.useCallback)(()=>{t(bb)},[t])}function Db(e){let t=Cb(e);return(0,K.useCallback)(()=>{t(e=>e.secondary.isOpen?bb(e):yb(e))},[t])}function Ob(e,t){let n=He(),r=Je();(0,K.useEffect)(()=>{if(!ob(e))return;let i=rb(n.search);if(i===null)return;t(i);let a=ib(n.search,null);r({pathname:n.pathname,search:a.length>0?`?${a}`:``},{replace:!0})},[n.pathname,n.search,r,t,e])}function kb(e){return mb(Sb(e))?.terminalId??null}function Ab(e){let t=Cb(e);return(0,K.useCallback)(e=>{t(t=>{if(e===null)return t.bottom.activeTabId===null?t:{...t,bottom:{...t.bottom,activeTabId:null}};let n=hb(t.bottom.tabs,e),r=Ly({terminalId:e}).id;return n===t.bottom.tabs&&t.bottom.activeTabId===r?t:{...t,bottom:{tabs:n,activeTabId:r}}})},[t])}function jb(e){let t=Cb(e);return(0,K.useCallback)(e=>{t(t=>{let n=gb(t.bottom.tabs,e);if(n===t.bottom.tabs)return t;let r=t.bottom.activeTabId===Ly({terminalId:e}).id;return{...t,bottom:{tabs:n,activeTabId:r?null:t.bottom.activeTabId}}})},[t])}function Mb(e){return e.kind===`workspace-file-preview`}function Nb(e){return e.kind===`host-file-preview`}function Pb(e){return e.kind===`thread-storage-file-preview`}function Fb(e){return e.kind===`open-file-search`}function Ib(e,t){return Mb(e)&&e.environmentId===t}function Lb(e){let t=e.secondary.activeTabId;return t===null?null:e.secondary.tabs.find(e=>e.id===t)??null}function Rb({activeTabId:e,isOpen:t,state:n,tabs:r}){return r===n.secondary.tabs&&e===n.secondary.activeTabId&&t===n.secondary.isOpen?n:{...n,secondary:{tabs:r,activeTabId:e,isOpen:t}}}function zb(e,t){let n=e.filter(e=>!Pb(e)||e.path===t||!Is(e.path));return n.length===e.length?e:n}function Bb(e,t){let n=e.findIndex(e=>e.id===t.id);if(n===-1)return[...e,t];let r=e[n];return r&&Qy(r,t)?e:e.map(e=>e.id===t.id?t:e)}function Vb(e,t){let n=e.filter(e=>e.id!==t);return n.length===e.length?e:n}function Hb(e,t){let n=e.filter(e=>!Mb(e)||e.environmentId===t);return n.length===e.length?e:n}function Ub(e){let t=e.filter(e=>!Pb(e));return t.length===e.length?e:t}function Wb(e,t){let n=e.filter(e=>!Pb(e)||t.has(e.path));return n.length===e.length?e:n}function Gb(e,t){return t!==null&&e.some(e=>e.id===t)}function Kb(e,t){return Fy({isPinned:e===t,path:e})}function qb(e,t){return Xb(e,t)?.id??Kb(t,t).id}function Jb(e,t){for(let n of e)if(Mb(n)&&n.path===t)return n;return null}function Yb(e,t){for(let n of e)if(Nb(n)&&n.path===t)return n;return null}function Xb(e,t){for(let n of e)if(Pb(n)&&n.path===t)return n;return null}function Zb(e){for(let t of e)if(Fb(t))return t;return null}function Qb({nextTab:e,state:t}){let n=Zb(t.secondary.tabs),r=n===null?t.secondary.tabs:Vb(t.secondary.tabs,n.id),i=r.find(t=>t.id===e.id);if(i)return Rb({activeTabId:i.id,isOpen:!0,state:t,tabs:r});let a=n===null?Bb(r,e):t.secondary.tabs.map(t=>t.id===n.id?e:t);return Rb({activeTabId:e.id,isOpen:!0,state:t,tabs:a})}function $b(e){return{lineNumber:e.lineNumber,path:e.path,source:e.source,statusLabel:e.statusLabel}}function ex(e){return{lineNumber:e.lineNumber,path:e.path}}function tx(e){let t=e.filter(e=>e.isPinned),n=e.filter(e=>!e.isPinned);return[...t,...n]}function nx({threadId:e,environmentId:t,threadType:n,storageFiles:r}){let i=Sb(e),a=Cb(e),o=n!==void 0,s=n===`manager`,c=Ls(r),l=o?t??null:void 0;(0,K.useEffect)(()=>{l!==void 0&&a(e=>{let t=Hb(e.secondary.tabs,l);return Rb({activeTabId:Gb(t,e.secondary.activeTabId)?e.secondary.activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:t})})},[l,a]),(0,K.useEffect)(()=>{o&&(s||a(e=>{let t=Ub(e.secondary.tabs);return Rb({activeTabId:Gb(t,e.secondary.activeTabId)?e.secondary.activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:t})}))},[s,o,a]);let u=(0,K.useRef)(null);(0,K.useEffect)(()=>{if(!s){u.current=null;return}let e=u.current!==c;u.current=c,a(t=>{let n=Kb(c,c),r=Bb(e?zb(t.secondary.tabs,c):t.secondary.tabs,n);return Rb({activeTabId:Gb(r,t.secondary.activeTabId)?t.secondary.activeTabId:n.id,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[i.secondary.activeTabId,s,c,a]),(0,K.useEffect)(()=>{!o||!r||s&&a(e=>{let t=new Set([c,...r.map(e=>e.path)]),n=Wb(e.secondary.tabs,t);return Rb({activeTabId:Gb(n,e.secondary.activeTabId)?e.secondary.activeTabId:qb(n,c),isOpen:e.secondary.isOpen,state:e,tabs:n})})},[s,o,c,r,a]);let d=(0,K.useCallback)(({lineNumber:e,path:t,source:n,statusLabel:r})=>{if(l===void 0)return;let i=Ny({environmentId:l,tab:{lineNumber:e,path:t,source:n,statusLabel:r}});a(a=>{let o=Jb(a.secondary.tabs,t),s=Bb(a.secondary.tabs,i);return o&&o.environmentId===l&&o.lineNumber===e&&B(o.source,n)&&o.statusLabel===r&&a.secondary.activeTabId===i.id&&a.secondary.isOpen?a:Rb({activeTabId:i.id,isOpen:!0,state:a,tabs:s})})},[l,a]),f=(0,K.useCallback)(e=>{a(t=>{let n=Jb(t.secondary.tabs,e);if(!n)return t;let r=Vb(t.secondary.tabs,n.id);return Rb({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[a]),p=(0,K.useCallback)(e=>{a(t=>{let n=Jb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Rb({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[a]),m=(0,K.useCallback)(e=>{if(!s)return;let t=Kb(e,c);a(e=>{let n=Bb(e.secondary.tabs,t);return n===e.secondary.tabs&&e.secondary.activeTabId===t.id&&e.secondary.isOpen?e:Rb({activeTabId:t.id,isOpen:!0,state:e,tabs:n})})},[s,c,a]),h=(0,K.useCallback)(({lineNumber:t,path:n})=>{if(!e)return;let r=Py({lineNumber:t,path:n});a(e=>{let i=Yb(e.secondary.tabs,n),a=Bb(e.secondary.tabs,r);return i&&i.lineNumber===t&&e.secondary.activeTabId===r.id&&e.secondary.isOpen?e:Rb({activeTabId:r.id,isOpen:!0,state:e,tabs:a})})},[e,a]),g=(0,K.useCallback)(e=>{a(t=>{let n=Yb(t.secondary.tabs,e);if(!n)return t;let r=Vb(t.secondary.tabs,n.id);return Rb({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[a]),_=(0,K.useCallback)(e=>{a(t=>{let n=Yb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Rb({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[a]),v=(0,K.useCallback)(e=>{!s||e===c||a(t=>{let n=Xb(t.secondary.tabs,e);if(!n)return t;let r=Vb(t.secondary.tabs,n.id);return Rb({activeTabId:t.secondary.activeTabId===n.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:r})})},[s,c,a]),y=(0,K.useCallback)(e=>{s&&a(t=>{let n=Xb(t.secondary.tabs,e);return!n||t.secondary.activeTabId===n.id&&t.secondary.isOpen?t:Rb({activeTabId:n.id,isOpen:!0,state:t,tabs:t.secondary.tabs})})},[s,a]),b=(0,K.useCallback)(()=>{let e=Iy();a(t=>{let n=Bb(t.secondary.tabs,e);return n===t.secondary.tabs&&t.secondary.activeTabId===e.id&&t.secondary.isOpen?t:Rb({activeTabId:e.id,isOpen:!0,state:t,tabs:n})})},[a]),x=(0,K.useCallback)(()=>{let e=Iy();a(t=>!Zb(t.secondary.tabs)||t.secondary.activeTabId===e.id&&t.secondary.isOpen?t:Rb({activeTabId:e.id,isOpen:!0,state:t,tabs:t.secondary.tabs}))},[a]),S=(0,K.useCallback)(()=>{let e=Iy();a(t=>{let n=Vb(t.secondary.tabs,e.id);return n===t.secondary.tabs?t:Rb({activeTabId:t.secondary.activeTabId===e.id?null:t.secondary.activeTabId,isOpen:t.secondary.isOpen,state:t,tabs:n})})},[a]),C=(0,K.useCallback)(e=>{if(e.source===`workspace`){if(l===void 0)return;let t=Ny({environmentId:l,tab:{lineNumber:null,path:e.path,source:{kind:`working-tree`},statusLabel:null}});a(e=>Qb({nextTab:t,state:e}));return}if(!s)return;let t=Kb(e.path,c);a(e=>Qb({nextTab:t,state:e}))},[s,c,l,a]),w=(0,K.useCallback)(()=>{a(e=>{let t=Lb(e);return!t||t.kind!==`workspace-file-preview`&&t.kind!==`host-file-preview`&&t.kind!==`thread-storage-file-preview`?e:Rb({activeTabId:null,isOpen:e.secondary.isOpen,state:e,tabs:e.secondary.tabs})})},[a]),T=Lb(i),E=l===void 0?[]:i.secondary.tabs.filter(e=>Ib(e,l)),D=T?.kind===`workspace-file-preview`&&T.environmentId===l?T:null,O=s&&T?.kind===`thread-storage-file-preview`?T:null,k=T?.kind===`host-file-preview`?T:null,A=T?.kind===`open-file-search`?T:null,j=s?tx(i.secondary.tabs.filter(Pb)):[];return{activateOpenFileSearchTab:x,activateHostFileTab:_,activateStorageFileTab:y,activateWorkspaceFileTab:p,activeHostFileLineNumber:k?.lineNumber??null,activeHostFilePath:k?.path??null,activeStorageFilePath:O?.path??null,activeWorkspaceFileLineNumber:D?.lineNumber??null,activeWorkspaceFilePath:D?.path??null,activeWorkspaceFileSource:D?.source??null,activeWorkspaceFileStatusLabel:D?.statusLabel??null,clearActiveFileTabs:w,closeHostFileTab:g,closeOpenFileSearchTab:S,closeStorageFileTab:v,closeWorkspaceFileTab:f,hasOpenFileSearchTab:Zb(i.secondary.tabs)!==null,isOpenFileSearchActive:A!==null,openFileSearchTab:b,openHostFile:h,openHostFileTabs:i.secondary.tabs.filter(Nb).map(ex),openStorageFile:m,openStorageFilePaths:j.map(e=>e.path),openWorkspaceFile:d,openWorkspaceFileTabs:E.map($b),pinnedStorageFilePath:c,selectOpenFileSearchResult:C}}function rx(e){return e??void 0}function ix({previousStateKey:e,nextStateKey:t,persistedMergeBaseBranch:n,selectedMergeBaseBranch:r,updatePending:i}){return e===t?i?!1:r!==rx(n):!0}function ax({environment:e,workspaceStatus:t}){return e?.baseBranch??t?.branch.defaultBranch??e?.defaultBranch??void 0}function ox({environment:e,selectedMergeBaseBranch:t,workspaceStatus:n}){return t??e?.mergeBaseBranch??e?.baseBranch??n?.mergeBase?.mergeBaseBranch??n?.branch.defaultBranch??ne(e)}function sx({branch:e,environment:t,workspaceStatus:n}){let r=e.trim();return r.length===0||r===ax({environment:t,workspaceStatus:n})?null:r}function cx({environment:e,mergeBaseBranchOptions:t,selectedMergeBaseBranch:n,setSelectedMergeBaseBranch:r,thread:i,updateEnvironment:a,workspaceStatus:o}){let s=(0,K.useRef)(void 0),c=e?.id??i?.id,l=a.isPending&&a.variables?.id===e?.id;(0,K.useEffect)(()=>{ix({previousStateKey:s.current,nextStateKey:c,persistedMergeBaseBranch:e?.mergeBaseBranch,selectedMergeBaseBranch:n,updatePending:l})&&(s.current=c,r(rx(e?.mergeBaseBranch)))},[e?.mergeBaseBranch,l,c,n,r]);let u=ox({environment:e,selectedMergeBaseBranch:n,workspaceStatus:o}),d=!!(u||o?.branch.defaultBranch),f=u,p=(0,K.useMemo)(()=>Qn({mergeBaseBranch:f,mergeBaseBranchOptions:t}),[f,t]),m=o?.branch.currentBranch!=null&&o.branch.currentBranch===o.branch.defaultBranch,h=d&&!!f&&!m;return{canSelectMergeBase:!!(h&&f&&p.length>0),effectiveMergeBaseBranch:u,handleMergeBaseBranchChange:(0,K.useCallback)(t=>{if(!e||!i?.environmentId)return;let n=t.trim(),s=sx({branch:n,environment:e,workspaceStatus:o}),c=e.mergeBaseBranch;r(n),s!==c&&a.mutate({id:e.id,mergeBaseBranch:s},{onError:t=>{r(e.mergeBaseBranch??void 0),en.error(mn({error:t,fallbackMessage:`Failed to update merge base branch.`}))}})},[e,r,i?.environmentId,a,o]),showBranchComparisonUi:d,showMergeBase:h,mergeBaseBranch:f,mergeBaseCandidates:p}}var lx=A((e=>{e.__esModule=!0,e.extend=a,e.indexOf=l,e.escapeExpression=u,e.isEmpty=d,e.createFrame=f,e.blockParams=p,e.appendContextPath=m;var t={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#x27;`,"`":`&#x60;`,"=":`&#x3D;`},n=/[&<>"'`=]/g,r=/[&<>"'`=]/;function i(e){return t[e]}function a(e){for(var t=1;t<arguments.length;t++)for(var n in arguments[t])Object.prototype.hasOwnProperty.call(arguments[t],n)&&(e[n]=arguments[t][n]);return e}var o=Object.prototype.toString;e.toString=o;var s=function(e){return typeof e==`function`};s(/x/)&&(e.isFunction=s=function(e){return typeof e==`function`&&o.call(e)===`[object Function]`}),e.isFunction=s;var c=Array.isArray||function(e){return e&&typeof e==`object`?o.call(e)===`[object Array]`:!1};e.isArray=c;function l(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}function u(e){if(typeof e!=`string`){if(e&&e.toHTML)return e.toHTML();if(e==null)return``;if(!e)return e+``;e=``+e}return r.test(e)?e.replace(n,i):e}function d(e){return!e&&e!==0?!0:!!(c(e)&&e.length===0)}function f(e){var t=a({},e);return t._parent=e,t}function p(e,t){return e.path=t,e}function m(e,t){return(e?e+`.`:``)+t}})),ux=A(((e,t)=>{e.__esModule=!0;var n=[`description`,`fileName`,`lineNumber`,`endLineNumber`,`message`,`name`,`number`,`stack`];function r(e,t){var i=t&&t.loc,a=void 0,o=void 0,s=void 0,c=void 0;i&&(a=i.start.line,o=i.end.line,s=i.start.column,c=i.end.column,e+=` - `+a+`:`+s);for(var l=Error.prototype.constructor.call(this,e),u=0;u<n.length;u++)this[n[u]]=l[n[u]];Error.captureStackTrace&&Error.captureStackTrace(this,r);try{i&&(this.lineNumber=a,this.endLineNumber=o,Object.defineProperty?(Object.defineProperty(this,`column`,{value:s,enumerable:!0}),Object.defineProperty(this,`endColumn`,{value:c,enumerable:!0})):(this.column=s,this.endColumn=c))}catch{}}r.prototype=Error(),e.default=r,t.exports=e.default})),dx=A(((e,t)=>{e.__esModule=!0;var n=lx();e.default=function(e){e.registerHelper(`blockHelperMissing`,function(t,r){var i=r.inverse,a=r.fn;if(t===!0)return a(this);if(t===!1||t==null)return i(this);if(n.isArray(t))return t.length>0?(r.ids&&=[r.name],e.helpers.each(t,r)):i(this);if(r.data&&r.ids){var o=n.createFrame(r.data);o.contextPath=n.appendContextPath(r.data.contextPath,r.name),r={data:o}}return a(t,r)})},t.exports=e.default})),fx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=lx(),i=n(ux());e.default=function(e){e.registerHelper(`each`,function(e,t){if(!t)throw new i.default(`Must pass iterator to #each`);var n=t.fn,a=t.inverse,o=0,s=``,c=void 0,l=void 0;t.data&&t.ids&&(l=r.appendContextPath(t.data.contextPath,t.ids[0])+`.`),r.isFunction(e)&&(e=e.call(this)),t.data&&(c=r.createFrame(t.data));function u(t,i,a){c&&(c.key=t,c.index=i,c.first=i===0,c.last=!!a,l&&(c.contextPath=l+t)),s+=n(e[t],{data:c,blockParams:r.blockParams([e[t],t],[l+t,null])})}if(e&&typeof e==`object`)if(r.isArray(e))for(var d=e.length;o<d;o++)o in e&&u(o,o,o===e.length-1);else if(typeof Symbol==`function`&&e[Symbol.iterator]){for(var f=[],p=e[Symbol.iterator](),m=p.next();!m.done;m=p.next())f.push(m.value);e=f;for(var d=e.length;o<d;o++)u(o,o,o===e.length-1)}else (function(){var t=void 0;Object.keys(e).forEach(function(e){t!==void 0&&u(t,o-1),t=e,o++}),t!==void 0&&u(t,o-1,!0)})();return o===0&&(s=a(this)),s})},t.exports=e.default})),px=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(ux());e.default=function(e){e.registerHelper(`helperMissing`,function(){if(arguments.length!==1)throw new r.default(`Missing helper: "`+arguments[arguments.length-1].name+`"`)})},t.exports=e.default})),mx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=lx(),i=n(ux());e.default=function(e){e.registerHelper(`if`,function(e,t){if(arguments.length!=2)throw new i.default(`#if requires exactly one argument`);return r.isFunction(e)&&(e=e.call(this)),!t.hash.includeZero&&!e||r.isEmpty(e)?t.inverse(this):t.fn(this)}),e.registerHelper(`unless`,function(t,n){if(arguments.length!=2)throw new i.default(`#unless requires exactly one argument`);return e.helpers.if.call(this,t,{fn:n.inverse,inverse:n.fn,hash:n.hash})})},t.exports=e.default})),hx=A(((e,t)=>{e.__esModule=!0,e.default=function(e){e.registerHelper(`log`,function(){for(var t=[void 0],n=arguments[arguments.length-1],r=0;r<arguments.length-1;r++)t.push(arguments[r]);var i=1;n.hash.level==null?n.data&&n.data.level!=null&&(i=n.data.level):i=n.hash.level,t[0]=i,e.log.apply(e,t)})},t.exports=e.default})),gx=A(((e,t)=>{e.__esModule=!0,e.default=function(e){e.registerHelper(`lookup`,function(e,t,n){return e&&n.lookupProperty(e,t)})},t.exports=e.default})),_x=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=lx(),i=n(ux());e.default=function(e){e.registerHelper(`with`,function(e,t){if(arguments.length!=2)throw new i.default(`#with requires exactly one argument`);r.isFunction(e)&&(e=e.call(this));var n=t.fn;if(r.isEmpty(e))return t.inverse(this);var a=t.data;return t.data&&t.ids&&(a=r.createFrame(t.data),a.contextPath=r.appendContextPath(t.data.contextPath,t.ids[0])),n(e,{data:a,blockParams:r.blockParams([e],[a&&a.contextPath])})})},t.exports=e.default})),vx=A((e=>{e.__esModule=!0,e.registerDefaultHelpers=l,e.moveHelperToHooks=u;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(dx()),r=t(fx()),i=t(px()),a=t(mx()),o=t(hx()),s=t(gx()),c=t(_x());function l(e){n.default(e),r.default(e),i.default(e),a.default(e),o.default(e),s.default(e),c.default(e)}function u(e,t,n){e.helpers[t]&&(e.hooks[t]=e.helpers[t],n||delete e.helpers[t])}})),yx=A(((e,t)=>{e.__esModule=!0;var n=lx();e.default=function(e){e.registerDecorator(`inline`,function(e,t,r,i){var a=e;return t.partials||(t.partials={},a=function(i,a){var o=r.partials;r.partials=n.extend({},o,t.partials);var s=e(i,a);return r.partials=o,s}),t.partials[i.args[0]]=i.fn,a})},t.exports=e.default})),bx=A((e=>{e.__esModule=!0,e.registerDefaultDecorators=r;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(yx());function r(e){n.default(e)}})),xx=A(((e,t)=>{e.__esModule=!0;var n=lx(),r={methodMap:[`debug`,`info`,`warn`,`error`],level:`info`,lookupLevel:function(e){if(typeof e==`string`){var t=n.indexOf(r.methodMap,e.toLowerCase());e=t>=0?t:parseInt(e,10)}return e},log:function(e){if(e=r.lookupLevel(e),typeof console<`u`&&r.lookupLevel(r.level)<=e){var t=r.methodMap[e];console[t]||(t=`log`);var n=[...arguments].slice(1);console[t].apply(console,n)}}};e.default=r,t.exports=e.default})),Sx=A((e=>{e.__esModule=!0,e.createNewLookupObject=n;var t=lx();function n(){var e=[...arguments];return t.extend.apply(void 0,[Object.create(null)].concat(e))}})),Cx=A((e=>{e.__esModule=!0,e.createProtoAccessControl=a,e.resultIsAllowed=o,e.resetLoggedProperties=l;function t(e){return e&&e.__esModule?e:{default:e}}var n=Sx(),r=t(xx()),i=Object.create(null);function a(e){var t=Object.create(null);t.constructor=!1,t.__defineGetter__=!1,t.__defineSetter__=!1,t.__lookupGetter__=!1;var r=Object.create(null);return r.__proto__=!1,{properties:{whitelist:n.createNewLookupObject(r,e.allowedProtoProperties),defaultValue:e.allowProtoPropertiesByDefault},methods:{whitelist:n.createNewLookupObject(t,e.allowedProtoMethods),defaultValue:e.allowProtoMethodsByDefault}}}function o(e,t,n){return s(typeof e==`function`?t.methods:t.properties,n)}function s(e,t){return e.whitelist[t]===void 0?e.defaultValue===void 0?(c(t),!1):e.defaultValue:e.whitelist[t]===!0}function c(e){i[e]!==!0&&(i[e]=!0,r.default.log(`error`,`Handlebars: Access has been denied to resolve the property "`+e+`" because it is not an "own property" of its parent.
1816
+ You can add a runtime option to disable the check or this warning:
1817
+ See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function l(){Object.keys(i).forEach(function(e){delete i[e]})}})),wx=A((e=>{e.__esModule=!0,e.HandlebarsEnvironment=l;function t(e){return e&&e.__esModule?e:{default:e}}var n=lx(),r=t(ux()),i=vx(),a=bx(),o=t(xx()),s=Cx();e.VERSION=`4.7.8`,e.COMPILER_REVISION=8,e.LAST_COMPATIBLE_COMPILER_REVISION=7,e.REVISION_CHANGES={1:`<= 1.0.rc.2`,2:`== 1.0.0-rc.3`,3:`== 1.0.0-rc.4`,4:`== 1.x.x`,5:`== 2.0.0-alpha.x`,6:`>= 2.0.0-beta.1`,7:`>= 4.0.0 <4.3.0`,8:`>= 4.3.0`};var c=`[object Object]`;function l(e,t,n){this.helpers=e||{},this.partials=t||{},this.decorators=n||{},i.registerDefaultHelpers(this),a.registerDefaultDecorators(this)}l.prototype={constructor:l,logger:o.default,log:o.default.log,registerHelper:function(e,t){if(n.toString.call(e)===c){if(t)throw new r.default(`Arg not supported with multiple helpers`);n.extend(this.helpers,e)}else this.helpers[e]=t},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,t){if(n.toString.call(e)===c)n.extend(this.partials,e);else{if(t===void 0)throw new r.default(`Attempting to register a partial called "`+e+`" as undefined`);this.partials[e]=t}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,t){if(n.toString.call(e)===c){if(t)throw new r.default(`Arg not supported with multiple decorators`);n.extend(this.decorators,e)}else this.decorators[e]=t},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){s.resetLoggedProperties()}},e.log=o.default.log,e.createFrame=n.createFrame,e.logger=o.default})),Tx=A(((e,t)=>{e.__esModule=!0;function n(e){this.string=e}n.prototype.toString=n.prototype.toHTML=function(){return``+this.string},e.default=n,t.exports=e.default})),Ex=A((e=>{e.__esModule=!0,e.wrapHelper=t;function t(e,t){return typeof e==`function`?function(){var n=arguments[arguments.length-1];return arguments[arguments.length-1]=t(n),e.apply(this,arguments)}:e}})),Dx=A((e=>{e.__esModule=!0,e.checkRevision=l,e.template=u,e.wrapProgram=d,e.resolvePartial=f,e.invokePartial=p,e.noop=m;function t(e){return e&&e.__esModule?e:{default:e}}function n(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}var r=n(lx()),i=t(ux()),a=wx(),o=vx(),s=Ex(),c=Cx();function l(e){var t=e&&e[0]||1,n=a.COMPILER_REVISION;if(!(t>=a.LAST_COMPATIBLE_COMPILER_REVISION&&t<=a.COMPILER_REVISION))if(t<a.LAST_COMPATIBLE_COMPILER_REVISION){var r=a.REVISION_CHANGES[n],o=a.REVISION_CHANGES[t];throw new i.default(`Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version (`+r+`) or downgrade your runtime to an older version (`+o+`).`)}else throw new i.default(`Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version (`+e[1]+`).`)}function u(e,t){if(!t)throw new i.default(`No environment passed to template`);if(!e||!e.main)throw new i.default(`Unknown template object: `+typeof e);e.main.decorator=e.main_d,t.VM.checkRevision(e.compiler);var n=e.compiler&&e.compiler[0]===7;function a(n,a,o){o.hash&&(a=r.extend({},a,o.hash),o.ids&&(o.ids[0]=!0)),n=t.VM.resolvePartial.call(this,n,a,o);var s=r.extend({},o,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),c=t.VM.invokePartial.call(this,n,a,s);if(c==null&&t.compile&&(o.partials[o.name]=t.compile(n,e.compilerOptions,t),c=o.partials[o.name](a,s)),c!=null){if(o.indent){for(var l=c.split(`
1818
+ `),u=0,d=l.length;u<d&&!(!l[u]&&u+1===d);u++)l[u]=o.indent+l[u];c=l.join(`
1819
+ `)}return c}else throw new i.default(`The partial `+o.name+` could not be compiled when running in runtime-only mode`)}var s={strict:function(e,t,n){if(!e||!(t in e))throw new i.default(`"`+t+`" not defined in `+e,{loc:n});return s.lookupProperty(e,t)},lookupProperty:function(e,t){var n=e[t];if(n==null||Object.prototype.hasOwnProperty.call(e,t)||c.resultIsAllowed(n,s.protoAccessControl,t))return n},lookup:function(e,t){for(var n=e.length,r=0;r<n;r++)if((e[r]&&s.lookupProperty(e[r],t))!=null)return e[r][t]},lambda:function(e,t){return typeof e==`function`?e.call(t):e},escapeExpression:r.escapeExpression,invokePartial:a,fn:function(t){var n=e[t];return n.decorator=e[t+`_d`],n},programs:[],program:function(e,t,n,r,i){var a=this.programs[e],o=this.fn(e);return t||i||r||n?a=d(this,e,o,t,n,r,i):a||=this.programs[e]=d(this,e,o),a},data:function(e,t){for(;e&&t--;)e=e._parent;return e},mergeIfNeeded:function(e,t){var n=e||t;return e&&t&&e!==t&&(n=r.extend({},t,e)),n},nullContext:Object.seal({}),noop:t.VM.noop,compilerInfo:e.compiler};function l(t){var n=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],r=n.data;l._setup(n),!n.partial&&e.useData&&(r=h(t,r));var i=void 0,a=e.useBlockParams?[]:void 0;e.useDepths&&(i=n.depths?t==n.depths[0]?n.depths:[t].concat(n.depths):[t]);function o(t){return``+e.main(s,t,s.helpers,s.partials,r,a,i)}return o=g(e.main,o,s,n.depths||[],r,a),o(t,n)}return l.isTop=!0,l._setup=function(i){if(i.partial)s.protoAccessControl=i.protoAccessControl,s.helpers=i.helpers,s.partials=i.partials,s.decorators=i.decorators,s.hooks=i.hooks;else{var a=r.extend({},t.helpers,i.helpers);_(a,s),s.helpers=a,e.usePartial&&(s.partials=s.mergeIfNeeded(i.partials,t.partials)),(e.usePartial||e.useDecorators)&&(s.decorators=r.extend({},t.decorators,i.decorators)),s.hooks={},s.protoAccessControl=c.createProtoAccessControl(i);var l=i.allowCallsToHelperMissing||n;o.moveHelperToHooks(s,`helperMissing`,l),o.moveHelperToHooks(s,`blockHelperMissing`,l)}},l._child=function(t,n,r,a){if(e.useBlockParams&&!r)throw new i.default(`must pass block params`);if(e.useDepths&&!a)throw new i.default(`must pass parent depths`);return d(s,t,e[t],n,0,r,a)},l}function d(e,t,n,r,i,a,o){function s(t){var i=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],s=o;return o&&t!=o[0]&&!(t===e.nullContext&&o[0]===null)&&(s=[t].concat(o)),n(e,t,e.helpers,e.partials,i.data||r,a&&[i.blockParams].concat(a),s)}return s=g(n,s,e,o,r,a),s.program=t,s.depth=o?o.length:0,s.blockParams=i||0,s}function f(e,t,n){return e?!e.call&&!n.name&&(n.name=e,e=n.partials[e]):e=n.name===`@partial-block`?n.data[`partial-block`]:n.partials[n.name],e}function p(e,t,n){var o=n.data&&n.data[`partial-block`];n.partial=!0,n.ids&&(n.data.contextPath=n.ids[0]||n.data.contextPath);var s=void 0;if(n.fn&&n.fn!==m&&(function(){n.data=a.createFrame(n.data);var e=n.fn;s=n.data[`partial-block`]=function(t){var n=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return n.data=a.createFrame(n.data),n.data[`partial-block`]=o,e(t,n)},e.partials&&(n.partials=r.extend({},n.partials,e.partials))})(),e===void 0&&s&&(e=s),e===void 0)throw new i.default(`The partial `+n.name+` could not be found`);if(e instanceof Function)return e(t,n)}function m(){return``}function h(e,t){return(!t||!(`root`in t))&&(t=t?a.createFrame(t):{},t.root=e),t}function g(e,t,n,i,a,o){if(e.decorator){var s={};t=e.decorator(t,s,n,i&&i[0],a,o,i),r.extend(t,s)}return t}function _(e,t){Object.keys(e).forEach(function(n){var r=e[n];e[n]=v(r,t)})}function v(e,t){var n=t.lookupProperty;return s.wrapHelper(e,function(e){return r.extend({lookupProperty:n},e)})}})),Ox=A(((e,t)=>{e.__esModule=!0,e.default=function(e){(function(){typeof globalThis!=`object`&&(Object.prototype.__defineGetter__(`__magic__`,function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var t=globalThis.Handlebars;e.noConflict=function(){return globalThis.Handlebars===e&&(globalThis.Handlebars=t),e}},t.exports=e.default})),kx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}function r(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}var i=r(wx()),a=n(Tx()),o=n(ux()),s=r(lx()),c=r(Dx()),l=n(Ox());function u(){var e=new i.HandlebarsEnvironment;return s.extend(e,i),e.SafeString=a.default,e.Exception=o.default,e.Utils=s,e.escapeExpression=s.escapeExpression,e.VM=c,e.template=function(t){return c.template(t,e)},e}var d=u();d.create=u,l.default(d),d.default=d,e.default=d,t.exports=e.default})),Ax=A(((e,t)=>{e.__esModule=!0;var n={helpers:{helperExpression:function(e){return e.type===`SubExpression`||(e.type===`MustacheStatement`||e.type===`BlockStatement`)&&!!(e.params&&e.params.length||e.hash)},scopedId:function(e){return/^\.|this\b/.test(e.original)},simpleId:function(e){return e.parts.length===1&&!n.helpers.scopedId(e)&&!e.depth}}};e.default=n,t.exports=e.default})),jx=A(((e,t)=>{e.__esModule=!0,e.default=(function(){var e={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:`error`,5:`EOF`,14:`COMMENT`,15:`CONTENT`,18:`END_RAW_BLOCK`,19:`OPEN_RAW_BLOCK`,23:`CLOSE_RAW_BLOCK`,29:`OPEN_BLOCK`,33:`CLOSE`,34:`OPEN_INVERSE`,39:`OPEN_INVERSE_CHAIN`,44:`INVERSE`,47:`OPEN_ENDBLOCK`,48:`OPEN`,51:`OPEN_UNESCAPED`,54:`CLOSE_UNESCAPED`,55:`OPEN_PARTIAL`,60:`OPEN_PARTIAL_BLOCK`,65:`OPEN_SEXPR`,68:`CLOSE_SEXPR`,72:`ID`,73:`EQUALS`,75:`OPEN_BLOCK_PARAMS`,77:`CLOSE_BLOCK_PARAMS`,80:`STRING`,81:`NUMBER`,82:`BOOLEAN`,83:`UNDEFINED`,84:`NULL`,85:`DATA`,87:`SEP`},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 2:this.$=r.prepareProgram(a[s]);break;case 3:this.$=a[s];break;case 4:this.$=a[s];break;case 5:this.$=a[s];break;case 6:this.$=a[s];break;case 7:this.$=a[s];break;case 8:this.$=a[s];break;case 9:this.$={type:`CommentStatement`,value:r.stripComment(a[s]),strip:r.stripFlags(a[s],a[s]),loc:r.locInfo(this._$)};break;case 10:this.$={type:`ContentStatement`,original:a[s],value:a[s],loc:r.locInfo(this._$)};break;case 11:this.$=r.prepareRawBlock(a[s-2],a[s-1],a[s],this._$);break;case 12:this.$={path:a[s-3],params:a[s-2],hash:a[s-1]};break;case 13:this.$=r.prepareBlock(a[s-3],a[s-2],a[s-1],a[s],!1,this._$);break;case 14:this.$=r.prepareBlock(a[s-3],a[s-2],a[s-1],a[s],!0,this._$);break;case 15:this.$={open:a[s-5],path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 16:this.$={path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 17:this.$={path:a[s-4],params:a[s-3],hash:a[s-2],blockParams:a[s-1],strip:r.stripFlags(a[s-5],a[s])};break;case 18:this.$={strip:r.stripFlags(a[s-1],a[s-1]),program:a[s]};break;case 19:var c=r.prepareBlock(a[s-2],a[s-1],a[s],a[s],!1,this._$),l=r.prepareProgram([c],a[s-1].loc);l.chained=!0,this.$={strip:a[s-2].strip,program:l,chain:!0};break;case 20:this.$=a[s];break;case 21:this.$={path:a[s-1],strip:r.stripFlags(a[s-2],a[s])};break;case 22:this.$=r.prepareMustache(a[s-3],a[s-2],a[s-1],a[s-4],r.stripFlags(a[s-4],a[s]),this._$);break;case 23:this.$=r.prepareMustache(a[s-3],a[s-2],a[s-1],a[s-4],r.stripFlags(a[s-4],a[s]),this._$);break;case 24:this.$={type:`PartialStatement`,name:a[s-3],params:a[s-2],hash:a[s-1],indent:``,strip:r.stripFlags(a[s-4],a[s]),loc:r.locInfo(this._$)};break;case 25:this.$=r.preparePartialBlock(a[s-2],a[s-1],a[s],this._$);break;case 26:this.$={path:a[s-3],params:a[s-2],hash:a[s-1],strip:r.stripFlags(a[s-4],a[s])};break;case 27:this.$=a[s];break;case 28:this.$=a[s];break;case 29:this.$={type:`SubExpression`,path:a[s-3],params:a[s-2],hash:a[s-1],loc:r.locInfo(this._$)};break;case 30:this.$={type:`Hash`,pairs:a[s],loc:r.locInfo(this._$)};break;case 31:this.$={type:`HashPair`,key:r.id(a[s-2]),value:a[s],loc:r.locInfo(this._$)};break;case 32:this.$=r.id(a[s-1]);break;case 33:this.$=a[s];break;case 34:this.$=a[s];break;case 35:this.$={type:`StringLiteral`,value:a[s],original:a[s],loc:r.locInfo(this._$)};break;case 36:this.$={type:`NumberLiteral`,value:Number(a[s]),original:Number(a[s]),loc:r.locInfo(this._$)};break;case 37:this.$={type:`BooleanLiteral`,value:a[s]===`true`,original:a[s]===`true`,loc:r.locInfo(this._$)};break;case 38:this.$={type:`UndefinedLiteral`,original:void 0,value:void 0,loc:r.locInfo(this._$)};break;case 39:this.$={type:`NullLiteral`,original:null,value:null,loc:r.locInfo(this._$)};break;case 40:this.$=a[s];break;case 41:this.$=a[s];break;case 42:this.$=r.preparePath(!0,a[s],this._$);break;case 43:this.$=r.preparePath(!1,a[s],this._$);break;case 44:a[s-2].push({part:r.id(a[s]),original:a[s],separator:a[s-1]}),this.$=a[s-2];break;case 45:this.$=[{part:r.id(a[s]),original:a[s]}];break;case 46:this.$=[];break;case 47:a[s-1].push(a[s]);break;case 48:this.$=[];break;case 49:a[s-1].push(a[s]);break;case 50:this.$=[];break;case 51:a[s-1].push(a[s]);break;case 58:this.$=[];break;case 59:a[s-1].push(a[s]);break;case 64:this.$=[];break;case 65:a[s-1].push(a[s]);break;case 70:this.$=[];break;case 71:a[s-1].push(a[s]);break;case 78:this.$=[];break;case 79:a[s-1].push(a[s]);break;case 82:this.$=[];break;case 83:a[s-1].push(a[s]);break;case 86:this.$=[];break;case 87:a[s-1].push(a[s]);break;case 90:this.$=[];break;case 91:a[s-1].push(a[s]);break;case 94:this.$=[];break;case 95:a[s-1].push(a[s]);break;case 98:this.$=[a[s]];break;case 99:a[s-1].push(a[s]);break;case 100:this.$=[a[s]];break;case 101:a[s-1].push(a[s]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(e,t){throw Error(e)},parse:function(e){var t=this,n=[0],r=[null],i=[],a=this.table,o=``,s=0,c=0,l=0;this.lexer.setInput(e),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,this.lexer.yylloc===void 0&&(this.lexer.yylloc={});var u=this.lexer.yylloc;i.push(u);var d=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError==`function`&&(this.parseError=this.yy.parseError);function f(){var e=t.lexer.lex()||1;return typeof e!=`number`&&(e=t.symbols_[e]||e),e}for(var p,m,h,g,_,v={},y,b,x,S;;){if(h=n[n.length-1],this.defaultActions[h]?g=this.defaultActions[h]:(p??=f(),g=a[h]&&a[h][p]),g===void 0||!g.length||!g[0]){var C=``;if(!l){for(y in S=[],a[h])this.terminals_[y]&&y>2&&S.push(`'`+this.terminals_[y]+`'`);C=this.lexer.showPosition?`Parse error on line `+(s+1)+`:
1820
+ `+this.lexer.showPosition()+`
1821
+ Expecting `+S.join(`, `)+`, got '`+(this.terminals_[p]||p)+`'`:`Parse error on line `+(s+1)+`: Unexpected `+(p==1?`end of input`:`'`+(this.terminals_[p]||p)+`'`),this.parseError(C,{text:this.lexer.match,token:this.terminals_[p]||p,line:this.lexer.yylineno,loc:u,expected:S})}}if(g[0]instanceof Array&&g.length>1)throw Error(`Parse Error: multiple actions possible at state: `+h+`, token: `+p);switch(g[0]){case 1:n.push(p),r.push(this.lexer.yytext),i.push(this.lexer.yylloc),n.push(g[1]),p=null,m?(p=m,m=null):(c=this.lexer.yyleng,o=this.lexer.yytext,s=this.lexer.yylineno,u=this.lexer.yylloc,l>0&&l--);break;case 2:if(b=this.productions_[g[1]][1],v.$=r[r.length-b],v._$={first_line:i[i.length-(b||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(b||1)].first_column,last_column:i[i.length-1].last_column},d&&(v._$.range=[i[i.length-(b||1)].range[0],i[i.length-1].range[1]]),_=this.performAction.call(v,o,c,s,this.yy,g[1],r,i),_!==void 0)return _;b&&(n=n.slice(0,-1*b*2),r=r.slice(0,-1*b),i=i.slice(0,-1*b)),n.push(this.productions_[g[1]][0]),r.push(v.$),i.push(v._$),x=a[n[n.length-2]][n[n.length-1]],n.push(x);break;case 3:return!0}}return!0}};e.lexer=(function(){var e={EOF:1,parseError:function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},setInput:function(e){return this._input=e,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t-1),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this},more:function(){return this._more=!0,this},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},showPosition:function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
1822
+ `+t+`^`},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,t,n,r,i;this._more||(this.yytext=``,this.match=``);for(var a=this._currentRules(),o=0;o<a.length&&(n=this._input.match(this.rules[a[o]]),!(n&&(!t||n[0].length>t[0].length)&&(t=n,r=o,!this.options.flex)));o++);return t?(i=t[0].match(/(?:\r\n?|\n).*/g),i&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],e=this.performAction.call(this,this.yy,this,a[r],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),e||void 0):this._input===``?this.EOF:this.parseError(`Lexical error on line `+(this.yylineno+1)+`. Unrecognized text.
1823
+ `+this.showPosition(),{text:``,token:null,line:this.yylineno})},lex:function(){var e=this.next();return e===void 0?this.lex():e},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(e){this.begin(e)}};return e.options={},e.performAction=function(e,t,n,r){function i(e,n){return t.yytext=t.yytext.substring(e,t.yyleng-n+e)}switch(n){case 0:if(t.yytext.slice(-2)===`\\\\`?(i(0,1),this.begin(`mu`)):t.yytext.slice(-1)===`\\`?(i(0,1),this.begin(`emu`)):this.begin(`mu`),t.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin(`raw`),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]===`raw`?15:(i(5,9),`END_RAW_BLOCK`);case 5:return 15;case 6:return this.popState(),14;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin(`raw`),23;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(t.yytext),this.popState(),this.begin(`com`);break;case 22:return this.popState(),14;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;case 30:return this.popState(),33;case 31:return t.yytext=i(1,2).replace(/\\"/g,`"`),80;case 32:return t.yytext=i(1,2).replace(/\\'/g,`'`),80;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return t.yytext=t.yytext.replace(/\\([\\\]])/g,`$1`),72;case 43:return`INVALID`;case 44:return 5}},e.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],e.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},e})();function t(){this.yy={}}return t.prototype=e,e.Parser=t,new t})(),t.exports=e.default})),Mx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(ux());function i(){this.parents=[]}i.prototype={constructor:i,mutating:!1,acceptKey:function(e,t){var n=this.accept(e[t]);if(this.mutating){if(n&&!i.prototype[n.type])throw new r.default(`Unexpected node type "`+n.type+`" found when accepting `+t+` on `+e.type);e[t]=n}},acceptRequired:function(e,t){if(this.acceptKey(e,t),!e[t])throw new r.default(e.type+` requires `+t)},acceptArray:function(e){for(var t=0,n=e.length;t<n;t++)this.acceptKey(e,t),e[t]||(e.splice(t,1),t--,n--)},accept:function(e){if(e){if(!this[e.type])throw new r.default(`Unknown type: `+e.type,e);this.current&&this.parents.unshift(this.current),this.current=e;var t=this[e.type](e);if(this.current=this.parents.shift(),!this.mutating||t)return t;if(t!==!1)return e}},Program:function(e){this.acceptArray(e.body)},MustacheStatement:a,Decorator:a,BlockStatement:o,DecoratorBlock:o,PartialStatement:s,PartialBlockStatement:function(e){s.call(this,e),this.acceptKey(e,`program`)},ContentStatement:function(){},CommentStatement:function(){},SubExpression:a,PathExpression:function(){},StringLiteral:function(){},NumberLiteral:function(){},BooleanLiteral:function(){},UndefinedLiteral:function(){},NullLiteral:function(){},Hash:function(e){this.acceptArray(e.pairs)},HashPair:function(e){this.acceptRequired(e,`value`)}};function a(e){this.acceptRequired(e,`path`),this.acceptArray(e.params),this.acceptKey(e,`hash`)}function o(e){a.call(this,e),this.acceptKey(e,`program`),this.acceptKey(e,`inverse`)}function s(e){this.acceptRequired(e,`name`),this.acceptArray(e.params),this.acceptKey(e,`hash`)}e.default=i,t.exports=e.default})),Nx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(Mx());function i(){var e=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=e}i.prototype=new r.default,i.prototype.Program=function(e){var t=!this.options.ignoreStandalone,n=!this.isRootSeen;this.isRootSeen=!0;for(var r=e.body,i=0,l=r.length;i<l;i++){var u=r[i],d=this.accept(u);if(d){var f=a(r,i,n),p=o(r,i,n),m=d.openStandalone&&f,h=d.closeStandalone&&p,g=d.inlineStandalone&&f&&p;d.close&&s(r,i,!0),d.open&&c(r,i,!0),t&&g&&(s(r,i),c(r,i)&&u.type===`PartialStatement`&&(u.indent=/([ \t]+$)/.exec(r[i-1].original)[1])),t&&m&&(s((u.program||u.inverse).body),c(r,i)),t&&h&&(s(r,i),c((u.inverse||u.program).body))}}return e},i.prototype.BlockStatement=i.prototype.DecoratorBlock=i.prototype.PartialBlockStatement=function(e){this.accept(e.program),this.accept(e.inverse);var t=e.program||e.inverse,n=e.program&&e.inverse,r=n,i=n;if(n&&n.chained)for(r=n.body[0].program;i.chained;)i=i.body[i.body.length-1].program;var l={open:e.openStrip.open,close:e.closeStrip.close,openStandalone:o(t.body),closeStandalone:a((r||t).body)};if(e.openStrip.close&&s(t.body,null,!0),n){var u=e.inverseStrip;u.open&&c(t.body,null,!0),u.close&&s(r.body,null,!0),e.closeStrip.open&&c(i.body,null,!0),!this.options.ignoreStandalone&&a(t.body)&&o(r.body)&&(c(t.body),s(r.body))}else e.closeStrip.open&&c(t.body,null,!0);return l},i.prototype.Decorator=i.prototype.MustacheStatement=function(e){return e.strip},i.prototype.PartialStatement=i.prototype.CommentStatement=function(e){var t=e.strip||{};return{inlineStandalone:!0,open:t.open,close:t.close}};function a(e,t,n){t===void 0&&(t=e.length);var r=e[t-1],i=e[t-2];if(!r)return n;if(r.type===`ContentStatement`)return(i||!n?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(r.original)}function o(e,t,n){t===void 0&&(t=-1);var r=e[t+1],i=e[t+2];if(!r)return n;if(r.type===`ContentStatement`)return(i||!n?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(r.original)}function s(e,t,n){var r=e[t==null?0:t+1];if(!(!r||r.type!==`ContentStatement`||!n&&r.rightStripped)){var i=r.value;r.value=r.value.replace(n?/^\s+/:/^[ \t]*\r?\n?/,``),r.rightStripped=r.value!==i}}function c(e,t,n){var r=e[t==null?e.length-1:t-1];if(!(!r||r.type!==`ContentStatement`||!n&&r.leftStripped)){var i=r.value;return r.value=r.value.replace(n?/\s+$/:/[ \t]+$/,``),r.leftStripped=r.value!==i,r.leftStripped}}e.default=i,t.exports=e.default})),Px=A((e=>{e.__esModule=!0,e.SourceLocation=i,e.id=a,e.stripFlags=o,e.stripComment=s,e.preparePath=c,e.prepareMustache=l,e.prepareRawBlock=u,e.prepareBlock=d,e.prepareProgram=f,e.preparePartialBlock=p;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(ux());function r(e,t){if(t=t.path?t.path.original:t,e.path.original!==t){var r={loc:e.path.loc};throw new n.default(e.path.original+` doesn't match `+t,r)}}function i(e,t){this.source=e,this.start={line:t.first_line,column:t.first_column},this.end={line:t.last_line,column:t.last_column}}function a(e){return/^\[.*\]$/.test(e)?e.substring(1,e.length-1):e}function o(e,t){return{open:e.charAt(2)===`~`,close:t.charAt(t.length-3)===`~`}}function s(e){return e.replace(/^\{\{~?!-?-?/,``).replace(/-?-?~?\}\}$/,``)}function c(e,t,r){r=this.locInfo(r);for(var i=e?`@`:``,a=[],o=0,s=0,c=t.length;s<c;s++){var l=t[s].part,u=t[s].original!==l;if(i+=(t[s].separator||``)+l,!u&&(l===`..`||l===`.`||l===`this`)){if(a.length>0)throw new n.default(`Invalid path: `+i,{loc:r});l===`..`&&o++}else a.push(l)}return{type:`PathExpression`,data:e,depth:o,parts:a,original:i,loc:r}}function l(e,t,n,r,i,a){var o=r.charAt(3)||r.charAt(2),s=o!==`{`&&o!==`&`;return{type:/\*/.test(r)?`Decorator`:`MustacheStatement`,path:e,params:t,hash:n,escaped:s,strip:i,loc:this.locInfo(a)}}function u(e,t,n,i){r(e,n),i=this.locInfo(i);var a={type:`Program`,body:t,strip:{},loc:i};return{type:`BlockStatement`,path:e.path,params:e.params,hash:e.hash,program:a,openStrip:{},inverseStrip:{},closeStrip:{},loc:i}}function d(e,t,i,a,o,s){a&&a.path&&r(e,a);var c=/\*/.test(e.open);t.blockParams=e.blockParams;var l=void 0,u=void 0;if(i){if(c)throw new n.default(`Unexpected inverse block on decorator`,i);i.chain&&(i.program.body[0].closeStrip=a.strip),u=i.strip,l=i.program}return o&&(o=l,l=t,t=o),{type:c?`DecoratorBlock`:`BlockStatement`,path:e.path,params:e.params,hash:e.hash,program:t,inverse:l,openStrip:e.strip,inverseStrip:u,closeStrip:a&&a.strip,loc:this.locInfo(s)}}function f(e,t){if(!t&&e.length){var n=e[0].loc,r=e[e.length-1].loc;n&&r&&(t={source:n.source,start:{line:n.start.line,column:n.start.column},end:{line:r.end.line,column:r.end.column}})}return{type:`Program`,body:e,strip:{},loc:t}}function p(e,t,n,i){return r(e,n),{type:`PartialBlockStatement`,name:e.path,params:e.params,hash:e.hash,program:t,openStrip:e.strip,closeStrip:n&&n.strip,loc:this.locInfo(i)}}})),Fx=A((e=>{e.__esModule=!0,e.parseWithoutProcessing=c,e.parse=l;function t(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}function n(e){return e&&e.__esModule?e:{default:e}}var r=n(jx()),i=n(Nx()),a=t(Px()),o=lx();e.parser=r.default;var s={};o.extend(s,a);function c(e,t){return e.type===`Program`?e:(r.default.yy=s,s.locInfo=function(e){return new s.SourceLocation(t&&t.srcName,e)},r.default.parse(e))}function l(e,t){var n=c(e,t);return new i.default(t).accept(n)}})),Ix=A((e=>{e.__esModule=!0,e.Compiler=o,e.precompile=s,e.compile=c;function t(e){return e&&e.__esModule?e:{default:e}}var n=t(ux()),r=lx(),i=t(Ax()),a=[].slice;function o(){}o.prototype={compiler:o,equals:function(e){var t=this.opcodes.length;if(e.opcodes.length!==t)return!1;for(var n=0;n<t;n++){var r=this.opcodes[n],i=e.opcodes[n];if(r.opcode!==i.opcode||!l(r.args,i.args))return!1}t=this.children.length;for(var n=0;n<t;n++)if(!this.children[n].equals(e.children[n]))return!1;return!0},guid:0,compile:function(e,t){return this.sourceNode=[],this.opcodes=[],this.children=[],this.options=t,this.stringParams=t.stringParams,this.trackIds=t.trackIds,t.blockParams=t.blockParams||[],t.knownHelpers=r.extend(Object.create(null),{helperMissing:!0,blockHelperMissing:!0,each:!0,if:!0,unless:!0,with:!0,log:!0,lookup:!0},t.knownHelpers),this.accept(e)},compileProgram:function(e){var t=new this.compiler().compile(e,this.options),n=this.guid++;return this.usePartial=this.usePartial||t.usePartial,this.children[n]=t,this.useDepths=this.useDepths||t.useDepths,n},accept:function(e){if(!this[e.type])throw new n.default(`Unknown type: `+e.type,e);this.sourceNode.unshift(e);var t=this[e.type](e);return this.sourceNode.shift(),t},Program:function(e){this.options.blockParams.unshift(e.blockParams);for(var t=e.body,n=t.length,r=0;r<n;r++)this.accept(t[r]);return this.options.blockParams.shift(),this.isSimple=n===1,this.blockParams=e.blockParams?e.blockParams.length:0,this},BlockStatement:function(e){u(e);var t=e.program,n=e.inverse;t&&=this.compileProgram(t),n&&=this.compileProgram(n);var r=this.classifySexpr(e);r===`helper`?this.helperSexpr(e,t,n):r===`simple`?(this.simpleSexpr(e),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),this.opcode(`emptyHash`),this.opcode(`blockValue`,e.path.original)):(this.ambiguousSexpr(e,t,n),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),this.opcode(`emptyHash`),this.opcode(`ambiguousBlockValue`)),this.opcode(`append`)},DecoratorBlock:function(e){var t=e.program&&this.compileProgram(e.program),n=this.setupFullMustacheParams(e,t,void 0),r=e.path;this.useDecorators=!0,this.opcode(`registerDecorator`,n.length,r.original)},PartialStatement:function(e){this.usePartial=!0;var t=e.program;t&&=this.compileProgram(e.program);var r=e.params;if(r.length>1)throw new n.default(`Unsupported number of partial arguments: `+r.length,e);r.length||(this.options.explicitPartialContext?this.opcode(`pushLiteral`,`undefined`):r.push({type:`PathExpression`,parts:[],depth:0}));var i=e.name.original,a=e.name.type===`SubExpression`;a&&this.accept(e.name),this.setupFullMustacheParams(e,t,void 0,!0);var o=e.indent||``;this.options.preventIndent&&o&&(this.opcode(`appendContent`,o),o=``),this.opcode(`invokePartial`,a,i,o),this.opcode(`append`)},PartialBlockStatement:function(e){this.PartialStatement(e)},MustacheStatement:function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode(`appendEscaped`):this.opcode(`append`)},Decorator:function(e){this.DecoratorBlock(e)},ContentStatement:function(e){e.value&&this.opcode(`appendContent`,e.value)},CommentStatement:function(){},SubExpression:function(e){u(e);var t=this.classifySexpr(e);t===`simple`?this.simpleSexpr(e):t===`helper`?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function(e,t,n){var r=e.path,i=r.parts[0],a=t!=null||n!=null;this.opcode(`getContext`,r.depth),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),r.strict=!0,this.accept(r),this.opcode(`invokeAmbiguous`,i,a)},simpleSexpr:function(e){var t=e.path;t.strict=!0,this.accept(t),this.opcode(`resolvePossibleLambda`)},helperSexpr:function(e,t,r){var a=this.setupFullMustacheParams(e,t,r),o=e.path,s=o.parts[0];if(this.options.knownHelpers[s])this.opcode(`invokeKnownHelper`,a.length,s);else if(this.options.knownHelpersOnly)throw new n.default(`You specified knownHelpersOnly, but used the unknown helper `+s,e);else o.strict=!0,o.falsy=!0,this.accept(o),this.opcode(`invokeHelper`,a.length,o.original,i.default.helpers.simpleId(o))},PathExpression:function(e){this.addDepth(e.depth),this.opcode(`getContext`,e.depth);var t=e.parts[0],n=i.default.helpers.scopedId(e),r=!e.depth&&!n&&this.blockParamIndex(t);r?this.opcode(`lookupBlockParam`,r,e.parts):t?e.data?(this.options.data=!0,this.opcode(`lookupData`,e.depth,e.parts,e.strict)):this.opcode(`lookupOnContext`,e.parts,e.falsy,e.strict,n):this.opcode(`pushContext`)},StringLiteral:function(e){this.opcode(`pushString`,e.value)},NumberLiteral:function(e){this.opcode(`pushLiteral`,e.value)},BooleanLiteral:function(e){this.opcode(`pushLiteral`,e.value)},UndefinedLiteral:function(){this.opcode(`pushLiteral`,`undefined`)},NullLiteral:function(){this.opcode(`pushLiteral`,`null`)},Hash:function(e){var t=e.pairs,n=0,r=t.length;for(this.opcode(`pushHash`);n<r;n++)this.pushParam(t[n].value);for(;n--;)this.opcode(`assignToHash`,t[n].key);this.opcode(`popHash`)},opcode:function(e){this.opcodes.push({opcode:e,args:a.call(arguments,1),loc:this.sourceNode[0].loc})},addDepth:function(e){e&&(this.useDepths=!0)},classifySexpr:function(e){var t=i.default.helpers.simpleId(e.path),n=t&&!!this.blockParamIndex(e.path.parts[0]),r=!n&&i.default.helpers.helperExpression(e),a=!n&&(r||t);if(a&&!r){var o=e.path.parts[0],s=this.options;s.knownHelpers[o]?r=!0:s.knownHelpersOnly&&(a=!1)}return r?`helper`:a?`ambiguous`:`simple`},pushParams:function(e){for(var t=0,n=e.length;t<n;t++)this.pushParam(e[t])},pushParam:function(e){var t=e.value==null?e.original||``:e.value;if(this.stringParams)t.replace&&(t=t.replace(/^(\.?\.\/)*/g,``).replace(/\//g,`.`)),e.depth&&this.addDepth(e.depth),this.opcode(`getContext`,e.depth||0),this.opcode(`pushStringParam`,t,e.type),e.type===`SubExpression`&&this.accept(e);else{if(this.trackIds){var n=void 0;if(e.parts&&!i.default.helpers.scopedId(e)&&!e.depth&&(n=this.blockParamIndex(e.parts[0])),n){var r=e.parts.slice(1).join(`.`);this.opcode(`pushId`,`BlockParam`,n,r)}else t=e.original||t,t.replace&&(t=t.replace(/^this(?:\.|$)/,``).replace(/^\.\//,``).replace(/^\.$/,``)),this.opcode(`pushId`,e.type,t)}this.accept(e)}},setupFullMustacheParams:function(e,t,n,r){var i=e.params;return this.pushParams(i),this.opcode(`pushProgram`,t),this.opcode(`pushProgram`,n),e.hash?this.accept(e.hash):this.opcode(`emptyHash`,r),i},blockParamIndex:function(e){for(var t=0,n=this.options.blockParams.length;t<n;t++){var i=this.options.blockParams[t],a=i&&r.indexOf(i,e);if(i&&a>=0)return[t,a]}}};function s(e,t,r){if(e==null||typeof e!=`string`&&e.type!==`Program`)throw new n.default(`You must pass a string or Handlebars AST to Handlebars.precompile. You passed `+e);t||={},`data`in t||(t.data=!0),t.compat&&(t.useDepths=!0);var i=r.parse(e,t),a=new r.Compiler().compile(i,t);return new r.JavaScriptCompiler().compile(a,t)}function c(e,t,i){if(t===void 0&&(t={}),e==null||typeof e!=`string`&&e.type!==`Program`)throw new n.default(`You must pass a string or Handlebars AST to Handlebars.compile. You passed `+e);t=r.extend({},t),`data`in t||(t.data=!0),t.compat&&(t.useDepths=!0);var a=void 0;function o(){var n=i.parse(e,t),r=new i.Compiler().compile(n,t),a=new i.JavaScriptCompiler().compile(r,t,void 0,!0);return i.template(a)}function s(e,t){return a||=o(),a.call(this,e,t)}return s._setup=function(e){return a||=o(),a._setup(e)},s._child=function(e,t,n,r){return a||=o(),a._child(e,t,n,r)},s}function l(e,t){if(e===t)return!0;if(r.isArray(e)&&r.isArray(t)&&e.length===t.length){for(var n=0;n<e.length;n++)if(!l(e[n],t[n]))return!1;return!0}}function u(e){if(!e.path.parts){var t=e.path;e.path={type:`PathExpression`,data:!1,depth:0,parts:[t.original+``],original:t.original+``,loc:t.loc}}}})),Lx=A((e=>{var t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``);e.encode=function(e){if(0<=e&&e<t.length)return t[e];throw TypeError(`Must be between 0 and 63: `+e)},e.decode=function(e){var t=65,n=90,r=97,i=122,a=48;return t<=e&&e<=n?e-t:r<=e&&e<=i?e-r+26:a<=e&&e<=57?e-a+52:e==43?62:e==47?63:-1}})),Rx=A((e=>{var t=Lx(),n=5,r=1<<n,i=r-1,a=r;function o(e){return e<0?(-e<<1)+1:(e<<1)+0}function s(e){var t=(e&1)==1,n=e>>1;return t?-n:n}e.encode=function(e){var r=``,s,c=o(e);do s=c&i,c>>>=n,c>0&&(s|=a),r+=t.encode(s);while(c>0);return r},e.decode=function(e,r,o){var c=e.length,l=0,u=0,d,f;do{if(r>=c)throw Error(`Expected more digits in base 64 VLQ value.`);if(f=t.decode(e.charCodeAt(r++)),f===-1)throw Error(`Invalid base64 digit: `+e.charAt(r-1));d=!!(f&a),f&=i,l+=f<<u,u+=n}while(d);o.value=s(l),o.rest=r}})),zx=A((e=>{function t(e,t,n){if(t in e)return e[t];if(arguments.length===3)return n;throw Error(`"`+t+`" is a required argument.`)}e.getArg=t;var n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function i(e){var t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}e.urlParse=i;function a(e){var t=``;return e.scheme&&(t+=e.scheme+`:`),t+=`//`,e.auth&&(t+=e.auth+`@`),e.host&&(t+=e.host),e.port&&(t+=`:`+e.port),e.path&&(t+=e.path),t}e.urlGenerate=a;function o(t){var n=t,r=i(t);if(r){if(!r.path)return t;n=r.path}for(var o=e.isAbsolute(n),s=n.split(/\/+/),c,l=0,u=s.length-1;u>=0;u--)c=s[u],c===`.`?s.splice(u,1):c===`..`?l++:l>0&&(c===``?(s.splice(u+1,l),l=0):(s.splice(u,2),l--));return n=s.join(`/`),n===``&&(n=o?`/`:`.`),r?(r.path=n,a(r)):n}e.normalize=o;function s(e,t){e===``&&(e=`.`),t===``&&(t=`.`);var n=i(t),s=i(e);if(s&&(e=s.path||`/`),n&&!n.scheme)return s&&(n.scheme=s.scheme),a(n);if(n||t.match(r))return t;if(s&&!s.host&&!s.path)return s.host=t,a(s);var c=t.charAt(0)===`/`?t:o(e.replace(/\/+$/,``)+`/`+t);return s?(s.path=c,a(s)):c}e.join=s,e.isAbsolute=function(e){return e.charAt(0)===`/`||n.test(e)};function c(e,t){e===``&&(e=`.`),e=e.replace(/\/$/,``);for(var n=0;t.indexOf(e+`/`)!==0;){var r=e.lastIndexOf(`/`);if(r<0||(e=e.slice(0,r),e.match(/^([^\/]+:\/)?\/*$/)))return t;++n}return Array(n+1).join(`../`)+t.substr(e.length+1)}e.relative=c;var l=function(){return!(`__proto__`in Object.create(null))}();function u(e){return e}function d(e){return p(e)?`$`+e:e}e.toSetString=l?u:d;function f(e){return p(e)?e.slice(1):e}e.fromSetString=l?u:f;function p(e){if(!e)return!1;var t=e.length;if(t<9||e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95)return!1;for(var n=t-10;n>=0;n--)if(e.charCodeAt(n)!==36)return!1;return!0}function m(e,t,n){var r=g(e.source,t.source);return r!==0||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0||n)||(r=e.generatedColumn-t.generatedColumn,r!==0)||(r=e.generatedLine-t.generatedLine,r!==0)?r:g(e.name,t.name)}e.compareByOriginalPositions=m;function h(e,t,n){var r=e.generatedLine-t.generatedLine;return r!==0||(r=e.generatedColumn-t.generatedColumn,r!==0||n)||(r=g(e.source,t.source),r!==0)||(r=e.originalLine-t.originalLine,r!==0)||(r=e.originalColumn-t.originalColumn,r!==0)?r:g(e.name,t.name)}e.compareByGeneratedPositionsDeflated=h;function g(e,t){return e===t?0:e===null?1:t===null?-1:e>t?1:-1}function _(e,t){var n=e.generatedLine-t.generatedLine;return n!==0||(n=e.generatedColumn-t.generatedColumn,n!==0)||(n=g(e.source,t.source),n!==0)||(n=e.originalLine-t.originalLine,n!==0)||(n=e.originalColumn-t.originalColumn,n!==0)?n:g(e.name,t.name)}e.compareByGeneratedPositionsInflated=_;function v(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,``))}e.parseSourceMapInput=v;function y(e,t,n){if(t||=``,e&&(e[e.length-1]!==`/`&&t[0]!==`/`&&(e+=`/`),t=e+t),n){var r=i(n);if(!r)throw Error(`sourceMapURL could not be parsed`);if(r.path){var c=r.path.lastIndexOf(`/`);c>=0&&(r.path=r.path.substring(0,c+1))}t=s(a(r),t)}return o(t)}e.computeSourceURL=y})),Bx=A((e=>{var t=zx(),n=Object.prototype.hasOwnProperty,r=typeof Map<`u`;function i(){this._array=[],this._set=r?new Map:Object.create(null)}i.fromArray=function(e,t){for(var n=new i,r=0,a=e.length;r<a;r++)n.add(e[r],t);return n},i.prototype.size=function(){return r?this._set.size:Object.getOwnPropertyNames(this._set).length},i.prototype.add=function(e,i){var a=r?e:t.toSetString(e),o=r?this.has(e):n.call(this._set,a),s=this._array.length;(!o||i)&&this._array.push(e),o||(r?this._set.set(e,s):this._set[a]=s)},i.prototype.has=function(e){if(r)return this._set.has(e);var i=t.toSetString(e);return n.call(this._set,i)},i.prototype.indexOf=function(e){if(r){var i=this._set.get(e);if(i>=0)return i}else{var a=t.toSetString(e);if(n.call(this._set,a))return this._set[a]}throw Error(`"`+e+`" is not in the set.`)},i.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw Error(`No element indexed by `+e)},i.prototype.toArray=function(){return this._array.slice()},e.ArraySet=i})),Vx=A((e=>{var t=zx();function n(e,n){var r=e.generatedLine,i=n.generatedLine,a=e.generatedColumn,o=n.generatedColumn;return i>r||i==r&&o>=a||t.compareByGeneratedPositionsInflated(e,n)<=0}function r(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}r.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},r.prototype.add=function(e){n(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},r.prototype.toArray=function(){return this._sorted||=(this._array.sort(t.compareByGeneratedPositionsInflated),!0),this._array},e.MappingList=r})),Hx=A((e=>{var t=Rx(),n=zx(),r=Bx().ArraySet,i=Vx().MappingList;function a(e){e||={},this._file=n.getArg(e,`file`,null),this._sourceRoot=n.getArg(e,`sourceRoot`,null),this._skipValidation=n.getArg(e,`skipValidation`,!1),this._sources=new r,this._names=new r,this._mappings=new i,this._sourcesContents=null}a.prototype._version=3,a.fromSourceMap=function(e){var t=e.sourceRoot,r=new a({file:e.file,sourceRoot:t});return e.eachMapping(function(e){var i={generated:{line:e.generatedLine,column:e.generatedColumn}};e.source!=null&&(i.source=e.source,t!=null&&(i.source=n.relative(t,i.source)),i.original={line:e.originalLine,column:e.originalColumn},e.name!=null&&(i.name=e.name)),r.addMapping(i)}),e.sources.forEach(function(i){var a=i;t!==null&&(a=n.relative(t,i)),r._sources.has(a)||r._sources.add(a);var o=e.sourceContentFor(i);o!=null&&r.setSourceContent(i,o)}),r},a.prototype.addMapping=function(e){var t=n.getArg(e,`generated`),r=n.getArg(e,`original`,null),i=n.getArg(e,`source`,null),a=n.getArg(e,`name`,null);this._skipValidation||this._validateMapping(t,r,i,a),i!=null&&(i=String(i),this._sources.has(i)||this._sources.add(i)),a!=null&&(a=String(a),this._names.has(a)||this._names.add(a)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r!=null&&r.line,originalColumn:r!=null&&r.column,source:i,name:a})},a.prototype.setSourceContent=function(e,t){var r=e;this._sourceRoot!=null&&(r=n.relative(this._sourceRoot,r)),t==null?this._sourcesContents&&(delete this._sourcesContents[n.toSetString(r)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null)):(this._sourcesContents||=Object.create(null),this._sourcesContents[n.toSetString(r)]=t)},a.prototype.applySourceMap=function(e,t,i){var a=t;if(t==null){if(e.file==null)throw Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);a=e.file}var o=this._sourceRoot;o!=null&&(a=n.relative(o,a));var s=new r,c=new r;this._mappings.unsortedForEach(function(t){if(t.source===a&&t.originalLine!=null){var r=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});r.source!=null&&(t.source=r.source,i!=null&&(t.source=n.join(i,t.source)),o!=null&&(t.source=n.relative(o,t.source)),t.originalLine=r.line,t.originalColumn=r.column,r.name!=null&&(t.name=r.name))}var l=t.source;l!=null&&!s.has(l)&&s.add(l);var u=t.name;u!=null&&!c.has(u)&&c.add(u)},this),this._sources=s,this._names=c,e.sources.forEach(function(t){var r=e.sourceContentFor(t);r!=null&&(i!=null&&(t=n.join(i,t)),o!=null&&(t=n.relative(o,t)),this.setSourceContent(t,r))},this)},a.prototype._validateMapping=function(e,t,n,r){if(t&&typeof t.line!=`number`&&typeof t.column!=`number`)throw Error(`original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.`);if(!(e&&`line`in e&&`column`in e&&e.line>0&&e.column>=0&&!t&&!n&&!r)&&!(e&&`line`in e&&`column`in e&&t&&`line`in t&&`column`in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw Error(`Invalid mapping: `+JSON.stringify({generated:e,source:n,original:t,name:r}))},a.prototype._serializeMappings=function(){for(var e=0,r=1,i=0,a=0,o=0,s=0,c=``,l,u,d,f,p=this._mappings.toArray(),m=0,h=p.length;m<h;m++){if(u=p[m],l=``,u.generatedLine!==r)for(e=0;u.generatedLine!==r;)l+=`;`,r++;else if(m>0){if(!n.compareByGeneratedPositionsInflated(u,p[m-1]))continue;l+=`,`}l+=t.encode(u.generatedColumn-e),e=u.generatedColumn,u.source!=null&&(f=this._sources.indexOf(u.source),l+=t.encode(f-s),s=f,l+=t.encode(u.originalLine-1-a),a=u.originalLine-1,l+=t.encode(u.originalColumn-i),i=u.originalColumn,u.name!=null&&(d=this._names.indexOf(u.name),l+=t.encode(d-o),o=d)),c+=l}return c},a.prototype._generateSourcesContent=function(e,t){return e.map(function(e){if(!this._sourcesContents)return null;t!=null&&(e=n.relative(t,e));var r=n.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null},this)},a.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(e.file=this._file),this._sourceRoot!=null&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},a.prototype.toString=function(){return JSON.stringify(this.toJSON())},e.SourceMapGenerator=a})),Ux=A((e=>{e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2;function t(n,r,i,a,o,s){var c=Math.floor((r-n)/2)+n,l=o(i,a[c],!0);return l===0?c:l>0?r-c>1?t(c,r,i,a,o,s):s==e.LEAST_UPPER_BOUND?r<a.length?r:-1:c:c-n>1?t(n,c,i,a,o,s):s==e.LEAST_UPPER_BOUND?c:n<0?-1:n}e.search=function(n,r,i,a){if(r.length===0)return-1;var o=t(-1,r.length,n,r,i,a||e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&i(r[o],r[o-1],!0)===0;)--o;return o}})),Wx=A((e=>{function t(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function n(e,t){return Math.round(e+Math.random()*(t-e))}function r(e,i,a,o){if(a<o){var s=n(a,o),c=a-1;t(e,s,o);for(var l=e[o],u=a;u<o;u++)i(e[u],l)<=0&&(c+=1,t(e,c,u));t(e,c+1,u);var d=c+1;r(e,i,a,d-1),r(e,i,d+1,o)}}e.quickSort=function(e,t){r(e,t,0,e.length-1)}})),Gx=A((e=>{var t=zx(),n=Ux(),r=Bx().ArraySet,i=Rx(),a=Wx().quickSort;function o(e,n){var r=e;return typeof e==`string`&&(r=t.parseSourceMapInput(e)),r.sections==null?new s(r,n):new l(r,n)}o.fromSourceMap=function(e,t){return s.fromSourceMap(e,t)},o.prototype._version=3,o.prototype.__generatedMappings=null,Object.defineProperty(o.prototype,`_generatedMappings`,{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),o.prototype.__originalMappings=null,Object.defineProperty(o.prototype,`_originalMappings`,{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),o.prototype._charIsMappingSeparator=function(e,t){var n=e.charAt(t);return n===`;`||n===`,`},o.prototype._parseMappings=function(e,t){throw Error(`Subclasses must implement _parseMappings`)},o.GENERATED_ORDER=1,o.ORIGINAL_ORDER=2,o.GREATEST_LOWER_BOUND=1,o.LEAST_UPPER_BOUND=2,o.prototype.eachMapping=function(e,n,r){var i=n||null,a=r||o.GENERATED_ORDER,s;switch(a){case o.GENERATED_ORDER:s=this._generatedMappings;break;case o.ORIGINAL_ORDER:s=this._originalMappings;break;default:throw Error(`Unknown order of iteration.`)}var c=this.sourceRoot;s.map(function(e){var n=e.source===null?null:this._sources.at(e.source);return n=t.computeSourceURL(c,n,this._sourceMapURL),{source:n,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name===null?null:this._names.at(e.name)}},this).forEach(e,i)},o.prototype.allGeneratedPositionsFor=function(e){var r=t.getArg(e,`line`),i={source:t.getArg(e,`source`),originalLine:r,originalColumn:t.getArg(e,`column`,0)};if(i.source=this._findSourceIndex(i.source),i.source<0)return[];var a=[],o=this._findMapping(i,this._originalMappings,`originalLine`,`originalColumn`,t.compareByOriginalPositions,n.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(e.column===void 0)for(var c=s.originalLine;s&&s.originalLine===c;)a.push({line:t.getArg(s,`generatedLine`,null),column:t.getArg(s,`generatedColumn`,null),lastColumn:t.getArg(s,`lastGeneratedColumn`,null)}),s=this._originalMappings[++o];else for(var l=s.originalColumn;s&&s.originalLine===r&&s.originalColumn==l;)a.push({line:t.getArg(s,`generatedLine`,null),column:t.getArg(s,`generatedColumn`,null),lastColumn:t.getArg(s,`lastGeneratedColumn`,null)}),s=this._originalMappings[++o]}return a},e.SourceMapConsumer=o;function s(e,n){var i=e;typeof e==`string`&&(i=t.parseSourceMapInput(e));var a=t.getArg(i,`version`),o=t.getArg(i,`sources`),s=t.getArg(i,`names`,[]),c=t.getArg(i,`sourceRoot`,null),l=t.getArg(i,`sourcesContent`,null),u=t.getArg(i,`mappings`),d=t.getArg(i,`file`,null);if(a!=this._version)throw Error(`Unsupported version: `+a);c&&=t.normalize(c),o=o.map(String).map(t.normalize).map(function(e){return c&&t.isAbsolute(c)&&t.isAbsolute(e)?t.relative(c,e):e}),this._names=r.fromArray(s.map(String),!0),this._sources=r.fromArray(o,!0),this._absoluteSources=this._sources.toArray().map(function(e){return t.computeSourceURL(c,e,n)}),this.sourceRoot=c,this.sourcesContent=l,this._mappings=u,this._sourceMapURL=n,this.file=d}s.prototype=Object.create(o.prototype),s.prototype.consumer=o,s.prototype._findSourceIndex=function(e){var n=e;if(this.sourceRoot!=null&&(n=t.relative(this.sourceRoot,n)),this._sources.has(n))return this._sources.indexOf(n);var r;for(r=0;r<this._absoluteSources.length;++r)if(this._absoluteSources[r]==e)return r;return-1},s.fromSourceMap=function(e,n){var i=Object.create(s.prototype),o=i._names=r.fromArray(e._names.toArray(),!0),l=i._sources=r.fromArray(e._sources.toArray(),!0);i.sourceRoot=e._sourceRoot,i.sourcesContent=e._generateSourcesContent(i._sources.toArray(),i.sourceRoot),i.file=e._file,i._sourceMapURL=n,i._absoluteSources=i._sources.toArray().map(function(e){return t.computeSourceURL(i.sourceRoot,e,n)});for(var u=e._mappings.toArray().slice(),d=i.__generatedMappings=[],f=i.__originalMappings=[],p=0,m=u.length;p<m;p++){var h=u[p],g=new c;g.generatedLine=h.generatedLine,g.generatedColumn=h.generatedColumn,h.source&&(g.source=l.indexOf(h.source),g.originalLine=h.originalLine,g.originalColumn=h.originalColumn,h.name&&(g.name=o.indexOf(h.name)),f.push(g)),d.push(g)}return a(i.__originalMappings,t.compareByOriginalPositions),i},s.prototype._version=3,Object.defineProperty(s.prototype,`sources`,{get:function(){return this._absoluteSources.slice()}});function c(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}s.prototype._parseMappings=function(e,n){for(var r=1,o=0,s=0,l=0,u=0,d=0,f=e.length,p=0,m={},h={},g=[],_=[],v,y,b,x,S;p<f;)if(e.charAt(p)===`;`)r++,p++,o=0;else if(e.charAt(p)===`,`)p++;else{for(v=new c,v.generatedLine=r,x=p;x<f&&!this._charIsMappingSeparator(e,x);x++);if(y=e.slice(p,x),b=m[y],b)p+=y.length;else{for(b=[];p<x;)i.decode(e,p,h),S=h.value,p=h.rest,b.push(S);if(b.length===2)throw Error(`Found a source, but no line and column`);if(b.length===3)throw Error(`Found a source and line, but no column`);m[y]=b}v.generatedColumn=o+b[0],o=v.generatedColumn,b.length>1&&(v.source=u+b[1],u+=b[1],v.originalLine=s+b[2],s=v.originalLine,v.originalLine+=1,v.originalColumn=l+b[3],l=v.originalColumn,b.length>4&&(v.name=d+b[4],d+=b[4])),_.push(v),typeof v.originalLine==`number`&&g.push(v)}a(_,t.compareByGeneratedPositionsDeflated),this.__generatedMappings=_,a(g,t.compareByOriginalPositions),this.__originalMappings=g},s.prototype._findMapping=function(e,t,r,i,a,o){if(e[r]<=0)throw TypeError(`Line must be greater than or equal to 1, got `+e[r]);if(e[i]<0)throw TypeError(`Column must be greater than or equal to 0, got `+e[i]);return n.search(e,t,a,o)},s.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var n=this._generatedMappings[e+1];if(t.generatedLine===n.generatedLine){t.lastGeneratedColumn=n.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},s.prototype.originalPositionFor=function(e){var n={generatedLine:t.getArg(e,`line`),generatedColumn:t.getArg(e,`column`)},r=this._findMapping(n,this._generatedMappings,`generatedLine`,`generatedColumn`,t.compareByGeneratedPositionsDeflated,t.getArg(e,`bias`,o.GREATEST_LOWER_BOUND));if(r>=0){var i=this._generatedMappings[r];if(i.generatedLine===n.generatedLine){var a=t.getArg(i,`source`,null);a!==null&&(a=this._sources.at(a),a=t.computeSourceURL(this.sourceRoot,a,this._sourceMapURL));var s=t.getArg(i,`name`,null);return s!==null&&(s=this._names.at(s)),{source:a,line:t.getArg(i,`originalLine`,null),column:t.getArg(i,`originalColumn`,null),name:s}}}return{source:null,line:null,column:null,name:null}},s.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null}):!1},s.prototype.sourceContentFor=function(e,n){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var i=e;this.sourceRoot!=null&&(i=t.relative(this.sourceRoot,i));var a;if(this.sourceRoot!=null&&(a=t.urlParse(this.sourceRoot))){var o=i.replace(/^file:\/\//,``);if(a.scheme==`file`&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!a.path||a.path==`/`)&&this._sources.has(`/`+i))return this.sourcesContent[this._sources.indexOf(`/`+i)]}if(n)return null;throw Error(`"`+i+`" is not in the SourceMap.`)},s.prototype.generatedPositionFor=function(e){var n=t.getArg(e,`source`);if(n=this._findSourceIndex(n),n<0)return{line:null,column:null,lastColumn:null};var r={source:n,originalLine:t.getArg(e,`line`),originalColumn:t.getArg(e,`column`)},i=this._findMapping(r,this._originalMappings,`originalLine`,`originalColumn`,t.compareByOriginalPositions,t.getArg(e,`bias`,o.GREATEST_LOWER_BOUND));if(i>=0){var a=this._originalMappings[i];if(a.source===r.source)return{line:t.getArg(a,`generatedLine`,null),column:t.getArg(a,`generatedColumn`,null),lastColumn:t.getArg(a,`lastGeneratedColumn`,null)}}return{line:null,column:null,lastColumn:null}},e.BasicSourceMapConsumer=s;function l(e,n){var i=e;typeof e==`string`&&(i=t.parseSourceMapInput(e));var a=t.getArg(i,`version`),s=t.getArg(i,`sections`);if(a!=this._version)throw Error(`Unsupported version: `+a);this._sources=new r,this._names=new r;var c={line:-1,column:0};this._sections=s.map(function(e){if(e.url)throw Error(`Support for url field in sections not implemented.`);var r=t.getArg(e,`offset`),i=t.getArg(r,`line`),a=t.getArg(r,`column`);if(i<c.line||i===c.line&&a<c.column)throw Error(`Section offsets must be ordered and non-overlapping.`);return c=r,{generatedOffset:{generatedLine:i+1,generatedColumn:a+1},consumer:new o(t.getArg(e,`map`),n)}})}l.prototype=Object.create(o.prototype),l.prototype.constructor=o,l.prototype._version=3,Object.defineProperty(l.prototype,`sources`,{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var n=0;n<this._sections[t].consumer.sources.length;n++)e.push(this._sections[t].consumer.sources[n]);return e}}),l.prototype.originalPositionFor=function(e){var r={generatedLine:t.getArg(e,`line`),generatedColumn:t.getArg(e,`column`)},i=n.search(r,this._sections,function(e,t){return e.generatedLine-t.generatedOffset.generatedLine||e.generatedColumn-t.generatedOffset.generatedColumn}),a=this._sections[i];return a?a.consumer.originalPositionFor({line:r.generatedLine-(a.generatedOffset.generatedLine-1),column:r.generatedColumn-(a.generatedOffset.generatedLine===r.generatedLine?a.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},l.prototype.hasContentsOfAllSources=function(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})},l.prototype.sourceContentFor=function(e,t){for(var n=0;n<this._sections.length;n++){var r=this._sections[n].consumer.sourceContentFor(e,!0);if(r)return r}if(t)return null;throw Error(`"`+e+`" is not in the SourceMap.`)},l.prototype.generatedPositionFor=function(e){for(var n=0;n<this._sections.length;n++){var r=this._sections[n];if(r.consumer._findSourceIndex(t.getArg(e,`source`))!==-1){var i=r.consumer.generatedPositionFor(e);if(i)return{line:i.line+(r.generatedOffset.generatedLine-1),column:i.column+(r.generatedOffset.generatedLine===i.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},l.prototype._parseMappings=function(e,n){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var i=this._sections[r],o=i.consumer._generatedMappings,s=0;s<o.length;s++){var c=o[s],l=i.consumer._sources.at(c.source);l=t.computeSourceURL(i.consumer.sourceRoot,l,this._sourceMapURL),this._sources.add(l),l=this._sources.indexOf(l);var u=null;c.name&&(u=i.consumer._names.at(c.name),this._names.add(u),u=this._names.indexOf(u));var d={source:l,generatedLine:c.generatedLine+(i.generatedOffset.generatedLine-1),generatedColumn:c.generatedColumn+(i.generatedOffset.generatedLine===c.generatedLine?i.generatedOffset.generatedColumn-1:0),originalLine:c.originalLine,originalColumn:c.originalColumn,name:u};this.__generatedMappings.push(d),typeof d.originalLine==`number`&&this.__originalMappings.push(d)}a(this.__generatedMappings,t.compareByGeneratedPositionsDeflated),a(this.__originalMappings,t.compareByOriginalPositions)},e.IndexedSourceMapConsumer=l})),Kx=A((e=>{var t=Hx().SourceMapGenerator,n=zx(),r=/(\r?\n)/,i=10,a=`$$$isSourceNode$$$`;function o(e,t,n,r,i){this.children=[],this.sourceContents={},this.line=e??null,this.column=t??null,this.source=n??null,this.name=i??null,this[a]=!0,r!=null&&this.add(r)}o.fromStringWithSourceMap=function(e,t,i){var a=new o,s=e.split(r),c=0,l=function(){return e()+(e()||``);function e(){return c<s.length?s[c++]:void 0}},u=1,d=0,f=null;return t.eachMapping(function(e){if(f!==null)if(u<e.generatedLine)p(f,l()),u++,d=0;else{var t=s[c]||``,n=t.substr(0,e.generatedColumn-d);s[c]=t.substr(e.generatedColumn-d),d=e.generatedColumn,p(f,n),f=e;return}for(;u<e.generatedLine;)a.add(l()),u++;if(d<e.generatedColumn){var t=s[c]||``;a.add(t.substr(0,e.generatedColumn)),s[c]=t.substr(e.generatedColumn),d=e.generatedColumn}f=e},this),c<s.length&&(f&&p(f,l()),a.add(s.splice(c).join(``))),t.sources.forEach(function(e){var r=t.sourceContentFor(e);r!=null&&(i!=null&&(e=n.join(i,e)),a.setSourceContent(e,r))}),a;function p(e,t){if(e===null||e.source===void 0)a.add(t);else{var r=i?n.join(i,e.source):e.source;a.add(new o(e.originalLine,e.originalColumn,r,t,e.name))}}},o.prototype.add=function(e){if(Array.isArray(e))e.forEach(function(e){this.add(e)},this);else if(e[a]||typeof e==`string`)e&&this.children.push(e);else throw TypeError(`Expected a SourceNode, string, or an array of SourceNodes and strings. Got `+e);return this},o.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else if(e[a]||typeof e==`string`)this.children.unshift(e);else throw TypeError(`Expected a SourceNode, string, or an array of SourceNodes and strings. Got `+e);return this},o.prototype.walk=function(e){for(var t,n=0,r=this.children.length;n<r;n++)t=this.children[n],t[a]?t.walk(e):t!==``&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},o.prototype.join=function(e){var t,n,r=this.children.length;if(r>0){for(t=[],n=0;n<r-1;n++)t.push(this.children[n]),t.push(e);t.push(this.children[n]),this.children=t}return this},o.prototype.replaceRight=function(e,t){var n=this.children[this.children.length-1];return n[a]?n.replaceRight(e,t):typeof n==`string`?this.children[this.children.length-1]=n.replace(e,t):this.children.push(``.replace(e,t)),this},o.prototype.setSourceContent=function(e,t){this.sourceContents[n.toSetString(e)]=t},o.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][a]&&this.children[t].walkSourceContents(e);for(var i=Object.keys(this.sourceContents),t=0,r=i.length;t<r;t++)e(n.fromSetString(i[t]),this.sourceContents[i[t]])},o.prototype.toString=function(){var e=``;return this.walk(function(t){e+=t}),e},o.prototype.toStringWithSourceMap=function(e){var n={code:``,line:1,column:0},r=new t(e),a=!1,o=null,s=null,c=null,l=null;return this.walk(function(e,t){n.code+=e,t.source!==null&&t.line!==null&&t.column!==null?((o!==t.source||s!==t.line||c!==t.column||l!==t.name)&&r.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name}),o=t.source,s=t.line,c=t.column,l=t.name,a=!0):a&&=(r.addMapping({generated:{line:n.line,column:n.column}}),o=null,!1);for(var u=0,d=e.length;u<d;u++)e.charCodeAt(u)===i?(n.line++,n.column=0,u+1===d?(o=null,a=!1):a&&r.addMapping({source:t.source,original:{line:t.line,column:t.column},generated:{line:n.line,column:n.column},name:t.name})):n.column++}),this.walkSourceContents(function(e,t){r.setSourceContent(e,t)}),{code:n.code,map:r}},e.SourceNode=o})),qx=A((e=>{e.SourceMapGenerator=Hx().SourceMapGenerator,e.SourceMapConsumer=Gx().SourceMapConsumer,e.SourceNode=Kx().SourceNode})),Jx=A(((e,t)=>{e.__esModule=!0;var n=lx(),r=void 0;try{(typeof define!=`function`||!define.amd)&&(r=qx().SourceNode)}catch{}r||(r=function(e,t,n,r){this.src=``,r&&this.add(r)},r.prototype={add:function(e){n.isArray(e)&&(e=e.join(``)),this.src+=e},prepend:function(e){n.isArray(e)&&(e=e.join(``)),this.src=e+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function i(e,t,r){if(n.isArray(e)){for(var i=[],a=0,o=e.length;a<o;a++)i.push(t.wrap(e[a],r));return i}else if(typeof e==`boolean`||typeof e==`number`)return e+``;return e}function a(e){this.srcFile=e,this.source=[]}a.prototype={isEmpty:function(){return!this.source.length},prepend:function(e,t){this.source.unshift(this.wrap(e,t))},push:function(e,t){this.source.push(this.wrap(e,t))},merge:function(){var e=this.empty();return this.each(function(t){e.add([` `,t,`
1824
+ `])}),e},each:function(e){for(var t=0,n=this.source.length;t<n;t++)e(this.source[t])},empty:function(){var e=this.currentLocation||{start:{}};return new r(e.start.line,e.start.column,this.srcFile)},wrap:function(e){var t=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];return e instanceof r?e:(e=i(e,this,t),new r(t.start.line,t.start.column,this.srcFile,e))},functionCall:function(e,t,n){return n=this.generateList(n),this.wrap([e,t?`.`+t+`(`:`(`,n,`)`])},quotedString:function(e){return`"`+(e+``).replace(/\\/g,`\\\\`).replace(/"/g,`\\"`).replace(/\n/g,`\\n`).replace(/\r/g,`\\r`).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)+`"`},objectLiteral:function(e){var t=this,n=[];Object.keys(e).forEach(function(r){var a=i(e[r],t);a!==`undefined`&&n.push([t.quotedString(r),`:`,a])});var r=this.generateList(n);return r.prepend(`{`),r.add(`}`),r},generateList:function(e){for(var t=this.empty(),n=0,r=e.length;n<r;n++)n&&t.add(`,`),t.add(i(e[n],this));return t},generateArray:function(e){var t=this.generateList(e);return t.prepend(`[`),t.add(`]`),t}},e.default=a,t.exports=e.default})),Yx=A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=wx(),i=n(ux()),a=lx(),o=n(Jx());function s(e){this.value=e}function c(){}c.prototype={nameLookup:function(e,t){return this.internalNameLookup(e,t)},depthedLookup:function(e){return[this.aliasable(`container.lookup`),`(depths, `,JSON.stringify(e),`)`]},compilerInfo:function(){var e=r.COMPILER_REVISION;return[e,r.REVISION_CHANGES[e]]},appendToBuffer:function(e,t,n){return a.isArray(e)||(e=[e]),e=this.source.wrap(e,t),this.environment.isSimple?[`return `,e,`;`]:n?[`buffer += `,e,`;`]:(e.appendToBuffer=!0,e)},initializeBuffer:function(){return this.quotedString(``)},internalNameLookup:function(e,t){return this.lookupPropertyFunctionIsUsed=!0,[`lookupProperty(`,e,`,`,JSON.stringify(t),`)`]},lookupPropertyFunctionIsUsed:!1,compile:function(e,t,n,r){this.environment=e,this.options=t,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!r,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,t),this.useDepths=this.useDepths||e.useDepths||e.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var a=e.opcodes,o=void 0,s=void 0,c=void 0,l=void 0;for(c=0,l=a.length;c<l;c++)o=a[c],this.source.currentLocation=o.loc,s||=o.loc,this[o.opcode].apply(this,o.args);if(this.source.currentLocation=s,this.pushSource(``),this.stackSlot||this.inlineStack.length||this.compileStack.length)throw new i.default(`Compile completed with content left on stack`);this.decorators.isEmpty()?this.decorators=void 0:(this.useDecorators=!0,this.decorators.prepend([`var decorators = container.decorators, `,this.lookupPropertyFunctionVarDeclaration(),`;
1825
+ `]),this.decorators.push(`return fn;`),r?this.decorators=Function.apply(this,[`fn`,`props`,`container`,`depth0`,`data`,`blockParams`,`depths`,this.decorators.merge()]):(this.decorators.prepend(`function(fn, props, container, depth0, data, blockParams, depths) {
1826
+ `),this.decorators.push(`}
1827
+ `),this.decorators=this.decorators.merge()));var u=this.createFunctionContext(r);if(this.isChild)return u;var d={compiler:this.compilerInfo(),main:u};this.decorators&&(d.main_d=this.decorators,d.useDecorators=!0);var f=this.context,p=f.programs,m=f.decorators;for(c=0,l=p.length;c<l;c++)p[c]&&(d[c]=p[c],m[c]&&(d[c+`_d`]=m[c],d.useDecorators=!0));return this.environment.usePartial&&(d.usePartial=!0),this.options.data&&(d.useData=!0),this.useDepths&&(d.useDepths=!0),this.useBlockParams&&(d.useBlockParams=!0),this.options.compat&&(d.compat=!0),r?d.compilerOptions=this.options:(d.compiler=JSON.stringify(d.compiler),this.source.currentLocation={start:{line:1,column:0}},d=this.objectLiteral(d),t.srcName?(d=d.toStringWithSourceMap({file:t.destName}),d.map=d.map&&d.map.toString()):d=d.toString()),d},preamble:function(){this.lastContext=0,this.source=new o.default(this.options.srcName),this.decorators=new o.default(this.options.srcName)},createFunctionContext:function(e){var t=this,n=``,r=this.stackVars.concat(this.registers.list);r.length>0&&(n+=`, `+r.join(`, `));var i=0;Object.keys(this.aliases).forEach(function(e){var r=t.aliases[e];r.children&&r.referenceCount>1&&(n+=`, alias`+ ++i+`=`+e,r.children[0]=`alias`+i)}),this.lookupPropertyFunctionIsUsed&&(n+=`, `+this.lookupPropertyFunctionVarDeclaration());var a=[`container`,`depth0`,`helpers`,`partials`,`data`];(this.useBlockParams||this.useDepths)&&a.push(`blockParams`),this.useDepths&&a.push(`depths`);var o=this.mergeSource(n);return e?(a.push(o),Function.apply(this,a)):this.source.wrap([`function(`,a.join(`,`),`) {
1828
+ `,o,`}`])},mergeSource:function(e){var t=this.environment.isSimple,n=!this.forceBuffer,r=void 0,i=void 0,a=void 0,o=void 0;return this.source.each(function(e){e.appendToBuffer?(a?e.prepend(` + `):a=e,o=e):(a&&=(i?a.prepend(`buffer += `):r=!0,o.add(`;`),o=void 0),i=!0,t||(n=!1))}),n?a?(a.prepend(`return `),o.add(`;`)):i||this.source.push(`return "";`):(e+=`, buffer = `+(r?``:this.initializeBuffer()),a?(a.prepend(`return buffer + `),o.add(`;`)):this.source.push(`return buffer;`)),e&&this.source.prepend(`var `+e.substring(2)+(r?``:`;
1829
+ `)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return`lookupProperty = container.lookupProperty || function(parent, propertyName) {
1830
+ if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
1831
+ return parent[propertyName];
1832
+ }
1833
+ return undefined
1834
+ }`},blockValue:function(e){var t=this.aliasable(`container.hooks.blockHelperMissing`),n=[this.contextName(0)];this.setupHelperArgs(e,0,n);var r=this.popStack();n.splice(1,0,r),this.push(this.source.functionCall(t,`call`,n))},ambiguousBlockValue:function(){var e=this.aliasable(`container.hooks.blockHelperMissing`),t=[this.contextName(0)];this.setupHelperArgs(``,0,t,!0),this.flushInline();var n=this.topStack();t.splice(1,0,n),this.pushSource([`if (!`,this.lastHelper,`) { `,n,` = `,this.source.functionCall(e,`call`,t),`}`])},appendContent:function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},append:function(){if(this.isInline())this.replaceStack(function(e){return[` != null ? `,e,` : ""`]}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource([`if (`,e,` != null) { `,this.appendToBuffer(e,void 0,!0),` }`]),this.environment.isSimple&&this.pushSource([`else { `,this.appendToBuffer(`''`,void 0,!0),` }`])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable(`container.escapeExpression`),`(`,this.popStack(),`)`]))},getContext:function(e){this.lastContext=e},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(e,t,n,r){var i=0;!r&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(e[i++])):this.pushContext(),this.resolvePath(`context`,e,i,t,n)},lookupBlockParam:function(e,t){this.useBlockParams=!0,this.push([`blockParams[`,e[0],`][`,e[1],`]`]),this.resolvePath(`context`,t,1)},lookupData:function(e,t,n){e?this.pushStackLiteral(`container.data(data, `+e+`)`):this.pushStackLiteral(`data`),this.resolvePath(`data`,t,0,!0,n)},resolvePath:function(e,t,n,r,i){var a=this;if(this.options.strict||this.options.assumeObjects){this.push(l(this.options.strict&&i,this,t,n,e));return}for(var o=t.length;n<o;n++)this.replaceStack(function(i){var o=a.nameLookup(i,t[n],e);return r?[` && `,o]:[` != null ? `,o,` : `,i]})},resolvePossibleLambda:function(){this.push([this.aliasable(`container.lambda`),`(`,this.popStack(),`, `,this.contextName(0),`)`])},pushStringParam:function(e,t){this.pushContext(),this.pushString(t),t!==`SubExpression`&&(typeof e==`string`?this.pushString(e):this.pushStackLiteral(e))},emptyHash:function(e){this.trackIds&&this.push(`{}`),this.stringParams&&(this.push(`{}`),this.push(`{}`)),this.pushStackLiteral(e?`undefined`:`{}`)},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var e=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(e.ids)),this.stringParams&&(this.push(this.objectLiteral(e.contexts)),this.push(this.objectLiteral(e.types))),this.push(this.objectLiteral(e.values))},pushString:function(e){this.pushStackLiteral(this.quotedString(e))},pushLiteral:function(e){this.pushStackLiteral(e)},pushProgram:function(e){e==null?this.pushStackLiteral(null):this.pushStackLiteral(this.programExpression(e))},registerDecorator:function(e,t){var n=this.nameLookup(`decorators`,t,`decorator`),r=this.setupHelperArgs(t,e);this.decorators.push([`fn = `,this.decorators.functionCall(n,``,[`fn`,`props`,`container`,r]),` || fn;`])},invokeHelper:function(e,t,n){var r=this.popStack(),i=this.setupHelper(e,t),a=[];n&&a.push(i.name),a.push(r),this.options.strict||a.push(this.aliasable(`container.hooks.helperMissing`));var o=[`(`,this.itemsSeparatedBy(a,`||`),`)`],s=this.source.functionCall(o,`call`,i.callParams);this.push(s)},itemsSeparatedBy:function(e,t){var n=[];n.push(e[0]);for(var r=1;r<e.length;r++)n.push(t,e[r]);return n},invokeKnownHelper:function(e,t){var n=this.setupHelper(e,t);this.push(this.source.functionCall(n.name,`call`,n.callParams))},invokeAmbiguous:function(e,t){this.useRegister(`helper`);var n=this.popStack();this.emptyHash();var r=this.setupHelper(0,e,t),i=[`(`,`(helper = `,this.lastHelper=this.nameLookup(`helpers`,e,`helper`),` || `,n,`)`];this.options.strict||(i[0]=`(helper = `,i.push(` != null ? helper : `,this.aliasable(`container.hooks.helperMissing`))),this.push([`(`,i,r.paramsInit?[`),(`,r.paramsInit]:[],`),`,`(typeof helper === `,this.aliasable(`"function"`),` ? `,this.source.functionCall(`helper`,`call`,r.callParams),` : helper))`])},invokePartial:function(e,t,n){var r=[],i=this.setupParams(t,1,r);e&&(t=this.popStack(),delete i.name),n&&(i.indent=JSON.stringify(n)),i.helpers=`helpers`,i.partials=`partials`,i.decorators=`container.decorators`,e?r.unshift(t):r.unshift(this.nameLookup(`partials`,t,`partial`)),this.options.compat&&(i.depths=`depths`),i=this.objectLiteral(i),r.push(i),this.push(this.source.functionCall(`container.invokePartial`,``,r))},assignToHash:function(e){var t=this.popStack(),n=void 0,r=void 0,i=void 0;this.trackIds&&(i=this.popStack()),this.stringParams&&(r=this.popStack(),n=this.popStack());var a=this.hash;n&&(a.contexts[e]=n),r&&(a.types[e]=r),i&&(a.ids[e]=i),a.values[e]=t},pushId:function(e,t,n){e===`BlockParam`?this.pushStackLiteral(`blockParams[`+t[0]+`].path[`+t[1]+`]`+(n?` + `+JSON.stringify(`.`+n):``)):e===`PathExpression`?this.pushString(t):e===`SubExpression`?this.pushStackLiteral(`true`):this.pushStackLiteral(`null`)},compiler:c,compileChildren:function(e,t){for(var n=e.children,r=void 0,i=void 0,a=0,o=n.length;a<o;a++){r=n[a],i=new this.compiler;var s=this.matchExistingProgram(r);if(s==null){this.context.programs.push(``);var c=this.context.programs.length;r.index=c,r.name=`program`+c,this.context.programs[c]=i.compile(r,t,this.context,!this.precompile),this.context.decorators[c]=i.decorators,this.context.environments[c]=r,this.useDepths=this.useDepths||i.useDepths,this.useBlockParams=this.useBlockParams||i.useBlockParams,r.useDepths=this.useDepths,r.useBlockParams=this.useBlockParams}else r.index=s.index,r.name=`program`+s.index,this.useDepths=this.useDepths||s.useDepths,this.useBlockParams=this.useBlockParams||s.useBlockParams}},matchExistingProgram:function(e){for(var t=0,n=this.context.environments.length;t<n;t++){var r=this.context.environments[t];if(r&&r.equals(e))return r}},programExpression:function(e){var t=this.environment.children[e],n=[t.index,`data`,t.blockParams];return(this.useBlockParams||this.useDepths)&&n.push(`blockParams`),this.useDepths&&n.push(`depths`),`container.program(`+n.join(`, `)+`)`},useRegister:function(e){this.registers[e]||(this.registers[e]=!0,this.registers.list.push(e))},push:function(e){return e instanceof s||(e=this.source.wrap(e)),this.inlineStack.push(e),e},pushStackLiteral:function(e){this.push(new s(e))},pushSource:function(e){this.pendingContent&&=(this.source.push(this.appendToBuffer(this.source.quotedString(this.pendingContent),this.pendingLocation)),void 0),e&&this.source.push(e)},replaceStack:function(e){var t=[`(`],n=void 0,r=void 0,a=void 0;if(!this.isInline())throw new i.default(`replaceStack on non-inline`);var o=this.popStack(!0);if(o instanceof s)n=[o.value],t=[`(`,n],a=!0;else{r=!0;var c=this.incrStack();t=[`((`,this.push(c),` = `,o,`)`],n=this.topStack()}var l=e.call(this,n);a||this.popStack(),r&&this.stackSlot--,this.push(t.concat(l,`)`))},incrStack:function(){return this.stackSlot++,this.stackSlot>this.stackVars.length&&this.stackVars.push(`stack`+this.stackSlot),this.topStackName()},topStackName:function(){return`stack`+this.stackSlot},flushInline:function(){var e=this.inlineStack;this.inlineStack=[];for(var t=0,n=e.length;t<n;t++){var r=e[t];if(r instanceof s)this.compileStack.push(r);else{var i=this.incrStack();this.pushSource([i,` = `,r,`;`]),this.compileStack.push(i)}}},isInline:function(){return this.inlineStack.length},popStack:function(e){var t=this.isInline(),n=(t?this.inlineStack:this.compileStack).pop();if(!e&&n instanceof s)return n.value;if(!t){if(!this.stackSlot)throw new i.default(`Invalid stack pop`);this.stackSlot--}return n},topStack:function(){var e=this.isInline()?this.inlineStack:this.compileStack,t=e[e.length-1];return t instanceof s?t.value:t},contextName:function(e){return this.useDepths&&e?`depths[`+e+`]`:`depth`+e},quotedString:function(e){return this.source.quotedString(e)},objectLiteral:function(e){return this.source.objectLiteral(e)},aliasable:function(e){var t=this.aliases[e];return t?(t.referenceCount++,t):(t=this.aliases[e]=this.source.wrap(e),t.aliasable=!0,t.referenceCount=1,t)},setupHelper:function(e,t,n){var r=[];return{params:r,paramsInit:this.setupHelperArgs(t,e,r,n),name:this.nameLookup(`helpers`,t,`helper`),callParams:[this.aliasable(this.contextName(0)+` != null ? `+this.contextName(0)+` : (container.nullContext || {})`)].concat(r)}},setupParams:function(e,t,n){var r={},i=[],a=[],o=[],s=!n,c=void 0;s&&(n=[]),r.name=this.quotedString(e),r.hash=this.popStack(),this.trackIds&&(r.hashIds=this.popStack()),this.stringParams&&(r.hashTypes=this.popStack(),r.hashContexts=this.popStack());var l=this.popStack(),u=this.popStack();(u||l)&&(r.fn=u||`container.noop`,r.inverse=l||`container.noop`);for(var d=t;d--;)c=this.popStack(),n[d]=c,this.trackIds&&(o[d]=this.popStack()),this.stringParams&&(a[d]=this.popStack(),i[d]=this.popStack());return s&&(r.args=this.source.generateArray(n)),this.trackIds&&(r.ids=this.source.generateArray(o)),this.stringParams&&(r.types=this.source.generateArray(a),r.contexts=this.source.generateArray(i)),this.options.data&&(r.data=`data`),this.useBlockParams&&(r.blockParams=`blockParams`),r},setupHelperArgs:function(e,t,n,r){var i=this.setupParams(e,t,n);return i.loc=JSON.stringify(this.source.currentLocation),i=this.objectLiteral(i),r?(this.useRegister(`options`),n.push(`options`),[`options=`,i]):n?(n.push(i),``):i}},(function(){for(var e=`break else new var case finally return void catch for switch while continue function this with default if throw delete in try do instanceof typeof abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger implements protected volatile double import public let yield await null true false`.split(` `),t=c.RESERVED_WORDS={},n=0,r=e.length;n<r;n++)t[e[n]]=!0})(),c.isValidJavaScriptVariableName=function(e){return!c.RESERVED_WORDS[e]&&/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)};function l(e,t,n,r,i){var a=t.popStack(),o=n.length;for(e&&o--;r<o;r++)a=t.nameLookup(a,n[r],i);return e?[t.aliasable(`container.strict`),`(`,a,`, `,t.quotedString(n[r]),`, `,JSON.stringify(t.source.currentLocation),` )`]:a}e.default=c,t.exports=e.default})),Xx=O(A(((e,t)=>{e.__esModule=!0;function n(e){return e&&e.__esModule?e:{default:e}}var r=n(kx()),i=n(Ax()),a=Fx(),o=Ix(),s=n(Yx()),c=n(Mx()),l=n(Ox()),u=r.default.create;function d(){var e=u();return e.compile=function(t,n){return o.compile(t,n,e)},e.precompile=function(t,n){return o.precompile(t,n,e)},e.AST=i.default,e.Compiler=o.Compiler,e.JavaScriptCompiler=s.default,e.Parser=a.parser,e.parse=a.parse,e.parseWithoutProcessing=a.parseWithoutProcessing,e}var f=d();f.create=d,l.default(f),f.Visitor=c.default,f.default=f,e.default=f,t.exports=e.default}))(),1),Zx=[{id:`agentThreadMessage`,body:`[bb message from thread:{{senderThreadId}}; reply with \`bb thread tell {{senderThreadId}} "<your response>"\`]
1835
+
1836
+ {{messageText}}`,fileName:`agent-thread-message.md`,kind:`prompt`,title:`Agent Thread Message`,summary:`Wraps a bb CLI message from one agent thread to another.`,intent:`Tell the receiving agent which thread sent the message and how to reply.`,editingNotes:`Keep the response command in the prefix so standard agent instructions do not need special cross-thread message guidance.`,variables:{senderThreadId:`The thread ID that sent the message.`,messageText:`The original message text sent by the agent.`}},{id:`bbGuideAsync`,body:`Async scheduled nudges
1837
+
1838
+ Use \`ASYNC.md\` in thread storage when the system should wake a manager thread
1839
+ later for reminders, recurring check-ins, or follow-up work.
1840
+
1841
+ \`ASYNC.md\` is Markdown with YAML frontmatter:
1842
+
1843
+ \`\`\`yaml
1844
+ ---
1845
+ timezone: America/Los_Angeles
1846
+ schedules:
1847
+ - name: daily-recap
1848
+ cron: "0 8 * * 1-5"
1849
+ - name: deploy-check
1850
+ cron: "0 */2 * * *"
1851
+ timezone: UTC
1852
+ ---
1853
+ \`\`\`
1854
+
1855
+ Each schedule has a matching \`## <name>\` section in the body with instructions
1856
+ for your future self. The top-level \`timezone\` defaults to UTC; each schedule
1857
+ can override it.
1858
+
1859
+ For one-off reminders like "in 10 minutes", encode the next daily occurrence
1860
+ and note in the body to remove the schedule after it fires once.
1861
+
1862
+ Keep schedule \`name\` values stable. The server syncs entries by name, so
1863
+ renaming one creates a new schedule rather than editing it.
1864
+
1865
+ Constraints:
1866
+
1867
+ - No more than 20 schedules.
1868
+ - No interval shorter than 5 minutes.
1869
+ - The cron month field must stay \`*\`.
1870
+
1871
+ When a scheduled nudge arrives, read the matching section in \`ASYNC.md\` and
1872
+ decide whether there is real work to do. Only message the user when the nudge
1873
+ produced something useful. Remove schedules that are no longer needed.`,fileName:`bb-guide-async.md`,kind:`instruction`,title:`bb Guide - Async`,summary:`Scheduled nudge reference for ASYNC.md.`,intent:`Explain how to define scheduled nudges for manager threads.`,editingNotes:`Keep this as the canonical ASYNC.md syntax reference. Manager prompts should point here instead of inlining schedule syntax.`,variables:{}},{id:`bbGuideEnvironments`,body:`Environment commands
1874
+
1875
+ Environments determine where threads run. Multiple threads can share an environment
1876
+ (e.g., a coding thread and a review thread in the same worktree).
1877
+
1878
+ bb environment show <id> Show environment details (path, branch, status)
1879
+
1880
+ bb environment update <id> Update environment metadata
1881
+ --merge-base-branch <branch> Set merge-base branch override
1882
+ --clear-merge-base-branch Clear merge-base override
1883
+
1884
+ bb environment commit <id> Create a commit in the environment
1885
+
1886
+ bb environment squash-merge <id> Squash-merge into a target branch
1887
+ --merge-base-branch <branch> Target branch (required)`,fileName:`bb-guide-environments.md`,kind:`instruction`,title:`bb Guide — Environments`,summary:`Command reference for environment inspection, commits, and merges.`,intent:`Provide complete environment command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideHosts`,body:`Host commands
1888
+
1889
+ Hosts are where environments run.
1890
+
1891
+ - Persistent hosts are long-lived machines (your laptop, a remote server).
1892
+
1893
+ bb host list List persistent hosts with status
1894
+
1895
+ Host status values: connected, disconnected.`,fileName:`bb-guide-hosts.md`,kind:`instruction`,title:`bb Guide — Hosts`,summary:`Command reference for listing and understanding hosts.`,intent:`Provide complete host command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideManagerTemplates`,body:`Manager templates
1896
+
1897
+ Manager templates are named bundles of starter files for manager thread
1898
+ storage. When bb starts a new manager thread, the server resolves a template
1899
+ and copies that template's top-level regular files into the new manager's
1900
+ thread storage before the host daemon receives the initial \`thread.start\`
1901
+ command. This is how a fresh manager can boot with starter \`PREFERENCES.md\`,
1902
+ \`STATUS.html\`, \`ASYNC.md\`, or other storage files.
1903
+
1904
+ Directory layout:
1905
+
1906
+ \`\`\`text
1907
+ ~/.bb/manager-templates/
1908
+ active
1909
+ default/
1910
+ STATUS.html
1911
+ sawyer-next/
1912
+ PREFERENCES.md
1913
+ STATUS.html
1914
+ \`\`\`
1915
+
1916
+ In production, the default root is \`~/.bb/manager-templates/\`. In source
1917
+ development, the default root is \`~/.bb-dev/manager-templates/\`. If
1918
+ \`BB_DATA_DIR\` is set, use \`$BB_DATA_DIR/manager-templates/\`.
1919
+
1920
+ \`active\` is a plain text file. bb reads the first line, trims it, and uses it
1921
+ as the template name. Missing or empty \`active\` means \`default\`. An invalid
1922
+ name logs a warning and falls back to \`default\`. Template names must be one
1923
+ directory name: 1-128 characters, no \`/\` or \`\\\`, and not \`.\` or \`..\`.
1924
+
1925
+ Each subdirectory is a template set. The directory name is the template name.
1926
+
1927
+ What gets seeded:
1928
+
1929
+ bb copies every top-level regular file from the selected template directory
1930
+ into \`<dataDir>/thread-storage/<manager-thread-id>/\`. There is no filename
1931
+ allowlist: \`PREFERENCES.md\`, \`STATUS.html\`, \`STATUS.md\`, and \`ASYNC.md\` are
1932
+ conventions, not the only files allowed. Subdirectories and symlinks are
1933
+ ignored. Dotfiles are copied if they are regular files. Existing destination
1934
+ files are left as-is; seeding does not overwrite, delete, or refresh files.
1935
+
1936
+ If \`default/\` is missing, bb uses a bundled fallback template containing only
1937
+ \`STATUS.html\`. If \`default/\` exists but is empty, no bundled files are mixed
1938
+ in. If a selected non-default template is missing, bb logs a warning and skips
1939
+ storage seeding.
1940
+
1941
+ When it runs:
1942
+
1943
+ Seeding happens while building the manager \`thread.start\` command, normally
1944
+ after \`POST /api/v1/projects/:id/managers\` or \`bb manager hire\` creates the
1945
+ manager and the environment is ready. It happens before the host daemon starts
1946
+ the provider thread. The copy operation is safe to run more than once because
1947
+ existing files are skipped; it is not a refresh mechanism for managers that
1948
+ already have storage.
1949
+
1950
+ Selecting a template:
1951
+
1952
+ For one manager, pass a template name at hire time:
1953
+
1954
+ \`\`\`bash
1955
+ bb manager hire --template sawyer-next
1956
+ \`\`\`
1957
+
1958
+ \`--template\` overrides the \`active\` pointer for that manager creation only.
1959
+
1960
+ For future managers by default, edit the active pointer:
1961
+
1962
+ \`\`\`bash
1963
+ mkdir -p ~/.bb/manager-templates
1964
+ printf 'sawyer-next\\n' > ~/.bb/manager-templates/active
1965
+ \`\`\`
1966
+
1967
+ Use \`~/.bb-dev/manager-templates\` in source development, or
1968
+ \`$BB_DATA_DIR/manager-templates\` when \`BB_DATA_DIR\` is set. There is no
1969
+ dedicated CLI command today for changing the global active template.
1970
+
1971
+ Creating a template:
1972
+
1973
+ \`\`\`bash
1974
+ DATA_DIR="\${BB_DATA_DIR:-$HOME/.bb-dev}"
1975
+ mkdir -p "$DATA_DIR/manager-templates/sawyer-next"
1976
+ cp "$DATA_DIR/manager-templates/default/STATUS.html" \\
1977
+ "$DATA_DIR/manager-templates/sawyer-next/STATUS.html"
1978
+ $EDITOR "$DATA_DIR/manager-templates/sawyer-next/PREFERENCES.md"
1979
+ printf 'sawyer-next\\n' > "$DATA_DIR/manager-templates/active"
1980
+ \`\`\`
1981
+
1982
+ For packaged production bb, use \`DATA_DIR="\${BB_DATA_DIR:-$HOME/.bb}"\`.
1983
+
1984
+ Promoting current preferences:
1985
+
1986
+ Managers see their storage path in runtime context. To save the current
1987
+ manager's \`PREFERENCES.md\` to the default template:
1988
+
1989
+ \`\`\`bash
1990
+ DATA_DIR="\${BB_DATA_DIR:-$HOME/.bb-dev}"
1991
+ THREAD_STORAGE="/absolute/path/from-manager-runtime-context"
1992
+ mkdir -p "$DATA_DIR/manager-templates/default"
1993
+ cp "$THREAD_STORAGE/PREFERENCES.md" \\
1994
+ "$DATA_DIR/manager-templates/default/PREFERENCES.md"
1995
+ printf 'default\\n' > "$DATA_DIR/manager-templates/active"
1996
+ \`\`\`
1997
+
1998
+ For packaged production bb, use \`DATA_DIR="\${BB_DATA_DIR:-$HOME/.bb}"\`.
1999
+ Copy \`STATUS.html\`, \`STATUS.md\`, or \`ASYNC.md\` into the same template
2000
+ directory when those starter files should be shared too.
2001
+
2002
+ Limitations and gotchas:
2003
+
2004
+ - There is no dedicated CLI or UI for changing \`active\`.
2005
+ - Template file contents are not schema-validated before copying.
2006
+ - Only top-level regular files are copied; template subdirectories are ignored.
2007
+ - Existing thread storage files are never overwritten by seeding.
2008
+ - A user-authored \`default/\` directory fully replaces the bundled fallback,
2009
+ even if it is empty.
2010
+ - Missing selected non-default templates skip seeding instead of falling back
2011
+ to \`default\`.
2012
+
2013
+ Related guides:
2014
+
2015
+ bb guide overview
2016
+ bb guide managers
2017
+ bb guide styling
2018
+ bb guide async`,fileName:`bb-guide-manager-templates.md`,kind:`instruction`,title:`bb Guide - Manager Templates`,summary:`Manager storage template reference.`,intent:`Explain how manager-templates seed new manager thread storage.`,editingNotes:`Keep this factual against manager-storage-templates.ts and the manager hire API/CLI.`,variables:{}},{id:`bbGuideManagers`,body:`Manager commands
2019
+
2020
+ Managers are long-running threads that coordinate work across other threads.
2021
+ Use bb thread commands for most manager interactions.
2022
+
2023
+ bb manager hire [projectId] Hire a new manager
2024
+ --project <id> Project ID (defaults to BB_PROJECT_ID)
2025
+ --name <name> Manager name
2026
+ --provider <id> Provider override
2027
+ --model <model> Model override
2028
+ --reasoning-level <level> Reasoning level: low, medium, high, xhigh, max (provider-dependent)
2029
+ --permission-mode <mode> Permission mode: full, workspace-write, or readonly
2030
+ --host <id> Target host (defaults to local host)
2031
+ --json Print machine-readable JSON output
2032
+
2033
+ When --provider and --model are omitted, the project's remembered manager defaults apply first.
2034
+ If there are no remembered manager defaults, the server manager policy is used.
2035
+
2036
+ bb manager list [projectId] List managers for a project
2037
+ --project <id> Project ID (defaults to BB_PROJECT_ID)
2038
+ --json Print machine-readable JSON output
2039
+
2040
+ bb manager status <id> Show manager status and managed threads
2041
+ --json Print machine-readable JSON output
2042
+
2043
+ bb manager delete <id> Delete a manager permanently
2044
+ --yes Skip the confirmation prompt
2045
+ --json Print machine-readable JSON output
2046
+
2047
+ Common manager interactions via thread commands:
2048
+
2049
+ bb thread list --parent-thread <manager-id> List managed threads
2050
+ bb thread tell <manager-id> "message" Message a manager
2051
+ bb thread log <manager-id> Show manager log
2052
+
2053
+ Manager thread logs use the conversation view by default. \`--format verbose\`
2054
+ expands returned timeline details but does not switch to the internal manager
2055
+ debug timeline.`,fileName:`bb-guide-managers.md`,kind:`instruction`,title:`bb Guide — Managers`,summary:`Command reference for hiring and managing project managers.`,intent:`Provide complete manager command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideOverview`,body:`bb is an agent orchestration tool for managing multiple agents.
2056
+
2057
+ Core concepts:
2058
+
2059
+ - Project — maps to a repository. All threads belong to a project.
2060
+ - Thread — a single agent conversation. The fundamental unit of work.
2061
+ - Environment — where a thread runs. Kinds: project checkout or isolated worktree. Multiple threads can share an environment.
2062
+ - Provider — the agent backend powering a thread (e.g., codex, claude-code). Each provider supports different models.
2063
+ - Host — where environments run. Hosts are long-lived local or remote machines.
2064
+
2065
+ Thread types:
2066
+
2067
+ - standard — does coding, research, debugging, or other tasks.
2068
+ - manager — coordinates work across other threads. Communicates with the user through the exact user-message tool exposed by the provider: \`mcp__bb-bridge__message_user\` in Claude Code, \`message_user\` in Codex and Pi.
2069
+
2070
+ Threads can have a parent-child relationship. The parent manages the child and receives lifecycle notifications when it completes, fails, or is interrupted. Threads without a parent are managed by the user.
2071
+
2072
+ Context variables set automatically inside a thread environment:
2073
+
2074
+ - BB_PROJECT_ID — current project
2075
+ - BB_THREAD_ID — current thread
2076
+ - BB_ENVIRONMENT_ID — current environment
2077
+
2078
+ Run \`bb status\` to see your current context (resolved project and thread IDs).
2079
+
2080
+ All commands support --json for machine-readable output.
2081
+
2082
+ Run \`bb guide <chapter>\` for command details:
2083
+
2084
+ threads Spawning, inspecting, messaging, and managing threads
2085
+ environments Environment operations, commits, and merges
2086
+ managers Hiring and managing project managers
2087
+ manager-templates
2088
+ Seeding new manager storage from template bundles
2089
+ providers Discovering providers and models
2090
+ projects Project CRUD and sources
2091
+ hosts Listing and understanding hosts
2092
+ styling How to style STATUS/ and STATUS.html surfaces to match the bb UI
2093
+ async Defining scheduled nudges with ASYNC.md`,fileName:`bb-guide-overview.md`,kind:`instruction`,title:`bb Guide Overview`,summary:`System overview and chapter index for the bb CLI guide.`,intent:`Orient agents to bb core concepts and help them find the right guide chapter.`,editingNotes:`Keep this concise. Concepts only — command details belong in chapter files.`,variables:{}},{id:`bbGuideProjects`,body:`Project commands
2094
+
2095
+ A project maps to a code repository. All threads belong to a project.
2096
+
2097
+ bb project list List all projects
2098
+ bb project create --name "..." [options]
2099
+ --root <path> Project root path
2100
+ --repo-url <url> Repository URL
2101
+ --host <id> Default host
2102
+
2103
+ bb project show <id> Show project details
2104
+ bb project update <id> Update a project
2105
+ --name <name> New name
2106
+
2107
+ bb project delete <id> Delete project and all threads
2108
+ --yes Skip confirmation
2109
+
2110
+ Sources:
2111
+
2112
+ Projects can have multiple sources (paths or repos).
2113
+
2114
+ bb project source add <projectId> Add a source
2115
+ --path <path> Local path
2116
+ --repo-url <url> Repository URL
2117
+ --host <id> Host for this source
2118
+ --default Set as default source
2119
+
2120
+ bb project source update <projectId> <sourceId>
2121
+ --path <path>
2122
+ --repo-url <url>
2123
+ --default
2124
+
2125
+ bb project source delete <projectId> <sourceId>`,fileName:`bb-guide-projects.md`,kind:`instruction`,title:`bb Guide — Projects`,summary:`Command reference for project CRUD and sources.`,intent:`Provide complete project command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideProviders`,body:`Provider commands
2126
+
2127
+ Providers are agent backends (e.g., codex, claude-code). Each supports different models.
2128
+
2129
+ bb provider list List available providers
2130
+ bb provider models [providerId] List models for a provider
2131
+
2132
+ Use these before spawning threads if you are unsure which provider or model to use.
2133
+ When provider and model are omitted from bb thread spawn, the project's remembered
2134
+ defaults apply.`,fileName:`bb-guide-providers.md`,kind:`instruction`,title:`bb Guide — Providers`,summary:`Command reference for discovering providers and models.`,intent:`Provide complete provider command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation.`,variables:{}},{id:`bbGuideStyling`,body:`Status styling
2135
+
2136
+ \`STATUS/index.html\` and \`STATUS.html\` render in an unsandboxed iframe in the bb
2137
+ secondary panel. External resources such as Google Fonts, Tailwind CDN, remote
2138
+ images, and stylesheets load normally. For local assets, use the folder form:
2139
+ put \`index.html\` plus any local images, CSS, JS, or fonts inside \`STATUS/\`, then
2140
+ reference them with relative URLs like \`style.css\`, \`app.js\`, or \`logo.png\`.
2141
+ The dashboard auto-refreshes when resolved STATUS content changes.
2142
+
2143
+ Unless the user asks for a different visual direction, make the HTML status
2144
+ surface look like bb: dense, minimal, and built from the same tokens. Use
2145
+ Tailwind for layout, spacing, grids, flex rows, responsive behavior, and small
2146
+ utility styling, then use the bb CSS variables below for colors, fonts, borders,
2147
+ radius, and shadows.
2148
+
2149
+ Load Tailwind and bb's app fonts with:
2150
+
2151
+ \`\`\`html
2152
+ <script src="https://cdn.tailwindcss.com"><\/script>
2153
+ <link rel="preconnect" href="https://fonts.googleapis.com">
2154
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
2155
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Fira+Code:wght@400;500&display=swap" rel="stylesheet">
2156
+ \`\`\`
2157
+
2158
+ bb's app dark mode is class-based on the parent app root. The iframe does not
2159
+ inherit that \`.dark\` class, so an HTML status document that wants light and dark
2160
+ rendering should use \`@media (prefers-color-scheme: dark)\` as the closest
2161
+ available signal for the user's OS theme.
2162
+
2163
+ Paste this starter block into \`STATUS/index.html\` or \`STATUS.html\` so the page
2164
+ uses bb's actual design tokens:
2165
+
2166
+ \`\`\`html
2167
+ <style>
2168
+ :root {
2169
+ color-scheme: light;
2170
+ --background: oklch(0.9551 0 0);
2171
+ --foreground: oklch(0.3211 0 0);
2172
+ --card: oklch(0.9702 0 0);
2173
+ --card-foreground: oklch(0.3211 0 0);
2174
+ --popover: oklch(0.9702 0 0);
2175
+ --popover-foreground: oklch(0.3211 0 0);
2176
+ --primary: oklch(0.4891 0 0);
2177
+ --primary-foreground: oklch(1 0 0);
2178
+ --secondary: oklch(0.9067 0 0);
2179
+ --secondary-foreground: oklch(0.3211 0 0);
2180
+ --muted: oklch(0.8853 0 0);
2181
+ --muted-foreground: oklch(0.5103 0 0);
2182
+ --accent: oklch(0.9 0 0);
2183
+ --accent-foreground: oklch(0.3211 0 0);
2184
+ --state-hover: oklch(0.92 0 0);
2185
+ --state-active: oklch(0.88 0 0);
2186
+ --destructive: oklch(0.5594 0.19 25.8625);
2187
+ --destructive-foreground: oklch(1 0 0);
2188
+ --attention: oklch(0.74 0.15 80);
2189
+ --attention-foreground: oklch(0.3211 0 0);
2190
+ --warning: oklch(0.7 0.16 50);
2191
+ --warning-foreground: oklch(0.3211 0 0);
2192
+ --success: oklch(0.7 0.15 155);
2193
+ --success-foreground: oklch(0.3211 0 0);
2194
+ --diff-added: oklch(0.5 0.13 163);
2195
+ --diff-removed: oklch(0.5 0.17 28);
2196
+ --border: oklch(0.8576 0 0);
2197
+ --input: oklch(0.9067 0 0);
2198
+ --ring: oklch(0.4891 0 0);
2199
+ --chart-1: oklch(0.4891 0 0);
2200
+ --chart-2: oklch(0.4863 0.0361 196.0278);
2201
+ --chart-3: oklch(0.6534 0 0);
2202
+ --chart-4: oklch(0.7316 0 0);
2203
+ --chart-5: oklch(0.8078 0 0);
2204
+ --sidebar: oklch(0.937 0 0);
2205
+ --sidebar-foreground: oklch(0.3211 0 0);
2206
+ --sidebar-primary: oklch(0.4891 0 0);
2207
+ --sidebar-primary-foreground: oklch(1 0 0);
2208
+ --sidebar-accent: oklch(0.8078 0 0);
2209
+ --sidebar-accent-foreground: oklch(0.3211 0 0);
2210
+ --sidebar-border: oklch(0.8576 0 0);
2211
+ --sidebar-ring: oklch(0.4891 0 0);
2212
+ --font-sans: "Inter Variable", Inter, sans-serif;
2213
+ --font-serif: Georgia, serif;
2214
+ --font-mono: "Fira Code", monospace;
2215
+ --radius: 0.35rem;
2216
+ --radius-sm: calc(var(--radius) - 4px);
2217
+ --radius-md: calc(var(--radius) - 2px);
2218
+ --radius-lg: var(--radius);
2219
+ --radius-xl: calc(var(--radius) + 4px);
2220
+ --bb-sidebar-row-height: 1.75rem;
2221
+ --bb-sidebar-row-height-coarse: 2.5rem;
2222
+ --shadow-x: 0px;
2223
+ --shadow-y: 2px;
2224
+ --shadow-blur: 0px;
2225
+ --shadow-spread: 0px;
2226
+ --shadow-opacity: 0.15;
2227
+ --shadow-color: hsl(0 0% 20% / 0.1);
2228
+ --shadow-2xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
2229
+ --shadow-xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
2230
+ --shadow-sm:
2231
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
2232
+ --shadow:
2233
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
2234
+ --shadow-md:
2235
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 2px 4px -1px hsl(0 0% 20% / 0.15);
2236
+ --shadow-lg:
2237
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 4px 6px -1px hsl(0 0% 20% / 0.15);
2238
+ --shadow-xl:
2239
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 8px 10px -1px hsl(0 0% 20% / 0.15);
2240
+ --shadow-2xl: 0px 2px 0px 0px hsl(0 0% 20% / 0.38);
2241
+ --tracking-normal: 0em;
2242
+ --spacing: 0.25rem;
2243
+ --icon-stroke-width: 1.75;
2244
+ --text-sm: 0.8125rem;
2245
+ --text-base: 0.9375rem;
2246
+ --text-base--line-height: 1.375rem;
2247
+ --ansi-0: #000000;
2248
+ --ansi-1: #a11616;
2249
+ --ansi-2: #13704a;
2250
+ --ansi-3: #7f6a00;
2251
+ --ansi-4: #1f5ca6;
2252
+ --ansi-5: #8a2f8a;
2253
+ --ansi-6: #0b6f88;
2254
+ --ansi-7: #3d3d3d;
2255
+ --ansi-8: #3a3a3a;
2256
+ --ansi-9: #d32f2f;
2257
+ --ansi-10: #197c52;
2258
+ --ansi-11: #a35f00;
2259
+ --ansi-12: #2666b0;
2260
+ --ansi-13: #9b349b;
2261
+ --ansi-14: #0f7798;
2262
+ --ansi-15: #1f1f1f;
2263
+ --ansi-bg-fg-0: #ffffff;
2264
+ --ansi-bg-fg-1: #ffffff;
2265
+ --ansi-bg-fg-2: #ffffff;
2266
+ --ansi-bg-fg-3: #ffffff;
2267
+ --ansi-bg-fg-4: #ffffff;
2268
+ --ansi-bg-fg-5: #ffffff;
2269
+ --ansi-bg-fg-6: #ffffff;
2270
+ --ansi-bg-fg-7: #ffffff;
2271
+ --ansi-bg-fg-8: #ffffff;
2272
+ --ansi-bg-fg-9: #ffffff;
2273
+ --ansi-bg-fg-10: #ffffff;
2274
+ --ansi-bg-fg-11: #ffffff;
2275
+ --ansi-bg-fg-12: #ffffff;
2276
+ --ansi-bg-fg-13: #ffffff;
2277
+ --ansi-bg-fg-14: #ffffff;
2278
+ --ansi-bg-fg-15: #ffffff;
2279
+ }
2280
+
2281
+ @media (prefers-color-scheme: dark) {
2282
+ :root {
2283
+ color-scheme: dark;
2284
+ --background: oklch(0.195 0 0);
2285
+ --foreground: oklch(0.8853 0 0);
2286
+ --card: oklch(0.2435 0 0);
2287
+ --card-foreground: oklch(0.8853 0 0);
2288
+ --popover: oklch(0.2435 0 0);
2289
+ --popover-foreground: oklch(0.8853 0 0);
2290
+ --primary: oklch(0.7058 0 0);
2291
+ --primary-foreground: oklch(0.2178 0 0);
2292
+ --secondary: oklch(0.3092 0 0);
2293
+ --secondary-foreground: oklch(0.8853 0 0);
2294
+ --muted: oklch(0.285 0 0);
2295
+ --muted-foreground: oklch(0.66 0 0);
2296
+ --accent: oklch(0.285 0 0);
2297
+ --accent-foreground: oklch(0.8853 0 0);
2298
+ --state-hover: oklch(0.255 0 0);
2299
+ --state-active: oklch(0.305 0 0);
2300
+ --destructive: oklch(0.56 0.19 22.1703);
2301
+ --destructive-foreground: oklch(1 0 0);
2302
+ --attention: oklch(0.8 0.15 80);
2303
+ --attention-foreground: oklch(0.2178 0 0);
2304
+ --warning: oklch(0.75 0.16 50);
2305
+ --warning-foreground: oklch(0.2178 0 0);
2306
+ --success: oklch(0.74 0.15 155);
2307
+ --success-foreground: oklch(0.2178 0 0);
2308
+ --diff-added: oklch(0.77 0.17 163);
2309
+ --diff-removed: oklch(0.72 0.19 22);
2310
+ --border: oklch(0.329 0 0);
2311
+ --input: oklch(0.3092 0 0);
2312
+ --ring: oklch(0.7058 0 0);
2313
+ --chart-1: oklch(0.7058 0 0);
2314
+ --chart-2: oklch(0.6714 0.0339 206.3482);
2315
+ --chart-3: oklch(0.5452 0 0);
2316
+ --chart-4: oklch(0.4604 0 0);
2317
+ --chart-5: oklch(0.3715 0 0);
2318
+ --sidebar: oklch(0.24 0 0);
2319
+ --sidebar-foreground: oklch(0.8853 0 0);
2320
+ --sidebar-primary: oklch(0.7058 0 0);
2321
+ --sidebar-primary-foreground: oklch(0.2178 0 0);
2322
+ --sidebar-accent: oklch(0.32 0 0);
2323
+ --sidebar-accent-foreground: oklch(0.8853 0 0);
2324
+ --sidebar-border: oklch(0.32 0 0);
2325
+ --sidebar-ring: oklch(0.7058 0 0);
2326
+ --font-sans: "Inter Variable", Inter, sans-serif;
2327
+ --font-serif: Georgia, serif;
2328
+ --font-mono: "Fira Code", monospace;
2329
+ --radius: 0.35rem;
2330
+ --shadow-x: 0px;
2331
+ --shadow-y: 2px;
2332
+ --shadow-blur: 0px;
2333
+ --shadow-spread: 0px;
2334
+ --shadow-opacity: 0.15;
2335
+ --shadow-color: hsl(0 0% 20% / 0.1);
2336
+ --shadow-2xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
2337
+ --shadow-xs: 0px 2px 0px 0px hsl(0 0% 20% / 0.07);
2338
+ --shadow-sm:
2339
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
2340
+ --shadow:
2341
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 1px 2px -1px hsl(0 0% 20% / 0.15);
2342
+ --shadow-md:
2343
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 2px 4px -1px hsl(0 0% 20% / 0.15);
2344
+ --shadow-lg:
2345
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 4px 6px -1px hsl(0 0% 20% / 0.15);
2346
+ --shadow-xl:
2347
+ 0px 2px 0px 0px hsl(0 0% 20% / 0.15), 0px 8px 10px -1px hsl(0 0% 20% / 0.15);
2348
+ --shadow-2xl: 0px 2px 0px 0px hsl(0 0% 20% / 0.38);
2349
+ --ansi-0: #858585;
2350
+ --ansi-1: #d85e5e;
2351
+ --ansi-2: #0dbc79;
2352
+ --ansi-3: #e5e510;
2353
+ --ansi-4: #3c88dc;
2354
+ --ansi-5: #c85ac8;
2355
+ --ansi-6: #11a8cd;
2356
+ --ansi-7: #e5e5e5;
2357
+ --ansi-8: #9a9a9a;
2358
+ --ansi-9: #ff6f6f;
2359
+ --ansi-10: #23d18b;
2360
+ --ansi-11: #f5f543;
2361
+ --ansi-12: #5aaaf2;
2362
+ --ansi-13: #d670d6;
2363
+ --ansi-14: #29b8db;
2364
+ --ansi-15: #ffffff;
2365
+ --ansi-bg-fg-0: #000000;
2366
+ --ansi-bg-fg-1: #000000;
2367
+ --ansi-bg-fg-2: #000000;
2368
+ --ansi-bg-fg-3: #000000;
2369
+ --ansi-bg-fg-4: #000000;
2370
+ --ansi-bg-fg-5: #000000;
2371
+ --ansi-bg-fg-6: #000000;
2372
+ --ansi-bg-fg-7: #000000;
2373
+ --ansi-bg-fg-8: #000000;
2374
+ --ansi-bg-fg-9: #000000;
2375
+ --ansi-bg-fg-10: #000000;
2376
+ --ansi-bg-fg-11: #000000;
2377
+ --ansi-bg-fg-12: #000000;
2378
+ --ansi-bg-fg-13: #000000;
2379
+ --ansi-bg-fg-14: #000000;
2380
+ --ansi-bg-fg-15: #000000;
2381
+ }
2382
+ }
2383
+
2384
+ html,
2385
+ body {
2386
+ margin: 0;
2387
+ min-height: 100%;
2388
+ background: var(--background);
2389
+ color: var(--foreground);
2390
+ font-family: var(--font-sans);
2391
+ font-size: var(--text-base);
2392
+ line-height: var(--text-base--line-height);
2393
+ }
2394
+
2395
+ body {
2396
+ padding: 1rem;
2397
+ }
2398
+
2399
+ .card {
2400
+ background: var(--card);
2401
+ color: var(--card-foreground);
2402
+ border: 1px solid var(--border);
2403
+ border-radius: var(--radius);
2404
+ box-shadow: var(--shadow-sm);
2405
+ }
2406
+ </style>
2407
+ \`\`\`
2408
+
2409
+ Keep the design dense and minimal so it feels native to bb: small text,
2410
+ hairline borders, subtle shadows, and semantic color only for status pills such
2411
+ as success, attention, or destructive. Use the same shapes as the app: cards on
2412
+ \`--card\`, \`1px\` borders using \`--border\`, and \`--radius\` with \`--shadow-sm\`.`,fileName:`bb-guide-styling.md`,kind:`instruction`,title:`bb Guide - Styling`,summary:`Styling reference for manager status surfaces rendered inside bb.`,intent:`Give agents the tokens and starter CSS needed to make STATUS/index.html or STATUS.html match the bb UI.`,editingNotes:`Keep this as the canonical styling reference for HTML status surfaces. Manager prompts should point here instead of inlining tokens.`,variables:{}},{id:`bbGuideThreads`,body:`Thread commands
2413
+
2414
+ Every command supports --json for machine-readable output.
2415
+
2416
+ Spawning:
2417
+
2418
+ bb thread spawn --prompt "..." [options]
2419
+
2420
+ --prompt <prompt> Initial prompt (required)
2421
+ --title <title> Thread title
2422
+ --project <id> Project (defaults to BB_PROJECT_ID)
2423
+ --parent-thread <id> Parent thread (defaults to BB_THREAD_ID)
2424
+ --provider <id> Provider override
2425
+ --model <model> Model override
2426
+ --reasoning-level <level> Reasoning level: low, medium, high, xhigh, max (provider-dependent)
2427
+ --environment <id-or-path> Attach to an existing environment (UUID or workspace path)
2428
+ --new-environment <kind> Create a new environment (worktree)
2429
+ --service-tier <tier> Service tier: fast, default
2430
+ --permission-mode <mode> Permission mode: full, workspace-write, or readonly
2431
+ --host <id> Host ID (defaults to local host)
2432
+ --no-context-parent-thread Do not default parent thread to BB_THREAD_ID
2433
+
2434
+ When --provider and --model are omitted, the project's remembered defaults apply.
2435
+ When --parent-thread is omitted inside a thread, BB_THREAD_ID is used automatically.
2436
+
2437
+ Listing:
2438
+
2439
+ bb thread list List threads
2440
+ --project <id> Filter by project (defaults to BB_PROJECT_ID)
2441
+ --parent-thread <id> Filter by parent/manager
2442
+ --archived Show only archived threads
2443
+
2444
+ Inspecting:
2445
+
2446
+ bb thread show [id] Show thread details (defaults to BB_THREAD_ID)
2447
+ --self Target current thread
2448
+ --work-status Include git working-tree status
2449
+ --git-diff Include git diff
2450
+ --diff-target <type> Diff scope: uncommitted, branch_committed, all, commit
2451
+ --diff-sha <sha> Commit SHA (for --diff-target commit)
2452
+ --diff-merge-base <branch> Override merge-base branch for diff
2453
+ --merge-base-branches List available merge-base branches
2454
+
2455
+ bb thread log [id] Show thread event log
2456
+ --self Target current thread
2457
+ --format <format> Output format: json, minimal, verbose
2458
+ --limit <count> Limit entries
2459
+ --after-seq <seq> Paginate after sequence number
2460
+
2461
+ bb thread output <id> Get the final output of a thread
2462
+
2463
+ bb thread wait [id] Wait for a thread status or event
2464
+ --status <status> Wait for this status
2465
+ --event <type> Wait for this event type
2466
+ --timeout <seconds> Timeout
2467
+ --poll-interval <ms> Polling interval in milliseconds
2468
+
2469
+ Messaging:
2470
+
2471
+ bb thread tell <id> <message> Send a follow-up message
2472
+ --mode <mode> Message mode (e.g., steer)
2473
+ --model <model> Model override for this turn
2474
+ --reasoning-level <level> Reasoning level override
2475
+
2476
+ bb thread stop [id] Stop an active thread
2477
+ --self Stop current thread
2478
+
2479
+ Ownership:
2480
+
2481
+ bb thread update [id] Update thread metadata
2482
+ --self Target current thread
2483
+ --title <title> Set title
2484
+ --parent-thread <id> Assign to a parent/manager
2485
+ --clear-parent-thread Remove parent assignment
2486
+
2487
+ Lifecycle:
2488
+
2489
+ bb thread archive [id] Archive a thread
2490
+ --self Archive current thread
2491
+
2492
+ bb thread unarchive [id] Unarchive a thread
2493
+ --self Unarchive current thread
2494
+
2495
+ bb thread delete <id> Delete permanently
2496
+ --yes Skip confirmation
2497
+
2498
+ Read-only commands infer the thread from BB_THREAD_ID.
2499
+ Mutating commands require an explicit ID or --self.`,fileName:`bb-guide-threads.md`,kind:`instruction`,title:`bb Guide — Threads`,summary:`Command reference for thread spawning, inspecting, messaging, and lifecycle.`,intent:`Provide complete thread command documentation for agents.`,editingNotes:`Keep flags accurate against the CLI implementation. Run the json-flag-enforcement and command-output tests after changes.`,variables:{}},{id:`generateCommitMessage`,body:`Write a concise git commit message for {{diffDescription}}.
2500
+ Call the \`result\` tool with your answer.
2501
+ Rules:
2502
+ - Use conventional commit style (feat|fix|refactor|test|docs|chore|perf|build|ci|style).
2503
+ - Prefer specific types like feat/fix/refactor/test/docs/perf over chore.
2504
+ - Use chore only for housekeeping (deps, tooling, CI, formatting, repo maintenance).
2505
+ - Use imperative mood, max 72 characters.
2506
+ - Single line only, no body.
2507
+
2508
+ Shortstat:
2509
+ {{shortstat}}
2510
+
2511
+ Files (name-status):
2512
+ {{files}}
2513
+
2514
+ Patch excerpt:
2515
+ {{patch}}`,fileName:`generate-commit-message.md`,kind:`prompt`,title:`Commit Message Generator`,summary:`Prompt for generating one conventional commit line from a git diff snapshot.`,intent:`Produce a single concise conventional commit subject and nothing else.`,editingNotes:"Callers use tool-call structured output; the model calls a `result` tool with the schema.",variables:{diffDescription:`Human-readable description of the diff snapshot being summarized.`,shortstat:`Git shortstat summary for the diff.`,files:`Git name-status output for changed files.`,patch:`Trimmed patch excerpt for extra context.`}},{id:`generateThreadMetadata`,body:`You create concise titles for coding tasks.
2516
+ Call the \`result\` tool with:
2517
+ - title: short, clear, 4-5 words maximum, Title Case
2518
+
2519
+ Task:
2520
+ {{cleanedPrompt}}`,fileName:`generate-thread-metadata.md`,kind:`prompt`,title:`Thread Metadata Generator`,summary:`Prompt for deriving short thread metadata from the user's task prompt.`,intent:`Generate stable, operator-friendly metadata for threads without adding explanatory prose.`,editingNotes:"Callers use tool-call structured output; the model calls a `result` tool with the schema.",variables:{cleanedPrompt:`User prompt text with noisy tokens removed and length-clamped.`}},{id:`managerAgentInstructions`,body:'You are a manager in a project inside bb, a futuristic IDE where agents collaborate to complete tasks and you (the manager) have full control over the environment. You should be helpful, friendly, and proactive.\n\nYour job is to coordinate work across child threads, keep the user informed, and keep the system moving. Delegate substantive work by default. Use the manager thread for lightweight coordination, quick scoping, routing decisions, and final review.\n\nThe user will most likely be doing coding work. You should keep them updated on the changes, but not overload them with too much information. You are a middle manager reporting updates to your supervisor (the user) and delegating work to your team (child threads).\n\n## The BB System\n\nbb is the IDE that you live in. It is a UI and runtime for agents and you will primarily interact with it through the `bb` CLI.\n\n`bb` has four core primitives:\n\n- A **host** is a machine. Hosts run environments. Use `bb host list` to see available hosts.\n- An **environment** is a workspace on a host: the project checkout or an isolated git worktree.\n- A **thread** is a single agent conversation attached to an environment. Threads are the fundamental unit of work.\n- A **project** maps to a repository. All threads and environments belong to a project.\n\nThese connect in a chain: a project has hosts, hosts have environments, and environments have threads. Multiple threads can share one environment (useful for multi-thread collaboration like code-then-review). Each thread is either **standard** (does the work) or **manager** (coordinates the work). You are a manager.\n\nThe default operating model is to spawn worker threads on the same host as you, each in its own isolated worktree. This gives file-level isolation between workers and lets you directly access their worktree paths for inspection. When the user has a preference for a different host, follow that.\n\nThreads can have a parent-child relationship. A parent thread manages the child. When a child thread completes, bb notifies the parent. Threads without a parent are managed directly by the user.\n\nAs a manager, you use the `bb` CLI to spawn worker threads, inspect their progress, and manage them directly. Run `bb guide` for the system overview and `bb guide <chapter>` for detailed command reference.\n\n## Storage\n\nYou have access to durable storage. Think of this like a shared drive where you can keep notes, files, and artifacts. Use it to collaborate with your user or to write down information you want to remember for later. Use this as the place to keep plans, todos, and other work artifacts you want to share with the user.\n\nA few **special** well known files in your storage:\n\n- **`PREFERENCES.md`** — durable user preferences and collaboration norms. Create it as you learn about the user, and keep it current.\n- **`STATUS/`, `STATUS.html`, or `STATUS.md`** — a concise, current view of your work. As a manager you juggle many tasks; keep this status surface up to date so the user can catch up at a glance. The bb UI loads one server-resolved iframe URL (`/api/v1/threads/<thread-id>/status/`) and chooses the first available source in this order: `STATUS/index.html`, then `STATUS.html`, then `STATUS.md`. Use `STATUS/index.html` when you want a rich multi-asset dashboard with local images, CSS, JS, or fonts; every local asset must live inside `STATUS/` to be served. Dot-prefixed files or directories anywhere under `STATUS/` are not served. Use `STATUS.html` for a simple single-file HTML page. Use `STATUS.md` for lightweight markdown.\n- **`ASYNC.md`** — scheduled nudges. Use this for reminders, recurring check-ins, and other work that should wake you up later. Run `bb guide async` for syntax, constraints, and examples.\n\nPreferences and starter storage files can be saved as manager templates so future managers boot with the same starting state. Run `bb guide manager-templates` for the layout and commands.\n\nUnless otherwise specified, make `STATUS/index.html` or `STATUS.html` styled like bb and use Tailwind. The UI renders HTML status surfaces in an unsandboxed iframe, so external resources such as Tailwind CDN, Google Fonts, remote images, and stylesheets load normally. For bb design tokens, fonts, light/dark variables, Tailwind setup, and a starter `<style>` snippet, run `bb guide styling`.\n\nThe storage directory is yours to organize. Write down anything your future self or the user might find useful. Use `notes/`, `plans/`, `research/`, and `scratch/` as default folders when they fit. When an artifact does not belong in the repository, put it in thread storage.\n\n## How to communicate\n\n**IMPORTANT**: A user will not see a message you do not send through the `message_user` tool.\n\nAll user-facing output goes through the user-message tool. Call the exact tool id exposed in your tool list: `mcp__bb-bridge__message_user` when present, otherwise `message_user`. Plain assistant text is not visible to users — they only see their own messages and what you publish through that tool. Worker messages, orchestration notes, and internal lifecycle messages are not directly visible to the user.\n\nA typical update cadence is: a short kickoff when work starts, a completion update when it finishes, and extra updates only for blockers or meaningful scope changes. Keep updates concise, factual, and ownership-clear.\n\nWhen you need user input, approval, or help clearing a blocker, ask clearly through the same exact user-message tool.\n\n## System messages\n\nMessages prefixed with `[bb system]` are internal lifecycle signals, not user requests. The important ones:\n\n- **Thread complete / failed / interrupted** — review the thread\'s result or error and decide whether to update the user, retry, or delegate a follow-up.\n- **Ownership assigned** — a thread is now yours to manage. Inspect it and decide how to proceed.\n- **Ownership removed** — stop treating that thread as active managed work.\n\n### File links and deliverables\n\nWhen sharing a file or deliverable, use a Markdown link whose target is the full absolute path. Example: `[Investigation report](/Users/sawyerhood/.bb/thread-storage/thr_abc123/reports/investigation.md)`.\n\nUse absolute paths that start with `/`, not relative paths. Prefer linking the specific Markdown file you created or updated so the user can open it directly.\n\n## How to work\n\n### Delegation is the default\n\nAny substantive task — coding, file edits, debugging, investigations, multi-step analysis — goes to a managed child thread. The manager thread handles only lightweight coordination: quick reads to scope work, status checks, and deciding what to delegate next. Unless the user explicitly asks you to do otherwise. Remember the user is always the boss and can fire you or change how you work at any time.\n\nDelegation means creating a BB child thread with `bb thread spawn`. If a spawn fails, tell the user and retry. \n\nWhen you delegate, give the thread a clear prompt: objective, constraints, expected deliverable, and how to validate the result. Prefer one clear owner per task. Ask workers to report outcome, changed files or created artifacts, validation performed, and any blockers.\n\nAfter delegating, let the worker execute. Send additional worker instructions only when requirements changed, the worker asked a question, or a blocker/error must be handled. Then wait for the system to notify you when the thread completes — do not loop on `bb thread show`, `bb thread log`, or `bb thread list` to detect completion.\n\nDo not use shell sleeps, `tail` loops, repeated log reads, repeated status reads, or transcript scraping to watch worker progress. Inspect a child thread when you need to make a routing decision, review completed work, or investigate a failure.\n\nContext variables `BB_PROJECT_ID` and `BB_THREAD_ID` are set automatically in your environment, so `--project` and `--parent-thread` default to the right values when you run `bb thread spawn` from the manager thread. Fresh managed child threads also default to a managed worktree and `workspace-write` permission mode when the selected provider supports it, so you usually do not need to pass those flags explicitly.\n\nEach worker thread\'s changes usually live in its own worktree. Keep same-environment reuse explicit with `--environment <environment-id>` when you want an implementation thread and a review thread to share files. Review worker changes in the worker environment — do not reapply edits into the manager checkout unless the user explicitly asked for that.\n\n### Direct manager work\n\nDirect manager execution is for trivial, low-latency work where delegation overhead is clearly higher than doing the work directly, or when immediate user unblock requires a small inspection. Keep direct execution minimal and return to delegation-first behavior afterward unless the user explicitly asks you to stay in direct execution mode.\n\nUnless the user explicitly asks you to do otherwise. Remember the user is always the boss and can fire you or change how you work at any time.\n\n### Common patterns\n\n**Simple delegation**: Scope the work with a quick inspection. If you are unsure which provider or model to use, run `bb provider list` and `bb provider models <provider-id>`. Spawn a thread with `bb thread spawn --title "..." --prompt "..."`. Send the user a kickoff update. When the completion notification arrives, review with `bb thread show <id> --git-diff` and `bb thread output <id>`, then update the user.\n\n**Pipeline**: When a follow-on thread (like a reviewer) needs to see the same files, get the environment ID from `bb thread show <original-id> --json` and spawn into it with `--environment <environment-id>`. That same-environment reuse is an explicit override; fresh managed children otherwise start in a separate managed worktree. After the review thread completes, triage its findings and send specific fix instructions back to the original thread via `bb thread tell`.\n\n**Parallel work**: When the user gives you several independent tasks, spawn a thread for each. Report on each as it completes rather than waiting for all to finish.\n\n**Taking over a thread**: `bb thread update <id> --parent-thread <your-id>`. Inspect its state with `bb thread show` and `bb thread log`, understand its goal, and manage it from there.\n\n**Handing off a thread**: If a user asks to takeover a thread: `bb thread update <id> --clear-parent-thread`.\n\n**Worker errors**: Inspect with `bb thread show <id> --json` and `bb thread log <id>`. Handle transient issues autonomously — retry or clarify via `bb thread tell`. Escalate when the error needs information only the user has or is significant enough they should know about.\n\n**Interrupted or stopped workers**: Inspect the thread state before acting. If CLI output, logs, or lifecycle events indicate the user stopped it manually, treat that as intentional. Summarize the stopped state if useful, but do not resume, restart, retry, replace, or continue the work unless the user explicitly asks.\n\n**Stopping a thread**: If a worker is stuck or no longer needed, stop it with `bb thread stop <id>`.\n\n**Plan decomposition**: Identify independent work units, spawn a thread per unit. Workers run in separate worktrees so they do not conflict during execution, but merging multiple worktrees back can still produce conflicts — coordinate if needed.\n\n### Thread lifecycle\n\nKeep threads around when follow-up work is likely. Archive threads once they are no longer needed with `bb thread archive <id>`. Do not archive threads that still hold active work or environments with uncommitted changes the user may need.\n\n### Scheduled nudges\n\nUse `ASYNC.md` in your thread storage for scheduled reminders, recurring check-ins, and wakeups. Run `bb guide async` for the file syntax, constraints, and examples.\n\nWhen a scheduled nudge arrives, read the matching section in `ASYNC.md` and decide whether there is real work to do. Only message the user when the nudge produced something useful. Remove schedules that are no longer needed.\n\n### Cross-manager coordination\n\nIf you need context from another manager, use `bb thread tell <manager-id> "..."`. Use `bb thread list --parent-thread <manager-id>` to see what another manager is working on. This is rare.\n\n---\n\nRuntime context:\n\n- Manager thread ID: `{{managerThreadId}}`\n- Host: `{{hostId}}`\n- Project: `{{projectName}}` (`{{projectId}}`)\n- Project root: `{{projectRootPath}}`\n- Thread storage: `{{threadStoragePath}}`\n- Local timezone: `{{localTimezone}}`',fileName:`manager-agent-instructions.md`,kind:`instruction`,title:`Manager Agent Instructions`,summary:`Delegation-first operating instructions for a project manager agent.`,intent:`Ensure the manager stays user-facing, delegates substantive work, and uses managed threads as the default execution path.`,editingNotes:`Organized into system, communication, storage, and work guidance. First-turn startup behavior belongs in system-message-manager-welcome.md.`,variables:{localTimezone:`IANA timezone to use for local reminder-style scheduling when the user does not specify a timezone.`,threadStoragePath:`Absolute path to the manager thread's durable storage directory.`,managerThreadId:`The manager's own thread ID.`,projectName:`The project name.`,projectId:`The project ID.`,projectRootPath:`The project root path on disk.`,hostId:`The host ID where this manager's environment runs.`}},{id:`standardAgentInstructions`,body:"You are a coding agent working on a project thread inside bb, an agent orchestration tool. If you need to message another agent or orchestrate work across other agents (rare), use the `bb` cli.",fileName:`standard-agent-instructions.md`,kind:`instruction`,title:`Standard Agent Base Instructions`,summary:`Baseline system prompt for provider-backed coding threads.`,intent:`Keep the agent focused on following the task carefully and producing working code.`,editingNotes:`Preserve the concise coding-agent framing.`,variables:{}},{id:`systemMessageManagedThreadComplete`,body:`[bb system]
2521
+
2522
+ Managed thread complete: {{threadId}}{{titleSuffix}}
2523
+ Review that thread's result and decide whether to update the user or delegate a follow-up.
2524
+ Fresh managed child work usually lives in that thread's own worktree unless the manager explicitly reused an environment; do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-complete.md`,kind:`prompt`,title:`Managed Thread Complete`,summary:`Notifies a manager that one of its worker threads has finished.`,intent:`Prompt the manager to review the result and decide on next steps.`,editingNotes:`The second and third lines are behavioral guidance for the manager. Keep worktree caveat to avoid accidental edit duplication.`,variables:{threadId:`The completed worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagedThreadFailed`,body:`[bb system]
2525
+
2526
+ Managed thread failed: {{threadId}}{{titleSuffix}}
2527
+ Review that thread's error and decide whether to retry, clarify the task, or update the user.
2528
+ Inspect the managed thread directly before taking action; do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-failed.md`,kind:`prompt`,title:`Managed Thread Failed`,summary:`Notifies a manager that one of its worker threads failed.`,intent:`Prompt the manager to inspect the failure and decide on the next step.`,editingNotes:`Keep the guidance focused on investigation and recovery, not blind retrying.`,variables:{threadId:`The failed worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagedThreadInterrupted`,body:`[bb system]
2529
+
2530
+ Managed thread interrupted: {{threadId}}{{titleSuffix}}
2531
+ Inspect the managed thread directly before taking action. If it was stopped manually by the user, treat that as intentional; update the user if useful, but do not resume, restart, retry, replace, or continue the work unless the user explicitly asks.
2532
+ Otherwise decide whether to resume it, redirect it, or update the user.
2533
+ Do not reapply its edits into the manager checkout unless the user explicitly asked for that.`,fileName:`system-message-managed-thread-interrupted.md`,kind:`prompt`,title:`Managed Thread Interrupted`,summary:`Notifies a manager that one of its worker threads was interrupted.`,intent:`Prompt the manager to inspect the thread and decide whether to resume or redirect the work.`,editingNotes:`Preserve the "inspect first" guidance so managers do not guess why the thread stopped.`,variables:{threadId:`The interrupted worker thread's ID.`,titleSuffix:`Formatted title suffix like ' (Fix login bug)', or empty string if untitled.`}},{id:`systemMessageManagerPreferencesCurrent`,body:`[bb system]
2534
+
2535
+ Current PREFERENCES.md contents:
2536
+
2537
+ {{fence}}md
2538
+ {{preferencesContent}}
2539
+ {{fence}}`,fileName:`system-message-manager-preferences-current.md`,kind:`system-message`,title:`Manager Preferences Current Snapshot`,summary:`Initial manager delivery of the current PREFERENCES.md contents.`,intent:`Give a newly booted manager its durable preferences without embedding them in the system prompt.`,variables:{fence:`Markdown backtick fence long enough to contain the file contents.`,preferencesContent:`Verbatim PREFERENCES.md contents.`}},{id:`systemMessageManagerPreferencesRemoved`,body:`[bb system]
2540
+
2541
+ PREFERENCES.md was removed.`,fileName:`system-message-manager-preferences-removed.md`,kind:`system-message`,title:`Manager Preferences Removed Notice`,summary:`Manager notification that PREFERENCES.md was removed after previously being shown.`,intent:`Keep manager context aligned when durable preferences are deleted.`,variables:{}},{id:`systemMessageManagerPreferencesUpdated`,body:`[bb system]
2542
+
2543
+ PREFERENCES.md has been updated. New contents:
2544
+
2545
+ {{fence}}md
2546
+ {{preferencesContent}}
2547
+ {{fence}}`,fileName:`system-message-manager-preferences-updated.md`,kind:`system-message`,title:`Manager Preferences Updated Snapshot`,summary:`Manager notification that PREFERENCES.md changed since it was last shown.`,intent:`Refresh manager durable preferences at the start of the next inbound turn after a file change.`,variables:{fence:`Markdown backtick fence long enough to contain the file contents.`,preferencesContent:`Verbatim PREFERENCES.md contents.`}},{id:`systemMessageManagerPreferencesWarning`,body:`[bb system]
2548
+
2549
+ PREFERENCES.md was not delivered. {{reason}}`,fileName:`system-message-manager-preferences-warning.md`,kind:`system-message`,title:`Manager Preferences Warning`,summary:`Manager warning that PREFERENCES.md exists but cannot be inlined.`,intent:`Tell the manager why its durable preferences were not delivered while still recording the observed file state.`,variables:{reason:`Human-readable reason the file was not delivered.`}},{id:`systemMessageManagerWelcome`,body:`[bb system]
2550
+
2551
+ Welcome. You just came online inside bb. You are a manager helping your user get things done.
2552
+
2553
+ First, inspect \`PREFERENCES.md\` in your thread storage.
2554
+
2555
+ If it contains real saved preferences, treat them as the user's starting
2556
+ preferences. Briefly confirm you have them, ask only for useful refinements, and skip the full meet-and-greet.
2557
+
2558
+ If \`PREFERENCES.md\` does not exist or still contains starter/no-preferences
2559
+ content, do the first-boot conversation. Do not interrogate. Do not sound like a
2560
+ form. Just talk.
2561
+
2562
+ Use the exact user-message tool available to you:
2563
+ \`mcp__bb-bridge__message_user\` when present, otherwise \`message_user\`. You need
2564
+ to call this tool to send messages to the user.
2565
+
2566
+ Your first user-facing message must anchor two things up front: **scope** (what
2567
+ you should be working on) and **landing mode** (how worker output reaches the
2568
+ codebase). Ask both — either in the same message, or in a tight follow-up you
2569
+ explicitly promise.
2570
+
2571
+ For scope, surface these three common shapes (verbatim or paraphrased) and make
2572
+ clear the user can name something else entirely:
2573
+
2574
+ - Manage an individual feature or workstream.
2575
+ - Manage all coding agents across this repo.
2576
+ - Manage a specific process (code review, async triage, releases, ...).
2577
+
2578
+ For landing mode, ask whether the user wants a PR opened per worker or worker
2579
+ branches merged directly into a local branch. Note that the choice is editable
2580
+ later. Record the answer in \`PREFERENCES.md\` under the existing
2581
+ **Landing changes** bullet — it already documents the two modes
2582
+ (\`Open PRs\` and \`No PRs — local merge, push on request\`).
2583
+
2584
+ Start with something in this spirit:
2585
+
2586
+ > Hey. I just came online as your bb manager. Two questions to start.
2587
+ >
2588
+ > What's the scope? Common shapes:
2589
+ > - a feature or workstream you want me to drive
2590
+ > - all the coding-agent work across this repo
2591
+ > - a specific process (review, triage, releases)
2592
+ >
2593
+ > Or something else — tell me what fits.
2594
+ >
2595
+ > And when workers finish: open a PR per worker, or merge into a local branch? Easy to change later.
2596
+
2597
+ After scope and landing mode are settled, figure out together:
2598
+
2599
+ 1. What the user wants to be called.
2600
+ 2. How they want you to refer to yourself, if they care.
2601
+ 3. The working vibe: terse, warm, formal, weird, direct, playful, or something else.
2602
+ 4. Update cadence, boundaries, and anything they do not want you to do.
2603
+ 5. Any stable workflow preferences worth remembering.
2604
+
2605
+ Create, replace, or update \`PREFERENCES.md\` with what you learn. If the user gives you a
2606
+ name, vibe, or other identity details for yourself, record those too.
2607
+
2608
+ \`STATUS/\`, \`STATUS.html\`, \`STATUS.md\`, and \`ASYNC.md\` may also already exist from user
2609
+ templates. Preserve any seeded structure and keep the files current as you work.
2610
+
2611
+ Depending on user preferences you might want to update the status surface to match their landing mode.
2612
+
2613
+ If there is no \`PREFERENCES.md\` fill out this template with what you learn and save it:
2614
+
2615
+ \`\`\`
2616
+ # User Preferences
2617
+
2618
+ This file is the manager's durable memory of how the user wants to be worked with. Edit it as you learn — keep it current.
2619
+
2620
+ ## Identity
2621
+
2622
+ - Preferred name: _(fill this out)_
2623
+
2624
+ ## Workflow
2625
+
2626
+ - Base branch: main (default) or something else? _(fill this out)_
2627
+ - **Delegator workflow**: never do substantive work in the manager thread. Always spawn a child thread for coding, edits, investigations, or multi-step analysis.
2628
+ - **Fresh base branch before every spawn**: before every \`bb thread spawn\`, ensure the local base branch (default \`main\`) is current with origin so workers start from the latest base.
2629
+
2630
+ ## Delivery
2631
+ - Ask the user to choose how they want worker output to be delivered:
2632
+ - Open PRs (default)
2633
+ **or**
2634
+ - No PRs — Ask the user for confirmation before pushing/merging worker branches into a local branch.
2635
+ **or**
2636
+ - Merge into a local branch (like a staging area) automatically without PRs, and push to origin on user go-ahead.
2637
+
2638
+ ## Keeping the user updated
2639
+ Adjust the status surface (\`STATUS/index.html\`, \`STATUS.html\`, or \`STATUS.md\`) to match the chosen mode (see next bullet).
2640
+ - **Status mode**: if the user opens PRs, the status surface tracks open PRs in its primary section. If the user does NOT use PRs, replace the \`Open PRs\` section with two sections instead: **In progress** (branches actively being worked on by workers) and **Ready for review** (branches that are validated and waiting for the user's go-ahead to push or merge). If you use an HTML template with snippet patterns, copy/paste as needed.
2641
+ - **Status refresh**: keep the status surface current with the state of the world
2642
+ - after any state-affecting action (worker spawn, branch ready, PR opened, merge, close, push).
2643
+ - **after every child thread completion notification** (on any \`[bb system] Thread complete/failed/interrupted\`), even if the thread didn't obviously touch the tracked state — reconcile the relevant section.
2644
+ - **Status styling**: run \`bb guide styling\` for the bb design tokens, fonts, and a starter \`<style>\` snippet so an iframe-rendered HTML status surface matches the rest of the app. Use \`STATUS/\` when local assets need to be served.
2645
+ - Also keep running tasks and any user action items in the status surface
2646
+
2647
+ ## Open questions to resolve when natural
2648
+
2649
+ - Preferred name / how to address the user
2650
+ - Worker defaults (provider / reasoning level / permission mode / preferred model) — ask the user when it comes up; do not assume a default.
2651
+ - Anything else the user wants surfaced in the status surface (extra sections, custom info, integrations) — ask once when natural and update the template accordingly.
2652
+ - Update verbosity preference (terse vs detailed)
2653
+ - Any specific area of the codebase that's currently the focus
2654
+ \`\`\`
2655
+
2656
+ When finished you can ask whether the user wants to save these preferences as manager template defaults for future managers. If they say yes, run \`bb guide manager-templates\` for the current layout and commands.`,fileName:`system-message-manager-welcome.md`,kind:`prompt`,title:`Manager Welcome`,summary:`Bootstrap message sent to a newly spawned manager thread.`,intent:`Kick off the manager's first turn with hatch-specific startup instructions.`,editingNotes:`Keep durable manager behavior in manager-agent-instructions.md. Keep first-turn startup behavior here.`,variables:{}},{id:`systemMessageScheduledNudge`,body:`[bb system]
2657
+
2658
+ Scheduled nudge: {{name}}. Check ASYNC.md.`,fileName:`system-message-scheduled-nudge.md`,kind:`prompt`,title:`Scheduled Nudge`,summary:`Wakes up a manager on its declared cron schedule.`,intent:`Prompt the manager to read the matching ASYNC.md section and decide if there's real work to do.`,editingNotes:`Keep the schedule name on the same line so the manager can pattern-match it against ASYNC.md.`,variables:{name:`The schedule name as declared in the manager's ASYNC.md frontmatter.`}},{id:`systemMessageThreadOwnershipAssigned`,body:`[bb system]
2659
+
2660
+ The following thread is now assigned to you for management:
2661
+ {{threadLabel}}
2662
+ Inspect it and decide whether to monitor it, message the user, or send a follow-up.`,fileName:`system-message-thread-ownership-assigned.md`,kind:`prompt`,title:`Thread Ownership Assigned`,summary:`Notifies a manager that a worker thread is now assigned to it.`,intent:`Let the new manager know it owns a thread so it can begin managing it.`,editingNotes:`Keep the thread label on its own line for readability in the agent's context.`,variables:{threadLabel:`Thread identifier and title, e.g. 'thr_abc123: Fix login bug'.`}},{id:`systemMessageThreadOwnershipRemoved`,body:`[bb system]
2663
+
2664
+ The following thread is no longer assigned to you:
2665
+ {{threadLabel}}
2666
+ Stop treating it as one of your active managed threads unless it is assigned back later.`,fileName:`system-message-thread-ownership-removed.md`,kind:`prompt`,title:`Thread Ownership Removed`,summary:`Notifies a manager that a worker thread is no longer assigned to it.`,intent:`Let the previous manager know a thread moved away so it can update its internal tracking.`,editingNotes:`Keep the thread label on its own line for readability in the agent's context.`,variables:{threadLabel:`Thread identifier and title, e.g. 'thr_abc123: Fix login bug'.`}},{id:`threadOperationCommitFailureFollowUp`,body:`Commit in this thread workspace failed. Inspect the workspace, fix the issue blocking the commit, and retry the commit.
2667
+ {{#if errorMessage}}
2668
+ Git reported: {{errorMessage}}.
2669
+ {{/if}}`,fileName:`thread-operation-commit-failure-follow-up.md`,kind:`prompt`,title:`Commit Failure Follow-Up`,summary:`Follow-up prompt for retrying a commit after git rejects the first attempt.`,intent:`Keep the retry focused on diagnosing the blocker and trying again.`,editingNotes:`Do not add generic response-format instructions here; this prompt is meant to be a concise follow-up inside an active thread.`,variables:{errorMessage:`Optional git error surfaced to the agent.`}},{id:`threadOperationSquashMergeCommitFailureFollowUp`,body:`{{#if prepCommitMergeBaseBranch}}
2670
+ Squash merge to {{prepCommitMergeBaseBranch}} could not create the prep commit. Inspect the workspace, fix the issue blocking the commit, create the needed prep commit, and retry the squash merge so the changes land on {{prepCommitMergeBaseBranch}}.
2671
+ {{/if}}
2672
+ {{#if squashCommitMergeBaseBranch}}
2673
+ Squash merge to {{squashCommitMergeBaseBranch}} applied changes but failed while creating the squash commit. Inspect the merge result, fix the issue blocking the commit, and retry the squash merge so the changes land on {{squashCommitMergeBaseBranch}}.
2674
+ {{/if}}
2675
+ {{#if errorMessage}}
2676
+ Git reported: {{errorMessage}}.
2677
+ {{/if}}`,fileName:`thread-operation-squash-merge-commit-failure-follow-up.md`,kind:`prompt`,title:`Squash Merge Commit Failure Follow-Up`,summary:`Follow-up prompt for squash-merge flows that fail while creating a prep commit or the final squash commit.`,intent:`Direct the agent to fix the blocker in-place and retry the squash merge without broadening the task.`,editingNotes:`The failure instruction is computed by the caller so this template can stay small and reusable across failure stages.`,variables:{prepCommitMergeBaseBranch:`Merge base branch name when the prep commit could not be created.`,squashCommitMergeBaseBranch:`Merge base branch name when the final squash commit could not be created.`,errorMessage:`Optional git error surfaced to the agent.`}},{id:`threadOperationSquashMergeConflictFollowUp`,body:`Squash merge into {{mergeBaseBranch}} stopped on conflicts. Rebase this branch onto {{mergeBaseBranch}}, resolve the conflicts, and retry the squash merge so the changes land on {{mergeBaseBranch}}.
2678
+ {{#if conflictFiles}}
2679
+ Conflicted files: {{conflictFiles}}.
2680
+ {{/if}}`,fileName:`thread-operation-squash-merge-conflict-follow-up.md`,kind:`prompt`,title:`Squash Merge Conflict Follow-Up`,summary:`Follow-up prompt for squash merges that stop on conflicts.`,intent:`Tell the agent to rebase onto the merge base, resolve the conflicts, and retry the squash merge.`,editingNotes:`Keep this concise and procedural. Conflict file details are optional context and should stay additive.`,variables:{mergeBaseBranch:`Merge base branch name shown to the agent.`,conflictFiles:`Optional comma-separated file list.`}}];function Qx(e){return Zx.some(t=>t.id===e)}function $x(){let e=Zx.map(e=>{if(!Qx(e.id))throw Error(`Unknown generated template id: ${e.id}`);return[e.id,{...e,id:e.id,kind:e.kind}]});return Object.fromEntries(e)}var eS=$x(),tS=!1;function nS(){if(!tS){for(let e of Object.values(eS))Xx.default.registerPartial(e.id,e.body);tS=!0}}var rS=new Map;function iS(e){let t=rS.get(e);if(t)return t;let n=Xx.default.compile(eS[e].body,{noEscape:!0});return rS.set(e,n),n}function aS(e,t){return nS(),iS(e)(t).trim()}function oS(e,t){let n=t?.conflictFiles?.filter(e=>e.trim().length>0)??[];return aS(`threadOperationSquashMergeConflictFollowUp`,{mergeBaseBranch:e.options.mergeBaseBranch.trim(),conflictFiles:n.length>0?n.join(`, `):void 0})}function sS(e,t){let n=e.options.mergeBaseBranch.trim(),r=t.errorMessage?.trim()||void 0;switch(t.stage){case`prep_commit`:return aS(`threadOperationSquashMergeCommitFailureFollowUp`,{prepCommitMergeBaseBranch:n,errorMessage:r});case`squash_commit`:return aS(`threadOperationSquashMergeCommitFailureFollowUp`,{squashCommitMergeBaseBranch:n,errorMessage:r});default:return oe(t.stage)}}function cS(e){return aS(`threadOperationCommitFailureFollowUp`,{errorMessage:e?.errorMessage?.trim()||void 0})}var lS=7;function uS(e){if(!(e instanceof p)||typeof e.body!=`object`||e.body===null||!(`details`in e.body))return;let t=k.safeParse(e.body.details);return t.success?t.data:void 0}function dS(e){switch(e.kind){case`commit_failed`:return e.errorMessage;case`squash_merge_conflict`:return e.conflictFiles.length>0?`Conflicts: ${e.conflictFiles.join(`, `)}`:void 0;case`squash_merge_commit_failed`:return e.errorMessage;default:return}}function fS({error:e,mergeBaseBranch:t}){let n=uS(e);if(n)switch(n.kind){case`commit_failed`:return[{type:`text`,text:cS({errorMessage:n.errorMessage})}];case`squash_merge_conflict`:return t?[{type:`text`,text:oS({action:`squash_merge`,options:{mergeBaseBranch:t}},{conflictFiles:n.conflictFiles})}]:void 0;case`squash_merge_commit_failed`:return t?[{type:`text`,text:sS({action:`squash_merge`,options:{mergeBaseBranch:t}},{stage:n.stage,errorMessage:n.errorMessage})}]:void 0;default:return}}function pS({error:e,mergeBaseBranch:t}){let n=uS(e);return{message:(n?dS(n):void 0)??mn({error:e,fallbackMessage:`Failed to start git action.`}),askAgentInput:fS({error:e,mergeBaseBranch:t})}}function mS(e){switch(e){case`commit`:return`Commit created`;case`squash_merge`:return`Squash merge completed`;default:return e}}function hS(e){switch(e){case`commit`:return`Commit failed`;case`squash_merge`:return`Squash merge failed`;default:return e}}function gS({commitSha:e,commitSubject:t}){return`${e.slice(0,lS)} · ${t}`}function _S({response:e,toastId:t}){en.success(mS(e.action),{id:t,description:gS({commitSha:e.commitSha,commitSubject:e.commitSubject})})}function vS({action:e,error:t,mergeBaseBranch:n,onAskAgentToFix:r,threadId:i,toastId:a}){let o=pS({error:t,mergeBaseBranch:n}),s=o.askAgentInput,c=hS(e),l=o.message===c?void 0:o.message;en.error(c,{id:a,...l?{description:l}:{},...s?{action:{label:`Ask agent to fix`,onClick:()=>r({input:s,threadId:i})}}:{}})}function yS({environment:e,requestEnvironmentAction:t,sendMessage:n,thread:r,workspaceStatus:i}){let a=ct(),o=i?.workingTree,s=i?.mergeBase,c=r?.type!==`manager`,l=r?.archivedAt!=null,u=e?.managed===!1,d=(0,K.useMemo)(()=>{if(!r||!c||!i||l)return[];let t=[],n=o?.hasUncommittedChanges===!0,a=s?.hasCommittedUnmergedChanges===!0;return u?(n&&t.push({target:{kind:`commit`},label:`Commit`}),t):(e?.managed&&(n&&t.push({target:{kind:`commit`},label:`Commit`}),(n||a)&&t.push({target:{kind:n?`commit_and_squash_merge`:`squash_merge`},label:`Squash merge`})),t)},[c,e?.managed,l,u,r,s?.hasCommittedUnmergedChanges,i,o?.hasUncommittedChanges]),f=(0,K.useCallback)(async({input:e,threadId:t})=>{if(n.isPending)return;let r=en.loading(`Sending message...`);try{await n.mutateAsync({id:t,input:e,mode:`auto`}),en.success(`Message sent to agent`,{id:r})}catch(e){en.error(`Failed to message agent`,{id:r,description:mn({error:e,fallbackMessage:`Message was not sent.`})})}},[n]);return{handleAskAgentToFixGitAction:f,handleCommitThread:(0,K.useCallback)(async()=>{let e=r?.environmentId;if(!r||!e)return;let n=r.id,i=en.loading(`Creating commit...`);try{let n=await t.mutateAsync({id:e,action:`commit`});if(n.action!==`commit`)throw Error(`Expected commit action response.`);_S({response:n,toastId:i})}catch(e){vS({action:`commit`,error:e,onAskAgentToFix:e=>void f(e),threadId:n,toastId:i})}},[f,t,r]),handleSquashMergeThread:(0,K.useCallback)(async({mergeBaseBranch:e})=>{let n=r?.environmentId;if(!r||!n)return;let i=r.id,a=en.loading(`Squash merging...`);try{let r=await t.mutateAsync({id:n,action:`squash_merge`,options:{mergeBaseBranch:e}});if(r.action!==`squash_merge`)throw Error(`Expected squash merge action response.`);_S({response:r,toastId:a})}catch(t){vS({action:`squash_merge`,error:t,onAskAgentToFix:e=>void f(e),mergeBaseBranch:e,threadId:i,toastId:a})}},[f,t,r]),isThreadGitActionPending:t.isPending,threadGitActionDialog:a,threadHeaderGitActions:d}}function bS({markThreadRead:e,thread:t}){let n=(0,K.useRef)(new Set);(0,K.useEffect)(()=>{if(!t||St(t))return;let r=`${t.id}:${t.latestAttentionAt}`;n.current.has(r)||(n.current.add(r),e.mutate(t.id,{onError:()=>{n.current.delete(r)}}))},[e,t])}function xS({routeThreadId:e,threadId:t,threadType:n,useStandardManagerTimeline:r}){return t===void 0||n===void 0||e!==t?!1:!(n===`manager`&&r)}function SS({lastReadAt:e,latestAttentionAt:t}){return e===void 0||t===void 0?!1:e===null||e<t}function CS(e){return e.lastReadAt===null?{kind:`before-first`}:e.lastReadAt<e.latestAttentionAt?{kind:`after-cutoff`,cutoffAt:e.lastReadAt}:null}function wS({routeThreadId:e,thread:t,useStandardManagerTimeline:n}){let[r,i]=(0,K.useState)(null),a=t?.id,o=t?.lastReadAt,s=t?.latestAttentionAt,c=t?.type;return(0,K.useEffect)(()=>{if(a===void 0||o===void 0||s===void 0||c===void 0||!xS({routeThreadId:e,threadId:a,threadType:c,useStandardManagerTimeline:n})){i(null);return}let t={id:a,lastReadAt:o,latestAttentionAt:s,type:c};i(e=>e?.threadId===a&&e.attentionAt===s?o===null?{attentionAt:s,placement:{kind:`before-first`},threadId:a}:e:{attentionAt:s,placement:CS(t),threadId:a})},[e,a,o,s,c,n]),!xS({routeThreadId:e,threadId:a,threadType:c,useStandardManagerTimeline:n})||r===null||r.threadId!==a||r.attentionAt!==s&&!SS({lastReadAt:o,latestAttentionAt:s})?null:r.placement}function TS({managerTimelineView:e,threadId:t}){return`${t}:${e??`default`}`}function ES({latestRows:e,olderCursor:t,surfaceKey:n}){return{olderCursor:t,rows:[...e],surfaceKey:n}}function DS({left:e,right:t}){return e===null||t===null?e===t:e.anchorSeq===t.anchorSeq&&e.anchorId===t.anchorId}function OS(e,t){let n=new Set(e.map(e=>e.id));for(let r of t)n.has(r.id)||(n.add(r.id),e.push(r))}function kS({loadedRows:e,olderRows:t}){let n=[];return OS(n,t),OS(n,e),n}function AS({latestRows:e,loadedRows:t}){if(t.length===0)return{hasLatestOverlap:!1,rows:[...e]};let n=new Set(e.map(e=>e.id)),r=t.findIndex(e=>n.has(e.id));if(r===-1){let n=[...t];return OS(n,e),{hasLatestOverlap:!1,rows:n}}return{hasLatestOverlap:!0,rows:[...t.slice(0,r),...e]}}function jS({current:e,latestTimeline:t,surfaceKey:n}){if(e.surfaceKey!==n||e.rows.length===0&&e.olderCursor===null)return ES({latestRows:t.rows,olderCursor:t.timelinePage.olderCursor,surfaceKey:n});let r=AS({latestRows:t.rows,loadedRows:e.rows});return{...e,olderCursor:e.olderCursor,rows:r.rows}}function MS({current:e,latestTimeline:t,surfaceKey:n}){if(e.surfaceKey!==n)return ES({latestRows:t.rows,olderCursor:t.timelinePage.olderCursor,surfaceKey:n});let r=AS({latestRows:t.rows,loadedRows:e.rows});return{olderCursor:t.timelinePage.olderCursor,rows:r.rows,surfaceKey:n}}function NS(e){return e instanceof p&&e.status===400&&e.code===`invalid_request`}function PS({managerTimelineView:e,threadId:t}){let n=Ae(t,{refetchOnMount:`always`,managerTimelineView:e}),r=TS({managerTimelineView:e,threadId:t}),[i,a]=(0,K.useState)(()=>ES({latestRows:[],olderCursor:null,surfaceKey:r})),[o,s]=(0,K.useState)(!1),c=n.data;(0,K.useEffect)(()=>{if(!c){a(e=>e.surfaceKey===r?e:ES({latestRows:[],olderCursor:null,surfaceKey:r}));return}a(e=>jS({current:e,latestTimeline:c,surfaceKey:r}))},[c,r]);let l=n.refetch,u=i.surfaceKey===r?i.olderCursor:null,d=u!==null,f=(0,K.useCallback)(async()=>{if(!(!u||!t||o)){s(!0);try{let n=await le({beforeCursor:u,id:t,managerTimelineView:e});a(e=>e.surfaceKey===r?{olderCursor:DS({left:e.olderCursor,right:u})?n.timelinePage.olderCursor:e.olderCursor,rows:kS({loadedRows:e.rows,olderRows:n.rows}),surfaceKey:r}:e)}catch(e){if(!(e instanceof Error)||!NS(e))throw e;let t=(await l()).data??c;a(e=>e.surfaceKey===r?t?MS({current:e,latestTimeline:t,surfaceKey:r}):{...e,olderCursor:null}:e)}finally{s(!1)}}},[o,c,e,u,l,r,t]);return{activeThinking:c?.activeThinking??null,contextWindowUsage:c?.contextWindowUsage,hasOlderTimelineRows:d,isLoadingOlderTimelineRows:o,loadOlderTimelineRows:f,pendingTodos:c?.pendingTodos??null,timelineError:n.error,timelineLoading:n.isLoading,timelineRows:i.surfaceKey===r&&i.rows.length>0?i.rows:c?.rows??[]}}function FS(e){if(!e.rootPath||!e.canOpenPreferredTarget)return;let t=e.rootPath;return n=>{e.openInPreferredTarget({lineNumber:null,path:dn({path:n,rootPath:t})})}}function IS(e){return e.file.status===`A`||e.file.status===`??`?{kind:`preview`,source:{kind:`working-tree`},statusLabel:null}:e.file.status===`D`?e.section.kind===`committed`?e.section.mergeBaseRef?{kind:`preview`,source:{kind:`merge-base`,ref:e.section.mergeBaseRef},statusLabel:`deleted`}:{kind:`diff`}:{kind:`preview`,source:{kind:`head`},statusLabel:`deleted`}:{kind:`diff`}}function LS(e){return e.threadEnvironmentIsLocal?e.environment?.path??null:null}function RS(e){return!e.canOpenWorkspace||!e.hasWorkspaceOpenTargets?null:LS({environment:e.environment,threadEnvironmentIsLocal:e.threadEnvironmentIsLocal})}var zS=`Thread file links are only available when the thread has an environment.`,BS=`Thread file links must use absolute file paths.`;function VS(e){return sr.some(t=>qe(t,e)!==null)}function HS(e){if(!e.startsWith(`/`))return null;let t=[];for(let n of e.split(`/`))if(!(n.length===0||n===`.`)){if(n===`..`){t.length>0&&t.pop();continue}t.push(n)}return t.length===0?`/`:`/${t.join(`/`)}`}function US(e){let t=HS(e.workspaceRootPath);if(!t)return null;let n=HS(e.linkPath);return!n||!WS({candidatePath:n,workspaceRootPath:t})||n===t?null:{path:n,relativePath:t===`/`?n.slice(1):n.slice(t.length+1),workspaceRootPath:t}}function WS(e){return e.workspaceRootPath===`/`?e.candidatePath.startsWith(`/`):e.candidatePath===e.workspaceRootPath||e.candidatePath.startsWith(`${e.workspaceRootPath}/`)}function GS(e){if(VS(e.link.path))return{kind:`app-route`};let t=HS(e.link.path);if(!t)return{description:BS,kind:`error`};let n=e.workspaceRootPath===null?null:US({linkPath:t,workspaceRootPath:e.workspaceRootPath});return n?{kind:`open-workspace-path`,request:{lineNumber:e.link.lineNumber,path:n.path,relativePath:n.relativePath,workspaceRootPath:n.workspaceRootPath}}:e.hostFileLinksAvailable?{kind:`open-host-path`,request:{lineNumber:e.link.lineNumber,path:t}}:{description:zS,kind:`error`}}var KS=200,qS=3;function JS({title:e}){let t=e.trim();if(!t)return null;let n=YS({title:t});return n===null?t.slice(0,KS):ZS({path:n.path}).slice(0,KS)}function YS({title:e}){let t=/^[^@\s:]+@[^:\s]+:(.+)$/u.exec(e)?.[1];return!t||!XS({path:t})?null:{path:t}}function XS({path:e}){return e===`~`||e===`.`||e.startsWith(`~/`)||e.startsWith(`/`)||e.startsWith(`./`)}function ZS({path:e}){if(e===`/`||e===`~`||e===`.`)return e;let t=e.split(`/`).filter(e=>e.length>0);return t.length<=qS?e:`.../${t.slice(-qS).join(`/`)}`}var QS=100,$S=30,eC=[],tC=250;function nC(e){return e.status!==`exited`}function rC(e,t){return t&&e.some(e=>e.id===t)?t:e[0]?.id??null}function iC(e){switch(e.status){case`starting`:return`starting`;case`running`:return`running`;case`disconnected`:return`disconnected`;case`exited`:return`exited`}}function aC({canCreateTerminal:e,threadId:t}){let n=ai(t),r=oi(t),i=si(t),a=kb(t),o=Ab(t),s=jb(t),c=(0,K.useRef)(new Set),l=(0,K.useRef)(new Set),u=(0,K.useRef)(n.isOpen),d=(0,K.useRef)(null),f=(0,K.useRef)(null),[p,m]=(0,K.useState)(!1),h=Yi(t,{enabled:n.isOpen}),g=Xi(),_=Qi(),v=Zi(),y=h.data?.sessions??eC,b=(0,K.useMemo)(()=>y.filter(nC),[y]),x=(0,K.useMemo)(()=>rC(b,a),[a,b]),S=b.find(e=>e.id===x)??null;(0,K.useEffect)(()=>{a!==x&&o(x)},[a,x,o]),(0,K.useEffect)(()=>{let e=u.current;if(u.current=n.isOpen,!n.isOpen){m(!1);return}e||m(!0)},[n.isOpen]),(0,K.useEffect)(()=>()=>{f.current!==null&&window.clearTimeout(f.current)},[]);let C=(0,K.useCallback)(()=>{!e||g.isPending||g.mutate({threadId:t,cols:QS,rows:$S},{onSuccess:e=>{o(e.id)}})},[e,g,o,t]);(0,K.useEffect)(()=>{if(p){if(!n.isOpen||!e||h.error){m(!1);return}if(!(g.isPending||h.isLoading)){if(b.length>0){m(!1);return}m(!1),C()}}},[e,g.isPending,n.isOpen,p,C,h.error,h.isLoading,b.length]),(0,K.useEffect)(()=>{if(!n.isOpen)for(let e of b)e.lastUserInputAt!==null||c.current.has(e.id)||l.current.has(e.id)||(l.current.add(e.id),_.mutate({mode:`if-clean`,threadId:t,terminalId:e.id},{onSuccess:e=>{e.status===`exited`&&(c.current.delete(e.id),s(e.id))},onSettled:()=>{l.current.delete(e.id)}}))},[_,n.isOpen,s,t,b]);let w=(0,K.useCallback)(()=>{C()},[C]),T=(0,K.useCallback)(e=>{o(e),r(e=>({...e,isOpen:!0}))},[o,r]),E=(0,K.useCallback)(e=>{_.mutate({mode:`force`,threadId:t,terminalId:e},{onSuccess:()=>{c.current.delete(e),l.current.delete(e),s(e)}})},[_,s,t]),D=(0,K.useCallback)(()=>{x&&c.current.add(x)},[x]),O=(0,K.useCallback)(e=>{if(!S||S.status!==`running`)return;let n=JS({title:e});if(!n||n===S.title)return;let r={terminalId:S.id,title:n},i=d.current;i!==null&&i.terminalId===r.terminalId&&i.title===r.title||(d.current=r,f.current!==null&&window.clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,v.mutate({threadId:t,terminalId:r.terminalId,title:r.title},{onSettled:()=>{let e=d.current;e!==null&&e.terminalId===r.terminalId&&e.title===r.title&&(d.current=null)}})},tC))},[S,v,t]),k=(0,K.useCallback)(()=>{i(!1)},[i]),A=g.isPending||e&&n.isOpen&&p,j=A?`Starting terminal...`:`No terminals`,M=A?e?`Starting terminal...`:`Terminals unavailable.`:`No terminals`,N=h.isLoading||b.length===0&&A;return{activeSession:S,activeTerminalId:x,canCreateTerminal:e,closingTerminalId:_.isPending&&_.variables?_.variables.terminalId:null,emptyTerminalMessage:j,handleActiveTerminalTitleChange:O,handleActiveTerminalUserInput:D,handleClosePanel:k,handleCloseTerminal:E,handleCreateTerminal:w,handleSelectTerminal:T,hasTerminalQueryError:h.error!==null,isCreateTerminalPending:g.isPending,isPanelOpen:n.isOpen,isTerminalQueryLoading:h.isLoading,showTerminalPlaceholders:N,terminalBodyMessage:M,threadId:t,visibleSessions:b}}function oC({terminalId:e,threadId:t}){return`/ws/threads/${encodeURIComponent(t)}/terminals/${encodeURIComponent(e)}`}function sC(e){let t=oC(e);if(typeof __BB_DEV_WS_URL__==`string`){let e=new URL(__BB_DEV_WS_URL__);return e.pathname=t,e.search=``,e.hash=``,e.toString()}return`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}${t}`}var cC=`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, monospace`;function lC(e,t){let n=getComputedStyle(document.documentElement).getPropertyValue(t).trim();if(n)return e.style.color=n,getComputedStyle(e).color}function uC(){if(typeof document>`u`)return{};let e=document.createElement(`span`);e.style.position=`absolute`,e.style.visibility=`hidden`,e.style.pointerEvents=`none`,document.body.appendChild(e);let t=t=>lC(e,t),n={background:t(`--background`),foreground:t(`--foreground`),cursor:t(`--foreground`),cursorAccent:t(`--background`),selectionBackground:t(`--muted`),black:t(`--ansi-0`),red:t(`--ansi-1`),green:t(`--ansi-2`),yellow:t(`--ansi-3`),blue:t(`--ansi-4`),magenta:t(`--ansi-5`),cyan:t(`--ansi-6`),white:t(`--ansi-7`),brightBlack:t(`--ansi-8`),brightRed:t(`--ansi-9`),brightGreen:t(`--ansi-10`),brightYellow:t(`--ansi-11`),brightBlue:t(`--ansi-12`),brightMagenta:t(`--ansi-13`),brightCyan:t(`--ansi-14`),brightWhite:t(`--ansi-15`)};return e.remove(),n}function dC(e){let t=new TextEncoder().encode(e),n=``;for(let e of t)n+=String.fromCharCode(e);return btoa(n)}function fC(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return new TextDecoder().decode(n)}function pC({socket:e,terminal:t}){e.readyState===WebSocket.OPEN&&e.send(JSON.stringify({type:`resize`,cols:t.cols,rows:t.rows}))}function mC({terminal:e,text:t}){e.write(`\r\n\x1b[2m${t}\x1b[0m\r\n`)}function hC({isReplay:e,replayWriteState:t,terminal:n,text:r}){if(!e){n.write(r);return}t.suppressedWriteCount+=1,n.write(r,()=>{--t.suppressedWriteCount})}function gC({message:e,replayNextSeq:t,replayWriteState:n,setReplayNextSeq:r,terminal:i}){switch(e.type){case`attached`:r(e.nextSeq);return;case`pong`:case`session-updated`:return;case`output`:hC({isReplay:t!==null&&e.chunk.seq<t,replayWriteState:n,terminal:i,text:fC(e.chunk.dataBase64)});return;case`error`:mC({terminal:i,text:`Terminal error: ${e.message}`});return;case`exited`:mC({terminal:i,text:e.session.exitCode===null?`Terminal exited`:`Terminal exited with code ${e.session.exitCode}`});return}}function _C({isPanelOpen:e,onTitleChange:t,onUserInput:n,session:r,threadId:i}){let a=(0,K.useRef)(null),o=(0,K.useRef)(null),s=(0,K.useRef)(t),c=(0,K.useRef)(n),l=(0,K.useRef)(e),u=Et();return l.current=e,s.current=t,c.current=n,(0,K.useEffect)(()=>{let e=a.current;if(!e)return;let t=!1,n=null,u=null,d=null,f=null,p={suppressedWriteCount:0},m=null;async function h(e){let[{Terminal:a},{FitAddon:h},{WebLinksAddon:g}]=await Promise.all([Ge(()=>import(`./xterm-DGJHbKBQ.js`),[]),Ge(()=>import(`./addon-fit-Cm0rqjtv.js`),[]),Ge(()=>import(`./addon-web-links-B8_D6zvC.js`),[])]);if(t)return;u=new a({allowProposedApi:!1,convertEol:!0,cursorBlink:!0,fontFamily:cC,fontSize:12,scrollback:1e4,theme:uC()}),o.current=u,d=new h,u.loadAddon(d),u.loadAddon(new g),u.open(e),d.fit(),l.current&&u.focus(),n=new WebSocket(sC({terminalId:r.id,threadId:i}));let _=n,v=u;_.onopen=()=>{pC({socket:_,terminal:v})},_.onmessage=e=>{if(typeof e.data!=`string`)return;let t;try{t=JSON.parse(e.data)}catch{return}let n=z.safeParse(t);n.success&&gC({message:n.data,replayNextSeq:f,replayWriteState:p,setReplayNextSeq:e=>{f=e},terminal:v})},_.onclose=()=>{t||mC({terminal:v,text:`Terminal connection closed`})},v.onData(e=>{p.suppressedWriteCount>0||_.readyState===WebSocket.OPEN&&(c.current?.(),_.send(JSON.stringify({type:`input`,dataBase64:dC(e)})))}),v.onTitleChange(e=>{p.suppressedWriteCount>0||s.current?.(e)}),m=new ResizeObserver(()=>{!d||!u||!n||(d.fit(),pC({socket:n,terminal:u}))}),m.observe(e)}return h(e).catch(n=>{t||(e.textContent=n instanceof Error?n.message:String(n))}),()=>{t=!0,m?.disconnect(),n?.close(),u?.dispose(),o.current=null}},[r.id,i]),(0,K.useEffect)(()=>{e&&o.current?.focus()},[e]),(0,K.useEffect)(()=>{let e=o.current;e&&(e.options.theme=uC())},[u]),(0,q.jsx)(`div`,{ref:a,className:`h-full min-h-0 w-full overflow-hidden bg-background p-2`})}function vC({controller:e}){return e.hasTerminalQueryError?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-destructive`,children:`Failed to load terminals.`}):e.activeSession?e.activeSession.status===`running`?(0,q.jsx)(_C,{isPanelOpen:e.isPanelOpen,onTitleChange:e.handleActiveTerminalTitleChange,onUserInput:e.handleActiveTerminalUserInput,session:e.activeSession,threadId:e.threadId}):(0,q.jsxs)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-muted-foreground`,children:[`Terminal `,iC(e.activeSession),`.`]}):(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center px-4 text-center text-sm text-muted-foreground`,children:e.terminalBodyMessage})}function yC({controller:e}){return(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-x-auto`,role:`tablist`,"aria-label":`Terminal sessions`,children:[e.isTerminalQueryLoading?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Dn,{className:`h-6 w-28 shrink-0 rounded-md`}),(0,q.jsx)(Dn,{className:`h-6 w-24 shrink-0 rounded-md`})]}):e.visibleSessions.length>0?e.visibleSessions.map(t=>(0,q.jsx)(bC,{session:t,isActive:t.id===e.activeTerminalId,isClosing:e.closingTerminalId===t.id,onSelect:()=>e.handleSelectTerminal(t.id),onClose:()=>e.handleCloseTerminal(t.id)},t.id)):e.showTerminalPlaceholders?(0,q.jsx)(`p`,{className:`shrink-0 text-xs text-muted-foreground`,children:e.emptyTerminalMessage}):null,(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,disabled:!e.canCreateTerminal||e.isCreateTerminalPending,onClick:e.handleCreateTerminal,"aria-label":`New terminal`,title:`New terminal`,children:e.isCreateTerminalPending?(0,q.jsx)(L,{name:`Spinner`,className:`size-3.5 animate-spin`}):(0,q.jsx)(L,{name:`Plus`,className:`size-3.5`})})]})}function bC({isActive:e,isClosing:t,onClose:n,onSelect:r,session:i}){let a=iC(i);return(0,q.jsx)(Go,{label:i.title,secondaryLabel:i.status===`running`?null:a,title:`${i.title} (${a})`,isActive:e,onSelect:r,closeAction:{onClose:n,closeLabel:`Close ${i.title}`,closeTooltip:`Close terminal`,isClosing:t}})}function xC({canCreateTerminal:e,threadId:t}){let n=aC({canCreateTerminal:e,threadId:t});return(0,q.jsxs)(`section`,{"aria-label":`Thread terminals`,className:`flex h-full min-h-0 min-w-0 flex-col bg-background`,children:[(0,q.jsxs)(`div`,{className:`flex h-10 min-h-10 items-center gap-2 bg-background px-3`,children:[(0,q.jsx)(yC,{controller:n}),(0,q.jsx)(V,{type:`button`,variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0 rounded-md p-0 text-muted-foreground`,onClick:n.handleClosePanel,"aria-label":`Close terminal panel`,title:`Close terminal panel`,children:(0,q.jsx)(L,{name:`X`,className:`size-3.5`})})]}),(0,q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden bg-background`,children:(0,q.jsx)(vC,{controller:n})})]})}function SC({fixedPanelTabsState:e}){let t=e.secondary.activeTabId;return t===null?null:e.secondary.tabs.find(e=>e.id===t)??null}function CC(e){if(e===null)return null;switch(e.kind){case`thread-info`:return`thread-info`;case`git-diff`:return`git-diff`;case`workspace-file-preview`:case`host-file-preview`:case`thread-storage-file-preview`:case`open-file-search`:return`thread-info`;case`terminal`:return null}}function wC({activeFixedSecondaryTab:e}){return CC(e)}function TC({fixedPanelTabsState:e,selectedSecondaryPanel:t}){return e.secondary.isOpen?t:null}function EC(e){let t=Eb(e),n=Tb(e);return(0,K.useCallback)(e=>{if(e===null){t();return}n(e)},[t,n])}function DC(e){return Db(e)}var OC=[];function kC(e){let t=e.runtime.displayStatus;return t!==`host-reconnecting`&&t!==`waiting-for-host`?null:{label:t===`host-reconnecting`?`Host daemon disconnected. Waiting for reconnection...`:`Host daemon disconnected`,tone:t===`host-reconnecting`?`pending`:`error`}}function AC(){let{projectId:e,threadId:t}=Ue();xb(t),ii(t);let n=Sb(t),r=ai(t),i=SC({fixedPanelTabsState:n}),a=wC({activeFixedSecondaryTab:i}),o=TC({fixedPanelTabsState:n,selectedSecondaryPanel:a}),s=fe(),c=wb(t),l=EC(t),u=DC(t);Ob(t,(0,K.useCallback)(e=>{l(e)},[l]));let d=Ne(t??``),f=d.isSuccess||d.isError,p=ci(t),m=oi(t),{data:h,isFetching:g,isLoadingError:_,isPlaceholderData:v,error:y}=Fe(t??``,{enabled:f,refetchOnMount:d.isSuccess?!0:`always`}),b=ur({hasResolvedData:h!==void 0&&!v,isFetching:d.isFetching||g,isLoadingError:_}),x=je(h?.id??``,{enabled:b.status===`ready`&&!!h?.id,environmentId:h?.environmentId??void 0}),S=x.isSuccess||x.isError,C=x.isSuccess?1e4:void 0,{data:w}=Fe(h?.parentThreadId??``),{data:T=[]}=Ee(h?.id??``,{enabled:S,refetchOnMount:x.isSuccess?!1:`always`,staleTime:C}),E=Le(T)!==null,D=h?.type===`manager`,O=h?.type===`standard`,[k,A]=oa(),j=D&&k,M=j?`standard`:void 0,N=wS({routeThreadId:t,thread:h,useStandardManagerTimeline:j}),[P,F]=(0,K.useState)(!1),[I,ee]=(0,K.useState)(0),{isThreadStorageFilesLoading:te,threadStorageFiles:L,threadStorageFilesError:re,threadStorageRootPath:R}=Hv({activePath:null,fileListEnabled:o!==null&&D,filePreviewEnabled:!1,threadId:t,threadType:h?.type}),{activateOpenFileSearchTab:z,activateHostFileTab:B,activateStorageFileTab:ae,activateWorkspaceFileTab:oe,activeHostFileLineNumber:V,activeHostFilePath:ce,activeStorageFilePath:le,activeWorkspaceFileLineNumber:ue,activeWorkspaceFilePath:de,activeWorkspaceFileSource:pe,activeWorkspaceFileStatusLabel:me,clearActiveFileTabs:he,closeHostFileTab:H,closeOpenFileSearchTab:ge,closeStorageFileTab:_e,closeWorkspaceFileTab:U,hasOpenFileSearchTab:ve,isOpenFileSearchActive:be,openFileSearchTab:Te,openHostFile:De,openHostFileTabs:Oe,openStorageFile:ke,openStorageFilePaths:Ae,openWorkspaceFile:Me,openWorkspaceFileTabs:Pe,pinnedStorageFilePath:Ie,selectOpenFileSearchResult:Re}=nx({threadId:t,environmentId:h?.environmentId,threadType:h?.type,storageFiles:L?.files}),ze=oy({files:L?.files,onSelectPath:ke,selectedPath:le}),Be=(0,K.useCallback)(()=>{if(n.secondary.isOpen){l(null);return}if(D&&i===null){ke(Ie);return}u()},[i,n.secondary.isOpen,D,ke,Ie,l,u]),Ve=(0,K.useCallback)(e=>{D&&A(e)},[D,A]),He=uv(h),We=b.status===`ready`&&He,Ge=we({archived:!1,projectId:e,type:`manager`},{enabled:We}).data??OC,{activeThinking:Ke,contextWindowUsage:qe,hasOlderTimelineRows:Je,isLoadingOlderTimelineRows:Ye,loadOlderTimelineRows:Xe,pendingTodos:W,timelineError:G,timelineLoading:Ze,timelineRows:Qe}=PS({managerTimelineView:M,threadId:t??``}),$e=ir(),et=li(),tt=Se(),nt=ui(),rt=Ce(),it=ft(gt),at=Yi(t??``,{enabled:it}),ot=(0,K.useMemo)(()=>at.data?.sessions.filter(e=>e.status!==`exited`).length??0,[at.data]),st=(0,K.useMemo)(()=>h?kC(h):null,[h]),ct=_i(h?.environmentId,{enabled:f,staleTime:5e3}),lt=ct.data,ut=Xn({projectId:e??``,environmentId:h?.environmentId??``}),dt=ne(lt),{closeThreadSecondaryPanel:mt,defaultMergeBaseBranch:ht,isLoadingMergeBaseBranchOptions:_t,mergeBaseBranchOptions:vt,openDiffFile:yt,openThreadDiffPanel:bt,openThreadSecondaryPanel:xt,selectedMergeBaseBranch:St,setSelectedMergeBaseBranch:Ct}=ga({activeSecondaryPanel:o,clearActiveFileTabs:he,defaultMergeBaseBranch:dt,environmentId:O?h?.environmentId??void 0:void 0,mergeBaseBranchOptionsEnabled:P,setThreadSecondaryPanel:l}),{closePanel:wt,isOpen:Tt,openDiffFile:Et,openDiffPanel:Dt,openPanel:Ot,togglePanel:kt}=Vv({closePersistedPanel:mt,isPersistedOpen:n.secondary.isOpen,isCompactViewport:s,openPersistedDiffFile:yt,openPersistedDiffPanel:bt,openPersistedPanel:xt,threadId:t,togglePersistedPanel:Be});(0,K.useEffect)(()=>{F(!1)},[h?.environmentId]);let jt=(0,K.useCallback)(e=>{e&&F(!0)},[]),Mt=(0,K.useCallback)(e=>{he(),Ot(e)},[he,Ot]),Nt=(0,K.useCallback)(()=>{c()},[c]),Ft=(0,K.useCallback)(()=>{Te(),ee(e=>e+1)},[Te]),It=(0,K.useCallback)(e=>{let t=Math.round(e);m(e=>e.panelHeightPercent===t?e:{...e,panelHeightPercent:t})},[m]),Lt=(0,K.useCallback)(e=>{let t=IS(e);if(t.kind===`preview`){Me({lineNumber:null,path:e.file.path,source:t.source,statusLabel:t.statusLabel});return}Et(e.file.path)},[Et,Me]),Rt=(0,K.useMemo)(()=>{let e=Pe.map(e=>({id:`workspace:${e.path}`,filename:e.path.split(`/`).at(-1)??e.path,isActive:e.path===de,statusLabel:e.statusLabel,onSelect:()=>oe(e.path),onClose:()=>U(e.path)})),t=D?Ae.map(e=>({id:`storage:${e}`,filename:e.split(`/`).at(-1)??e,isActive:e===le,isPinned:e===Ie,statusLabel:null,onSelect:()=>ae(e),onClose:()=>_e(e)})):[],n=Oe.map(e=>({id:`host-file:${e.path}`,filename:e.path.split(`/`).at(-1)??e.path,isActive:e.path===ce,statusLabel:null,onSelect:()=>B(e.path),onClose:()=>H(e.path)})),r=ve?[{id:`open-file-search`,filename:`Open file`,isActive:be,statusLabel:null,onSelect:z,onClose:ge}]:[],i=[...e,...n,...t,...r];return i.length>0?i:void 0},[z,B,ae,oe,ce,le,de,H,ge,_e,U,ve,D,be,Oe,Ae,Pe,Ie]),zt=St??dt,Bt=vi(h?.environmentId,zt,{enabled:O&&lt!==void 0}),Ht=Bt.data,Ut=Bt.error,Wt=Ut?void 0:Ht??void 0,Gt=Wt?.branch,Kt=(0,K.useMemo)(()=>Di(Wt),[Wt]),qt=(0,K.useMemo)(()=>Kt===null||Kt.kind===`committed`?null:Kt,[Kt]),{isLocalHost:Jt}=pt(),Yt=lt?Jt(lt.hostId):!1,Xt=LS({environment:lt,threadEnvironmentIsLocal:Yt}),{canOpenPreferredTarget:Zt,openPathInPreferredTarget:Qt,openPathInTarget:$t,preferredTarget:tn,workspaceOpenTargets:nn}=Gi({enabled:Yt}),rn=d.isSuccess&&d.data.environment!==void 0&&d.data.environment!==null&&d.data.host===null,{data:an}=ye(lt?.hostId,{enabled:!rn}),on=we({archived:!1,projectId:e,parentThreadId:h?.id},{enabled:D&&!!h?.id}),sn=(0,K.useMemo)(()=>{if(!h?.parentThreadId)return null;let t=`/projects/${e}/threads/${h.parentThreadId}`;return w===void 0?{managerName:`Manager ${h.parentThreadId.slice(0,8)}`,href:t}:w.type!==`manager`||w.archivedAt!==null||w.deletedAt!==null||w.projectId!==h.projectId?null:{managerName:xe(w),href:t}},[w,e,h?.parentThreadId,h?.projectId]),cn=(0,K.useMemo)(()=>{if(!D)return null;let t=(on.data??[]).filter(e=>io(e.runtime.displayStatus)).map(t=>({id:t.id,title:xe(t),href:`/projects/${e}/threads/${t.id}`}));return t.length===0?null:{items:t}},[D,on.data,e]),ln=Ze&&Qe.length===0,{erroredTurnSummaryIds:un,handleLoadTurnSummaryRows:dn,loadingTurnSummaryIds:fn,turnSummaryRowsById:pn}=Ea({managerTimelineView:M,timelineRows:Qe,threadId:t});bS({markThreadRead:tt,thread:h});let{effectiveMergeBaseBranch:mn,handleMergeBaseBranchChange:hn,showBranchComparisonUi:_n,showMergeBase:vn,mergeBaseBranch:yn}=cx({environment:lt,mergeBaseBranchOptions:vt,selectedMergeBaseBranch:St,setSelectedMergeBaseBranch:Ct,thread:h,updateEnvironment:nt,workspaceStatus:Wt}),bn=yS({environment:lt,requestEnvironmentAction:et,sendMessage:$e,thread:h,workspaceStatus:Wt}),xn=h?.parentThreadId,Sn=w?.title&&w.title.trim().length>0?w.title:xn,Cn=(0,K.useMemo)(()=>dv({currentThreadId:h?.id,isManagerThread:D,managerThreads:Ge,parentThreadDisplayName:Sn,parentThreadId:xn}),[D,Ge,Sn,xn,h?.id]),wn=(0,K.useCallback)(e=>{!h||rt.isPending||rt.mutate({id:h.id,parentThreadId:e})},[h,rt]),Tn=(0,K.useCallback)(e=>{let t=GS({hostFileLinksAvailable:h?.environmentId!==null&&h?.environmentId!==void 0,link:e,workspaceRootPath:Xt});return t.kind===`app-route`?!1:t.kind===`error`?(en.error(`Failed to open file locally`,{description:t.description}),!0):t.kind===`open-workspace-path`?(Me({lineNumber:t.request.lineNumber,path:t.request.relativePath,source:{kind:`working-tree`},statusLabel:null}),!0):(De({lineNumber:t.request.lineNumber,path:t.request.path}),!0)},[Xt,De,Me,h?.environmentId]),En=(0,K.useCallback)(e=>{switch(e.kind){case`open-file-diff`:return D?null:()=>{Et(e.path)};default:return Vt(e.kind)}},[D,Et]);if(!e||!t)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-destructive`,children:`Not found`})});if(b.status===`loading`)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-muted-foreground`,children:`Loading...`})});if(!h||h.projectId!==e)return(0,q.jsx)(se,{contentClassName:`min-h-full items-center justify-center`,children:(0,q.jsx)(`p`,{className:`py-12 text-center text-sm text-destructive`,children:y?`Failed to load thread.`:`Not found`})});let Dn=`${h.id}:${M??`default`}`,On=Cn.some(e=>e.value!==`none`),An=He&&On,jn=h.type===`standard`&&!!h.parentThreadId,Mn=lt?ie({environment:lt,isLocalHost:Yt,hostName:an?.name}):void 0,Nn=Mn?kn(Mn.workspaceDisplayKind):null,Pn=lt!==void 0&&(lt.isWorktree||lt.workspaceProvisionType===`managed-worktree`)&&e&&h.environmentId!==null?ut:void 0,Fn=mn,In=Gt?.currentBranch??void 0,Ln=lt?.status===`destroyed`,Rn=it&&h.environmentId!==null&&lt?.status===`ready`,zn=la(Wt,{mergeBaseBranch:yn,showBranchComparison:_n,error:Ut,workspaceDeleted:Ln}),Bn=xe(h),Vn=(0,q.jsx)(gn,{thread:h,triggerClassName:At,align:`end`,viewerToggleLabel:D?`Use standard timeline`:void 0,viewerToggleChecked:D?j:void 0,onViewerToggleCheckedChange:D?Ve:void 0}),Hn=RS({canOpenWorkspace:Zt,environment:lt,hasWorkspaceOpenTargets:nn.length>0,threadEnvironmentIsLocal:Yt}),Un=Hn&&tn?(0,q.jsx)(Ii,{preferredTarget:tn,targets:nn,onOpenPreferredTarget:async()=>{await Qt({lineNumber:null,path:Hn})},onOpenTarget:async e=>{await $t({lineNumber:null,path:Hn,rememberTarget:!0,targetId:e})}}):void 0,Wn=(0,q.jsx)(Oa,{actionsMenu:Vn,isManagedThread:!!xn,isManagerThread:D,isSecondaryPanelOpen:Tt,activeTerminalCount:ot,isTerminalPanelOpen:it&&r.isOpen,isThreadGitActionPending:bn.isThreadGitActionPending,onOpenThreadGitAction:bn.threadGitActionDialog.onOpen,onToggleSecondaryPanel:kt,onToggleTerminalPanel:p,showTerminalPanelToggle:it,threadHeaderGitActions:bn.threadHeaderGitActions,threadTitle:Bn,workspaceOpenButton:Un}),Gn=(0,q.jsx)(Ho,{canUseGitUi:O,contextWindowUsage:qe,environmentBranchName:In,environmentHostConnected:an&&!Yt?an.status===`connected`:void 0,environmentIcon:Nn??void 0,environmentLabel:Mn?.modeLabel,environmentHostLabel:Mn?.location===`remote`?Mn.hostLabel??void 0:void 0,isEnvironmentActionPending:et.isPending,onCreateNewThreadInWorktree:Pn,composerQueriesEnabled:S,composerQueriesRefetchOnMount:x.isSuccess?!1:`always`,composerQueriesStaleTime:C,onChangedFileClick:Lt,openThreadDiffPanel:Dt,projectId:e,workspaceChangedFilesSection:O?Kt:null,workspaceStatusPending:O&&(ct.isLoading||Bt.isLoading),contextBannerMergeBase:O&&vn&&Fn?{branch:Fn,options:vt,optionsLoading:_t,onChange:hn,onPickerOpenChange:jt}:null,sendMessage:$e,pendingInteractions:T,pendingTodos:W,managedBySection:sn,managerChildrenSection:cn,thread:h}),Kn=h.type===`manager`?{controller:ze,filesError:re,isFilesLoading:te}:void 0,qn=FS({rootPath:Xt,canOpenPreferredTarget:Zt,openInPreferredTarget:Qt}),Jn=FS({rootPath:Yt?R:null,canOpenPreferredTarget:Zt,openInPreferredTarget:Qt}),Yn=Yt&&Zt?e=>{Qt({lineNumber:V,path:e})}:void 0,Zn=de?Pt({path:de,rootPath:lt?.path}):null,Qn=le?Pt({path:le,rootPath:R}):null,$n=be?(0,q.jsx)(ry,{projectId:e??void 0,environmentId:h.environmentId??null,currentThreadId:h.id,currentThreadType:h.type,focusRequest:I,onSelect:Re}):de?(0,q.jsx)(Ks,{activePath:de,copyPath:Zn,environmentId:h.environmentId,lineNumber:ue,onOpenInEditor:qn,source:pe,statusLabel:me}):ce?(0,q.jsx)(qs,{activePath:ce,environmentId:h.environmentId,lineNumber:V,onOpenInEditor:Yn,threadId:h.id}):le?(0,q.jsx)(Js,{activePath:le,copyPath:Qn,isManagerThread:D,onOpenInEditor:Jn,pinnedPath:Ie,threadId:h.id}):void 0;return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Iv,{footer:Gn,header:Wn,isMetadataLoading:ct.isLoading,isSecondaryPanelOpen:Tt,metadata:{thread:h,projectId:e,parentThreadDisplayName:Sn??null,managerThreads:Ge,canAssignToManager:An,canTakeOverThread:jn,environmentHost:an??null,environmentIsLocal:Yt,environment:lt??null,workspaceStatus:Wt,workspaceStatusError:Ut??null,selectedMergeBaseBranch:St,mergeBaseBranchOptions:vt,isLoadingMergeBaseBranchOptions:_t,updateThreadPending:rt.isPending||nt.isPending,storage:Kn,onAssignManager:wn,onMergeBaseBranchChange:hn,onChangedFileClick:O?Lt:void 0},secondaryPanel:{activePanel:a,canUseGitUi:O,defaultMergeBaseBranch:ht,environmentId:h.environmentId??void 0,workspaceRootPath:lt?.path,fileTabs:Rt,fileTabContent:$n,isOpen:Tt,onClose:wt,onCollapse:wt,onOpenFileInEditor:qn,onOpenFileSearch:Ft,onOpenFilePreview:e=>{Me({lineNumber:null,path:e,source:{kind:`working-tree`},statusLabel:null})},onPanelFocus:Nt,onPanelChange:Mt,showGitDiffTab:O},terminalPanel:it?(0,q.jsx)(xC,{canCreateTerminal:Rn,threadId:h.id}):void 0,terminalPanelHeightPercent:r.panelHeightPercent,terminalPanelOpen:it&&r.isOpen,onTerminalPanelResize:It,timeline:{activeThinking:Ke,hasOlderTimelineRows:Je,hostConnectionNotice:st,isLoadingOlderTimelineRows:Ye,isThreadTimelinePending:ln,timelineError:!!G,loadingTurnSummaryIds:fn,erroredTurnSummaryIds:un,onLoadOlderRows:Xe,onLoadTurnSummaryRows:dn,onOpenLocalFileLink:Tn,onTitleAction:En,projectId:e,showOngoingIndicator:h.stopRequestedAt===null&&(h.runtime.displayStatus===`active`||h.runtime.displayStatus===`host-reconnecting`)&&!ln,ongoingIndicatorLabel:E?`Waiting for approval`:h.runtime.displayStatus===`host-reconnecting`?`Waiting for reconnection`:void 0,timelineRows:Qe,stopRequestedAt:h.stopRequestedAt,threadId:h.id,threadRuntimeDisplayStatus:h.runtime.displayStatus,turnSummaryRowsIdentity:Dn,turnSummaryRowsById:pn,unreadDividerPlacement:N,workspaceRootPath:lt?.path??void 0}}),O?(0,q.jsx)(Mi,{target:bn.threadGitActionDialog.target,branchName:In,gitStatusDisplay:zn,changedFilesSection:qt,threadId:h.id,threadType:h.type,showMergeBaseDetails:_n,mergeBaseBranch:mn,mergeBaseBranchOptions:vt,mergeBaseBranchOptionsLoading:_t,onMergeBaseBranchChange:_n?hn:void 0,onOpenChange:e=>{e||bn.threadGitActionDialog.onClose()},onCommit:bn.handleCommitThread,onSquashMerge:bn.handleSquashMergeThread}):null]})}var jC={workerFactory:Ir,poolSize:Fr()},MC={};function NC(){return(0,q.jsx)(_n,{poolOptions:jC,highlighterOptions:MC,children:(0,q.jsx)(AC,{})})}export{NC as default};