bb-app 0.0.9 → 0.0.11

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 (354) hide show
  1. package/app/dist/assets/AppSettingsView-Dh4Od2M3.js +1 -0
  2. package/app/dist/assets/InternalReplayListView-BjzY8fhh.js +1 -0
  3. package/app/dist/assets/ProjectArchivedThreadsView-o1R22xfj.js +1 -0
  4. package/app/dist/assets/ProjectSettingsView-BoH5a1hi.js +1 -0
  5. package/app/dist/assets/ThreadDetailRoute-Caqz8odF.js +2867 -0
  6. package/app/dist/assets/{ThreadUnarchiveButton-ae8m78ng.js → ThreadUnarchiveButton-2shfHri9.js} +1 -1
  7. package/app/dist/assets/{angular-html-CsQHuPoy.js → angular-html-CN4B7z8Z.js} +1 -1
  8. package/app/dist/assets/{angular-ts-B9caFRUl.js → angular-ts-Be9rCyh7.js} +1 -1
  9. package/app/dist/assets/{apl-BaFDIJAy.js → apl-C-09mkOY.js} +1 -1
  10. package/app/dist/assets/{astro-CB3F_OsY.js → astro-DQR04HMP.js} +1 -1
  11. package/app/dist/assets/{blade-CjgH6QoP.js → blade-CHOb28s9.js} +1 -1
  12. package/app/dist/assets/{bsl-CG-fq4sc.js → bsl-9Rfj8X2G.js} +1 -1
  13. package/app/dist/assets/{c-Bknf8flU.js → c-Czi5ZOPg.js} +1 -1
  14. package/app/dist/assets/{cairo-Ds0kTeYT.js → cairo-B8t0-PSB.js} +1 -1
  15. package/app/dist/assets/{chunk-JZWAC4HX-C0wcTaAp.js → chunk-JZWAC4HX-CmnT162V.js} +1 -1
  16. package/app/dist/assets/{cobol-s_WYmRkb.js → cobol-C0UrcShI.js} +1 -1
  17. package/app/dist/assets/{coffee-B4wogQNr.js → coffee-DLCACHKU.js} +1 -1
  18. package/app/dist/assets/{cpp-DBcUjMMg.js → cpp-CKRDyJLk.js} +1 -1
  19. package/app/dist/assets/{crystal-BEUw9aly.js → crystal-DzdlwfxO.js} +1 -1
  20. package/app/dist/assets/{css-Tyi5cHoy.js → css-J88DqgyO.js} +1 -1
  21. package/app/dist/assets/dialog-JFJupr8S.js +22 -0
  22. package/app/dist/assets/{edge-DBVUn5K4.js → edge-BiusF5O8.js} +1 -1
  23. package/app/dist/assets/effective-hosts-BS3g3uzj.js +68 -0
  24. package/app/dist/assets/{elixir-DScCko2H.js → elixir-DVV1N8WB.js} +1 -1
  25. package/app/dist/assets/{elm-C4qaS622.js → elm-ZwoouJdM.js} +1 -1
  26. package/app/dist/assets/{erb-CZnOXF4N.js → erb-6WVNn8lP.js} +1 -1
  27. package/app/dist/assets/{erlang-C-m_88FN.js → erlang-CdOz9ruD.js} +1 -1
  28. package/app/dist/assets/{fortran-fixed-form-Cx1lv7HN.js → fortran-fixed-form-BmD2L0UY.js} +1 -1
  29. package/app/dist/assets/{fsharp-DC5k9sy2.js → fsharp-DgKUr7h2.js} +1 -1
  30. package/app/dist/assets/{gdresource-D0EsKdgH.js → gdresource-BqgTfeIa.js} +1 -1
  31. package/app/dist/assets/{git-commit-BcFsuO5E.js → git-commit-CPnaL3nl.js} +1 -1
  32. package/app/dist/assets/{git-rebase-QEKpMjJZ.js → git-rebase-CI6iVcd4.js} +1 -1
  33. package/app/dist/assets/{glimmer-js-BNOZF2qI.js → glimmer-js-MU0okVIL.js} +1 -1
  34. package/app/dist/assets/{glimmer-ts-apIdP2bg.js → glimmer-ts-BXJcqrHb.js} +1 -1
  35. package/app/dist/assets/{glsl-Dg2m4Gqj.js → glsl-CthKK13_.js} +1 -1
  36. package/app/dist/assets/{graphql-DFhF_r-2.js → graphql-Cfx6sMIN.js} +1 -1
  37. package/app/dist/assets/{hack-Bhx0ZE7U.js → hack-Cfn0L20S.js} +1 -1
  38. package/app/dist/assets/{haml-DI6_Yg2F.js → haml-DpOUW3De.js} +1 -1
  39. package/app/dist/assets/{handlebars-BnNY7a5K.js → handlebars-Dq6TUqDg.js} +1 -1
  40. package/app/dist/assets/{html-BOXTZS1i.js → html-CrFhd97J.js} +1 -1
  41. package/app/dist/assets/{html-derivative-v40-23QP.js → html-derivative-SXrZiT2S.js} +1 -1
  42. package/app/dist/assets/{http-BjNdwlfX.js → http-BxRXAeum.js} +1 -1
  43. package/app/dist/assets/{hurl-FLqiDEN1.js → hurl-BsAa903H.js} +1 -1
  44. package/app/dist/assets/{hxml-iQTOTWpM.js → hxml-DlOl0PEf.js} +1 -1
  45. package/app/dist/assets/index-DYJoFBAk.css +2 -0
  46. package/app/dist/assets/index-DbhAkEqX.js +1366 -0
  47. package/app/dist/assets/{java-BK7M4QRN.js → java-BZRe3u16.js} +1 -1
  48. package/app/dist/assets/{javascript-CIysJabp.js → javascript-YzZUmjcN.js} +1 -1
  49. package/app/dist/assets/{jinja-D22cUMUY.js → jinja-CkL9mgnB.js} +1 -1
  50. package/app/dist/assets/{jison-D5ZXfQQd.js → jison-DY01LEsx.js} +1 -1
  51. package/app/dist/assets/{json-DEUxBxBS.js → json-DeVTS63Q.js} +1 -1
  52. package/app/dist/assets/{jsx-cxjRg4Z9.js → jsx-B73xjEBK.js} +1 -1
  53. package/app/dist/assets/{julia-DfQvji8F.js → julia-D5UCqxaX.js} +1 -1
  54. package/app/dist/assets/{just-7mfnOEVc.js → just-BfeKX4XX.js} +1 -1
  55. package/app/dist/assets/{latex-CmEGWjs7.js → latex-CllT7gYn.js} +1 -1
  56. package/app/dist/assets/{liquid-Cmbkwo5G.js → liquid-Bgz2sjbj.js} +1 -1
  57. package/app/dist/assets/localhost-badge-BESHcXM2.js +1 -0
  58. package/app/dist/assets/{lua-DJijm0YV.js → lua-CKg4_5Yw.js} +1 -1
  59. package/app/dist/assets/{marko-TMTUEuNL.js → marko-CSplXaxm.js} +1 -1
  60. package/app/dist/assets/{mdc-DT_H0tm2.js → mdc-CR1bPJlt.js} +1 -1
  61. package/app/dist/assets/mutation-cache-effects-BX02KjBd.js +1 -0
  62. package/app/dist/assets/mutation-errors-DgGC9CkY.js +2 -0
  63. package/app/dist/assets/{nextflow-D-Ec_bsY.js → nextflow-CK5HLJvq.js} +1 -1
  64. package/app/dist/assets/{nginx-DfhY1ECI.js → nginx-Chba8emm.js} +1 -1
  65. package/app/dist/assets/{nim-CY6yBY6c.js → nim-BJOCNxTB.js} +1 -1
  66. package/app/dist/assets/page-shell-CaMV_G2I.js +39 -0
  67. package/app/dist/assets/{perl-BRRcO43t.js → perl-DtYnB2VK.js} +1 -1
  68. package/app/dist/assets/{php-DoQeKnTv.js → php-Cm6MwVxd.js} +1 -1
  69. package/app/dist/assets/{pill-CoTRlxZ6.js → pill-Ds03GLze.js} +1 -1
  70. package/app/dist/assets/{pug-BusbjPKV.js → pug-Cs95QZUY.js} +1 -1
  71. package/app/dist/assets/{qml-D4hm6vUS.js → qml-DV4H8TeV.js} +1 -1
  72. package/app/dist/assets/{r-C3JOt0ks.js → r-BOwNWtkP.js} +1 -1
  73. package/app/dist/assets/{razor-MHFIGhr-.js → razor-rzD3KE0N.js} +1 -1
  74. package/app/dist/assets/{regexp-DmDmHqK0.js → regexp-D5UpjLq1.js} +1 -1
  75. package/app/dist/assets/{rst-D5K5OvKu.js → rst-nRBldbnW.js} +1 -1
  76. package/app/dist/assets/{ruby-qXw_ViMa.js → ruby-DK9_UnsF.js} +1 -1
  77. package/app/dist/assets/{sas-SiqJsOSW.js → sas-BxxScrc4.js} +1 -1
  78. package/app/dist/assets/{scss-B9bBsqJt.js → scss-dYaO_Ssw.js} +1 -1
  79. package/app/dist/assets/{settings-section-B0JkCbim.js → settings-section-BgEyrMBV.js} +1 -1
  80. package/app/dist/assets/{shaderlab-DGohHMiF.js → shaderlab-jhHUXThs.js} +1 -1
  81. package/app/dist/assets/{shellscript-B0hF8Ck_.js → shellscript-BGY92qaj.js} +1 -1
  82. package/app/dist/assets/{shellsession-kbvqTqYV.js → shellsession-DHio1RBs.js} +1 -1
  83. package/app/dist/assets/{soy-DED6zzHR.js → soy-CWnh82_C.js} +1 -1
  84. package/app/dist/assets/{sparql-BgU2QITA.js → sparql-D050l-1j.js} +1 -1
  85. package/app/dist/assets/split-button-PlurXMEc.js +1 -0
  86. package/app/dist/assets/{sql-kJQbrAD6.js → sql-BgOSYFXh.js} +1 -1
  87. package/app/dist/assets/{stata-Bsjpyopz.js → stata-Di5c1EGu.js} +1 -1
  88. package/app/dist/assets/{surrealql-CV66KZgA.js → surrealql-CKgBuPai.js} +1 -1
  89. package/app/dist/assets/{svelte-DQTF70EG.js → svelte-DGNSQgHP.js} +1 -1
  90. package/app/dist/assets/{templ-5jXq5O2y.js → templ--mBJoDNy.js} +1 -1
  91. package/app/dist/assets/{tex-BKPWc06x.js → tex-Drg-gBC1.js} +1 -1
  92. package/app/dist/assets/thread-queries-DI7HoSpk.js +1 -0
  93. package/app/dist/assets/{ts-tags-DHR5Sjbn.js → ts-tags-_EoiaFc_.js} +1 -1
  94. package/app/dist/assets/{tsx-BikICA1y.js → tsx-C3E3ZPo7.js} +1 -1
  95. package/app/dist/assets/{twig-D00gH1GT.js → twig-BkmJOmf1.js} +1 -1
  96. package/app/dist/assets/{typescript-B9SUz1Ri.js → typescript-zC8doK3K.js} +1 -1
  97. package/app/dist/assets/{vue-nmyY5t9g.js → vue-Dqnq1uw7.js} +1 -1
  98. package/app/dist/assets/{vue-html-CxTWudeN.js → vue-html-CZNe_SnY.js} +1 -1
  99. package/app/dist/assets/{vue-vine-DKOrFY9Z.js → vue-vine-ChEJZJ0Y.js} +1 -1
  100. package/app/dist/assets/workspace-open-target-preference-Dve5Zih1.js +1 -0
  101. package/app/dist/assets/{xml-vPV5v5Ih.js → xml-DHqUJISw.js} +1 -1
  102. package/app/dist/assets/{xsl-FiPzBrgC.js → xsl-B_xW8s_z.js} +1 -1
  103. package/app/dist/assets/{yaml-CYAqjA7C.js → yaml-CHAY15k-.js} +1 -1
  104. package/app/dist/index.html +12 -11
  105. package/host-daemon/dist/bb +55 -55
  106. package/host-daemon/dist/bb-claude-code-bridge.mjs +37 -37
  107. package/host-daemon/dist/bb-pi-bridge.mjs +1 -1
  108. package/host-daemon/dist/daemon-bundle.mjs +439 -432
  109. package/package.json +1 -1
  110. package/server/dist/drizzle/0005_strong_exodus.sql +29 -0
  111. package/server/dist/drizzle/0006_rapid_santa_claus.sql +11 -0
  112. package/server/dist/drizzle/0007_curvy_ezekiel_stane.sql +2 -0
  113. package/server/dist/drizzle/meta/0005_snapshot.json +3227 -0
  114. package/server/dist/drizzle/meta/0006_snapshot.json +3243 -0
  115. package/server/dist/drizzle/meta/0007_snapshot.json +3260 -0
  116. package/server/dist/drizzle/meta/_journal.json +22 -1
  117. package/server/dist/index.js +11880 -14862
  118. package/app/dist/assets/AppSettingsView-3xuBYGm-.js +0 -1
  119. package/app/dist/assets/InternalReplayListView-D4BuZuhX.js +0 -1
  120. package/app/dist/assets/ProjectArchivedThreadsView-CQ79aEPs.js +0 -1
  121. package/app/dist/assets/ProjectSettingsView-D0t1s9Kc.js +0 -1
  122. package/app/dist/assets/ThreadDetailRoute-S7gHiq2R.js +0 -2871
  123. package/app/dist/assets/dialog-yU2jYzlX.js +0 -1
  124. package/app/dist/assets/effective-hosts-L1PAD_aI.js +0 -68
  125. package/app/dist/assets/index-BYWUZ2en.css +0 -2
  126. package/app/dist/assets/index-aLeXFWbZ.js +0 -1360
  127. package/app/dist/assets/localhost-badge-CmIXXpKJ.js +0 -22
  128. package/app/dist/assets/mutation-cache-effects-CDggZqqz.js +0 -1
  129. package/app/dist/assets/page-shell-BWng2QUG.js +0 -39
  130. package/app/dist/assets/split-button-D4kqBiFb.js +0 -1
  131. package/app/dist/assets/thread-queries-fJ7WqAPD.js +0 -1
  132. /package/app/dist/assets/{abap-B1dkBSPn.js → abap-B7RnWQOG.js} +0 -0
  133. /package/app/dist/assets/{actionscript-3-BT4ibYlP.js → actionscript-3-CRl2BRXz.js} +0 -0
  134. /package/app/dist/assets/{ada-CD92zeps.js → ada-CySgk42_.js} +0 -0
  135. /package/app/dist/assets/{addon-fit-Cm0rqjtv.js → addon-fit-C0pCnz-E.js} +0 -0
  136. /package/app/dist/assets/{addon-web-links-B8_D6zvC.js → addon-web-links-C74o10p8.js} +0 -0
  137. /package/app/dist/assets/{andromeeda-DqSmgxi0.js → andromeeda-Bnm9WW1a.js} +0 -0
  138. /package/app/dist/assets/{apache-D5suuoa_.js → apache-CQgWNR0K.js} +0 -0
  139. /package/app/dist/assets/{apex-BL-m4VHy.js → apex-CFa_x2c9.js} +0 -0
  140. /package/app/dist/assets/{applescript-CLiBqvKT.js → applescript-CCGt--QU.js} +0 -0
  141. /package/app/dist/assets/{ara-LdDF8cmv.js → ara-CJYv1XlV.js} +0 -0
  142. /package/app/dist/assets/{asciidoc-2DZ9hC2N.js → asciidoc-DxgPoKvx.js} +0 -0
  143. /package/app/dist/assets/{asm-0ZPGRSUy.js → asm-2LyQSByb.js} +0 -0
  144. /package/app/dist/assets/{aurora-x-Da7Zfvbg.js → aurora-x-DfOR6O80.js} +0 -0
  145. /package/app/dist/assets/{awk-Bn0gn_B_.js → awk-adfNbTQc.js} +0 -0
  146. /package/app/dist/assets/{ayu-dark-bqYKoqpM.js → ayu-dark-ADZF52JZ.js} +0 -0
  147. /package/app/dist/assets/{ayu-light-C45jTIzZ.js → ayu-light-CMMeLqXc.js} +0 -0
  148. /package/app/dist/assets/{ayu-mirage-BV_FCTQi.js → ayu-mirage-BZvrYN67.js} +0 -0
  149. /package/app/dist/assets/{ballerina-D2nw_w8Q.js → ballerina-G1jH5Moz.js} +0 -0
  150. /package/app/dist/assets/{bat-ByUBN5gS.js → bat-CHXtPpft.js} +0 -0
  151. /package/app/dist/assets/{beancount-BTb2W6Mp.js → beancount-EfboDiXG.js} +0 -0
  152. /package/app/dist/assets/{berry-5SO2uITG.js → berry-DAhQzFBm.js} +0 -0
  153. /package/app/dist/assets/{bibtex-CDBTNfUI.js → bibtex-CanpD3m2.js} +0 -0
  154. /package/app/dist/assets/{bicep-fgxG_4rP.js → bicep-Cc0u08ve.js} +0 -0
  155. /package/app/dist/assets/{bird2-BCwzDhwX.js → bird2-BmGSmafQ.js} +0 -0
  156. /package/app/dist/assets/{c3-Dlaci63_.js → c3-Bld9q8eN.js} +0 -0
  157. /package/app/dist/assets/{cadence-DHbRuEmm.js → cadence-_3OaglmQ.js} +0 -0
  158. /package/app/dist/assets/{catppuccin-frappe-DrL1fUuH.js → catppuccin-frappe-Dn0XJ8jj.js} +0 -0
  159. /package/app/dist/assets/{catppuccin-latte-C0REgVjl.js → catppuccin-latte-D25Kwd8S.js} +0 -0
  160. /package/app/dist/assets/{catppuccin-macchiato-ChQpylWO.js → catppuccin-macchiato-Bc6w_RYC.js} +0 -0
  161. /package/app/dist/assets/{catppuccin-mocha-Dd0JU1T0.js → catppuccin-mocha-Di4PH8Ri.js} +0 -0
  162. /package/app/dist/assets/{clarity-DMoTOm4G.js → clarity-CVKtZWJu.js} +0 -0
  163. /package/app/dist/assets/{clojure-DBhE3PpS.js → clojure-C4w8xKrn.js} +0 -0
  164. /package/app/dist/assets/{cmake-DwMc40Or.js → cmake-DuxpWyxB.js} +0 -0
  165. /package/app/dist/assets/{codeowners-1lVr8wqV.js → codeowners-BYgLRiPG.js} +0 -0
  166. /package/app/dist/assets/{codeql-DWflolvo.js → codeql-DmJo4bmm.js} +0 -0
  167. /package/app/dist/assets/{common-lisp-CrVQ5xT-.js → common-lisp-xmwdM7sj.js} +0 -0
  168. /package/app/dist/assets/{coq-CjfoyYSh.js → coq-D004aLp-.js} +0 -0
  169. /package/app/dist/assets/{csharp-C7bIWP5y.js → csharp-BJRWJrkS.js} +0 -0
  170. /package/app/dist/assets/{csv-DsAkDVtA.js → csv-Cx2EO4hN.js} +0 -0
  171. /package/app/dist/assets/{cue-BWmQgbOB.js → cue-BFvpulfw.js} +0 -0
  172. /package/app/dist/assets/{cypher-D-jVC50Q.js → cypher-CloxltJj.js} +0 -0
  173. /package/app/dist/assets/{d-CaviyOrm.js → d-ByN-nCZx.js} +0 -0
  174. /package/app/dist/assets/{dark-plus-DIrnwZt9.js → dark-plus-BRQ4k4kr.js} +0 -0
  175. /package/app/dist/assets/{dart-CZEi7JgC.js → dart-jaYeqpH7.js} +0 -0
  176. /package/app/dist/assets/{dax-BK-8zffy.js → dax-CQDoOssZ.js} +0 -0
  177. /package/app/dist/assets/{desktop-D3cjbL4D.js → desktop-DssJfs2S.js} +0 -0
  178. /package/app/dist/assets/{diff-sHAzLvlp.js → diff-DGLbp6Xl.js} +0 -0
  179. /package/app/dist/assets/{docker--xs2Ng3w.js → docker-B7aZDRTU.js} +0 -0
  180. /package/app/dist/assets/{dotenv-Cm4nwcJ7.js → dotenv-D3KyAIK0.js} +0 -0
  181. /package/app/dist/assets/{dracula-CAUSusef.js → dracula-6-t2eOMW.js} +0 -0
  182. /package/app/dist/assets/{dracula-soft-cjNkMFza.js → dracula-soft-B4TZzIlp.js} +0 -0
  183. /package/app/dist/assets/{dream-maker-fjmWTFCO.js → dream-maker-CjPuR0vx.js} +0 -0
  184. /package/app/dist/assets/{emacs-lisp-CJzqStIa.js → emacs-lisp-BHg7FqFZ.js} +0 -0
  185. /package/app/dist/assets/{everforest-dark-DBpaSMx1.js → everforest-dark-B4IVVaS6.js} +0 -0
  186. /package/app/dist/assets/{everforest-light-CiGrXwia.js → everforest-light-CNoEiPUu.js} +0 -0
  187. /package/app/dist/assets/{fennel-DRaXF7k8.js → fennel-DG6hK7z2.js} +0 -0
  188. /package/app/dist/assets/{fish-Bn-Yh3Jj.js → fish-_zY__9L4.js} +0 -0
  189. /package/app/dist/assets/{fluent-DF5F8Ks_.js → fluent-BBz3hVA9.js} +0 -0
  190. /package/app/dist/assets/{fortran-free-form-hCQHRqew.js → fortran-free-form-Db24aQuN.js} +0 -0
  191. /package/app/dist/assets/{gdscript-_C9_Hi_w.js → gdscript-CxxY7zMa.js} +0 -0
  192. /package/app/dist/assets/{gdshader-BW7b1X1Y.js → gdshader-W85lNgcx.js} +0 -0
  193. /package/app/dist/assets/{genie-Ch_6TCHd.js → genie-2WOhOayX.js} +0 -0
  194. /package/app/dist/assets/{gherkin-CaNUsmTq.js → gherkin-BsQJenZD.js} +0 -0
  195. /package/app/dist/assets/{github-dark-B9ygjgg6.js → github-dark-DH2_Q6FX.js} +0 -0
  196. /package/app/dist/assets/{github-dark-default-Br2bgYSx.js → github-dark-default-DTF8deNx.js} +0 -0
  197. /package/app/dist/assets/{github-dark-dimmed-CmtqpPJ-.js → github-dark-dimmed-BvtnYOMy.js} +0 -0
  198. /package/app/dist/assets/{github-dark-high-contrast-fSfmrZcC.js → github-dark-high-contrast-CQhqa0EF.js} +0 -0
  199. /package/app/dist/assets/{github-light-default-lIytXXhR.js → github-light-default-9rPElOua.js} +0 -0
  200. /package/app/dist/assets/{github-light-high-contrast-BRrjFb7n.js → github-light-high-contrast-Drx2T_ea.js} +0 -0
  201. /package/app/dist/assets/{github-light-BZjUqfZl.js → github-light-t2gQwbnC.js} +0 -0
  202. /package/app/dist/assets/{gleam-DALMDpNs.js → gleam-BjFNd70h.js} +0 -0
  203. /package/app/dist/assets/{gn-DGjqrYN9.js → gn-MXj_EEiV.js} +0 -0
  204. /package/app/dist/assets/{gnuplot-BYckvgQI.js → gnuplot-C40vWoS_.js} +0 -0
  205. /package/app/dist/assets/{go-JycvP538.js → go-B2Qj-jpc.js} +0 -0
  206. /package/app/dist/assets/{groovy-D5qMRONT.js → groovy-42TXi0JD.js} +0 -0
  207. /package/app/dist/assets/{gruvbox-dark-hard-M1dj1e6V.js → gruvbox-dark-hard-DaxQoAo9.js} +0 -0
  208. /package/app/dist/assets/{gruvbox-dark-medium-cqq_ncQu.js → gruvbox-dark-medium-CR6ynfxn.js} +0 -0
  209. /package/app/dist/assets/{gruvbox-dark-soft-B4QwL2a9.js → gruvbox-dark-soft-QoKQNR_B.js} +0 -0
  210. /package/app/dist/assets/{gruvbox-light-hard-DLayMKOQ.js → gruvbox-light-hard-C3-JuKAe.js} +0 -0
  211. /package/app/dist/assets/{gruvbox-light-medium-D52XgPKf.js → gruvbox-light-medium-676URJw_.js} +0 -0
  212. /package/app/dist/assets/{gruvbox-light-soft-Dola3KdD.js → gruvbox-light-soft-BGpHIYJO.js} +0 -0
  213. /package/app/dist/assets/{haskell-ys7wPPEd.js → haskell-C5VEzHiR.js} +0 -0
  214. /package/app/dist/assets/{haxe-94kiChn7.js → haxe-DxCG7g2C.js} +0 -0
  215. /package/app/dist/assets/{hcl-DmHt_-wq.js → hcl-B-KEcm-b.js} +0 -0
  216. /package/app/dist/assets/{hjson-xMmoJ0Gx.js → hjson-KcqWy6wG.js} +0 -0
  217. /package/app/dist/assets/{hlsl-b-Pskdze.js → hlsl-CU9ay1Rj.js} +0 -0
  218. /package/app/dist/assets/{horizon-BKMqttiR.js → horizon-BDDUNMOh.js} +0 -0
  219. /package/app/dist/assets/{horizon-bright-HNkBlnm5.js → horizon-bright-Km86OX7k.js} +0 -0
  220. /package/app/dist/assets/{houston-BkBSBSOQ.js → houston-CnK3oLKP.js} +0 -0
  221. /package/app/dist/assets/{hy-DKl1XhBq.js → hy-9kqolRdI.js} +0 -0
  222. /package/app/dist/assets/{imba-DPxkOTAg.js → imba-AWBATAYY.js} +0 -0
  223. /package/app/dist/assets/{ini-lkLGq_1x.js → ini-P5JLg6LV.js} +0 -0
  224. /package/app/dist/assets/{json5-Cy6ypJuJ.js → json5-Cj9weIvR.js} +0 -0
  225. /package/app/dist/assets/{jsonc-Cw2ugYAK.js → jsonc-CwVZHrLL.js} +0 -0
  226. /package/app/dist/assets/{jsonl-Dp5_qBVH.js → jsonl-CfYcxfNz.js} +0 -0
  227. /package/app/dist/assets/{jsonnet-BTbmg_-u.js → jsonnet-B351KcBZ.js} +0 -0
  228. /package/app/dist/assets/{jssm-CnT7nPea.js → jssm-CVNVxyp8.js} +0 -0
  229. /package/app/dist/assets/{kanagawa-dragon-CxsBnuhV.js → kanagawa-dragon-Bg-BKRuP.js} +0 -0
  230. /package/app/dist/assets/{kanagawa-lotus-vHdxDDOS.js → kanagawa-lotus-CVGoMXw8.js} +0 -0
  231. /package/app/dist/assets/{kanagawa-wave-CIkfTKWk.js → kanagawa-wave-CuNbEAGB.js} +0 -0
  232. /package/app/dist/assets/{kdl-BwK60g80.js → kdl-B2a5Hdo5.js} +0 -0
  233. /package/app/dist/assets/{kotlin-Dbd9Vi-v.js → kotlin-CwntYu9G.js} +0 -0
  234. /package/app/dist/assets/{kusto-BuTk9usc.js → kusto-DzqQhEgS.js} +0 -0
  235. /package/app/dist/assets/{laserwave-C0wf_d3o.js → laserwave-Bf5KiZGG.js} +0 -0
  236. /package/app/dist/assets/{lean-CYAW8bRN.js → lean-CLemLjY9.js} +0 -0
  237. /package/app/dist/assets/{less-D4uen21c.js → less-Dycz37IB.js} +0 -0
  238. /package/app/dist/assets/{light-plus-oqYyWKEE.js → light-plus-BISup5vO.js} +0 -0
  239. /package/app/dist/assets/{llvm-Z1xJzteV.js → llvm-B3vA1z1w.js} +0 -0
  240. /package/app/dist/assets/{log-BGUxlsk3.js → log-CM4eTPwH.js} +0 -0
  241. /package/app/dist/assets/{logo-wVUhvQ1b.js → logo-DCYIDlXZ.js} +0 -0
  242. /package/app/dist/assets/{luau-rPFZzCmq.js → luau-B3LrvOEt.js} +0 -0
  243. /package/app/dist/assets/{make-BmPf6m0P.js → make-Bep3F-fA.js} +0 -0
  244. /package/app/dist/assets/{markdown-AseU6zcW.js → markdown-BObkjWCp.js} +0 -0
  245. /package/app/dist/assets/{material-theme-darker-VPEo3Sem.js → material-theme-darker-DM1OIivA.js} +0 -0
  246. /package/app/dist/assets/{material-theme-6_W6rQhR.js → material-theme-jZt3rhQh.js} +0 -0
  247. /package/app/dist/assets/{material-theme-lighter-CUhzCcZ9.js → material-theme-lighter-HtgpH1FU.js} +0 -0
  248. /package/app/dist/assets/{material-theme-ocean-B2JdsaGb.js → material-theme-ocean-CeFuXoRG.js} +0 -0
  249. /package/app/dist/assets/{material-theme-palenight-DhY-sklA.js → material-theme-palenight-BMg4YxS6.js} +0 -0
  250. /package/app/dist/assets/{matlab-BOj_BDQv.js → matlab-BjvFQgI4.js} +0 -0
  251. /package/app/dist/assets/{mdx-Cm6cDkDI.js → mdx-DnKU9cqA.js} +0 -0
  252. /package/app/dist/assets/{mermaid-DLO-R4hv.js → mermaid-CH8Qvaqo.js} +0 -0
  253. /package/app/dist/assets/{min-dark-D34a_pX7.js → min-dark-B95jFnY0.js} +0 -0
  254. /package/app/dist/assets/{min-light-Cdd4KORE.js → min-light-CqwYUont.js} +0 -0
  255. /package/app/dist/assets/{mipsasm-DYpHF-GA.js → mipsasm-OAAwCDEg.js} +0 -0
  256. /package/app/dist/assets/{mojo-DqYVFv_G.js → mojo-COx3BOEA.js} +0 -0
  257. /package/app/dist/assets/{monokai-CDR4sQ2n.js → monokai-C988KBom.js} +0 -0
  258. /package/app/dist/assets/{moonbit-DRKee9wk.js → moonbit-ChOfdbnC.js} +0 -0
  259. /package/app/dist/assets/{move-DbRk6Vn9.js → move-jwG4QUY4.js} +0 -0
  260. /package/app/dist/assets/{narrat-IOfmaXfb.js → narrat-Bv3slmdi.js} +0 -0
  261. /package/app/dist/assets/{nextflow-groovy-EYl0c2BQ.js → nextflow-groovy-CYeLXiaP.js} +0 -0
  262. /package/app/dist/assets/{night-owl-yQJ3-I0I.js → night-owl-SjOLjRtB.js} +0 -0
  263. /package/app/dist/assets/{night-owl-light-Bedht9b4.js → night-owl-light-DHrEzBAj.js} +0 -0
  264. /package/app/dist/assets/{nix-C2IovEl2.js → nix-CcOD1khX.js} +0 -0
  265. /package/app/dist/assets/{nord-BjZ63GNL.js → nord-BGjNHkRW.js} +0 -0
  266. /package/app/dist/assets/{nushell-BflTrRB5.js → nushell-GFe6C8D1.js} +0 -0
  267. /package/app/dist/assets/{objective-c-GRClK1S7.js → objective-c-Da4gtNmU.js} +0 -0
  268. /package/app/dist/assets/{objective-cpp-l3qYw-v5.js → objective-cpp-Du3a_PKx.js} +0 -0
  269. /package/app/dist/assets/{ocaml-BBDyhyMH.js → ocaml-4v1g0DKj.js} +0 -0
  270. /package/app/dist/assets/{odin-jCJ7Js99.js → odin-C2CG6fMn.js} +0 -0
  271. /package/app/dist/assets/{one-dark-pro-PIx2Diul.js → one-dark-pro-BwcbXd-T.js} +0 -0
  272. /package/app/dist/assets/{one-light-BFMEz49S.js → one-light-BOQW5zin.js} +0 -0
  273. /package/app/dist/assets/{openscad-Drf0LgCX.js → openscad-Bs2SxlcB.js} +0 -0
  274. /package/app/dist/assets/{pascal-BT2XAUTl.js → pascal-B6AuHgs_.js} +0 -0
  275. /package/app/dist/assets/{pierre-dark-BMm5HxPQ.js → pierre-dark-CRPkZhl3.js} +0 -0
  276. /package/app/dist/assets/{pierre-light-DyzEot4Q.js → pierre-light-BT7AHM04.js} +0 -0
  277. /package/app/dist/assets/{pkl-ML-dWShO.js → pkl-BuPFXprX.js} +0 -0
  278. /package/app/dist/assets/{plastic-BFI-Z5Z2.js → plastic-BiAROaFC.js} +0 -0
  279. /package/app/dist/assets/{plsql-0vd5cLro.js → plsql-DQ_z5ed2.js} +0 -0
  280. /package/app/dist/assets/{po-CbZ_uqQA.js → po-BvHij3iO.js} +0 -0
  281. /package/app/dist/assets/{poimandres-Cayhd01L.js → poimandres-BbdNMHGS.js} +0 -0
  282. /package/app/dist/assets/{polar-C4hfV8Nc.js → polar-p_EVOYp2.js} +0 -0
  283. /package/app/dist/assets/{postcss-osFUbTLw.js → postcss-BVVH-mhK.js} +0 -0
  284. /package/app/dist/assets/{powerquery-CTlGUQPj.js → powerquery-D2htabf9.js} +0 -0
  285. /package/app/dist/assets/{powershell-DyZsOmuq.js → powershell-NfY3J8Uu.js} +0 -0
  286. /package/app/dist/assets/{prisma-SS92PO_I.js → prisma-CMeP8UTm.js} +0 -0
  287. /package/app/dist/assets/{prolog-B1O1NNVC.js → prolog-Cc9yvHML.js} +0 -0
  288. /package/app/dist/assets/{proto-BWu3eZTs.js → proto-CNBX21YV.js} +0 -0
  289. /package/app/dist/assets/{puppet-tvtRVdr6.js → puppet-ZnM2F-kY.js} +0 -0
  290. /package/app/dist/assets/{purescript-Dtbpb7D-.js → purescript-nyLIIaTP.js} +0 -0
  291. /package/app/dist/assets/{python-Dlk0Acio.js → python-Dt6SBvxD.js} +0 -0
  292. /package/app/dist/assets/{qmldir-B-iEOngH.js → qmldir-BDEiw2QJ.js} +0 -0
  293. /package/app/dist/assets/{qss-Ba0p-aHw.js → qss-B8ZOZZRM.js} +0 -0
  294. /package/app/dist/assets/{racket-BXDsxf2U.js → racket-emNFhxM0.js} +0 -0
  295. /package/app/dist/assets/{raku-Dw1WWFXK.js → raku-M_VGm79k.js} +0 -0
  296. /package/app/dist/assets/{red-BC3Ds49b.js → red-BcYVa2Jk.js} +0 -0
  297. /package/app/dist/assets/{reg-DXFHGaM4.js → reg-rRGLqGjW.js} +0 -0
  298. /package/app/dist/assets/{rel-Dc5_Ytx2.js → rel-DqcQFa7Q.js} +0 -0
  299. /package/app/dist/assets/{riscv-ZgswiWij.js → riscv-CanSyeO8.js} +0 -0
  300. /package/app/dist/assets/{ron-YghabWAH.js → ron-BQ46iNCb.js} +0 -0
  301. /package/app/dist/assets/{rose-pine-ByWLnVr3.js → rose-pine-BuTm62Vj.js} +0 -0
  302. /package/app/dist/assets/{rose-pine-dawn-DBmeySrz.js → rose-pine-dawn-B670NuiP.js} +0 -0
  303. /package/app/dist/assets/{rose-pine-moon-B9J-N3nK.js → rose-pine-moon-6KoQonQX.js} +0 -0
  304. /package/app/dist/assets/{rosmsg-DTKmAsVH.js → rosmsg-Bw0HfGe_.js} +0 -0
  305. /package/app/dist/assets/{rust-nfXwuE6F.js → rust-D83UuV7F.js} +0 -0
  306. /package/app/dist/assets/{sass-CbRjkld3.js → sass-CE2YZJdE.js} +0 -0
  307. /package/app/dist/assets/{scala-BzD3eypx.js → scala-CyYhociv.js} +0 -0
  308. /package/app/dist/assets/{scheme-D4d1PV1y.js → scheme-BrRWQ1yX.js} +0 -0
  309. /package/app/dist/assets/{sdbl-Cf-Ydnvx.js → sdbl-CtZR2I6R.js} +0 -0
  310. /package/app/dist/assets/{slack-dark-MszIyPZ2.js → slack-dark-nxsbRL6U.js} +0 -0
  311. /package/app/dist/assets/{slack-ochin-tQ3Q0gE9.js → slack-ochin-Cx2HX71B.js} +0 -0
  312. /package/app/dist/assets/{smalltalk-_uWoArwn.js → smalltalk-DGeW9hbd.js} +0 -0
  313. /package/app/dist/assets/{snazzy-light-9sniMEk5.js → snazzy-light-508iEJO_.js} +0 -0
  314. /package/app/dist/assets/{solarized-dark-CdD0Hxzv.js → solarized-dark-TCkigWjM.js} +0 -0
  315. /package/app/dist/assets/{solarized-light-C-nsEdqF.js → solarized-light-R2Rcjqww.js} +0 -0
  316. /package/app/dist/assets/{solidity-D6uC-xwP.js → solidity-46G7JVSr.js} +0 -0
  317. /package/app/dist/assets/{splunk-LQYHRu14.js → splunk-DKgoBk9o.js} +0 -0
  318. /package/app/dist/assets/{ssh-config-B7BUl8Rd.js → ssh-config-JoXpWa3y.js} +0 -0
  319. /package/app/dist/assets/{stylus-Byjxdx_q.js → stylus-BPw8WnNN.js} +0 -0
  320. /package/app/dist/assets/{swift-BexLlMrU.js → swift-Ce2Nlw8Q.js} +0 -0
  321. /package/app/dist/assets/{synthwave-84-BxMBwQMS.js → synthwave-84-Br2i7yYN.js} +0 -0
  322. /package/app/dist/assets/{system-verilog-DVGwm0mw.js → system-verilog-Dkc37EdI.js} +0 -0
  323. /package/app/dist/assets/{systemd-H2IT3-p5.js → systemd-CcJTFvpw.js} +0 -0
  324. /package/app/dist/assets/{talonscript-mKZIGM8n.js → talonscript-CHxC2PG4.js} +0 -0
  325. /package/app/dist/assets/{tasl-B7he_Ugr.js → tasl-woKXKJkx.js} +0 -0
  326. /package/app/dist/assets/{tcl-5mT3RxHH.js → tcl-6FTtarFH.js} +0 -0
  327. /package/app/dist/assets/{terraform-BZP0GLsT.js → terraform-DHx5Kdyi.js} +0 -0
  328. /package/app/dist/assets/{tokyo-night-CTPVdZt9.js → tokyo-night-BQsIhA-A.js} +0 -0
  329. /package/app/dist/assets/{toml-CTFA98he.js → toml-BCbG8Uu3.js} +0 -0
  330. /package/app/dist/assets/{tsv-BayJtYdY.js → tsv-Bfk0YRxN.js} +0 -0
  331. /package/app/dist/assets/{turtle-TVCBh_kY.js → turtle-DsCF_r1D.js} +0 -0
  332. /package/app/dist/assets/{typespec-BUvaJDLF.js → typespec-tsneGPKg.js} +0 -0
  333. /package/app/dist/assets/{typst-8NBaY7Ec.js → typst-BcQNhVIE.js} +0 -0
  334. /package/app/dist/assets/{v-VihyTigi.js → v-CPbK5D5K.js} +0 -0
  335. /package/app/dist/assets/{vala-DyFAPyX6.js → vala-CTmcnleK.js} +0 -0
  336. /package/app/dist/assets/{vb-Dg1Iqi4J.js → vb-iQRhK9Tp.js} +0 -0
  337. /package/app/dist/assets/{verilog-D2Xc-vhD.js → verilog-BxRFSB3_.js} +0 -0
  338. /package/app/dist/assets/{vesper-DJbtqYNr.js → vesper-D_U9vezF.js} +0 -0
  339. /package/app/dist/assets/{vhdl-CU3BVeE7.js → vhdl-D4h06VsC.js} +0 -0
  340. /package/app/dist/assets/{viml-hG2shuOW.js → viml-DMcwh6Y2.js} +0 -0
  341. /package/app/dist/assets/{vitesse-black-DbG2gsc0.js → vitesse-black-Dk8H62LF.js} +0 -0
  342. /package/app/dist/assets/{vitesse-dark-B6WV4xXH.js → vitesse-dark-BuiSS132.js} +0 -0
  343. /package/app/dist/assets/{vitesse-light-DC1pdD02.js → vitesse-light-DfdaVJLv.js} +0 -0
  344. /package/app/dist/assets/{vyper-C1wojIuk.js → vyper-DfAPtbtc.js} +0 -0
  345. /package/app/dist/assets/{wasm-C6Y0s02M.js → wasm-ByDQ9GrP.js} +0 -0
  346. /package/app/dist/assets/{wasm-y20ImDym.js → wasm-CfmxG3B2.js} +0 -0
  347. /package/app/dist/assets/{wenyan-BG5vPQF0.js → wenyan-DNkN8oQc.js} +0 -0
  348. /package/app/dist/assets/{wgsl-DrVb-Cub.js → wgsl-Bggw1Yhv.js} +0 -0
  349. /package/app/dist/assets/{wikitext-PRC4s8sH.js → wikitext-zXy-4mpr.js} +0 -0
  350. /package/app/dist/assets/{wit-ChW5qvg_.js → wit--vc2X9vR.js} +0 -0
  351. /package/app/dist/assets/{wolfram-B8mKuZSQ.js → wolfram-Dr60-Zy4.js} +0 -0
  352. /package/app/dist/assets/{xterm-DGJHbKBQ.js → xterm-Ba9eaFdZ.js} +0 -0
  353. /package/app/dist/assets/{zenscript-C-jEPC9j.js → zenscript-Cf2Qp-oj.js} +0 -0
  354. /package/app/dist/assets/{zig-EbnRGjcz.js → zig-DgUQodsP.js} +0 -0
@@ -0,0 +1 @@
1
+ import{Bi as e,Bt as t,Hi as n,Kt as r,Ni as i,Ta as a,Vi as o,Wt as s,Zt as c,gr as l,ja as u,na as d,t as f,ta as ee,tr as p}from"./page-shell-CaMV_G2I.js";import{Mt as m,c as h,f as g,h as _,n as v,u as y}from"./effective-hosts-BS3g3uzj.js";import{a as b,c as te,i as x,o as S,p as C,r as w,s as T,t as E}from"./dialog-JFJupr8S.js";import{d as ne,f as D,i as re,l as ie}from"./mutation-errors-DgGC9CkY.js";import{ln as O,un as ae}from"./index-DbhAkEqX.js";import{i as k,n as oe,r as A,t as j}from"./settings-section-BgEyrMBV.js";import{a as M,c as N,i as P,o as F,r as I,s as L}from"./workspace-open-target-preference-Dve5Zih1.js";var R=u(a(),1),z=`size-2 shrink-0 rounded-full ring-1 ring-inset transition-all bg-success ring-success/25 shadow-[0_0_0_4px_color-mix(in_oklch,var(--color-success)_16%,transparent)]`,B=d();function V({target:e,pending:t,onOpenChange:n,onDelete:r}){return(0,B.jsx)(E,{open:e!==null,onOpenChange:n,children:(0,B.jsx)(w,{children:e?(0,B.jsx)(H,{target:e,pending:t,onDelete:r}):null})})}function H({target:e,pending:t,onDelete:n}){return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(S,{children:[(0,B.jsx)(T,{children:`Remove host?`}),(0,B.jsx)(x,{children:`Remove "${e.name}" and all of its project sources? This cannot be undone.`})]}),(0,B.jsx)(b,{children:(0,B.jsx)(i,{type:`button`,variant:`destructive`,disabled:t,onClick:()=>n(e.id),children:`Remove host`})})]})}function se({target:e,pending:t,onOpenChange:n,onRename:r}){return(0,B.jsx)(E,{open:e!==null,onOpenChange:n,children:(0,B.jsx)(w,{children:e?(0,B.jsx)(U,{target:e,pending:t,onRename:r},e.id):null})})}function U({target:e,pending:t,onRename:n}){let r=(0,R.useId)(),[a,o]=(0,R.useState)(e.currentName),[s,c]=(0,R.useState)(null);return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(S,{children:[(0,B.jsx)(T,{children:`Rename host`}),(0,B.jsx)(x,{children:`Choose a new name for this host.`})]}),(0,B.jsxs)(`form`,{className:`space-y-4`,onSubmit:r=>{if(r.preventDefault(),t)return;let i=a.trim();if(!i){c(`Host name cannot be empty.`);return}n(e.id,i)},children:[(0,B.jsxs)(`div`,{className:`space-y-2`,children:[(0,B.jsx)(C,{id:r,"aria-label":`Host name`,value:a,autoFocus:!0,disabled:t,onChange:e=>{o(e.target.value),s&&c(null)}}),s?(0,B.jsx)(`p`,{className:`text-sm text-destructive`,children:s}):null]}),(0,B.jsx)(b,{children:(0,B.jsx)(i,{type:`submit`,disabled:t,children:`Rename host`})})]})]})}function ce({open:e,onOpenChange:t}){return(0,B.jsx)(E,{open:e,onOpenChange:t,children:(0,B.jsx)(w,{className:`sm:max-w-2xl`,children:(0,B.jsx)(W,{})})})}function W(){return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(S,{children:[(0,B.jsx)(T,{children:`Unable to add new host`}),(0,B.jsx)(x,{children:`You need to specify the URL that allows the new host to talk to the server.`})]}),(0,B.jsxs)(`div`,{className:`min-w-0 space-y-2 text-sm text-foreground`,children:[(0,B.jsx)(`p`,{children:`Run this on the server machine, then restart bb:`}),(0,B.jsx)(`pre`,{className:`min-w-0 overflow-x-auto rounded-md border border-border bg-surface-recessed px-3 py-2 font-mono text-xs leading-5`,children:(0,B.jsx)(`code`,{children:`npx bb-app config BB_APP_URL http://<your-machine>.<tailnet>.ts.net:38886`})})]})]})}function G(e){return new Date(e).toLocaleTimeString(void 0,{hour:`numeric`,minute:`2-digit`})}function le({host:e,open:t,target:n,onOpenChange:r}){let i=t&&n!==null;return(0,B.jsx)(E,{open:i,onOpenChange:r,children:(0,B.jsx)(w,{className:`sm:max-w-2xl`,children:i&&n?(0,B.jsx)(K,{host:e,target:n}):null})})}function K({host:t,target:n}){let[r,i]=(0,R.useState)(()=>n.expiresAt<=Date.now()),a=t?.status===`connected`,o=!a&&!r,s=a?`Host connected`:r?`Join command expired`:`Waiting for host`;return(0,R.useEffect)(()=>{let e=n.expiresAt-Date.now();if(e<=0){i(!0);return}i(!1);let t=window.setTimeout(()=>i(!0),e);return()=>window.clearTimeout(t)},[n.expiresAt]),(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)(S,{children:[(0,B.jsx)(T,{children:`New host`}),(0,B.jsx)(x,{children:`Run this command from the new host.`})]}),(0,B.jsxs)(`div`,{className:`min-w-0 space-y-3`,children:[(0,B.jsxs)(`div`,{className:`relative min-w-0 rounded-md border border-border bg-surface-recessed`,children:[(0,B.jsx)(`pre`,{className:`max-h-56 min-w-0 overflow-y-auto whitespace-pre-wrap break-all px-3 py-2.5 pr-10 text-xs leading-5`,children:(0,B.jsx)(`code`,{children:n.joinCommand})}),(0,B.jsx)(D,{text:n.joinCommand,label:`Copy host command`,className:`absolute right-2 top-2`})]}),(0,B.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 text-xs text-muted-foreground`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,children:[a?(0,B.jsx)(e,{name:`CircleCheck`,className:`size-4 text-success`,"aria-hidden":`true`}):r?(0,B.jsx)(e,{name:`AlertCircle`,className:`size-4 text-destructive`,"aria-hidden":`true`}):null,(0,B.jsx)(`span`,{className:o?`animate-shine font-medium`:`font-medium text-foreground`,children:s}),o?(0,B.jsxs)(`span`,{children:[`· Expires at `,G(n.expiresAt)]}):null]})]})]})}var q={antigravity:`Antigravity`,cursor:`Cursor`,"default-app":`Default App`,finder:`Finder`,ghostty:`Ghostty`,iterm2:`iTerm2`,"sublime-text":`Sublime Text`,terminal:`Terminal`,vscode:`VS Code`,windsurf:`Windsurf`,xcode:`Xcode`,zed:`Zed`};function J(e){return q[e]}var ue=[{label:`System`,value:`system`},{label:`Light`,value:`light`},{label:`Dark`,value:`dark`}],de={dark:`Dark`,light:`Light`,system:`System`},Y={capability:`openDirectory`,emptyDescription:`No local app can open directories.`,label:`Directory default`},X={capability:`openFile`,emptyDescription:`No local app can open files.`,label:`File default`},Z=`This default can be changed when the local host is connected.`;function Q({definition:t,hasDaemon:n,onTargetChange:r,preferredTargetId:a,targets:s}){let c=(0,R.useMemo)(()=>s.filter(e=>P({capability:t.capability,target:e})),[t.capability,s]),l=(0,R.useMemo)(()=>I({capability:t.capability,preferredTargetId:a,targets:s}),[t.capability,a,s]),u=n?c.length===0?t.emptyDescription:null:Z,d=l?.id??a,f=l?.label??(a?J(a):`Unavailable`);return(0,B.jsx)(k,{label:t.label,children:(0,B.jsxs)(h,{children:[(0,B.jsx)(_,{asChild:!0,children:(0,B.jsxs)(i,{variant:`outline`,size:`sm`,className:`w-full justify-between border-border/60 bg-card sm:w-48`,"aria-label":t.label,children:[(0,B.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[d?(0,B.jsx)(N,{targetId:d,className:`size-5`}):null,(0,B.jsx)(`span`,{className:`min-w-0 truncate`,children:f})]}),(0,B.jsx)(e,{name:`ChevronDown`,className:`size-3.5 text-muted-foreground`})]})}),(0,B.jsx)(y,{align:`end`,className:`w-48`,children:u?(0,B.jsx)(`div`,{role:`note`,className:`px-2 py-[0.3125rem] text-xs leading-snug text-foreground`,children:u}):c.map(t=>(0,B.jsxs)(g,{onSelect:()=>r(t.id),children:[(0,B.jsx)(N,{targetId:t.id,className:`size-5`}),(0,B.jsx)(`span`,{className:`min-w-0 truncate`,children:t.label}),(0,B.jsx)(e,{name:`Check`,className:o(`ml-auto`,l?.id!==t.id&&`opacity-0`,m)})]},t.id))})]})})}function fe({directoryTargetId:e,fileTargetId:t,hasDaemon:n,onDirectoryTargetChange:r,onFileTargetChange:i,targets:a}){return(0,B.jsx)(A,{title:`Open File Preferences`,children:(0,B.jsxs)(`div`,{className:`space-y-4`,children:[(0,B.jsx)(Q,{definition:Y,hasDaemon:n,onTargetChange:r,preferredTargetId:e,targets:a}),(0,B.jsx)(Q,{definition:X,hasDaemon:n,onTargetChange:i,preferredTargetId:t,targets:a})]})})}function $(){let a=ne(),{hasDaemon:u}=te(),{workspaceOpenTargets:d}=L({enabled:u}),[b,x]=F(),[S,C]=M(),{data:w=[],isLoading:T}=v(),E=ee(),[D,N]=(0,R.useState)(null),[P,I]=(0,R.useState)(null),[H,U]=(0,R.useState)(null),[W,G]=(0,R.useState)(!1),[K,q]=(0,R.useState)(!1),J=n({meta:{errorMessage:`Failed to rename host.`},mutationFn:({id:e,name:t})=>p(e,{name:t}),onSuccess:()=>{O({queryClient:E}),N(null)}}),Y=n({meta:{errorMessage:`Failed to remove host.`},mutationFn:({id:e})=>c(e),onSuccess:()=>{ae({queryClient:E}),I(null)}}),X=n({meta:{errorMessage:`Failed to create host join command`,showErrorToast:!1},mutationFn:()=>r(),onSuccess:e=>{O({queryClient:E}),U(e),G(!0)},onError:e=>{if(e instanceof t&&e.code===`app_url_required`){q(!0);return}re({error:e,fallbackMessage:`Failed to create host join command`})}}),Z=n({meta:{errorMessage:`Failed to cancel host join.`},mutationFn:({id:e})=>s(e),onSuccess:(e,t)=>{O({queryClient:E}),U(e=>e?.hostId===t.id?null:e),G(!1)}}),Q=H===null?null:w.find(e=>e.id===H.hostId)??null,$=X.isPending||Z.isPending;async function pe(){if(H!==null&&H.expiresAt>Date.now()&&Q?.status!==`connected`){G(!0);return}if(H!==null&&Q?.status!==`connected`)try{await Z.mutateAsync({id:H.hostId})}catch{return}X.mutate()}(0,R.useEffect)(()=>{if(!W||Q?.status!==`connected`)return;let e=window.setTimeout(()=>{U(null),G(!1)},1500);return()=>window.clearTimeout(e)},[W,Q?.status]);function me(e){if(e){G(!0);return}H!==null&&Q?.status!==`connected`&&Z.mutate({id:H.hostId}),U(null),G(!1)}return(0,B.jsxs)(f,{contentClassName:`pt-4 md:pt-5`,children:[(0,B.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-6`,children:[(0,B.jsx)(A,{title:`Appearance`,children:(0,B.jsx)(k,{label:`Theme`,children:(0,B.jsxs)(h,{children:[(0,B.jsx)(_,{asChild:!0,children:(0,B.jsxs)(i,{variant:`outline`,size:`sm`,className:`w-full justify-between border-border/60 bg-card sm:w-48`,"aria-label":`Theme`,children:[de[a],(0,B.jsx)(e,{name:`ChevronDown`,className:`size-3.5 text-muted-foreground`})]})}),(0,B.jsx)(y,{align:`end`,className:`w-48`,children:ue.map(t=>(0,B.jsxs)(g,{onSelect:()=>ie(t.value),children:[t.label,(0,B.jsx)(e,{name:`Check`,className:o(`ml-auto`,a!==t.value&&`opacity-0`,m)})]},t.value))})]})})}),(0,B.jsx)(fe,{directoryTargetId:b,fileTargetId:S,hasDaemon:u,onDirectoryTargetChange:x,onFileTargetChange:C,targets:d}),(0,B.jsxs)(`div`,{className:`space-y-2`,children:[(0,B.jsx)(A,{title:`Hosts`,children:T?(0,B.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):(0,B.jsx)(oe,{children:w.length===0?(0,B.jsx)(j,{children:(0,B.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`No registered hosts.`})}):w.map(t=>{let n=t.status===`connected`;return(0,B.jsxs)(j,{children:[(0,B.jsxs)(`span`,{className:`min-w-0 flex-1 truncate`,children:[t.name,(0,B.jsx)(`span`,{className:`ml-1.5 text-xs text-muted-foreground`,children:t.id})]}),n?(0,B.jsx)(`span`,{className:z,title:`Connected`}):t.lastSeenAt===null?(0,B.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:`Never connected`}):(0,B.jsxs)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:[`Offline · `,l(t.lastSeenAt)]}),(0,B.jsxs)(h,{children:[(0,B.jsx)(_,{asChild:!0,children:(0,B.jsx)(i,{variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0`,"aria-label":`Host actions`,children:(0,B.jsx)(e,{name:`MoreHorizontal`,className:`size-4`})})}),(0,B.jsxs)(y,{align:`end`,className:`w-40`,children:[(0,B.jsx)(g,{onSelect:()=>N({id:t.id,currentName:t.name}),children:`Rename`}),(0,B.jsx)(g,{className:`text-destructive focus:text-destructive`,onSelect:()=>I({id:t.id,name:t.name}),children:`Remove`})]})]})]},t.id)})})}),T?null:(0,B.jsx)(`div`,{className:`flex justify-start`,children:(0,B.jsxs)(i,{type:`button`,size:`sm`,variant:`ghost`,className:`h-auto justify-start gap-1.5 px-2 py-1 text-muted-foreground`,disabled:$,onClick:()=>{pe()},children:[(0,B.jsx)(e,{name:`Plus`,className:`size-3.5`}),`Add another host`]})})]})]}),(0,B.jsx)(se,{target:D,pending:J.isPending,onOpenChange:e=>{e||N(null)},onRename:(e,t)=>J.mutate({id:e,name:t})}),(0,B.jsx)(V,{target:P,pending:Y.isPending,onOpenChange:e=>{e||I(null)},onDelete:e=>Y.mutate({id:e})}),(0,B.jsx)(le,{open:W,target:H,host:Q,onOpenChange:me}),(0,B.jsx)(ce,{open:K,onOpenChange:q})]})}export{$ as AppSettingsView};
@@ -0,0 +1 @@
1
+ import{$t as e,An as t,Bi as n,Hi as r,Ni as i,Ta as a,Ui as o,Vi as s,Xn as c,ja as l,lt as u,na as d,t as f,ta as p}from"./page-shell-CaMV_G2I.js";import{n as m}from"./effective-hosts-BS3g3uzj.js";import{n as h}from"./chunk-JZWAC4HX-CmnT162V.js";import{E as g,an as _,dn as v,on as y}from"./index-DbhAkEqX.js";import{n as b,r as x,t as S}from"./split-button-PlurXMEc.js";import{t as C}from"./pill-Ds03GLze.js";var w=l(a(),1),T=d(),E=1,D=[.5,1,2,5,10],O=`block min-w-0 truncate text-foreground underline underline-offset-2 transition-colors hover:text-foreground/80`;function k(e){return`${e}×`}function A(e){return new Date(e).toLocaleString()}function j(){let a=p(),[l,d]=(0,w.useState)(()=>new Set),j=e=>{d(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},M=o({queryKey:u(),queryFn:()=>t()}),{data:N=[]}=m(),P=(0,w.useMemo)(()=>new Map(N.map(e=>[e.id,e.name])),[N]),F=r({mutationFn:t=>e(t),onSuccess:()=>{v({queryClient:a})}}),I=r({mutationFn:({captureId:e,speed:t})=>c(e,{speed:t}),onSuccess:e=>{window.open(y({projectId:e.projectId,threadId:e.replayThreadId}),`_blank`,`noopener`)}}),L=M.data?.captures??[];return(0,T.jsx)(f,{contentClassName:`pt-4 md:pt-5`,children:(0,T.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-4`,children:[(0,T.jsxs)(`div`,{className:`flex items-start gap-2 rounded-md border border-border bg-surface-recessed px-3 py-2 text-sm text-muted-foreground`,children:[(0,T.jsx)(n,{name:`Info`,className:`mt-0.5 size-4 shrink-0`}),(0,T.jsxs)(`p`,{className:`m-0`,children:[`Replay previously captured conversations in a fresh thread. To record new captures, create threads with`,` `,(0,T.jsx)(`code`,{className:`font-mono text-xs`,children:`BB_DEV_REPLAY_CAPTURE=true pnpm dev`}),`.`]})]}),M.isLoading?(0,T.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):M.isError?(0,T.jsx)(`p`,{className:`text-sm text-destructive`,children:`Failed to load replay captures.`}):L.length===0?(0,T.jsx)(`p`,{className:`rounded-md border border-dashed border-border px-3 py-4 text-sm text-muted-foreground`,children:`No replay captures found on any connected host.`}):(0,T.jsx)(`div`,{className:`space-y-1`,children:L.map(e=>{let t=e.userInputPreview||e.captureId,r=e.kind===`thread-start`,a=r?`new`:`follow-up`,o=g(e.providerId),c=o?.icon,u=l.has(e.captureId),d=F.isPending&&F.variables===e.captureId,f=I.isPending&&I.variables?.captureId===e.captureId,p=I.isError&&I.variables?.captureId===e.captureId,m=e.eventCounts.rawProviderEvents===0,v={label:`Start replay at ${k(E)}`,onSelect:()=>I.mutate({captureId:e.captureId,speed:E}),content:(0,T.jsxs)(T.Fragment,{children:[f?(0,T.jsx)(n,{name:`Spinner`,className:`size-3 animate-spin`}):null,`Replay`]})},w=D.map(t=>({label:`Start replay at ${k(t)}`,onSelect:()=>I.mutate({captureId:e.captureId,speed:t}),content:(0,T.jsx)(`span`,{children:k(t)})}));return(0,T.jsxs)(`div`,{children:[(0,T.jsxs)(`div`,{className:`flex h-9 items-center gap-3 text-sm`,children:[(0,T.jsxs)(`button`,{type:`button`,onClick:()=>j(e.captureId),"aria-expanded":u,className:`flex min-w-0 flex-1 items-center gap-2 text-left`,children:[(0,T.jsx)(n,{name:`ChevronRight`,className:s(`size-3 shrink-0 text-muted-foreground transition-transform`,u&&`rotate-90`)}),(0,T.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[(0,T.jsx)(`span`,{className:`min-w-0 max-w-xs truncate`,children:t}),e.title?(0,T.jsx)(`span`,{className:`min-w-0 truncate text-muted-foreground`,children:e.title}):null,(0,T.jsx)(C,{variant:r?`secondary`:`outline`,className:`shrink-0`,children:a}),c?(0,T.jsx)(c,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-label":o?.ariaLabel}):(0,T.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:e.providerId})]})]}),(0,T.jsx)(S,{disabled:f||m,primaryAction:v,secondaryActions:w,triggerLabel:`Choose replay speed`,mobileTitle:`Replay speed`}),(0,T.jsx)(i,{type:`button`,variant:`ghost`,size:`icon`,"aria-label":`Delete replay capture`,title:`Delete replay capture`,disabled:d,onClick:()=>F.mutate(e.captureId),className:`size-6`,children:d?(0,T.jsx)(n,{name:`Spinner`,className:`size-3 animate-spin`}):(0,T.jsx)(n,{name:`Trash2`,className:`size-3`})})]}),u?(0,T.jsxs)(`div`,{className:`space-y-2 pb-3 pt-2`,children:[(0,T.jsxs)(b,{children:[(0,T.jsx)(x,{label:`Capture`,valueClassName:`min-w-0 truncate font-mono`,children:e.captureId}),(0,T.jsx)(x,{label:`Host`,valueClassName:`min-w-0 truncate`,children:P.get(e.hostId)??e.hostId}),(0,T.jsx)(x,{label:`Provider`,valueClassName:`min-w-0 truncate`,children:e.providerId}),(0,T.jsx)(x,{label:`Project`,valueClassName:`min-w-0`,children:(0,T.jsx)(h,{to:_(e.projectId),className:O,children:e.projectName??e.projectId})}),(0,T.jsx)(x,{label:`Thread`,valueClassName:`min-w-0`,children:(0,T.jsx)(h,{to:y({projectId:e.projectId,threadId:e.threadId}),className:s(O,!e.title&&`font-mono`),children:e.title??e.threadId})}),(0,T.jsx)(x,{label:`Captured`,valueClassName:`min-w-0 truncate`,children:A(e.capturedAt)}),(0,T.jsx)(x,{label:`Raw events`,valueClassName:`min-w-0 truncate`,children:e.eventCounts.rawProviderEvents})]}),p?(0,T.jsx)(`p`,{className:`text-xs text-destructive`,children:`Failed to start replay.`}):null]}):null]},`${e.hostId}:${e.captureId}`)})})]})})}export{j as InternalReplayListView};
@@ -0,0 +1 @@
1
+ import{Mi as e,Ni as t,Ta as n,ja as r,na as i,t as a}from"./page-shell-CaMV_G2I.js";import{A as o,O as s,n as c}from"./thread-queries-DI7HoSpk.js";import{d as l,n as u}from"./chunk-JZWAC4HX-CmnT162V.js";import{on as d}from"./index-DbhAkEqX.js";import{t as f}from"./pill-Ds03GLze.js";import{t as p}from"./ThreadUnarchiveButton-2shfHri9.js";var m=r(n(),1),h=i(),g=[{value:`all`,label:`All`},{value:`manager`,label:`Managers`},{value:`managed`,label:`Managed`},{value:`unmanaged`,label:`Unmanaged`}];function _(e){return e.type===`manager`?`manager`:e.parentThreadId===null?null:`managed`}function v(){let{projectId:n}=l(),[r,i]=(0,m.useState)(`all`),v=c({projectId:n,kind:r}),y=s(),b=(0,m.useMemo)(()=>(v.data?.pages??[]).flat().filter(e=>e.archivedAt!=null),[v.data]);if(!n)return(0,h.jsx)(a,{contentClassName:`min-h-full items-center justify-center`,children:(0,h.jsx)(`p`,{className:`py-12 text-center text-sm text-muted-foreground`,children:`Project not found`})});let x=v.isPending,S=!x&&b.length===0;return(0,h.jsx)(a,{contentClassName:`pt-0`,children:(0,h.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl`,children:[(0,h.jsxs)(`div`,{className:`sticky top-0 z-10 -mx-4 bg-background px-4 pt-4 md:-mx-5 md:px-5 md:pt-5`,children:[(0,h.jsx)(e,{placement:`below`,tone:`background`}),(0,h.jsx)(`div`,{className:`inline-flex items-center gap-1 rounded-lg border border-border p-0.5`,role:`tablist`,"aria-label":`Filter archived threads`,children:g.map(e=>{let n=r===e.value;return(0,h.jsx)(t,{type:`button`,variant:`ghost`,size:`sm`,role:`tab`,"aria-selected":n,"aria-pressed":n,className:`h-7 rounded-md px-2 text-xs font-medium text-muted-foreground sm:px-3`,onClick:()=>i(e.value),children:e.label},e.value)})})]}),(0,h.jsxs)(`div`,{className:`space-y-3 pt-3`,children:[x?(0,h.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading archived threads…`}):S?(0,h.jsx)(`p`,{className:`rounded-md border border-dashed border-border px-3 py-4 text-sm text-muted-foreground`,children:`No archived threads yet.`}):(0,h.jsx)(`div`,{className:`space-y-1`,children:b.map(e=>{let t=_(e);return(0,h.jsxs)(`div`,{className:`group flex h-9 items-center gap-3 rounded-md px-3 text-sm transition-colors hover:bg-state-hover`,children:[(0,h.jsx)(u,{to:d({projectId:e.projectId,threadId:e.id}),className:`min-w-0 flex-1`,children:(0,h.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,h.jsx)(`span`,{className:`truncate`,children:o(e)}),t?(0,h.jsx)(f,{variant:`outline`,className:`shrink-0`,children:t}):null]})}),(0,h.jsx)(p,{isPending:y.isPending&&y.variables?.id===e.id,onUnarchive:()=>{y.mutate({id:e.id})},threadType:e.type,className:`hover:bg-accent-foreground/15`})]},e.id)})}),v.hasNextPage?(0,h.jsx)(t,{type:`button`,variant:`ghost`,onClick:()=>{v.fetchNextPage()},disabled:v.isFetchingNextPage,className:`h-9 w-full justify-center rounded-md px-3 text-sm font-normal text-muted-foreground`,children:v.isFetchingNextPage?`Loading…`:`Load more`}):null]})]})})}export{v as ProjectArchivedThreadsView};
@@ -0,0 +1 @@
1
+ import{Bi as e,Bn as t,Hi as n,Hr as r,Ni as i,Ta as a,Ur as o,ja as s,na as c,t as l,ta as u}from"./page-shell-CaMV_G2I.js";import{c as d,f,h as p,n as m,u as h}from"./effective-hosts-BS3g3uzj.js";import{d as g}from"./chunk-JZWAC4HX-CmnT162V.js";import{a as _,i as v,o as y,r as b,s as x,t as S}from"./dialog-JFJupr8S.js";import{a as C}from"./mutation-cache-effects-BX02KjBd.js";import{C as w,S as T,f as E,o as D,r as O,t as k}from"./localhost-badge-BESHcXM2.js";import{$t as A,Qt as j,cn as M,sn as N}from"./index-DbhAkEqX.js";import{n as P,r as F,t as I}from"./settings-section-BgEyrMBV.js";import{t as L}from"./pill-Ds03GLze.js";var R=s(a(),1),z=c();function B({target:e,pending:t,onOpenChange:n,onDelete:r}){return(0,z.jsx)(S,{open:e!==null,onOpenChange:n,children:(0,z.jsx)(b,{children:e?(0,z.jsx)(V,{target:e,pending:t,onDelete:r}):null})})}function V({target:e,pending:t,onDelete:n}){return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(y,{children:[(0,z.jsx)(x,{children:`Remove source?`}),(0,z.jsx)(v,{children:`Remove "${e.label}" from this project? This cannot be undone.`})]}),(0,z.jsx)(_,{children:(0,z.jsx)(i,{type:`button`,variant:`destructive`,disabled:t,onClick:()=>n(e.id),children:`Remove source`})})]})}function H({source:t,isLocalhostSource:n,isLocalPathInvalid:r,hostName:a,isEditPending:o,isOnlySource:s,onEditLocalPath:c,onRemove:l}){return(0,z.jsxs)(I,{children:[(0,z.jsx)(e,{name:O,className:`size-4 shrink-0 text-muted-foreground`}),(0,z.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-baseline gap-1.5`,children:[(0,z.jsx)(`span`,{className:`min-w-0 flex-shrink truncate`,children:t.path}),(0,z.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:a}),n?(0,z.jsx)(`span`,{className:`self-center`,children:(0,z.jsx)(k,{})}):null,r?(0,z.jsx)(L,{variant:`destructive`,children:`Invalid local path`}):null]}),(0,z.jsxs)(d,{children:[(0,z.jsx)(p,{asChild:!0,children:(0,z.jsx)(i,{variant:`ghost`,size:`icon`,className:`h-7 w-7 shrink-0`,"aria-label":`Source actions`,children:(0,z.jsx)(e,{name:`MoreHorizontal`,className:`size-4`})})}),(0,z.jsxs)(h,{align:`end`,className:`w-40`,children:[n?(0,z.jsx)(f,{disabled:o,onSelect:e=>{e.preventDefault(),c(t)},children:`Edit local path`}):null,(0,z.jsx)(f,{className:`text-destructive focus:text-destructive`,disabled:s,onSelect:()=>l(t),children:`Remove`})]})]})]})}function U(e,t){return t.get(e.hostId)??e.hostId}function W(){let{projectId:e}=g(),a=w(),s=T({enabled:a.isSuccess||a.isError}),c=s.data,d=a.isFetching||s.isLoading,{data:f=[]}=m(),p=u(),[h,_]=(0,R.useState)(null),v=n({meta:{errorMessage:`Failed to remove source.`},mutationFn:({sourceId:n})=>e?t(e,n):Promise.resolve(),onSuccess:()=>{C({projectId:e,queryClient:p}),_(null)}}),y=D(),b=E(),x=c?.find(t=>t.id===e),S=x?.sources,O=(0,R.useMemo)(()=>S??[],[S]),k=(0,R.useMemo)(()=>new Map(f.map(e=>[e.id,e.name])),[f]),I=x?.name??``,L=y.isPending||b.isPending,V=A({isPending:L,submit:(0,R.useCallback)(({path:t,hostId:n,target:r,closeDialog:i})=>{if(e){if(r.kind===`add-source`)y.mutate({projectId:e,path:t,hostId:n},{onSuccess:i});else if(r.kind===`update`){let r=O.find(e=>o(e)&&e.hostId===n);if(!r)return;b.mutate({projectId:e,sourceId:r.id,path:t},{onSuccess:i})}}},[y,e,O,b])}),W=(0,R.useCallback)(()=>{e&&V.openPicker({kind:`add-source`,projectId:e,projectName:I})},[V,e,I]),G=(0,R.useCallback)(t=>{e&&V.openPicker({kind:`update`,projectId:e,projectName:I,currentPath:t.path})},[V,e,I]),K=V.localHostId,q=M((0,R.useMemo)(()=>K?O.filter(e=>o(e)&&e.hostId===K).map(e=>e.path):[],[K,O])),J=K!=null&&!r(O,K)?(0,z.jsx)(`div`,{className:`mt-2 flex gap-2`,children:(0,z.jsx)(i,{size:`sm`,variant:`outline`,disabled:y.isPending,onClick:W,children:`Add local path`})}):null;return(0,z.jsxs)(l,{contentClassName:`pt-4 md:pt-5`,children:[(0,z.jsx)(`div`,{className:`mx-auto w-full max-w-3xl space-y-6`,children:(0,z.jsx)(F,{title:`Project Sources`,children:d?(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):O.length===0?(0,z.jsxs)(`div`,{children:[(0,z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No sources configured.`}),J]}):(0,z.jsxs)(`div`,{children:[(0,z.jsx)(P,{children:O.map(e=>{let t=o(e)&&K!=null&&e.hostId===K;return(0,z.jsx)(H,{source:e,isLocalhostSource:t,isLocalPathInvalid:t&&N(q,e.path),hostName:o(e)?k.get(e.hostId)??e.hostId:``,isEditPending:L,isOnlySource:O.length<=1,onEditLocalPath:G,onRemove:e=>_({id:e.id,label:U(e,k)})},e.id)})}),J]})})}),(0,z.jsx)(j,{target:V.projectPathDialog.target,pending:L,platform:V.platform,onOpenChange:V.projectPathDialog.onOpenChange,onSubmit:V.submitProjectPath}),(0,z.jsx)(B,{target:h,pending:v.isPending,onOpenChange:e=>{e||_(null)},onDelete:e=>v.mutate({sourceId:e})})]})}export{W as ProjectSettingsView};