@p4code/cli 0.8.28 → 0.8.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/{binCli-CTh3xknE.mjs → binCli-CT_2_UUP.mjs} +2 -2
  3. package/dist/client/.vite/manifest.json +1312 -1312
  4. package/dist/client/assets/{AuthSurfaceShell-D_hzy5by.js → AuthSurfaceShell-Bei7xmsT.js} +2 -2
  5. package/dist/client/assets/{ChatGptUsageButton-B7IBN3Pq.js → ChatGptUsageButton-DjtyxX8w.js} +2 -2
  6. package/dist/client/assets/{ChatMarkdown-6bkZ78vO.js → ChatMarkdown-BWryt4mc.js} +4 -4
  7. package/dist/client/assets/{CodexSetupSection.logic-87IQTLRa.js → CodexSetupSection.logic-BE9dmagn.js} +2 -2
  8. package/dist/client/assets/{CommandBlock-DXCZ6paN.js → CommandBlock-BMCAniYR.js} +2 -2
  9. package/dist/client/assets/{ComposerPromptEditor-DZ-YKnMe.js → ComposerPromptEditor-BAeF4M2Q.js} +4 -4
  10. package/dist/client/assets/{DevicePanel-CECEStbX.js → DevicePanel-BIK7lU5Q.js} +2 -2
  11. package/dist/client/assets/{DeviceSetup-Ck1EofY9.js → DeviceSetup-DewZutCc.js} +2 -2
  12. package/dist/client/assets/{DiffCommentAnnotation-CvI2pBnS.js → DiffCommentAnnotation-Ec5St4ET.js} +2 -2
  13. package/dist/client/assets/{DiffFileTree-DbLr5IWH.js → DiffFileTree-D7UK1g9w.js} +2 -2
  14. package/dist/client/assets/{DiffPanel-Cq1eltuZ.js → DiffPanel-CsVOfMuC.js} +2 -2
  15. package/dist/client/assets/{DiffWorkerPoolProvider-KQyWsi6k.js → DiffWorkerPoolProvider-C_AEcdG7.js} +2 -2
  16. package/dist/client/assets/EmbeddedDesign-BW14Z5y6.css +1 -0
  17. package/dist/client/assets/{EmbeddedDesign-DhM04pU7.js → EmbeddedDesign-etv-YYdL.js} +5 -5
  18. package/dist/client/assets/{FileDiff-CNttiWtf.js → FileDiff-zDk0hlbP.js} +2 -2
  19. package/dist/client/assets/{FilePreviewPanel-CGicpbOo.js → FilePreviewPanel-4Jooc2SX.js} +2 -2
  20. package/dist/client/assets/{FoldedSettingsSection-BTPWwXUE.js → FoldedSettingsSection-CyFdDOGq.js} +2 -2
  21. package/dist/client/assets/{NoProjectsHero-kyhQJSgF.js → NoProjectsHero-DTW4rIeE.js} +2 -2
  22. package/dist/client/assets/{P4ConnectAccountPages-DRIMCs7k.js → P4ConnectAccountPages-T4KBK5hd.js} +2 -2
  23. package/dist/client/assets/{P4ConnectSidebarSignIn-C-ZetXUN.js → P4ConnectSidebarSignIn-CI3NSKOn.js} +2 -2
  24. package/dist/client/assets/{PanelLayoutControls-D9ZXss-X.js → PanelLayoutControls-BZJgMEaR.js} +4 -4
  25. package/dist/client/assets/{PierreEntryIcon-B803YO8_.js → PierreEntryIcon-Dm9NJfpz.js} +2 -2
  26. package/dist/client/assets/{PreviewPanel-BziiiQxi.js → PreviewPanel-C-ReuOpI.js} +2 -2
  27. package/dist/client/assets/{ProjectDefaultsSettings-xYQqDWRw.js → ProjectDefaultsSettings-DJa4b3cl.js} +2 -2
  28. package/dist/client/assets/{ProjectFavicon-BxL9C_zZ.js → ProjectFavicon-n6CM3ZfY.js} +3 -3
  29. package/dist/client/assets/{ProjectIconPickerDialog-gjdCKD85.js → ProjectIconPickerDialog-mnqh2Fb1.js} +2 -2
  30. package/dist/client/assets/{ProviderAuthTerminal-BdqGbrD-.js → ProviderAuthTerminal-B0jiV3vR.js} +2 -2
  31. package/dist/client/assets/{ProviderModelPicker-BFOGSdmh.js → ProviderModelPicker-B8Pgdnzq.js} +2 -2
  32. package/dist/client/assets/{ProviderSettingsForm-BJzj9wl2.js → ProviderSettingsForm-DLPADUUT.js} +2 -2
  33. package/dist/client/assets/{PullRequestCodeTab-C8muv3ss.js → PullRequestCodeTab-B6bsuotT.js} +2 -2
  34. package/dist/client/assets/{ReadOnlySourcePreview-CnJC2otA.js → ReadOnlySourcePreview-DfjkD5FY.js} +2 -2
  35. package/dist/client/assets/{RenderErrorBoundary-CWP7Ykmu.js → RenderErrorBoundary-C5qHUe4D.js} +2 -2
  36. package/dist/client/assets/{ScheduledTasksSettings-B2-ZEorL.js → ScheduledTasksSettings-CWA5xIMu.js} +2 -2
  37. package/dist/client/assets/{ScopedSwitch-BX-fVWkE.js → ScopedSwitch-CMG5TkJe.js} +2 -2
  38. package/dist/client/assets/{SettingsPanels-BDtXSbdD.js → SettingsPanels-fePSPeyj.js} +2 -2
  39. package/dist/client/assets/{SettingsPanels.logic-OCadp8dD.js → SettingsPanels.logic-DAmnd5X8.js} +2 -2
  40. package/dist/client/assets/{SettingsScopeNotice-Dajn79Bg.js → SettingsScopeNotice-BB-eUW9e.js} +2 -2
  41. package/dist/client/assets/{ThemeEditorPanel-DXEV7Ie_.js → ThemeEditorPanel-prIKTvqV.js} +2 -2
  42. package/dist/client/assets/{ThreadTerminalDrawer-aFQnCwrV.js → ThreadTerminalDrawer-BMD96ec7.js} +2 -2
  43. package/dist/client/assets/{Virtualizer-DMRRdqR9.js → Virtualizer-D6kemKYw.js} +2 -2
  44. package/dist/client/assets/{_chat-EbDz56cx.js → _chat-D5CtrZlk.js} +6 -6
  45. package/dist/client/assets/{_chat.design-DWI-MLY7.js → _chat.design-3TkBa35G.js} +2 -2
  46. package/dist/client/assets/{_chat.index-CIbURiJU.js → _chat.index-U8LYfL3f.js} +2 -2
  47. package/dist/client/assets/{_chat.new-DkERK7Ju.js → _chat.new-C3XhQclF.js} +2 -2
  48. package/dist/client/assets/{_chat.pull-requests-BXkli2jv.js → _chat.pull-requests-DmEWO6n3.js} +2 -2
  49. package/dist/client/assets/{abnfDiagram-VCTEODGH-ByXKIMIJ.js → abnfDiagram-VCTEODGH-fEe8S2YP.js} +2 -2
  50. package/dist/client/assets/architecture-7GRP2DOG-BshO7-1P.js +1 -0
  51. package/dist/client/assets/{architectureDiagram-5GKGNRK7-CRs8AN1Y.js → architectureDiagram-5GKGNRK7-wgdxOAR3.js} +2 -2
  52. package/dist/client/assets/{assets-BNBTdYNP.js → assets-CLcL_zrG.js} +2 -2
  53. package/dist/client/assets/{blockDiagram-I7D4REHJ-ilgACMM3.js → blockDiagram-I7D4REHJ-Bc-uLpeZ.js} +2 -2
  54. package/dist/client/assets/{browserHistoryStore-BX8E7ldD.js → browserHistoryStore-D-BdR1Vt.js} +2 -2
  55. package/dist/client/assets/{browserLinkTarget-D3eCixJp.js → browserLinkTarget-Du_TcuMC.js} +2 -2
  56. package/dist/client/assets/{c4Diagram-7LVT6UL2-Bwq3-L7P.js → c4Diagram-7LVT6UL2-DEJpkLKU.js} +2 -2
  57. package/dist/client/assets/channel-tXPJaaLI.js +2 -0
  58. package/dist/client/assets/{chunk-4HAMMTFA-C4jNDShb.js → chunk-4HAMMTFA-B_S93bKu.js} +2 -2
  59. package/dist/client/assets/{chunk-75Z2AOVW-L1wmF_KI.js → chunk-75Z2AOVW-CXI2m4X5.js} +2 -2
  60. package/dist/client/assets/{chunk-DU6HZSFF-BfZ5xWy3.js → chunk-DU6HZSFF-4wwg_XfZ.js} +2 -2
  61. package/dist/client/assets/{chunk-F27PBJKO-BkacPGLC.js → chunk-F27PBJKO-jn5hv9Ic.js} +2 -2
  62. package/dist/client/assets/{chunk-GMAD6QVW-oeSYhMBo.js → chunk-GMAD6QVW-COMeJjBL.js} +2 -2
  63. package/dist/client/assets/{chunk-GVQU2GXP-BuEWFnig.js → chunk-GVQU2GXP-Bq9iFxLA.js} +2 -2
  64. package/dist/client/assets/{chunk-IMKFNOWR-DD3QIg9Y.js → chunk-IMKFNOWR-Cs0NXvvD.js} +2 -2
  65. package/dist/client/assets/{chunk-L3NEJ4N5-z7EX83WR.js → chunk-L3NEJ4N5-CDdN5EmJ.js} +2 -2
  66. package/dist/client/assets/{chunk-OSK3NFVY-DHZoeWxe.js → chunk-OSK3NFVY-kSh_x7RX.js} +2 -2
  67. package/dist/client/assets/{chunk-P2QGCYS3-CoY88v85.js → chunk-P2QGCYS3-D6Uzeqyp.js} +2 -2
  68. package/dist/client/assets/{chunk-POPQ4Y6H-C0LoWsGT.js → chunk-POPQ4Y6H-HO4sIHc5.js} +2 -2
  69. package/dist/client/assets/{chunk-PWAF6VOD-D56FBahr.js → chunk-PWAF6VOD-BcLa2sKW.js} +2 -2
  70. package/dist/client/assets/{chunk-SHT3W25Y-DV5FTtwQ.js → chunk-SHT3W25Y-WZottNhF.js} +2 -2
  71. package/dist/client/assets/{chunk-SVP7TREG-8Re3q7oh.js → chunk-SVP7TREG-Bdn-By9f.js} +2 -2
  72. package/dist/client/assets/{chunk-TICWLB2K-Cf6JQRsk.js → chunk-TICWLB2K-BDxRSyk3.js} +2 -2
  73. package/dist/client/assets/classDiagram-ZZMXUADV-DsmJ7Gar.js +2 -0
  74. package/dist/client/assets/classDiagram-v2-VYDZK3BY-DsmJ7Gar.js +2 -0
  75. package/dist/client/assets/{composer-logic-qo_WCoOG.js → composer-logic-BxjlUBgq.js} +2 -2
  76. package/dist/client/assets/{composerDraftUploads-V25cFF6x.js → composerDraftUploads-C0_qga_3.js} +2 -2
  77. package/dist/client/assets/{connect-xS5TNxN6.js → connect-ByM2h80L.js} +2 -2
  78. package/dist/client/assets/{connect-agent-BxzfRNpE.js → connect-agent-rvzcGrQo.js} +2 -2
  79. package/dist/client/assets/{cynefin-OW5HDTMX-IIXmP-nN.js → cynefin-OW5HDTMX-mgmlMYU7.js} +1 -1
  80. package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-BcJM9-A6.js → cynefinDiagram-5FMLGOSQ-hQ5qtd1D.js} +2 -2
  81. package/dist/client/assets/{dagre-GXQ25YYZ-DdHQMvS3.js → dagre-GXQ25YYZ-VrvK7-QH.js} +2 -2
  82. package/dist/client/assets/{design-BJ2IVJXi.js → design-Bt_NY2zM.js} +2 -2
  83. package/dist/client/assets/{device-B5UHgye_.js → device-BttF1D2I.js} +2 -2
  84. package/dist/client/assets/{diagram-S7CK7UJ4-CryZrud_.js → diagram-S7CK7UJ4-BYQpRDzg.js} +2 -2
  85. package/dist/client/assets/{diagram-UQ7AKVKN-BAERLSjk.js → diagram-UQ7AKVKN-DTGROUJh.js} +2 -2
  86. package/dist/client/assets/{diagram-VSXAHHWV-BFezrcB9.js → diagram-VSXAHHWV-CKdUZtLB.js} +2 -2
  87. package/dist/client/assets/{diagram-VX7I27RA-C_DPu9hN.js → diagram-VX7I27RA-DAajHjRY.js} +2 -2
  88. package/dist/client/assets/{diagram-Z3DM3KII-gf1HXqDh.js → diagram-Z3DM3KII-aZhA2G34.js} +2 -2
  89. package/dist/client/assets/{diffRendering-BZVYVxSb.js → diffRendering-C3mxCQc4.js} +2 -2
  90. package/dist/client/assets/{dist-C4dEfrtE.js → dist-BoqCHjAh.js} +2 -2
  91. package/dist/client/assets/{duoViewer-BSJbAeAM.js → duoViewer-CbsJlnFU.js} +2 -2
  92. package/dist/client/assets/{dynamic-BwDInrZk.js → dynamic-D2jjS7tR.js} +2 -2
  93. package/dist/client/assets/{ebnfDiagram-PWID7BFC-DOa1Oxoi.js → ebnfDiagram-PWID7BFC-D6Uae6gh.js} +2 -2
  94. package/dist/client/assets/{embeddedScripts-B6n6Rzsw.js → embeddedScripts-CWkW5jCC.js} +2 -2
  95. package/dist/client/assets/{entities-f_LpWDGP.js → entities-CrdpKvvL.js} +2 -2
  96. package/dist/client/assets/{erDiagram-RLTQ6QDP-BOgY2RsW.js → erDiagram-RLTQ6QDP-DoHtuUMR.js} +2 -2
  97. package/dist/client/assets/eventmodeling-NTZA5JFV-Ca67kyA6.js +1 -0
  98. package/dist/client/assets/{fileLinks-C5feST6o.js → fileLinks-D3bZIXUC.js} +2 -2
  99. package/dist/client/assets/{fileTreeExpansion-4McmDYkr.js → fileTreeExpansion-B1Xe3Ga3.js} +2 -2
  100. package/dist/client/assets/flowDiagram-HODETNUW-CrYHN5WL.js +1 -0
  101. package/dist/client/assets/{ganttDiagram-EL5Y4UJY-DHANnqYy.js → ganttDiagram-EL5Y4UJY-B1jwB3ch.js} +2 -2
  102. package/dist/client/assets/{getDiffFileInput-DjHqn-Tb.js → getDiffFileInput-exTXKopz.js} +2 -2
  103. package/dist/client/assets/{gitGraph-4MIJSDKK-B1wP1IDj.js → gitGraph-4MIJSDKK-ClvFb2A_.js} +1 -1
  104. package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-odn00pH9.js → gitGraphDiagram-WWUBYQGX-B8RhjPsD.js} +2 -2
  105. package/dist/client/assets/{guideRunStore-BuXFHADO.js → guideRunStore-DGZFG7pG.js} +2 -2
  106. package/dist/client/assets/{index-DW7vuxv_.js → index-BiM_L8v1.js} +3 -3
  107. package/dist/client/assets/{info-A6RAGUB7-Dvw63L11.js → info-A6RAGUB7-CdJcQnfX.js} +1 -1
  108. package/dist/client/assets/{infoDiagram-27XIBGKW-CU82rrtH.js → infoDiagram-27XIBGKW-DjwiczqG.js} +2 -2
  109. package/dist/client/assets/{ishikawaDiagram-5VMMS53U-CUWA9EZ6.js → ishikawaDiagram-5VMMS53U-DhFGYac_.js} +2 -2
  110. package/dist/client/assets/{journeyDiagram-3NMN7TZE-DxDN61m2.js → journeyDiagram-3NMN7TZE-JPZrdM3p.js} +2 -2
  111. package/dist/client/assets/{kanban-definition-UXKFOSKX-DsVX8mLR.js → kanban-definition-UXKFOSKX-Dw3PpZrv.js} +2 -2
  112. package/dist/client/assets/{line-Bd1UwAnv.js → line-BLOH5XAm.js} +2 -2
  113. package/dist/client/assets/{linkedPrompt-9p_0HiUR.js → linkedPrompt-DEHQUVk_.js} +2 -2
  114. package/dist/client/assets/{main-D6OSHTK1.js → main-DIQoY6z5.js} +7 -7
  115. package/dist/client/assets/{mediaReference-BqCWwE_6.js → mediaReference-C-etHq_w.js} +2 -2
  116. package/dist/client/assets/{mediaSource-CKXEV-xH.js → mediaSource-CK5LTOwI.js} +2 -2
  117. package/dist/client/assets/{mermaid-parser.core-DNVawM8U.js → mermaid-parser.core-BW8FRUCt.js} +4 -4
  118. package/dist/client/assets/{mermaid.core-DiY2Mo1k.js → mermaid.core-CzbtwMPf.js} +5 -5
  119. package/dist/client/assets/{mindmap-definition-YA3MSWOX-D9niWwdo.js → mindmap-definition-YA3MSWOX-CIjIlQQJ.js} +2 -2
  120. package/dist/client/assets/{onboarding-ChIfLFtJ.js → onboarding-CQJADQff.js} +2 -2
  121. package/dist/client/assets/{openFileInPreview-BEwUYee4.js → openFileInPreview-DLLPDQrM.js} +2 -2
  122. package/dist/client/assets/{p4ProjectFile-CuaSnYfs.js → p4ProjectFile-DoZgc8hH.js} +2 -2
  123. package/dist/client/assets/{packet-AYTQ26CC-DUQ3tZCm.js → packet-AYTQ26CC-BrQFVF1k.js} +1 -1
  124. package/dist/client/assets/{pair-CqJy0vEz.js → pair-B2cy7Khf.js} +2 -2
  125. package/dist/client/assets/{pegDiagram-XKGWAZYB-CngbWshp.js → pegDiagram-XKGWAZYB-BQfKt3Kv.js} +2 -2
  126. package/dist/client/assets/{phoneViewer-EiVMUfJk.js → phoneViewer-B8lxrlqd.js} +2 -2
  127. package/dist/client/assets/{pie-WAS4IAKB-BTlxIvlT.js → pie-WAS4IAKB-BYwNV5VL.js} +1 -1
  128. package/dist/client/assets/{pieDiagram-E7YTZNPT-DGB8Wyv9.js → pieDiagram-E7YTZNPT-B-N-6LKP.js} +2 -2
  129. package/dist/client/assets/{pierre-icons-h-5PO6Es.js → pierre-icons-CjBbiGV5.js} +2 -2
  130. package/dist/client/assets/{preview-D2IUAcO1.js → preview-B9JaNWNp.js} +2 -2
  131. package/dist/client/assets/{primary-BiKaD1fF.js → primary-BFg0aqry.js} +2 -2
  132. package/dist/client/assets/{primaryCloudLinkState-Cj6NnNj4.js → primaryCloudLinkState-CKEFAH19.js} +2 -2
  133. package/dist/client/assets/{projectFilesQueryState-C9qxBsmE.js → projectFilesQueryState-Bh9hq9TW.js} +2 -2
  134. package/dist/client/assets/{projectScriptEditor-CIO5ye4D.js → projectScriptEditor-CY1vOA7A.js} +2 -2
  135. package/dist/client/assets/{providerSkills-Dez8rDqH.js → providerSkills-V4McRHG7.js} +2 -2
  136. package/dist/client/assets/{pullRequestDetail.logic-UDSGN79l.js → pullRequestDetail.logic-Cjtgtna8.js} +2 -2
  137. package/dist/client/assets/{pullRequests-DK5muENv.js → pullRequests-B3H-yLBA.js} +2 -2
  138. package/dist/client/assets/{quadrantDiagram-AXDQQJYC-Dyks054W.js → quadrantDiagram-AXDQQJYC-DCPGn0FK.js} +2 -2
  139. package/dist/client/assets/{queries-CnKYA1jH.js → queries-Di_bwktb.js} +2 -2
  140. package/dist/client/assets/{radar-RG4KPBEZ-5t86Aak1.js → radar-RG4KPBEZ-0dqsckbr.js} +1 -1
  141. package/dist/client/assets/{railroad-74A4TZTK-CjZW18sO.js → railroad-74A4TZTK-DmU2ySiL.js} +1 -1
  142. package/dist/client/assets/railroad-abnf-HS5TGJTU-D8jIFGdF.js +1 -0
  143. package/dist/client/assets/railroad-ebnf-LZEXJU2U-DLPuHFW-.js +1 -0
  144. package/dist/client/assets/railroad-peg-WCYAUIDC-C_dqA6qc.js +1 -0
  145. package/dist/client/assets/{railroadDiagram-O6MQD6OU-DY2XrwTu.js → railroadDiagram-O6MQD6OU-C-_Drkco.js} +2 -2
  146. package/dist/client/assets/{renderScheduler-CxIHtCj0.js → renderScheduler-B6YH83Rs.js} +2 -2
  147. package/dist/client/assets/{requirementDiagram-BXWQKSXE-9MWiyLFr.js → requirementDiagram-BXWQKSXE-BnLylqek.js} +2 -2
  148. package/dist/client/assets/{runtime-CxXKASQ8.js → runtime-BWwa38SO.js} +2 -2
  149. package/dist/client/assets/{runtime-BtL_3nGT.js → runtime-IzhBj1XN.js} +3 -3
  150. package/dist/client/assets/{sankeyDiagram-P5KCCOFB-o3eBJ4t5.js → sankeyDiagram-P5KCCOFB-CBOuF9QI.js} +2 -2
  151. package/dist/client/assets/{scheduledTasksSettings.logic-CpaoLLyc.js → scheduledTasksSettings.logic-D1SmhEa5.js} +2 -2
  152. package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-E9SEYXIP.js → sequenceDiagram-WJ2MYXX4-C7s7QsBy.js} +2 -2
  153. package/dist/client/assets/{server-DK7wLDqS.js → server-CP48yEl0.js} +2 -2
  154. package/dist/client/assets/{session-CB_SwK9v.js → session-T5SqAk8t.js} +2 -2
  155. package/dist/client/assets/{session-logic-lPOzc1cs.js → session-logic-DlVVq2YC.js} +2 -2
  156. package/dist/client/assets/{settings-vpymP2yR.js → settings-D206-FOy.js} +2 -2
  157. package/dist/client/assets/{settings.appearance-CRhnBCI2.js → settings.appearance-uxuzeSTF.js} +2 -2
  158. package/dist/client/assets/settings.archived-D9xP_v0H.js +2 -0
  159. package/dist/client/assets/{settings.computer-use-54EsP-qO.js → settings.computer-use-2v-8O2zH.js} +2 -2
  160. package/dist/client/assets/{settings.connections-Ck3AgyGG.js → settings.connections-lKMQ_hew.js} +2 -2
  161. package/dist/client/assets/{settings.data-controls-D_RMMjIN.js → settings.data-controls-7Y8ueGmN.js} +2 -2
  162. package/dist/client/assets/{settings.decisions-Cbvkif9S.js → settings.decisions-C4emob6Z.js} +2 -2
  163. package/dist/client/assets/{settings.designs-BefGbBVB.js → settings.designs-Dyn2mfcN.js} +2 -2
  164. package/dist/client/assets/{settings.diagnostics-XFetpvca.js → settings.diagnostics-BCaoJyRg.js} +2 -2
  165. package/dist/client/assets/{settings.general-Bk6wtWtE.js → settings.general-D8p__dvb.js} +2 -2
  166. package/dist/client/assets/{settings.integrations-C6Lgx1NO.js → settings.integrations-CCIv5QJj.js} +2 -2
  167. package/dist/client/assets/{settings.keybindings-BkE-gcjT.js → settings.keybindings-CyInaNpv.js} +2 -2
  168. package/dist/client/assets/{settings.open-source-licenses-C10v2gWN.js → settings.open-source-licenses-CR6bCGYd.js} +2 -2
  169. package/dist/client/assets/{settings.plugins-DCZ1gwld.js → settings.plugins-RPVcPTrS.js} +2 -2
  170. package/dist/client/assets/{settings.projects-BInuPAfr.js → settings.projects-BP7ckasi.js} +3 -3
  171. package/dist/client/assets/{settings.providers-ggyV-d7U.js → settings.providers-CfDlLMCi.js} +3 -3
  172. package/dist/client/assets/{settings.scheduled-tasks-CkALFkch.js → settings.scheduled-tasks-pczxt37t.js} +2 -2
  173. package/dist/client/assets/{settings.snap-shot-R8RC_FLN.js → settings.snap-shot-Dj4oICBD.js} +2 -2
  174. package/dist/client/assets/{settings.source-control-DteTH38s.js → settings.source-control-CR5XSZHM.js} +2 -2
  175. package/dist/client/assets/{settings.storage-CMsiwSuK.js → settings.storage-7QvkpMPa.js} +2 -2
  176. package/dist/client/assets/{settingsLayout-CFe_w3zi.js → settingsLayout-Du-dHkyX.js} +2 -2
  177. package/dist/client/assets/{sidebarProjectGrouping-DR0wmmJk.js → sidebarProjectGrouping-CW263Rzs.js} +2 -2
  178. package/dist/client/assets/{sourceControl-DNVstovX.js → sourceControl-C6eXWvfR.js} +2 -2
  179. package/dist/client/assets/{sourceControlClients-CW3X8Vqj.js → sourceControlClients-B82L1A8B.js} +2 -2
  180. package/dist/client/assets/{stateDiagram-D77RDMKH-DIphJncn.js → stateDiagram-D77RDMKH-oYRlOQT8.js} +2 -2
  181. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-BSGjPbEj.js +2 -0
  182. package/dist/client/assets/{swimlanes-42K2YHIH-BY19pg1S.js → swimlanes-42K2YHIH-4aFNZA_1.js} +2 -2
  183. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-xJy82rrx.js +9 -0
  184. package/dist/client/assets/{terminalSessions-Br7AMEFR.js → terminalSessions-DoA1DNPr.js} +2 -2
  185. package/dist/client/assets/{timeline-definition-24CTP7MA-ByzcuBaC.js → timeline-definition-24CTP7MA-B5mmgIt9.js} +2 -2
  186. package/dist/client/assets/{toast-C2NI-Hlh.js → toast-BpFMQUQA.js} +2 -2
  187. package/dist/client/assets/{treeView-Q6P3EWNA-C6l--y6F.js → treeView-Q6P3EWNA-C_P8Z3s2.js} +1 -1
  188. package/dist/client/assets/{treemap-WGGIJYW6-2WmHmD0F.js → treemap-WGGIJYW6-CWQSzaDd.js} +1 -1
  189. package/dist/client/assets/{uiStateStore-z548e4qC.js → uiStateStore-x5YpOn_O.js} +2 -2
  190. package/dist/client/assets/{usage-Bb-jkura.js → usage-C-6kMPn4.js} +2 -2
  191. package/dist/client/assets/{use-atom-command-BBLN3-cB.js → use-atom-command-Da7aNqLc.js} +2 -2
  192. package/dist/client/assets/{useHandleNewThread-CsUYJUoP.js → useHandleNewThread-NoutVPDs.js} +2 -2
  193. package/dist/client/assets/{useP4ConnectAuthPrompt-C_DWHou2.js → useP4ConnectAuthPrompt-Ds4gxPdc.js} +2 -2
  194. package/dist/client/assets/{usePullRequestActions-2RLXa_AL.js → usePullRequestActions-6AR3Bv8v.js} +2 -2
  195. package/dist/client/assets/{useScopedModelAvailability-CLSjirRK.js → useScopedModelAvailability-4KfG0IrU.js} +2 -2
  196. package/dist/client/assets/{useSettings-BeOQNM41.js → useSettings-DPnlKDDE.js} +2 -2
  197. package/dist/client/assets/{vcsRefInvalidation-D5r-YO6n.js → vcsRefInvalidation-DuHBQdu0.js} +2 -2
  198. package/dist/client/assets/{vennDiagram-4TSXK5OY-CsSeQEmm.js → vennDiagram-4TSXK5OY-Dt-xJxP3.js} +2 -2
  199. package/dist/client/assets/{wardley-WFR3VGLG-DHUa30e5.js → wardley-WFR3VGLG-C0eWSs8z.js} +1 -1
  200. package/dist/client/assets/{wardleyDiagram-VM6X3IG4-NUfaDxHP.js → wardleyDiagram-VM6X3IG4-Ca2nNclr.js} +2 -2
  201. package/dist/client/assets/{welcome-DUwjP1q3.js → welcome-BGbg8Pdk.js} +2 -2
  202. package/dist/client/assets/{xychartDiagram-S5SC5T6Z-wdjDjsiQ.js → xychartDiagram-S5SC5T6Z-D-yJgS6t.js} +2 -2
  203. package/dist/client/index.html +1 -1
  204. package/package.json +1 -1
  205. package/dist/client/assets/EmbeddedDesign-DYfQOv0y.css +0 -1
  206. package/dist/client/assets/architecture-7GRP2DOG-DI9suUNc.js +0 -1
  207. package/dist/client/assets/channel-BAWAGigO.js +0 -2
  208. package/dist/client/assets/classDiagram-ZZMXUADV-DIxrr9dl.js +0 -2
  209. package/dist/client/assets/classDiagram-v2-VYDZK3BY-DIxrr9dl.js +0 -2
  210. package/dist/client/assets/eventmodeling-NTZA5JFV-DWccyGhB.js +0 -1
  211. package/dist/client/assets/flowDiagram-HODETNUW-2xlj_oad.js +0 -1
  212. package/dist/client/assets/railroad-abnf-HS5TGJTU-DOBW6UbH.js +0 -1
  213. package/dist/client/assets/railroad-ebnf-LZEXJU2U-Ck7zj7ML.js +0 -1
  214. package/dist/client/assets/railroad-peg-WCYAUIDC-BkEDvnoB.js +0 -1
  215. package/dist/client/assets/settings.archived-qDhcwMq8.js +0 -2
  216. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-l4hzw06_.js +0 -2
  217. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-Dm5nKQAS.js +0 -9
@@ -1,2 +1,2 @@
1
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$n as n,BE as r,Bp as i,D as a,Ho as o,Jm as s,Kn as c,Ko as l,Kp as u,Nf as d,Pf as f,Qs as p,Qu as m,Wo as h,Xn as g,Xo as _,Yn as v,Yp as y,Zd as b,Zn as x,Zu as S,_d as C,ar as w,cr as T,er as E,gp as D,kf as O,lr as k,mE as A,or as ee,pg as j,pp as te,qn as M,qu as N,rr as P,sr as F,t as ne,tr as I,w_ as L,yg as R,yp as re}from"./utils-B0w8dSf5.js";import{R as ie,W as z}from"./runtime-BtL_3nGT.js";import{b as ae}from"./entities-f_LpWDGP.js";import{ct as B}from"./ChatMarkdown-6bkZ78vO.js";import{i as V}from"./toast-C2NI-Hlh.js";import{C as oe,O as se,S as H,q as U}from"./useSettings-BeOQNM41.js";import{i as ce,n as le}from"./session-CB_SwK9v.js";import{t as W}from"./use-atom-command-BBLN3-cB.js";import{u as ue}from"./rightPanelStore-BLSD3K6s.js";import{t as G}from"./toastHelpers-DxXYm50b.js";import{A as K,k as q}from"./PanelLayoutControls-D9ZXss-X.js";import{o as de}from"./timestampFormat-wac2e_Jz.js";import{a as fe,n as pe,t as me}from"./tooltip-CuJiZzK7.js";import{a as he,o as ge,r as _e,t as ve}from"./empty-DeLw5x6B.js";import{n as ye,t as be}from"./discovery-list-CPLxz_C8.js";import{t as xe}from"./observeResize-3DufCT68.js";import{n as Se}from"./openFileInPreview-BEwUYee4.js";import{T as Ce,a as we,b as Te,f as Ee,i as De,n as Oe,o as ke,r as Ae,t as je,u as Me,w as Ne}from"./browserHistoryStore-BX8E7ldD.js";import{t as Pe}from"./preview-D2IUAcO1.js";import{n as Fe,r as Ie,t as Le}from"./preview-DL8QWLgw.js";import{Ai as Re,Bi as ze,Di as Be,Ei as Ve,Fi as He,Ni as Ue,Oi as We,Pi as Ge,Ri as Ke,Ta as J,Ui as qe,Wi as Y,fa as X,ki as Je,pa as Ye,qi as Xe,zi as Ze}from"./main-D6OSHTK1.js";import{a as Qe,c as $e,d as et,f as tt,i as nt,l as rt,n as it,o as at,r as ot,s as st,u as ct}from"./_chat-EbDz56cx.js";var Z=e(t(),1),Q=r(),lt=`data:image/png;base64,`;function ut(e){if(!e.screenshot)return{status:`none`};try{let{dataUrl:t}=e.screenshot;if(!t.startsWith(lt))return{status:`failed`};let n=Xe(t,`preview-annotation-${e.id}.png`,`image/png`);return n.size>0?{status:`captured`,file:n}:{status:`failed`}}catch{return{status:`failed`}}}var $=e(A(),1),dt=()=>{};function ft(e){let t=(0,Q.c)(79),{url:n,loading:r,canGoBack:i,canGoForward:a,refreshDisabled:o,inputDisabled:s,focusUrlNonce:c,onBack:l,onForward:u,onRefresh:d,onSubmit:f,onOpenInBrowser:p,onCapture:h,captureDisabled:g,recording:_,onSeparateWindow:v,separateWindow:y,separateWindowDisabled:x,onPickElement:w,pickActive:T,pickDisabled:E,pickDisabledReason:D,trailingActions:O,leadingActions:A}=e,ee=(0,Z.useRef)(null),[j,te]=(0,Z.useState)(n),[M,P]=(0,Z.useState)(!1),F,I;t[0]===c?(F=t[1],I=t[2]):(F=()=>{if(c==null)return;let e=ee.current;e&&e.focus()},I=[c],t[0]=c,t[1]=F,t[2]=I),(0,Z.useEffect)(F,I);let L;t[3]!==j||t[4]!==f?(L=e=>{e?.preventDefault();let t=j.trim();t.length!==0&&(f(t),ee.current?.blur())},t[3]=j,t[4]=f,t[5]=L):L=t[5];let R=L,ie=i?l:dt,z=!i,ae;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(S,{}),t[6]=ae):ae=t[6];let B;t[7]!==ie||t[8]!==z?(B=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:ie,disabled:z,"aria-label":`Back`,type:`button`,children:ae}),t[7]=ie,t[8]=z,t[9]=B):B=t[9];let V=a?u:dt,oe=!a,se;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(m,{}),t[10]=se):se=t[10];let H;t[11]!==V||t[12]!==oe?(H=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:V,disabled:oe,"aria-label":`Forward`,type:`button`,children:se}),t[11]=V,t[12]=oe,t[13]=H):H=t[13];let U;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(`span`,{"aria-hidden":!0,className:`mx-0.5 h-4 w-px bg-border`}),t[14]=U):U=t[14];let ce=o?dt:d,le=r?`Stop`:`Refresh`,W;t[15]!==o||t[16]!==ce||t[17]!==le?(W=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:ce,disabled:o,"aria-label":le,type:`button`}),t[15]=o,t[16]=ce,t[17]=le,t[18]=W):W=t[18];let ue;t[19]===r?ue=t[20]:(ue=(0,$.jsx)(J,{refreshing:r}),t[19]=r,t[20]=ue);let G;t[21]!==W||t[22]!==ue?(G=(0,$.jsx)(fe,{render:W,children:ue}),t[21]=W,t[22]=ue,t[23]=G):G=t[23];let K=r?`Loading…`:`Refresh`,q;t[24]===K?q=t[25]:(q=(0,$.jsx)(pe,{children:K}),t[24]=K,t[25]=q);let de;t[26]!==G||t[27]!==q?(de=(0,$.jsxs)(me,{children:[G,q]}),t[26]=G,t[27]=q,t[28]=de):de=t[28];let he;t[29]!==H||t[30]!==de||t[31]!==B?(he=(0,$.jsxs)(`div`,{className:`surface-glass flex h-8 shrink-0 items-center gap-0.5 rounded-full border border-border/60 px-1 shadow-sm [&_button]:rounded-full`,role:`group`,"aria-label":`Navigation`,children:[B,H,U,de]}),t[29]=H,t[30]=de,t[31]=B,t[32]=he):he=t[32];let ge=M?j:n,_e;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(_e=e=>te(e.target.value),t[33]=_e):_e=t[33];let ve;t[34]===n?ve=t[35]:(ve=()=>{te(n),P(!0),queueMicrotask(()=>ee.current?.select())},t[34]=n,t[35]=ve);let ye;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(ye=()=>{P(!1)},t[36]=ye):ye=t[36];let be;t[37]!==R||t[38]!==n?(be=e=>{e.key===`Enter`&&R(e),e.key===`Escape`&&(e.preventDefault(),te(n),ee.current?.blur())},t[37]=R,t[38]=n,t[39]=be):be=t[39];let xe;t[40]!==s||t[41]!==ge||t[42]!==ve||t[43]!==be?(xe=(0,$.jsx)(`input`,{ref:ee,value:ge,onChange:_e,onFocus:ve,onBlur:ye,onKeyDown:be,"aria-label":`Address`,placeholder:`Search or enter URL`,spellCheck:!1,disabled:s,"data-preview-url-input":!0,className:`w-full min-w-0 truncate bg-transparent text-center text-sm text-foreground outline-none placeholder:text-muted-foreground focus:text-left`}),t[40]=s,t[41]=ge,t[42]=ve,t[43]=be,t[44]=xe):xe=t[44];let Se;t[45]!==M||t[46]!==p?(Se=p&&!M?(0,$.jsx)(`span`,{className:`pointer-events-none absolute right-1 flex opacity-0 transition-opacity focus-within:pointer-events-auto focus-within:opacity-100 group-hover/address:pointer-events-auto group-hover/address:opacity-100 [&_button]:rounded-full`,children:(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:p,"aria-label":`Open in system browser`,type:`button`}),children:(0,$.jsx)(b,{})}),(0,$.jsx)(pe,{children:`Open in system browser`})]})}):null,t[45]=M,t[46]=p,t[47]=Se):Se=t[47];let Ce;t[48]!==xe||t[49]!==Se?(Ce=(0,$.jsxs)(`div`,{className:`surface-glass group/address relative flex h-8 min-w-0 flex-1 items-center rounded-full border border-border/60 px-8 shadow-sm transition-colors focus-within:border-ring has-disabled:opacity-64`,children:[xe,Se]}),t[48]=xe,t[49]=Se,t[50]=Ce):Ce=t[50];let we;t[51]!==w||t[52]!==T||t[53]!==E||t[54]!==D?(we=w?(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:w,disabled:E,"aria-label":T?`Cancel annotation`:`Annotate preview`,"aria-pressed":T?`true`:`false`,type:`button`}),children:(0,$.jsx)(re,{className:ne(T&&`text-primary`)})}),(0,$.jsx)(pe,{children:E&&D?D:T?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[51]=w,t[52]=T,t[53]=E,t[54]=D,t[55]=we):we=t[55];let Te;t[56]!==g||t[57]!==h||t[58]!==_?(Te=h?(0,$.jsxs)(me,{children:[(0,$.jsxs)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:e=>h(e.shiftKey),"aria-label":_?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:g}),children:[(0,$.jsx)(C,{className:ne(_&&`text-destructive`)}),_?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(pe,{children:_?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[56]=g,t[57]=h,t[58]=_,t[59]=Te):Te=t[59];let Ee;t[60]!==v||t[61]!==y||t[62]!==x?(Ee=v?(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:v,"aria-label":y?`Bring preview back from its window`:`Open preview in a window`,"aria-pressed":y?`true`:`false`,type:`button`,disabled:x}),children:(0,$.jsx)(N,{className:ne(y&&`text-primary`)})}),(0,$.jsx)(pe,{children:y?`Bring back`:`Open in separate window`})]}):null,t[60]=v,t[61]=y,t[62]=x,t[63]=Ee):Ee=t[63];let De;t[64]!==A||t[65]!==R||t[66]!==he||t[67]!==Ce||t[68]!==we||t[69]!==Te||t[70]!==Ee||t[71]!==O?(De=(0,$.jsxs)(`form`,{onSubmit:R,className:`flex h-12 min-h-12 shrink-0 items-center gap-2 border-b border-border/60 bg-background px-2.5 in-data-[preview-panel-mode=inline]:border-b-transparent`,"data-surface-subheader":!0,children:[he,A,Ce,we,Te,Ee,O]}),t[64]=A,t[65]=R,t[66]=he,t[67]=Ce,t[68]=we,t[69]=Te,t[70]=Ee,t[71]=O,t[72]=De):De=t[72];let Oe;t[73]===Symbol.for(`react.memo_cache_sentinel`)?(Oe={boxShadow:`0 0 6px 1px var(--color-ring)`},t[73]=Oe):Oe=t[73];let ke;t[74]===r?ke=t[75]:(ke=(0,$.jsx)(`div`,{"aria-hidden":!0,"data-loading":r,className:`preview-loading-progress pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 w-full origin-left rounded-r-full bg-primary`,style:Oe}),t[74]=r,t[75]=ke);let Ae;return t[76]!==De||t[77]!==ke?(Ae=(0,$.jsxs)(`div`,{className:`relative`,children:[De,ke]}),t[76]=De,t[77]=ke,t[78]=Ae):Ae=t[78],Ae}function pt(e){let t=(0,Q.c)(10),{threadRef:n,server:r,onOpen:i}=e,a;t[0]===r?a=t[1]:(a=mt(r),t[0]=r,t[1]=a);let o=a,s;t[2]!==r.requestedUrl||t[3]!==n?(s=(0,$.jsx)(q,{threadRef:n,url:r.requestedUrl}),t[2]=r.requestedUrl,t[3]=n,t[4]=s):s=t[4];let c=`${r.host}:${r.port}`,l;return t[5]!==i||t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,$.jsx)(ye,{onClick:i,icon:s,title:o,description:c}),t[5]=i,t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function mt(e){return e.processName?e.processName:`Listening`}function ht(e){let t=(0,Q.c)(26),{threadRef:n,entry:r,onOpen:i,onRemove:a}=e,o;t[0]===r.url?o=t[1]:(o=new URL(r.url),t[0]=r.url,t[1]=o);let c=o,l=c.pathname===`/`?``:c.pathname,u=`${c.host}${l}${c.search}${c.hash}`,d;t[2]===r.lastVisitedAt?d=t[3]:(d=je(r.lastVisitedAt)?de(new Date(r.lastVisitedAt).toISOString()):``,t[2]=r.lastVisitedAt,t[3]=d);let f=d;st();let p;t[4]!==r.url||t[5]!==n?(p=(0,$.jsx)(q,{threadRef:n,url:r.url}),t[4]=r.url,t[5]=n,t[6]=p):p=t[6];let m=r.title??u,h;t[7]===m?h=t[8]:(h=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:m}),t[7]=m,t[8]=h);let g=r.title?`${u} · `:``,_;t[9]!==g||t[10]!==f?(_=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[g,f]}),t[9]=g,t[10]=f,t[11]=_):_=t[11];let v;t[12]!==h||t[13]!==_?(v=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[h,_]}),t[12]=h,t[13]=_,t[14]=v):v=t[14];let y;t[15]!==i||t[16]!==p||t[17]!==v?(y=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full items-center gap-3 px-3 py-3 pr-10 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[p,v]}),t[15]=i,t[16]=p,t[17]=v,t[18]=y):y=t[18];let b=`Remove ${u} from history`,x;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(s,{className:`size-3.5`}),t[19]=x):x=t[19];let S;t[20]!==a||t[21]!==b?(S=(0,$.jsx)(`button`,{type:`button`,"aria-label":b,onClick:a,className:`absolute right-3 rounded p-1 text-muted-foreground opacity-0 hover:bg-accent hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring group-hover:opacity-100`,children:x}),t[20]=a,t[21]=b,t[22]=S):S=t[22];let C;return t[23]!==S||t[24]!==y?(C=(0,$.jsxs)(`div`,{className:`group relative flex w-full items-center`,children:[y,S]}),t[23]=S,t[24]=y,t[25]=C):C=t[25],C}function gt(e){let t=(0,Q.c)(7),n=ze(e.environmentId,e.configuredUrls),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==n.configuredUrlProbing||t[3]!==n.servers){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:ke(e.environmentId,t.url),requestedUrl:t.url}),t[5]=e.environmentId,t[6]=i),r=_t({scanner:n.servers.map(i),configuredUrls:e.configuredUrls??[],configuredUrlProbing:n.configuredUrlProbing}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=n.configuredUrlProbing,t[3]=n.servers,t[4]=r}else r=t[4];return r}function _t(e){let t=new Map;for(let n of e.configuredUrls){let e=yt(n);if(!e)continue;let r=vt(e.host,e.port);t.has(r)||t.set(r,e)}let n=[];for(let r of e.scanner){let i=vt(r.host,r.port),a=t.get(i);n.push({...r,requestedUrl:a&&e.configuredUrlProbing===!1?a.url:r.requestedUrl,source:a?`configured`:`scanner`})}return n.toSorted((e,t)=>{let n={configured:0,scanner:1};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function vt(e,t){let n=e.toLowerCase();return`${Le(n)?`loopback`:n}:${t}`}function yt(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!Le(t.hostname))return null;let n=t.port?Number.parseInt(t.port,10):t.protocol===`http:`?80:443;return!Number.isFinite(n)||n<=0?null:{host:t.hostname,port:n,url:t.href}}catch{return null}}function bt(e){let t=(0,Q.c)(24),{threadRef:n,environmentId:r,configuredUrls:i,recentEntries:a,onRemoveRecent:o,onOpenUrl:s}=e,c;t[0]!==i||t[1]!==r?(c={environmentId:r,configuredUrls:i},t[0]=i,t[1]=r,t[2]=c):c=t[2];let l=gt(c),d,p,m,h;if(t[3]!==s||t[4]!==o||t[5]!==a||t[6]!==l.length||t[7]!==n){h=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a.filter(xt).slice(0,8);if(l.length===0&&e.length===0){let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(ve,{children:[(0,$.jsx)(he,{variant:`icon`,children:(0,$.jsx)(O,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(ge,{children:`No preview yet`}),(0,$.jsx)(_e,{children:`Type a URL above, or run a dev script. Browser-ready localhost servers will show up here automatically.`})]}),t[12]=e):e=t[12],h=e;break bb0}m=`scrollbar-gutter-both flex h-full min-h-0 overflow-y-auto px-5 py-8`,d=`mx-auto flex w-full max-w-xl flex-col gap-6`,p=e.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(f,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Recently used`})]}),(0,$.jsx)(be,{children:e.map(e=>(0,$.jsx)(ht,{threadRef:n,entry:e,onOpen:()=>s(e.url),onRemove:()=>o(e.url)},e.url))})]}):null}t[3]=s,t[4]=o,t[5]=a,t[6]=l.length,t[7]=n,t[8]=d,t[9]=p,t[10]=m,t[11]=h}else d=t[8],p=t[9],m=t[10],h=t[11];if(h!==Symbol.for(`react.early_return_sentinel`))return h;let g;t[13]!==s||t[14]!==l||t[15]!==n?(g=l.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(u,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),(0,$.jsx)(be,{children:l.map(e=>(0,$.jsx)(pt,{threadRef:n,server:e,onOpen:()=>s(e.requestedUrl)},`${e.host}:${e.port}`))}),(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a live local server to open it in this browser tab.`})]}):null,t[13]=s,t[14]=l,t[15]=n,t[16]=g):g=t[16];let _;t[17]!==d||t[18]!==p||t[19]!==g?(_=(0,$.jsxs)(`div`,{className:d,children:[p,g]}),t[17]=d,t[18]=p,t[19]=g,t[20]=_):_=t[20];let v;return t[21]!==m||t[22]!==_?(v=(0,$.jsx)(`div`,{className:m,children:_}),t[21]=m,t[22]=_,t[23]=v):v=t[23],v}function xt(e){return URL.canParse(e.url)}var St=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],Ct=()=>{let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(T,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(D,{})}),(0,$.jsx)(pe,{children:`More`})]}),e[0]=t):t=e[0],t};function wt(e){let t=(0,Q.c)(69),{enabled:r,actions:a,zoomFactor:o,colorScheme:s,deviceToolbarVisible:c,onToggleDeviceToolbar:l,profileName:u,move:d}=e,f;t[0]===o?f=t[1]:(f=Math.round(o*100),t[0]=o,t[1]=f);let p=`${f}%`,m=!r,h;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Ct,{}),t[2]=h):h=t[2];let _;t[3]!==a.hardReload||t[4]!==m?(_=(0,$.jsx)(x,{onClick:a.hardReload,disabled:m,children:`Hard reload`}),t[3]=a.hardReload,t[4]=m,t[5]=_):_=t[5];let b;t[6]!==a.openDevTools||t[7]!==m?(b=a.openDevTools?(0,$.jsx)(x,{onClick:a.openDevTools,disabled:m,children:`Open DevTools`}):null,t[6]=a.openDevTools,t[7]=m,t[8]=b):b=t[8];let S;t[9]===d?S=t[10]:(S=d?(0,$.jsx)(x,{onClick:d.onMove,children:d.label}):null,t[9]=d,t[10]=S);let C=c?`Hide device toolbar`:`Show device toolbar`,T;t[11]!==m||t[12]!==l||t[13]!==C?(T=(0,$.jsx)(x,{onClick:l,disabled:m,children:C}),t[11]=m,t[12]=l,t[13]=C,t[14]=T):T=t[14];let D;t[15]===m?D=t[16]:(D=(0,$.jsx)(F,{disabled:m,children:`Appearance`}),t[15]=m,t[16]=D);let O;t[17]===a?O=t[18]:(O=e=>a.setColorScheme(e),t[17]=a,t[18]=O);let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=St.map(Et),t[19]=A):A=t[19];let j;t[20]!==s||t[21]!==O?(j=(0,$.jsx)(ee,{children:(0,$.jsx)(E,{value:s,onValueChange:O,children:A})}),t[20]=s,t[21]=O,t[22]=j):j=t[22];let N;t[23]!==j||t[24]!==D?(N=(0,$.jsxs)(w,{children:[D,j]}),t[23]=j,t[24]=D,t[25]=N):N=t[25];let ne;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(ne=(0,$.jsx)(P,{}),t[26]=ne):ne=t[26];let I;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(`span`,{children:`Zoom`}),t[27]=I):I=t[27];let L;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(te,{}),t[28]=L):L=t[28];let R;t[29]!==a.zoomOut||t[30]!==m?(R=(0,$.jsx)(k,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:a.zoomOut,"aria-label":`Zoom out`,disabled:m,children:L}),t[29]=a.zoomOut,t[30]=m,t[31]=R):R=t[31];let re;t[32]===p?re=t[33]:(re=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:p}),t[32]=p,t[33]=re);let ie;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,$.jsx)(i,{}),t[34]=ie):ie=t[34];let z;t[35]!==a.zoomIn||t[36]!==m?(z=(0,$.jsx)(k,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:a.zoomIn,"aria-label":`Zoom in`,disabled:m,children:ie}),t[35]=a.zoomIn,t[36]=m,t[37]=z):z=t[37];let ae;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(y,{}),t[38]=ae):ae=t[38];let B;t[39]!==a.resetZoom||t[40]!==m?(B=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:a.resetZoom,"aria-label":`Reset zoom`,disabled:m,children:ae}),t[39]=a.resetZoom,t[40]=m,t[41]=B):B=t[41];let V;t[42]!==R||t[43]!==re||t[44]!==z||t[45]!==B?(V=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[R,re,z,B]}),t[42]=R,t[43]=re,t[44]=z,t[45]=B,t[46]=V):V=t[46];let oe;t[47]!==m||t[48]!==V?(oe=(0,$.jsxs)(x,{closeOnClick:!1,onClick:Tt,className:`justify-between`,disabled:m,children:[I,V]}),t[47]=m,t[48]=V,t[49]=oe):oe=t[49];let se;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(P,{}),t[50]=se):se=t[50];let H;t[51]===u?H=t[52]:(H=u?(0,$.jsx)(g,{className:`max-w-64`,children:(0,$.jsxs)(`span`,{className:`block truncate`,children:[`Profile: `,u]})}):null,t[51]=u,t[52]=H);let U;t[53]===a.clearCookies?U=t[54]:(U=(0,$.jsx)(x,{onClick:a.clearCookies,children:`Clear cookies`}),t[53]=a.clearCookies,t[54]=U);let ce;t[55]===a.clearCache?ce=t[56]:(ce=(0,$.jsx)(x,{onClick:a.clearCache,children:`Clear cache`}),t[55]=a.clearCache,t[56]=ce);let le;t[57]!==H||t[58]!==U||t[59]!==ce?(le=(0,$.jsxs)(v,{children:[H,U,ce]}),t[57]=H,t[58]=U,t[59]=ce,t[60]=le):le=t[60];let W;return t[61]!==N||t[62]!==oe||t[63]!==le||t[64]!==_||t[65]!==b||t[66]!==S||t[67]!==T?(W=(0,$.jsxs)(M,{children:[h,(0,$.jsxs)(n,{align:`end`,sideOffset:6,children:[_,b,S,T,N,ne,oe,se,le]})]}),t[61]=N,t[62]=oe,t[63]=le,t[64]=_,t[65]=b,t[66]=S,t[67]=T,t[68]=W):W=t[68],W}function Tt(e){return e.preventDefault()}function Et(e){return(0,$.jsx)(I,{value:e.value,children:e.label},e.value)}function Dt(e){return _[e]||(e.length>0?e:`Network error`)}function Ot(e){let t=(0,Q.c)(21),{url:n,fileName:r,downloadUrl:i,onOpen:a}=e,o;t[0]===n?o=t[1]:(o=Mt(n)??n,t[0]=n,t[1]=o);let s=o,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(jt,{className:`mb-6 size-12 text-muted-foreground/70`}),l=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This file can’t be shown here`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:r}),t[4]=r,t[5]=u);let d;t[6]!==s||t[7]!==u?(d=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[u,` from `,s,` was downloaded instead.`]}),t[6]=s,t[7]=u,t[8]=d):d=t[8];let f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:`flex-1`}),t[9]=f):f=t[9];let p;t[10]===a?p=t[11]:(p=(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:a,children:`Open in browser`}),t[10]=a,t[11]=p);let m;t[12]!==i||t[13]!==r?(m=i?(0,$.jsx)(k,{type:`button`,size:`sm`,render:(0,$.jsx)(`a`,{href:i,download:r}),children:`Download`}):null,t[12]=i,t[13]=r,t[14]=m):m=t[14];let h;t[15]!==p||t[16]!==m?(h=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[f,p,m]}),t[15]=p,t[16]=m,t[17]=h):h=t[17];let g;return t[18]!==d||t[19]!==h?(g=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[c,l,d,h]})}),t[18]=d,t[19]=h,t[20]=g):g=t[20],g}function kt(e){let t=(0,Q.c)(44),{url:n,code:r,description:i,onReload:a,move:o}=e,[s,c]=(0,Z.useState)(!1),l;t[0]===n?l=t[1]:(l=Mt(n)??n,t[0]=n,t[1]=l);let u=l,d;t[2]===i?d=t[3]:(d=Dt(i),t[2]=i,t[3]=d);let f=d,p;t[4]!==r||t[5]!==i?(p=i.length>0?i:`ERR_${Math.abs(r)||`FAILED`}`,t[4]=r,t[5]=i,t[6]=p):p=t[6];let m=p,h,g;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(jt,{className:`mb-6 size-12 text-muted-foreground/70`}),g=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This site can’t be reached`}),t[7]=h,t[8]=g):(h=t[7],g=t[8]);let _;t[9]===u?_=t[10]:(_=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:u}),t[9]=u,t[10]=_);let v;t[11]!==f||t[12]!==_?(v=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[_,`: `,f,`.`]}),t[11]=f,t[12]=_,t[13]=v):v=t[13];let y;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(`p`,{className:`mb-2 font-medium text-foreground`,children:`Try:`}),t[14]=y):y=t[14];let b,x;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`li`,{children:`Checking your connection`}),b=(0,$.jsx)(`li`,{children:`Confirming the dev server is running`}),t[15]=b,t[16]=x):(b=t[15],x=t[16]);let S;t[17]===o?S=t[18]:(S=o?(0,$.jsx)(`li`,{children:`Opening it in the environment’s browser, which reaches its network`}):null,t[17]=o,t[18]=S);let C;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,$.jsx)(`li`,{children:`Checking the proxy and the firewall`}),t[19]=C):C=t[19];let w;t[20]===S?w=t[21]:(w=(0,$.jsx)(Ye,{children:(0,$.jsxs)(`div`,{className:`mt-6 rounded-lg border border-border bg-muted/40 p-4 text-sm`,children:[y,(0,$.jsxs)(`ul`,{className:`list-disc space-y-1 pl-5 text-muted-foreground`,children:[x,b,S,C]})]})}),t[20]=S,t[21]=w);let T;t[22]!==s||t[23]!==w?(T=(0,$.jsx)(X,{open:s,children:w}),t[22]=s,t[23]=w,t[24]=T):T=t[24];let E;t[25]===m?E=t[26]:(E=(0,$.jsx)(`div`,{className:`mt-8 text-xs uppercase tracking-wide text-muted-foreground/70`,children:m}),t[25]=m,t[26]=E);let D;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>c(At),t[27]=D):D=t[27];let O=s?`Hide details`:`Details`,A;t[28]===O?A=t[29]:(A=(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:D,children:O}),t[28]=O,t[29]=A);let ee;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(`div`,{className:`flex-1`}),t[30]=ee):ee=t[30];let j;t[31]===o?j=t[32]:(j=o?(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:o.onMove,children:o.label}):null,t[31]=o,t[32]=j);let te;t[33]===a?te=t[34]:(te=(0,$.jsx)(k,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[33]=a,t[34]=te);let M;t[35]!==A||t[36]!==j||t[37]!==te?(M=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[A,ee,j,te]}),t[35]=A,t[36]=j,t[37]=te,t[38]=M):M=t[38];let N;return t[39]!==T||t[40]!==E||t[41]!==M||t[42]!==v?(N=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[h,g,v,T,E,M]})}),t[39]=T,t[40]=E,t[41]=M,t[42]=v,t[43]=N):N=t[43],N}function At(e){return!e}function jt(e){let t=(0,Q.c)(5),{className:n}=e,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`path`,{d:`M16 12 L48 12 L48 52 L16 52 Z`}),i=(0,$.jsx)(`path`,{d:`M22 22 L42 22 M22 30 L36 30 M22 38 L40 38`,strokeLinecap:`round`}),a=(0,$.jsx)(`path`,{d:`M52 8 L12 56`,strokeLinecap:`round`}),t[0]=r,t[1]=i,t[2]=a):(r=t[0],i=t[1],a=t[2]);let o;return t[3]===n?o=t[4]:(o=(0,$.jsxs)(`svg`,{viewBox:`0 0 64 64`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:n,children:[r,i,a]}),t[3]=n,t[4]=o),o}function Mt(e){try{return new URL(e).host}catch{return null}}var Nt=1500,Pt=.001;function Ft(e){let t=(0,Q.c)(11),{zoomFactor:n}=e,[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(n),o=(0,Z.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<Pt))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},Nt),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Z.useEffect)(s,c);let l;t[3]===n?l=t[4]:(l=Math.round(n*100),t[3]=n,t[4]=l);let u=`${l}%`,d=!r,f=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,p;t[5]===f?p=t[6]:(p=ne(`pointer-events-none absolute top-3 right-3 z-20 select-none rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-xs font-medium text-foreground shadow-md/10 backdrop-blur transition-all duration-200 ease-out`,f),t[5]=f,t[6]=p);let m;return t[7]!==u||t[8]!==d||t[9]!==p?(m=(0,$.jsx)(`div`,{"aria-hidden":d,className:p,children:u}),t[7]=u,t[8]=d,t[9]=p,t[10]=m):m=t[10],m}function It(e,t){return e.find(e=>e.id===t)?.name??`Removed profile`}var Lt=typeof window>`u`?null:U();function Rt(e){let t=(0,Q.c)(12),n=et(e.threadRef.environmentId),r;t[0]!==n||t[1]!==e.download.id||t[2]!==e.tabId||t[3]!==e.threadRef.threadId?(r=n?tt({access:n,threadId:e.threadRef.threadId,tabId:e.tabId},e.download.id):null,t[0]=n,t[1]=e.download.id,t[2]=e.tabId,t[3]=e.threadRef.threadId,t[4]=r):r=t[4];let i;t[5]===e.url?i=t[6]:(i=()=>void Lt?.shell.openExternal(e.url).catch(zt),t[5]=e.url,t[6]=i);let a;return t[7]!==e.download.fileName||t[8]!==e.url||t[9]!==r||t[10]!==i?(a=(0,$.jsx)(Ot,{url:e.url,fileName:e.download.fileName,downloadUrl:r,onOpen:i}),t[7]=e.download.fileName,t[8]=e.url,t[9]=r,t[10]=i,t[11]=a):a=t[11],a}function zt(){}function Bt({threadRef:e,tabId:t,configuredUrls:n,visible:r,onSendAnnotation:i}){let[s,u]=(0,Z.useState)(void 0),[f,m]=(0,Z.useState)(!1),g=ce(e.environmentId,`orchestration:operate`)&&!!i,_=Re(),v=(0,Z.useRef)(null),y=(0,Z.useRef)(!0),b=(0,Z.useRef)(e);b.current=e;let x=l(e),S=we(e,50),C=a(e=>e.addPreviewAnnotation),w=a(e=>e.addImage),T=oe(e.environmentId),E=T?new URL(T).hostname:null,D=W(Pe.open),O=W(Pe.close,`preview close`),A=H(e.environmentId)?.label??`the environment`,ee=se(),te=ae(e.environmentId),M=W(Pe.resize,`preview viewport resize`),N=W(Pe.adjust,`preview appearance or zoom`);it(e),(0,Z.useEffect)(()=>(y.current=!0,()=>{y.current=!1}),[]);let P=t??x.activeTabId,F=P?Ge(e,x.serverEpoch,P):null,I=P&&F?_.has(F)?F:Ve(e,P):null,L=P?x.sessions[P]??null:null,re=Ce(e.environmentId,L),U=L?.runtime===`server`&&!re,K=L?.runtime===`server`,q=(0,Z.useRef)(null),[de,he]=(0,Z.useState)(!1),ge=(0,Z.useRef)(null),[_e,ve]=(0,Z.useState)(0),ye=L?.runtime===`server`&&(L.viewport??j)._tag!==`fill`;(0,Z.useEffect)(()=>{let e=ge.current;if(e&&ye)return xe(e,([e])=>ve(Math.max(1,Math.round(e?.contentRect.width??0))))},[ye]);let[be,je]=(0,Z.useState)(null),Ne=U&&be!==F,[Le,ze]=(0,Z.useState)(null),J=P?x.desktopByTabId[P]??null:null,X=L?.navStatus??{_tag:`Idle`},Ye=X._tag===`Idle`?``:X.url,Xe=J?.loading??X._tag===`Loading`,et=J?.canGoBack??L?.canGoBack??!1,tt=J?.canGoForward??L?.canGoForward??!1,st=X._tag===`Idle`,Q=X._tag===`LoadFailed`,lt=at(L),dt=U&&!lt&&!Q&&Le!==F,pt=J?.controller??`none`,mt=L?.viewport??j,ht=Ee(),gt=L?.profileId??`default`,_t=It(ht.profiles,gt),vt=Ue(e=>F?e.byTabId[F]?.rect??null:null),yt=X._tag===`Success`?X.url:null,xt=X._tag===`Success`?X.title:null,St=S[0]?.url,Ct=p(e);(0,Z.useEffect)(()=>{yt&&xt&&St&&De(b.current,yt,xt,E)},[E,St,xt,yt,Ct]);let Tt=(0,Z.useCallback)(async t=>{if(U&&q.current)return!Ne&&(q.current.navigate(t),o(e,t),!0);if(F&&Y)return await Y.navigate(F,t),o(e,t),!0;let n=await qe({openPreview:D,threadRef:e,url:t});if(n._tag===`Failure`&&!ie(n)){let e=z(n);e instanceof Se&&V.add({type:`error`,title:`Unable to open browser`,description:e.message})}return n._tag===`Success`},[U,D,F,Ne,e]),Et=(0,Z.useCallback)(async t=>{try{let n=Ie(t);await Tt(n)&&Oe(e,n)}catch{}},[Tt,e]),Dt=(0,Z.useCallback)(async t=>{try{let n=U||!Y?Fe(t):ke(e.environmentId,t);await Tt(n)&&Oe(e,t)}catch{}},[U,Tt,e]),Ot=(0,Z.useCallback)(()=>{U?q.current?.reload():Y&&F&&Y.refresh(F)},[U,F]),At=(0,Z.useCallback)(async t=>{if(!P)return;let n=await N({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:P,...t}});if(n._tag===`Failure`){let e=z(n);V.add({type:`error`,title:`Unable to change the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}h(e,n.value)},[N,P,e]),jt=L?.zoomFactor??1,Mt=(0,Z.useCallback)(e=>{let t=R.indexOf(jt),n=e===0?1:R[Math.min(Math.max((t<0?7:t)+e,0),R.length-1)];n!==jt&&At({zoomFactor:n})},[At,jt]),Nt=(0,Z.useCallback)(()=>{K?Mt(1):Y&&F&&Y.zoomIn(F)},[F,K,Mt]),Pt=(0,Z.useCallback)(()=>{K?Mt(-1):Y&&F&&Y.zoomOut(F)},[F,K,Mt]),zt=(0,Z.useCallback)(()=>{K?Mt(0):Y&&F&&Y.resetZoom(F)},[F,K,Mt]),Bt=(0,Z.useCallback)(async t=>{if(!P)return;let n=await M({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:P,viewport:t}});if(n._tag===`Failure`){let e=z(n);throw V.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}h(e,n.value)},[M,P,e]),Vt=()=>{if(F){if(mt._tag!==`fill`){Ke(F,j).catch(()=>void 0);return}Ke(F,Me({defaults:ht,panelRect:vt,zoomFactor:K?jt:J?.zoomFactor})).catch(()=>void 0)}};(0,Z.useEffect)(()=>{if(F)return Ze(F,Bt)},[Bt,F]);let Ht=(0,Z.useCallback)(()=>{U?q.current?.history(-1):Y&&F&&Y.goBack(F)},[U,F]),Ut=(0,Z.useCallback)(()=>{U?q.current?.history(1):Y&&F&&Y.goForward(F)},[U,F]),Wt=(0,Z.useCallback)(()=>{Lt&&Ye&&Lt.shell.openExternal(Ye).catch(()=>void 0)},[Ye]),Gt=Te(e.environmentId,ee,te,L),Kt=Gt===`server`?`Open in ${A}'s browser`:`Open on this computer`,qt=(0,Z.useCallback)(async()=>{if(!Gt||!P||!L)return;let t=await qe({openPreview:D,threadRef:e,...Ye?{url:Gt===`desktop`?ke(e.environmentId,Ye):Ye}:{},viewport:mt,...L.profileId===void 0?{}:{profileId:L.profileId},runtime:Gt});if(t._tag===`Failure`){if(ie(t))return;let e=z(t);V.add({type:`error`,title:`Unable to move the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}ue.getState().openBrowser(e,t.value.tabId),await rt({closePreview:O,snapshot:L,tabId:P,threadRef:e})},[O,Gt,D,L,P,e,Ye,mt]),Jt=e=>()=>{e&&F&&e(F).catch(()=>void 0)},Yt=K?{hardReload:()=>void At({hardReload:!0}),setColorScheme:e=>void At({colorScheme:e}),zoomIn:Nt,zoomOut:Pt,resetZoom:zt,clearCookies:()=>void At({clear:`cookies`}),clearCache:()=>void At({clear:`cache`}),...re&&Y?{openDevTools:Jt(Y.openDevTools)}:{}}:Y?{hardReload:Jt(Y.hardReload),setColorScheme:e=>{F&&Y?.setColorScheme(F,e).catch(()=>void 0)},zoomIn:Nt,zoomOut:Pt,resetZoom:zt,clearCookies:()=>void Y?.clearCookies(e.environmentId,gt).catch(()=>void 0),clearCache:()=>void Y?.clearCache(e.environmentId,gt).catch(()=>void 0),openDevTools:Jt(Y.openDevTools)}:null,Xt=(0,Z.useCallback)(()=>{Y&&F&&(J?.pictureInPicture?Y.pictureInPicture.close:Y.pictureInPicture.open)(F).catch(e=>{V.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[J?.pictureInPicture,F]),Zt=(0,Z.useCallback)(t=>{if(!Y||!F||!P)return;let n=Y;if(I){Je(I).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){V.update(r,G({type:`error`,title:`Unable to copy recording path`,description:`Clipboard API unavailable.`,actionProps:a}));return}navigator.clipboard.writeText(e.path).then(()=>{t=!0,o(),window.setTimeout(()=>{t=!1,o()},2e3)},e=>{V.update(r,G({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:B(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{V.update(r,G({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i}}}))};r=V.add(G({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i}}}))},e=>{V.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){We(F,e,P).catch(e=>{let t=e instanceof Error?e.message:`An error occurred.`;Be(e)||V.add({type:`error`,title:`Unable to start recording`,description:t})});return}n.captureScreenshot(F).then(e=>{let t={children:B(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{V.update(a,G({type:e,title:n,description:o,actionProps:{children:i?`Copied!`:`Copy image`,disabled:i,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:r?`Copied!`:`Copy path`,disabled:r,onClick:s}}],secondaryActionProps:{...t}}}))},s=()=>{if(!navigator.clipboard?.writeText){o(`error`,`Unable to copy screenshot path`,`Clipboard API unavailable.`);return}navigator.clipboard.writeText(e.path).then(()=>{r=!0,o(),window.setTimeout(()=>{r=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot path`,e instanceof Error?e.message:`An error occurred.`)})},c=()=>{n.copyArtifactToClipboard(e.path).then(()=>{i=!0,o(),window.setTimeout(()=>{i=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot`,e instanceof Error?e.message:`An error occurred.`)})};a=V.add(G({type:`success`,title:`Screenshot saved`,actionProps:{children:`Copy image`,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:`Copy path`,onClick:s}}],secondaryActionProps:{...t}}}))},e=>{V.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[I,F,P,e]),Qt=(0,Z.useCallback)(()=>{if(!Y||!F)return;if(v.current){v.current.cancelled=!0,Y.cancelPickElement(F).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null,n={cancelled:!1},r=!1;v.current=n,m(!0),(async()=>{try{if(await Y.setAnnotationSendEnabled?.(F,!!i&&le(e.environmentId,`orchestration:operate`)),n.cancelled)return;let t=await Y.pickElement(F);if(!t||n.cancelled)return;v.current===n&&(v.current=null,y.current&&m(!1),r=!0);let{annotation:a,submission:o,screenshotFailed:s=!1}=t,c=ut(a),l=s||c.status===`failed`,u=c.status===`failed`?{...a,screenshot:null}:a;C(e,u),l&&V.add(G({type:`error`,title:`Could not capture the picked element`,description:`The annotation was kept without the screenshot.`}));let d=c.status===`captured`?c.file:null,f=d&&u.screenshot?{type:`image`,id:u.id,name:d.name,mimeType:d.type,sizeBytes:d.size,previewUrl:u.screenshot.dataUrl,file:d}:null;f&&w(e,f),o===`send`&&le(e.environmentId,`orchestration:operate`)&&i?.(u,f)}catch{}finally{let e=v.current===n;if(e&&(v.current=null,y.current&&m(!1)),(e||r)&&t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[w,C,i,F,e]);return(0,Z.useEffect)(()=>{f&&Y&&F&&Y.setAnnotationSendEnabled?.(F,g).catch(()=>void 0)},[g,f,F]),(0,Z.useEffect)(()=>()=>{v.current&&(v.current.cancelled=!0,v.current=null,Y&&F&&Y.cancelPickElement(F).catch(()=>void 0),y.current&&m(!1))},[F]),(0,Z.useEffect)(()=>{if(r)return ct(e=>{switch(e){case`refresh`:Ot();return;case`focus-url`:u(e=>(e??0)+1);return;case`zoom-in`:Nt();return;case`zoom-out`:Pt();return;case`reset-zoom`:zt();return;case`toggle-panel`:return}})},[Ot,zt,Nt,Pt,r]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":p(e),children:[(0,$.jsx)(ft,{url:Ye,loading:Xe||dt,canGoBack:et&&!Ne,canGoForward:tt&&!Ne,refreshDisabled:st||Ne,inputDisabled:Ne,focusUrlNonce:s,onBack:Ht,onForward:Ut,onRefresh:Ot,onSubmit:e=>void Et(e),onOpenInBrowser:P?Wt:void 0,onCapture:Y&&P&&!U?Zt:void 0,captureDisabled:!J||Q||J.pictureInPicture,recording:I!==null,onSeparateWindow:Y&&P&&(!K||re)?Xt:void 0,separateWindow:J?.pictureInPicture??!1,separateWindowDisabled:F===null||!K&&!(J?.hasWebContents??!1),onPickElement:Y&&P&&!U?Qt:void 0,pickActive:f,pickDisabled:!P||Q,pickDisabledReason:Q?`Page didn't load — pick unavailable until the page renders`:void 0,leadingActions:gt===ht.profileId?null:(0,$.jsxs)(me,{children:[gt===`incognito`?(0,$.jsx)(fe,{render:(0,$.jsx)(`span`,{role:`img`,"aria-label":_t,className:`flex shrink-0 text-muted-foreground`}),children:(0,$.jsx)(d,{className:`size-4`})}):(0,$.jsx)(fe,{render:(0,$.jsx)(c,{variant:`outline`,className:`max-w-28 shrink-0`}),children:(0,$.jsx)(`span`,{className:`truncate`,children:_t})}),(0,$.jsx)(pe,{side:`top`,children:_t})]}),trailingActions:Yt?(0,$.jsx)(wt,{enabled:F!==null&&(K||(J?.hasWebContents??!1)),actions:Yt,...Gt?{move:{label:Kt,onMove:()=>void qt()}}:{},profileName:_t,zoomFactor:K?jt:J?.zoomFactor??1,colorScheme:K?L?.colorScheme??`system`:J?.colorScheme??`system`,deviceToolbarVisible:mt._tag!==`fill`,onToggleDeviceToolbar:Vt}):null}),(0,$.jsxs)(`div`,{ref:ge,className:`relative min-h-0 flex-1 overflow-hidden`,children:[F&&L&&U?(0,$.jsxs)($.Fragment,{children:[mt._tag!==`fill`&&!lt&&!Q?(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-10`,children:(0,$.jsx)(He,{setting:mt,width:_e,aspectRatio:de?mt.width/mt.height:null,onAspectRatioChange:e=>he(e!==null),onChange:e=>Ke(F,e)})}):null,(0,$.jsx)(`div`,{className:`absolute inset-x-0 bottom-0`,style:{top:mt._tag===`fill`?0:38},children:(0,$.jsx)(ot,{ref:q,environmentId:e.environmentId,threadId:e.threadId,tabId:L.tabId,visible:r,onFirstFrame:()=>ze(F),onControl:e=>je(e?.controller===`you`?F:null),onPopup:t=>$e(e,t,`panel`),className:ne(`absolute inset-0 h-full w-full`,(lt||Q)&&`invisible`)},F)})]}):F&&L&&!lt?Y&&J?.pictureInPicture?(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 p-8 text-center`,children:[(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`Showing in a separate window.`}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(k,{size:`sm`,variant:`outline`,onClick:Xt,children:`Bring back`}),(0,$.jsx)(k,{size:`sm`,variant:`ghost`,onClick:()=>void Y?.pictureInPicture.open(F),children:`Show window`})]})]}):Y?(0,$.jsx)(Qe,{tabId:F,visible:r&&!Q,className:`absolute inset-0 h-full w-full`},F):(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`This tab is open in the P4 Code desktop app.`})}):null,lt?(0,$.jsx)(bt,{threadRef:e,environmentId:e.environmentId,configuredUrls:n,recentEntries:S,onRemoveRecent:t=>Ae(e,t),onOpenUrl:e=>void Dt(e)}):null,L&&J?(0,$.jsx)(Ft,{zoomFactor:J.zoomFactor}):null,F&&J&&!lt&&!Q&&!_.has(F)?(0,$.jsx)(nt,{tabId:F,zoomFactor:J.zoomFactor,controller:pt}):null,X._tag===`LoadFailed`&&X.download?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Rt,{threadRef:e,tabId:L?.tabId??``,url:X.url,download:X.download})}):X._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(kt,{url:X.url,code:X.code,description:X.description,onReload:Ot,...Gt===`server`?{move:{label:Kt,onMove:()=>void qt()}}:{}})}):null]})]})}function Vt(e){let t=(0,Q.c)(18),{mode:n,threadRef:r,tabId:i,configuredUrls:a,visible:o,onSendAnnotation:s}=e,c=Ne(r.environmentId),l=ce(r.environmentId,L);if(!l||!c){let e=l?`Preview is only available in the P4 Code desktop app.`:`Pair this client again with preview access to control browser previews.`,r;t[0]===e?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:e})}),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,$.jsx)(K,{mode:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}let u;t[5]===i?u=t[6]:(u=i===void 0?{}:{tabId:i},t[5]=i,t[6]=u);let d;t[7]===s?d=t[8]:(d=s?{onSendAnnotation:s}:{},t[7]=s,t[8]=d);let f;t[9]!==a||t[10]!==u||t[11]!==d||t[12]!==r||t[13]!==o?(f=(0,$.jsx)(Bt,{threadRef:r,...u,configuredUrls:a,visible:o,...d}),t[9]=a,t[10]=u,t[11]=d,t[12]=r,t[13]=o,t[14]=f):f=t[14];let p;return t[15]!==n||t[16]!==f?(p=(0,$.jsx)(K,{mode:n,children:f}),t[15]=n,t[16]=f,t[17]=p):p=t[17],p}export{Vt as PreviewPanel};
2
- //# sourceMappingURL=PreviewPanel-BziiiQxi.js.map
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$n as n,BE as r,Bp as i,D as a,Ho as o,Jm as s,Kn as c,Ko as l,Kp as u,Nf as d,Pf as f,Qs as p,Qu as m,Wo as h,Xn as g,Xo as _,Yn as v,Yp as y,Zd as b,Zn as x,Zu as S,_d as C,ar as w,cr as T,er as E,gp as D,kf as O,lr as k,mE as A,or as ee,pg as j,pp as te,qn as M,qu as N,rr as P,sr as F,t as ne,tr as I,w_ as L,yg as R,yp as re}from"./utils-B0w8dSf5.js";import{R as ie,W as z}from"./runtime-IzhBj1XN.js";import{b as ae}from"./entities-CrdpKvvL.js";import{ct as B}from"./ChatMarkdown-BWryt4mc.js";import{i as V}from"./toast-BpFMQUQA.js";import{C as oe,O as se,S as H,q as U}from"./useSettings-DPnlKDDE.js";import{i as ce,n as le}from"./session-T5SqAk8t.js";import{t as W}from"./use-atom-command-Da7aNqLc.js";import{u as ue}from"./rightPanelStore-BLSD3K6s.js";import{t as G}from"./toastHelpers-DxXYm50b.js";import{A as K,k as q}from"./PanelLayoutControls-BZJgMEaR.js";import{o as de}from"./timestampFormat-wac2e_Jz.js";import{a as fe,n as pe,t as me}from"./tooltip-CuJiZzK7.js";import{a as he,o as ge,r as _e,t as ve}from"./empty-DeLw5x6B.js";import{n as ye,t as be}from"./discovery-list-CPLxz_C8.js";import{t as xe}from"./observeResize-3DufCT68.js";import{n as Se}from"./openFileInPreview-DLLPDQrM.js";import{T as Ce,a as we,b as Te,f as Ee,i as De,n as Oe,o as ke,r as Ae,t as je,u as Me,w as Ne}from"./browserHistoryStore-D-BdR1Vt.js";import{t as Pe}from"./preview-B9JaNWNp.js";import{n as Fe,r as Ie,t as Le}from"./preview-DL8QWLgw.js";import{Ai as Re,Bi as ze,Di as Be,Ei as Ve,Fi as He,Ni as Ue,Oi as We,Pi as Ge,Ri as Ke,Ta as J,Ui as qe,Wi as Y,fa as X,ki as Je,pa as Ye,qi as Xe,zi as Ze}from"./main-DIQoY6z5.js";import{a as Qe,c as $e,d as et,f as tt,i as nt,l as rt,n as it,o as at,r as ot,s as st,u as ct}from"./_chat-D5CtrZlk.js";var Z=e(t(),1),Q=r(),lt=`data:image/png;base64,`;function ut(e){if(!e.screenshot)return{status:`none`};try{let{dataUrl:t}=e.screenshot;if(!t.startsWith(lt))return{status:`failed`};let n=Xe(t,`preview-annotation-${e.id}.png`,`image/png`);return n.size>0?{status:`captured`,file:n}:{status:`failed`}}catch{return{status:`failed`}}}var $=e(A(),1),dt=()=>{};function ft(e){let t=(0,Q.c)(79),{url:n,loading:r,canGoBack:i,canGoForward:a,refreshDisabled:o,inputDisabled:s,focusUrlNonce:c,onBack:l,onForward:u,onRefresh:d,onSubmit:f,onOpenInBrowser:p,onCapture:h,captureDisabled:g,recording:_,onSeparateWindow:v,separateWindow:y,separateWindowDisabled:x,onPickElement:w,pickActive:T,pickDisabled:E,pickDisabledReason:D,trailingActions:O,leadingActions:A}=e,ee=(0,Z.useRef)(null),[j,te]=(0,Z.useState)(n),[M,P]=(0,Z.useState)(!1),F,I;t[0]===c?(F=t[1],I=t[2]):(F=()=>{if(c==null)return;let e=ee.current;e&&e.focus()},I=[c],t[0]=c,t[1]=F,t[2]=I),(0,Z.useEffect)(F,I);let L;t[3]!==j||t[4]!==f?(L=e=>{e?.preventDefault();let t=j.trim();t.length!==0&&(f(t),ee.current?.blur())},t[3]=j,t[4]=f,t[5]=L):L=t[5];let R=L,ie=i?l:dt,z=!i,ae;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(S,{}),t[6]=ae):ae=t[6];let B;t[7]!==ie||t[8]!==z?(B=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:ie,disabled:z,"aria-label":`Back`,type:`button`,children:ae}),t[7]=ie,t[8]=z,t[9]=B):B=t[9];let V=a?u:dt,oe=!a,se;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(m,{}),t[10]=se):se=t[10];let H;t[11]!==V||t[12]!==oe?(H=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:V,disabled:oe,"aria-label":`Forward`,type:`button`,children:se}),t[11]=V,t[12]=oe,t[13]=H):H=t[13];let U;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(`span`,{"aria-hidden":!0,className:`mx-0.5 h-4 w-px bg-border`}),t[14]=U):U=t[14];let ce=o?dt:d,le=r?`Stop`:`Refresh`,W;t[15]!==o||t[16]!==ce||t[17]!==le?(W=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:ce,disabled:o,"aria-label":le,type:`button`}),t[15]=o,t[16]=ce,t[17]=le,t[18]=W):W=t[18];let ue;t[19]===r?ue=t[20]:(ue=(0,$.jsx)(J,{refreshing:r}),t[19]=r,t[20]=ue);let G;t[21]!==W||t[22]!==ue?(G=(0,$.jsx)(fe,{render:W,children:ue}),t[21]=W,t[22]=ue,t[23]=G):G=t[23];let K=r?`Loading…`:`Refresh`,q;t[24]===K?q=t[25]:(q=(0,$.jsx)(pe,{children:K}),t[24]=K,t[25]=q);let de;t[26]!==G||t[27]!==q?(de=(0,$.jsxs)(me,{children:[G,q]}),t[26]=G,t[27]=q,t[28]=de):de=t[28];let he;t[29]!==H||t[30]!==de||t[31]!==B?(he=(0,$.jsxs)(`div`,{className:`surface-glass flex h-8 shrink-0 items-center gap-0.5 rounded-full border border-border/60 px-1 shadow-sm [&_button]:rounded-full`,role:`group`,"aria-label":`Navigation`,children:[B,H,U,de]}),t[29]=H,t[30]=de,t[31]=B,t[32]=he):he=t[32];let ge=M?j:n,_e;t[33]===Symbol.for(`react.memo_cache_sentinel`)?(_e=e=>te(e.target.value),t[33]=_e):_e=t[33];let ve;t[34]===n?ve=t[35]:(ve=()=>{te(n),P(!0),queueMicrotask(()=>ee.current?.select())},t[34]=n,t[35]=ve);let ye;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(ye=()=>{P(!1)},t[36]=ye):ye=t[36];let be;t[37]!==R||t[38]!==n?(be=e=>{e.key===`Enter`&&R(e),e.key===`Escape`&&(e.preventDefault(),te(n),ee.current?.blur())},t[37]=R,t[38]=n,t[39]=be):be=t[39];let xe;t[40]!==s||t[41]!==ge||t[42]!==ve||t[43]!==be?(xe=(0,$.jsx)(`input`,{ref:ee,value:ge,onChange:_e,onFocus:ve,onBlur:ye,onKeyDown:be,"aria-label":`Address`,placeholder:`Search or enter URL`,spellCheck:!1,disabled:s,"data-preview-url-input":!0,className:`w-full min-w-0 truncate bg-transparent text-center text-sm text-foreground outline-none placeholder:text-muted-foreground focus:text-left`}),t[40]=s,t[41]=ge,t[42]=ve,t[43]=be,t[44]=xe):xe=t[44];let Se;t[45]!==M||t[46]!==p?(Se=p&&!M?(0,$.jsx)(`span`,{className:`pointer-events-none absolute right-1 flex opacity-0 transition-opacity focus-within:pointer-events-auto focus-within:opacity-100 group-hover/address:pointer-events-auto group-hover/address:opacity-100 [&_button]:rounded-full`,children:(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,onClick:p,"aria-label":`Open in system browser`,type:`button`}),children:(0,$.jsx)(b,{})}),(0,$.jsx)(pe,{children:`Open in system browser`})]})}):null,t[45]=M,t[46]=p,t[47]=Se):Se=t[47];let Ce;t[48]!==xe||t[49]!==Se?(Ce=(0,$.jsxs)(`div`,{className:`surface-glass group/address relative flex h-8 min-w-0 flex-1 items-center rounded-full border border-border/60 px-8 shadow-sm transition-colors focus-within:border-ring has-disabled:opacity-64`,children:[xe,Se]}),t[48]=xe,t[49]=Se,t[50]=Ce):Ce=t[50];let we;t[51]!==w||t[52]!==T||t[53]!==E||t[54]!==D?(we=w?(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:w,disabled:E,"aria-label":T?`Cancel annotation`:`Annotate preview`,"aria-pressed":T?`true`:`false`,type:`button`}),children:(0,$.jsx)(re,{className:ne(T&&`text-primary`)})}),(0,$.jsx)(pe,{children:E&&D?D:T?`Cancel annotation (Esc)`:`Annotate elements, regions, and drawings`})]}):null,t[51]=w,t[52]=T,t[53]=E,t[54]=D,t[55]=we):we=t[55];let Te;t[56]!==g||t[57]!==h||t[58]!==_?(Te=h?(0,$.jsxs)(me,{children:[(0,$.jsxs)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:e=>h(e.shiftKey),"aria-label":_?`Stop recording`:`Capture screenshot`,type:`button`,className:`relative`,disabled:g}),children:[(0,$.jsx)(C,{className:ne(_&&`text-destructive`)}),_?(0,$.jsx)(`span`,{className:`absolute right-0.5 top-0.5 size-1.5 animate-status-pulse rounded-full bg-destructive`}):null]}),(0,$.jsx)(pe,{children:_?`Stop recording`:`Screenshot · Shift-click to record`})]}):null,t[56]=g,t[57]=h,t[58]=_,t[59]=Te):Te=t[59];let Ee;t[60]!==v||t[61]!==y||t[62]!==x?(Ee=v?(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,onClick:v,"aria-label":y?`Bring preview back from its window`:`Open preview in a window`,"aria-pressed":y?`true`:`false`,type:`button`,disabled:x}),children:(0,$.jsx)(N,{className:ne(y&&`text-primary`)})}),(0,$.jsx)(pe,{children:y?`Bring back`:`Open in separate window`})]}):null,t[60]=v,t[61]=y,t[62]=x,t[63]=Ee):Ee=t[63];let De;t[64]!==A||t[65]!==R||t[66]!==he||t[67]!==Ce||t[68]!==we||t[69]!==Te||t[70]!==Ee||t[71]!==O?(De=(0,$.jsxs)(`form`,{onSubmit:R,className:`flex h-12 min-h-12 shrink-0 items-center gap-2 border-b border-border/60 bg-background px-2.5 in-data-[preview-panel-mode=inline]:border-b-transparent`,"data-surface-subheader":!0,children:[he,A,Ce,we,Te,Ee,O]}),t[64]=A,t[65]=R,t[66]=he,t[67]=Ce,t[68]=we,t[69]=Te,t[70]=Ee,t[71]=O,t[72]=De):De=t[72];let Oe;t[73]===Symbol.for(`react.memo_cache_sentinel`)?(Oe={boxShadow:`0 0 6px 1px var(--color-ring)`},t[73]=Oe):Oe=t[73];let ke;t[74]===r?ke=t[75]:(ke=(0,$.jsx)(`div`,{"aria-hidden":!0,"data-loading":r,className:`preview-loading-progress pointer-events-none absolute bottom-0 left-0 z-10 h-0.5 w-full origin-left rounded-r-full bg-primary`,style:Oe}),t[74]=r,t[75]=ke);let Ae;return t[76]!==De||t[77]!==ke?(Ae=(0,$.jsxs)(`div`,{className:`relative`,children:[De,ke]}),t[76]=De,t[77]=ke,t[78]=Ae):Ae=t[78],Ae}function pt(e){let t=(0,Q.c)(10),{threadRef:n,server:r,onOpen:i}=e,a;t[0]===r?a=t[1]:(a=mt(r),t[0]=r,t[1]=a);let o=a,s;t[2]!==r.requestedUrl||t[3]!==n?(s=(0,$.jsx)(q,{threadRef:n,url:r.requestedUrl}),t[2]=r.requestedUrl,t[3]=n,t[4]=s):s=t[4];let c=`${r.host}:${r.port}`,l;return t[5]!==i||t[6]!==o||t[7]!==s||t[8]!==c?(l=(0,$.jsx)(ye,{onClick:i,icon:s,title:o,description:c}),t[5]=i,t[6]=o,t[7]=s,t[8]=c,t[9]=l):l=t[9],l}function mt(e){return e.processName?e.processName:`Listening`}function ht(e){let t=(0,Q.c)(26),{threadRef:n,entry:r,onOpen:i,onRemove:a}=e,o;t[0]===r.url?o=t[1]:(o=new URL(r.url),t[0]=r.url,t[1]=o);let c=o,l=c.pathname===`/`?``:c.pathname,u=`${c.host}${l}${c.search}${c.hash}`,d;t[2]===r.lastVisitedAt?d=t[3]:(d=je(r.lastVisitedAt)?de(new Date(r.lastVisitedAt).toISOString()):``,t[2]=r.lastVisitedAt,t[3]=d);let f=d;st();let p;t[4]!==r.url||t[5]!==n?(p=(0,$.jsx)(q,{threadRef:n,url:r.url}),t[4]=r.url,t[5]=n,t[6]=p):p=t[6];let m=r.title??u,h;t[7]===m?h=t[8]:(h=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:m}),t[7]=m,t[8]=h);let g=r.title?`${u} · `:``,_;t[9]!==g||t[10]!==f?(_=(0,$.jsxs)(`span`,{className:`truncate text-xs text-muted-foreground`,children:[g,f]}),t[9]=g,t[10]=f,t[11]=_):_=t[11];let v;t[12]!==h||t[13]!==_?(v=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[h,_]}),t[12]=h,t[13]=_,t[14]=v):v=t[14];let y;t[15]!==i||t[16]!==p||t[17]!==v?(y=(0,$.jsxs)(`button`,{type:`button`,onClick:i,className:`flex w-full items-center gap-3 px-3 py-3 pr-10 text-left hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:[p,v]}),t[15]=i,t[16]=p,t[17]=v,t[18]=y):y=t[18];let b=`Remove ${u} from history`,x;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(s,{className:`size-3.5`}),t[19]=x):x=t[19];let S;t[20]!==a||t[21]!==b?(S=(0,$.jsx)(`button`,{type:`button`,"aria-label":b,onClick:a,className:`absolute right-3 rounded p-1 text-muted-foreground opacity-0 hover:bg-accent hover:text-foreground focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring group-hover:opacity-100`,children:x}),t[20]=a,t[21]=b,t[22]=S):S=t[22];let C;return t[23]!==S||t[24]!==y?(C=(0,$.jsxs)(`div`,{className:`group relative flex w-full items-center`,children:[y,S]}),t[23]=S,t[24]=y,t[25]=C):C=t[25],C}function gt(e){let t=(0,Q.c)(7),n=ze(e.environmentId,e.configuredUrls),r;if(t[0]!==e.configuredUrls||t[1]!==e.environmentId||t[2]!==n.configuredUrlProbing||t[3]!==n.servers){let i;t[5]===e.environmentId?i=t[6]:(i=t=>({...t,url:ke(e.environmentId,t.url),requestedUrl:t.url}),t[5]=e.environmentId,t[6]=i),r=_t({scanner:n.servers.map(i),configuredUrls:e.configuredUrls??[],configuredUrlProbing:n.configuredUrlProbing}),t[0]=e.configuredUrls,t[1]=e.environmentId,t[2]=n.configuredUrlProbing,t[3]=n.servers,t[4]=r}else r=t[4];return r}function _t(e){let t=new Map;for(let n of e.configuredUrls){let e=yt(n);if(!e)continue;let r=vt(e.host,e.port);t.has(r)||t.set(r,e)}let n=[];for(let r of e.scanner){let i=vt(r.host,r.port),a=t.get(i);n.push({...r,requestedUrl:a&&e.configuredUrlProbing===!1?a.url:r.requestedUrl,source:a?`configured`:`scanner`})}return n.toSorted((e,t)=>{let n={configured:0,scanner:1};return n[e.source]===n[t.source]?e.port-t.port:n[e.source]-n[t.source]})}function vt(e,t){let n=e.toLowerCase();return`${Le(n)?`loopback`:n}:${t}`}function yt(e){try{let t=new URL(e);if(t.protocol!==`http:`&&t.protocol!==`https:`||!Le(t.hostname))return null;let n=t.port?Number.parseInt(t.port,10):t.protocol===`http:`?80:443;return!Number.isFinite(n)||n<=0?null:{host:t.hostname,port:n,url:t.href}}catch{return null}}function bt(e){let t=(0,Q.c)(24),{threadRef:n,environmentId:r,configuredUrls:i,recentEntries:a,onRemoveRecent:o,onOpenUrl:s}=e,c;t[0]!==i||t[1]!==r?(c={environmentId:r,configuredUrls:i},t[0]=i,t[1]=r,t[2]=c):c=t[2];let l=gt(c),d,p,m,h;if(t[3]!==s||t[4]!==o||t[5]!==a||t[6]!==l.length||t[7]!==n){h=Symbol.for(`react.early_return_sentinel`);bb0:{let e=a.filter(xt).slice(0,8);if(l.length===0&&e.length===0){let e;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsxs)(ve,{children:[(0,$.jsx)(he,{variant:`icon`,children:(0,$.jsx)(O,{className:`size-4.5 text-muted-foreground`})}),(0,$.jsx)(ge,{children:`No preview yet`}),(0,$.jsx)(_e,{children:`Type a URL above, or run a dev script. Browser-ready localhost servers will show up here automatically.`})]}),t[12]=e):e=t[12],h=e;break bb0}m=`scrollbar-gutter-both flex h-full min-h-0 overflow-y-auto px-5 py-8`,d=`mx-auto flex w-full max-w-xl flex-col gap-6`,p=e.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(f,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Recently used`})]}),(0,$.jsx)(be,{children:e.map(e=>(0,$.jsx)(ht,{threadRef:n,entry:e,onOpen:()=>s(e.url),onRemove:()=>o(e.url)},e.url))})]}):null}t[3]=s,t[4]=o,t[5]=a,t[6]=l.length,t[7]=n,t[8]=d,t[9]=p,t[10]=m,t[11]=h}else d=t[8],p=t[9],m=t[10],h=t[11];if(h!==Symbol.for(`react.early_return_sentinel`))return h;let g;t[13]!==s||t[14]!==l||t[15]!==n?(g=l.length>0?(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(u,{className:`size-4 shrink-0`}),(0,$.jsx)(`h2`,{className:`font-medium`,children:`Local servers`})]}),(0,$.jsx)(be,{children:l.map(e=>(0,$.jsx)(pt,{threadRef:n,server:e,onOpen:()=>s(e.requestedUrl)},`${e.host}:${e.port}`))}),(0,$.jsx)(`p`,{className:`px-1 text-xs text-muted-foreground`,children:`Select a live local server to open it in this browser tab.`})]}):null,t[13]=s,t[14]=l,t[15]=n,t[16]=g):g=t[16];let _;t[17]!==d||t[18]!==p||t[19]!==g?(_=(0,$.jsxs)(`div`,{className:d,children:[p,g]}),t[17]=d,t[18]=p,t[19]=g,t[20]=_):_=t[20];let v;return t[21]!==m||t[22]!==_?(v=(0,$.jsx)(`div`,{className:m,children:_}),t[21]=m,t[22]=_,t[23]=v):v=t[23],v}function xt(e){return URL.canParse(e.url)}var St=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],Ct=()=>{let e=(0,Q.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(me,{children:[(0,$.jsx)(fe,{render:(0,$.jsx)(T,{render:(0,$.jsx)(k,{variant:`glass`,size:`icon`,type:`button`,"aria-label":`Preview menu`})}),children:(0,$.jsx)(D,{})}),(0,$.jsx)(pe,{children:`More`})]}),e[0]=t):t=e[0],t};function wt(e){let t=(0,Q.c)(69),{enabled:r,actions:a,zoomFactor:o,colorScheme:s,deviceToolbarVisible:c,onToggleDeviceToolbar:l,profileName:u,move:d}=e,f;t[0]===o?f=t[1]:(f=Math.round(o*100),t[0]=o,t[1]=f);let p=`${f}%`,m=!r,h;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Ct,{}),t[2]=h):h=t[2];let _;t[3]!==a.hardReload||t[4]!==m?(_=(0,$.jsx)(x,{onClick:a.hardReload,disabled:m,children:`Hard reload`}),t[3]=a.hardReload,t[4]=m,t[5]=_):_=t[5];let b;t[6]!==a.openDevTools||t[7]!==m?(b=a.openDevTools?(0,$.jsx)(x,{onClick:a.openDevTools,disabled:m,children:`Open DevTools`}):null,t[6]=a.openDevTools,t[7]=m,t[8]=b):b=t[8];let S;t[9]===d?S=t[10]:(S=d?(0,$.jsx)(x,{onClick:d.onMove,children:d.label}):null,t[9]=d,t[10]=S);let C=c?`Hide device toolbar`:`Show device toolbar`,T;t[11]!==m||t[12]!==l||t[13]!==C?(T=(0,$.jsx)(x,{onClick:l,disabled:m,children:C}),t[11]=m,t[12]=l,t[13]=C,t[14]=T):T=t[14];let D;t[15]===m?D=t[16]:(D=(0,$.jsx)(F,{disabled:m,children:`Appearance`}),t[15]=m,t[16]=D);let O;t[17]===a?O=t[18]:(O=e=>a.setColorScheme(e),t[17]=a,t[18]=O);let A;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(A=St.map(Et),t[19]=A):A=t[19];let j;t[20]!==s||t[21]!==O?(j=(0,$.jsx)(ee,{children:(0,$.jsx)(E,{value:s,onValueChange:O,children:A})}),t[20]=s,t[21]=O,t[22]=j):j=t[22];let N;t[23]!==j||t[24]!==D?(N=(0,$.jsxs)(w,{children:[D,j]}),t[23]=j,t[24]=D,t[25]=N):N=t[25];let ne;t[26]===Symbol.for(`react.memo_cache_sentinel`)?(ne=(0,$.jsx)(P,{}),t[26]=ne):ne=t[26];let I;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(`span`,{children:`Zoom`}),t[27]=I):I=t[27];let L;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(te,{}),t[28]=L):L=t[28];let R;t[29]!==a.zoomOut||t[30]!==m?(R=(0,$.jsx)(k,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:a.zoomOut,"aria-label":`Zoom out`,disabled:m,children:L}),t[29]=a.zoomOut,t[30]=m,t[31]=R):R=t[31];let re;t[32]===p?re=t[33]:(re=(0,$.jsx)(`span`,{className:`min-w-12 text-center text-xs tabular-nums text-muted-foreground`,children:p}),t[32]=p,t[33]=re);let ie;t[34]===Symbol.for(`react.memo_cache_sentinel`)?(ie=(0,$.jsx)(i,{}),t[34]=ie):ie=t[34];let z;t[35]!==a.zoomIn||t[36]!==m?(z=(0,$.jsx)(k,{variant:`outline`,size:`icon-xs`,type:`button`,onClick:a.zoomIn,"aria-label":`Zoom in`,disabled:m,children:ie}),t[35]=a.zoomIn,t[36]=m,t[37]=z):z=t[37];let ae;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(y,{}),t[38]=ae):ae=t[38];let B;t[39]!==a.resetZoom||t[40]!==m?(B=(0,$.jsx)(k,{variant:`ghost`,size:`icon-xs`,type:`button`,onClick:a.resetZoom,"aria-label":`Reset zoom`,disabled:m,children:ae}),t[39]=a.resetZoom,t[40]=m,t[41]=B):B=t[41];let V;t[42]!==R||t[43]!==re||t[44]!==z||t[45]!==B?(V=(0,$.jsxs)(`span`,{className:`flex items-center gap-1`,children:[R,re,z,B]}),t[42]=R,t[43]=re,t[44]=z,t[45]=B,t[46]=V):V=t[46];let oe;t[47]!==m||t[48]!==V?(oe=(0,$.jsxs)(x,{closeOnClick:!1,onClick:Tt,className:`justify-between`,disabled:m,children:[I,V]}),t[47]=m,t[48]=V,t[49]=oe):oe=t[49];let se;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(se=(0,$.jsx)(P,{}),t[50]=se):se=t[50];let H;t[51]===u?H=t[52]:(H=u?(0,$.jsx)(g,{className:`max-w-64`,children:(0,$.jsxs)(`span`,{className:`block truncate`,children:[`Profile: `,u]})}):null,t[51]=u,t[52]=H);let U;t[53]===a.clearCookies?U=t[54]:(U=(0,$.jsx)(x,{onClick:a.clearCookies,children:`Clear cookies`}),t[53]=a.clearCookies,t[54]=U);let ce;t[55]===a.clearCache?ce=t[56]:(ce=(0,$.jsx)(x,{onClick:a.clearCache,children:`Clear cache`}),t[55]=a.clearCache,t[56]=ce);let le;t[57]!==H||t[58]!==U||t[59]!==ce?(le=(0,$.jsxs)(v,{children:[H,U,ce]}),t[57]=H,t[58]=U,t[59]=ce,t[60]=le):le=t[60];let W;return t[61]!==N||t[62]!==oe||t[63]!==le||t[64]!==_||t[65]!==b||t[66]!==S||t[67]!==T?(W=(0,$.jsxs)(M,{children:[h,(0,$.jsxs)(n,{align:`end`,sideOffset:6,children:[_,b,S,T,N,ne,oe,se,le]})]}),t[61]=N,t[62]=oe,t[63]=le,t[64]=_,t[65]=b,t[66]=S,t[67]=T,t[68]=W):W=t[68],W}function Tt(e){return e.preventDefault()}function Et(e){return(0,$.jsx)(I,{value:e.value,children:e.label},e.value)}function Dt(e){return _[e]||(e.length>0?e:`Network error`)}function Ot(e){let t=(0,Q.c)(21),{url:n,fileName:r,downloadUrl:i,onOpen:a}=e,o;t[0]===n?o=t[1]:(o=Mt(n)??n,t[0]=n,t[1]=o);let s=o,c,l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(jt,{className:`mb-6 size-12 text-muted-foreground/70`}),l=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This file can’t be shown here`}),t[2]=c,t[3]=l):(c=t[2],l=t[3]);let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:r}),t[4]=r,t[5]=u);let d;t[6]!==s||t[7]!==u?(d=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[u,` from `,s,` was downloaded instead.`]}),t[6]=s,t[7]=u,t[8]=d):d=t[8];let f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(`div`,{className:`flex-1`}),t[9]=f):f=t[9];let p;t[10]===a?p=t[11]:(p=(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:a,children:`Open in browser`}),t[10]=a,t[11]=p);let m;t[12]!==i||t[13]!==r?(m=i?(0,$.jsx)(k,{type:`button`,size:`sm`,render:(0,$.jsx)(`a`,{href:i,download:r}),children:`Download`}):null,t[12]=i,t[13]=r,t[14]=m):m=t[14];let h;t[15]!==p||t[16]!==m?(h=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[f,p,m]}),t[15]=p,t[16]=m,t[17]=h):h=t[17];let g;return t[18]!==d||t[19]!==h?(g=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[c,l,d,h]})}),t[18]=d,t[19]=h,t[20]=g):g=t[20],g}function kt(e){let t=(0,Q.c)(44),{url:n,code:r,description:i,onReload:a,move:o}=e,[s,c]=(0,Z.useState)(!1),l;t[0]===n?l=t[1]:(l=Mt(n)??n,t[0]=n,t[1]=l);let u=l,d;t[2]===i?d=t[3]:(d=Dt(i),t[2]=i,t[3]=d);let f=d,p;t[4]!==r||t[5]!==i?(p=i.length>0?i:`ERR_${Math.abs(r)||`FAILED`}`,t[4]=r,t[5]=i,t[6]=p):p=t[6];let m=p,h,g;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(jt,{className:`mb-6 size-12 text-muted-foreground/70`}),g=(0,$.jsx)(`h1`,{className:`mb-3 text-2xl font-semibold leading-tight text-foreground`,children:`This site can’t be reached`}),t[7]=h,t[8]=g):(h=t[7],g=t[8]);let _;t[9]===u?_=t[10]:(_=(0,$.jsx)(`span`,{className:`font-semibold text-foreground`,children:u}),t[9]=u,t[10]=_);let v;t[11]!==f||t[12]!==_?(v=(0,$.jsxs)(`p`,{className:`text-sm leading-relaxed text-muted-foreground`,children:[_,`: `,f,`.`]}),t[11]=f,t[12]=_,t[13]=v):v=t[13];let y;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(`p`,{className:`mb-2 font-medium text-foreground`,children:`Try:`}),t[14]=y):y=t[14];let b,x;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`li`,{children:`Checking your connection`}),b=(0,$.jsx)(`li`,{children:`Confirming the dev server is running`}),t[15]=b,t[16]=x):(b=t[15],x=t[16]);let S;t[17]===o?S=t[18]:(S=o?(0,$.jsx)(`li`,{children:`Opening it in the environment’s browser, which reaches its network`}):null,t[17]=o,t[18]=S);let C;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,$.jsx)(`li`,{children:`Checking the proxy and the firewall`}),t[19]=C):C=t[19];let w;t[20]===S?w=t[21]:(w=(0,$.jsx)(Ye,{children:(0,$.jsxs)(`div`,{className:`mt-6 rounded-lg border border-border bg-muted/40 p-4 text-sm`,children:[y,(0,$.jsxs)(`ul`,{className:`list-disc space-y-1 pl-5 text-muted-foreground`,children:[x,b,S,C]})]})}),t[20]=S,t[21]=w);let T;t[22]!==s||t[23]!==w?(T=(0,$.jsx)(X,{open:s,children:w}),t[22]=s,t[23]=w,t[24]=T):T=t[24];let E;t[25]===m?E=t[26]:(E=(0,$.jsx)(`div`,{className:`mt-8 text-xs uppercase tracking-wide text-muted-foreground/70`,children:m}),t[25]=m,t[26]=E);let D;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(D=()=>c(At),t[27]=D):D=t[27];let O=s?`Hide details`:`Details`,A;t[28]===O?A=t[29]:(A=(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:D,children:O}),t[28]=O,t[29]=A);let ee;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(`div`,{className:`flex-1`}),t[30]=ee):ee=t[30];let j;t[31]===o?j=t[32]:(j=o?(0,$.jsx)(k,{type:`button`,variant:`outline`,size:`sm`,onClick:o.onMove,children:o.label}):null,t[31]=o,t[32]=j);let te;t[33]===a?te=t[34]:(te=(0,$.jsx)(k,{type:`button`,size:`sm`,onClick:a,children:`Reload`}),t[33]=a,t[34]=te);let M;t[35]!==A||t[36]!==j||t[37]!==te?(M=(0,$.jsxs)(`div`,{className:`mt-auto flex items-center gap-2 pt-8`,children:[A,ee,j,te]}),t[35]=A,t[36]=j,t[37]=te,t[38]=M):M=t[38];let N;return t[39]!==T||t[40]!==E||t[41]!==M||t[42]!==v?(N=(0,$.jsx)(`div`,{className:`scrollbar-gutter-both relative flex h-full min-h-0 w-full overflow-y-auto bg-background`,children:(0,$.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-1 flex-col px-8 py-12 sm:py-16`,children:[h,g,v,T,E,M]})}),t[39]=T,t[40]=E,t[41]=M,t[42]=v,t[43]=N):N=t[43],N}function At(e){return!e}function jt(e){let t=(0,Q.c)(5),{className:n}=e,r,i,a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,$.jsx)(`path`,{d:`M16 12 L48 12 L48 52 L16 52 Z`}),i=(0,$.jsx)(`path`,{d:`M22 22 L42 22 M22 30 L36 30 M22 38 L40 38`,strokeLinecap:`round`}),a=(0,$.jsx)(`path`,{d:`M52 8 L12 56`,strokeLinecap:`round`}),t[0]=r,t[1]=i,t[2]=a):(r=t[0],i=t[1],a=t[2]);let o;return t[3]===n?o=t[4]:(o=(0,$.jsxs)(`svg`,{viewBox:`0 0 64 64`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:n,children:[r,i,a]}),t[3]=n,t[4]=o),o}function Mt(e){try{return new URL(e).host}catch{return null}}var Nt=1500,Pt=.001;function Ft(e){let t=(0,Q.c)(11),{zoomFactor:n}=e,[r,i]=(0,Z.useState)(!1),a=(0,Z.useRef)(n),o=(0,Z.useRef)(null),s,c;t[0]===n?(s=t[1],c=t[2]):(s=()=>{if(!(Math.abs(a.current-n)<Pt))return a.current=n,i(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{i(!1),o.current=null},Nt),()=>{o.current!==null&&(window.clearTimeout(o.current),o.current=null)}},c=[n],t[0]=n,t[1]=s,t[2]=c),(0,Z.useEffect)(s,c);let l;t[3]===n?l=t[4]:(l=Math.round(n*100),t[3]=n,t[4]=l);let u=`${l}%`,d=!r,f=r?`opacity-100 translate-y-0`:`opacity-0 -translate-y-1`,p;t[5]===f?p=t[6]:(p=ne(`pointer-events-none absolute top-3 right-3 z-20 select-none rounded-full border border-border/70 bg-popover/95 px-2.5 py-1 text-xs font-medium text-foreground shadow-md/10 backdrop-blur transition-all duration-200 ease-out`,f),t[5]=f,t[6]=p);let m;return t[7]!==u||t[8]!==d||t[9]!==p?(m=(0,$.jsx)(`div`,{"aria-hidden":d,className:p,children:u}),t[7]=u,t[8]=d,t[9]=p,t[10]=m):m=t[10],m}function It(e,t){return e.find(e=>e.id===t)?.name??`Removed profile`}var Lt=typeof window>`u`?null:U();function Rt(e){let t=(0,Q.c)(12),n=et(e.threadRef.environmentId),r;t[0]!==n||t[1]!==e.download.id||t[2]!==e.tabId||t[3]!==e.threadRef.threadId?(r=n?tt({access:n,threadId:e.threadRef.threadId,tabId:e.tabId},e.download.id):null,t[0]=n,t[1]=e.download.id,t[2]=e.tabId,t[3]=e.threadRef.threadId,t[4]=r):r=t[4];let i;t[5]===e.url?i=t[6]:(i=()=>void Lt?.shell.openExternal(e.url).catch(zt),t[5]=e.url,t[6]=i);let a;return t[7]!==e.download.fileName||t[8]!==e.url||t[9]!==r||t[10]!==i?(a=(0,$.jsx)(Ot,{url:e.url,fileName:e.download.fileName,downloadUrl:r,onOpen:i}),t[7]=e.download.fileName,t[8]=e.url,t[9]=r,t[10]=i,t[11]=a):a=t[11],a}function zt(){}function Bt({threadRef:e,tabId:t,configuredUrls:n,visible:r,onSendAnnotation:i}){let[s,u]=(0,Z.useState)(void 0),[f,m]=(0,Z.useState)(!1),g=ce(e.environmentId,`orchestration:operate`)&&!!i,_=Re(),v=(0,Z.useRef)(null),y=(0,Z.useRef)(!0),b=(0,Z.useRef)(e);b.current=e;let x=l(e),S=we(e,50),C=a(e=>e.addPreviewAnnotation),w=a(e=>e.addImage),T=oe(e.environmentId),E=T?new URL(T).hostname:null,D=W(Pe.open),O=W(Pe.close,`preview close`),A=H(e.environmentId)?.label??`the environment`,ee=se(),te=ae(e.environmentId),M=W(Pe.resize,`preview viewport resize`),N=W(Pe.adjust,`preview appearance or zoom`);it(e),(0,Z.useEffect)(()=>(y.current=!0,()=>{y.current=!1}),[]);let P=t??x.activeTabId,F=P?Ge(e,x.serverEpoch,P):null,I=P&&F?_.has(F)?F:Ve(e,P):null,L=P?x.sessions[P]??null:null,re=Ce(e.environmentId,L),U=L?.runtime===`server`&&!re,K=L?.runtime===`server`,q=(0,Z.useRef)(null),[de,he]=(0,Z.useState)(!1),ge=(0,Z.useRef)(null),[_e,ve]=(0,Z.useState)(0),ye=L?.runtime===`server`&&(L.viewport??j)._tag!==`fill`;(0,Z.useEffect)(()=>{let e=ge.current;if(e&&ye)return xe(e,([e])=>ve(Math.max(1,Math.round(e?.contentRect.width??0))))},[ye]);let[be,je]=(0,Z.useState)(null),Ne=U&&be!==F,[Le,ze]=(0,Z.useState)(null),J=P?x.desktopByTabId[P]??null:null,X=L?.navStatus??{_tag:`Idle`},Ye=X._tag===`Idle`?``:X.url,Xe=J?.loading??X._tag===`Loading`,et=J?.canGoBack??L?.canGoBack??!1,tt=J?.canGoForward??L?.canGoForward??!1,st=X._tag===`Idle`,Q=X._tag===`LoadFailed`,lt=at(L),dt=U&&!lt&&!Q&&Le!==F,pt=J?.controller??`none`,mt=L?.viewport??j,ht=Ee(),gt=L?.profileId??`default`,_t=It(ht.profiles,gt),vt=Ue(e=>F?e.byTabId[F]?.rect??null:null),yt=X._tag===`Success`?X.url:null,xt=X._tag===`Success`?X.title:null,St=S[0]?.url,Ct=p(e);(0,Z.useEffect)(()=>{yt&&xt&&St&&De(b.current,yt,xt,E)},[E,St,xt,yt,Ct]);let Tt=(0,Z.useCallback)(async t=>{if(U&&q.current)return!Ne&&(q.current.navigate(t),o(e,t),!0);if(F&&Y)return await Y.navigate(F,t),o(e,t),!0;let n=await qe({openPreview:D,threadRef:e,url:t});if(n._tag===`Failure`&&!ie(n)){let e=z(n);e instanceof Se&&V.add({type:`error`,title:`Unable to open browser`,description:e.message})}return n._tag===`Success`},[U,D,F,Ne,e]),Et=(0,Z.useCallback)(async t=>{try{let n=Ie(t);await Tt(n)&&Oe(e,n)}catch{}},[Tt,e]),Dt=(0,Z.useCallback)(async t=>{try{let n=U||!Y?Fe(t):ke(e.environmentId,t);await Tt(n)&&Oe(e,t)}catch{}},[U,Tt,e]),Ot=(0,Z.useCallback)(()=>{U?q.current?.reload():Y&&F&&Y.refresh(F)},[U,F]),At=(0,Z.useCallback)(async t=>{if(!P)return;let n=await N({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:P,...t}});if(n._tag===`Failure`){let e=z(n);V.add({type:`error`,title:`Unable to change the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}h(e,n.value)},[N,P,e]),jt=L?.zoomFactor??1,Mt=(0,Z.useCallback)(e=>{let t=R.indexOf(jt),n=e===0?1:R[Math.min(Math.max((t<0?7:t)+e,0),R.length-1)];n!==jt&&At({zoomFactor:n})},[At,jt]),Nt=(0,Z.useCallback)(()=>{K?Mt(1):Y&&F&&Y.zoomIn(F)},[F,K,Mt]),Pt=(0,Z.useCallback)(()=>{K?Mt(-1):Y&&F&&Y.zoomOut(F)},[F,K,Mt]),zt=(0,Z.useCallback)(()=>{K?Mt(0):Y&&F&&Y.resetZoom(F)},[F,K,Mt]),Bt=(0,Z.useCallback)(async t=>{if(!P)return;let n=await M({environmentId:e.environmentId,input:{threadId:e.threadId,tabId:P,viewport:t}});if(n._tag===`Failure`){let e=z(n);throw V.add({type:`error`,title:`Unable to resize browser viewport`,description:e instanceof Error?e.message:`An error occurred.`}),e}h(e,n.value)},[M,P,e]),Vt=()=>{if(F){if(mt._tag!==`fill`){Ke(F,j).catch(()=>void 0);return}Ke(F,Me({defaults:ht,panelRect:vt,zoomFactor:K?jt:J?.zoomFactor})).catch(()=>void 0)}};(0,Z.useEffect)(()=>{if(F)return Ze(F,Bt)},[Bt,F]);let Ht=(0,Z.useCallback)(()=>{U?q.current?.history(-1):Y&&F&&Y.goBack(F)},[U,F]),Ut=(0,Z.useCallback)(()=>{U?q.current?.history(1):Y&&F&&Y.goForward(F)},[U,F]),Wt=(0,Z.useCallback)(()=>{Lt&&Ye&&Lt.shell.openExternal(Ye).catch(()=>void 0)},[Ye]),Gt=Te(e.environmentId,ee,te,L),Kt=Gt===`server`?`Open in ${A}'s browser`:`Open on this computer`,qt=(0,Z.useCallback)(async()=>{if(!Gt||!P||!L)return;let t=await qe({openPreview:D,threadRef:e,...Ye?{url:Gt===`desktop`?ke(e.environmentId,Ye):Ye}:{},viewport:mt,...L.profileId===void 0?{}:{profileId:L.profileId},runtime:Gt});if(t._tag===`Failure`){if(ie(t))return;let e=z(t);V.add({type:`error`,title:`Unable to move the browser tab`,description:e instanceof Error?e.message:`An error occurred.`});return}ue.getState().openBrowser(e,t.value.tabId),await rt({closePreview:O,snapshot:L,tabId:P,threadRef:e})},[O,Gt,D,L,P,e,Ye,mt]),Jt=e=>()=>{e&&F&&e(F).catch(()=>void 0)},Yt=K?{hardReload:()=>void At({hardReload:!0}),setColorScheme:e=>void At({colorScheme:e}),zoomIn:Nt,zoomOut:Pt,resetZoom:zt,clearCookies:()=>void At({clear:`cookies`}),clearCache:()=>void At({clear:`cache`}),...re&&Y?{openDevTools:Jt(Y.openDevTools)}:{}}:Y?{hardReload:Jt(Y.hardReload),setColorScheme:e=>{F&&Y?.setColorScheme(F,e).catch(()=>void 0)},zoomIn:Nt,zoomOut:Pt,resetZoom:zt,clearCookies:()=>void Y?.clearCookies(e.environmentId,gt).catch(()=>void 0),clearCache:()=>void Y?.clearCache(e.environmentId,gt).catch(()=>void 0),openDevTools:Jt(Y.openDevTools)}:null,Xt=(0,Z.useCallback)(()=>{Y&&F&&(J?.pictureInPicture?Y.pictureInPicture.close:Y.pictureInPicture.open)(F).catch(e=>{V.add({type:`error`,title:`Unable to update popped-out preview`,description:e instanceof Error?e.message:`An error occurred.`})})},[J?.pictureInPicture,F]),Zt=(0,Z.useCallback)(t=>{if(!Y||!F||!P)return;let n=Y;if(I){Je(I).then(e=>{if(!e)return;let t=!1,r,i=()=>{if(!navigator.clipboard?.writeText){V.update(r,G({type:`error`,title:`Unable to copy recording path`,description:`Clipboard API unavailable.`,actionProps:a}));return}navigator.clipboard.writeText(e.path).then(()=>{t=!0,o(),window.setTimeout(()=>{t=!1,o()},2e3)},e=>{V.update(r,G({type:`error`,title:`Unable to copy recording path`,description:e instanceof Error?e.message:`An error occurred.`,actionProps:a}))})},a={children:B(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},o=()=>{V.update(r,G({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:t?`Copied!`:`Copy path`,disabled:t,onClick:i}}}))};r=V.add(G({type:`success`,title:`Recording saved`,actionProps:a,data:{secondaryActionProps:{children:`Copy path`,onClick:i}}}))},e=>{V.add({type:`error`,title:`Unable to stop recording`,description:e instanceof Error?e.message:`An error occurred.`})});return}if(t){We(F,e,P).catch(e=>{let t=e instanceof Error?e.message:`An error occurred.`;Be(e)||V.add({type:`error`,title:`Unable to start recording`,description:t})});return}n.captureScreenshot(F).then(e=>{let t={children:B(navigator.platform),onClick:()=>void n.revealArtifact(e.path)},r=!1,i=!1,a,o=(e=`success`,n=`Screenshot saved`,o)=>{V.update(a,G({type:e,title:n,description:o,actionProps:{children:i?`Copied!`:`Copy image`,disabled:i,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:r?`Copied!`:`Copy path`,disabled:r,onClick:s}}],secondaryActionProps:{...t}}}))},s=()=>{if(!navigator.clipboard?.writeText){o(`error`,`Unable to copy screenshot path`,`Clipboard API unavailable.`);return}navigator.clipboard.writeText(e.path).then(()=>{r=!0,o(),window.setTimeout(()=>{r=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot path`,e instanceof Error?e.message:`An error occurred.`)})},c=()=>{n.copyArtifactToClipboard(e.path).then(()=>{i=!0,o(),window.setTimeout(()=>{i=!1,o()},2e3)},e=>{o(`error`,`Unable to copy screenshot`,e instanceof Error?e.message:`An error occurred.`)})};a=V.add(G({type:`success`,title:`Screenshot saved`,actionProps:{children:`Copy image`,onClick:c},data:{additionalActions:[{id:`copy-path`,props:{children:`Copy path`,onClick:s}}],secondaryActionProps:{...t}}}))},e=>{V.add({type:`error`,title:`Unable to capture screenshot`,description:e instanceof Error?e.message:`An error occurred.`})})},[I,F,P,e]),Qt=(0,Z.useCallback)(()=>{if(!Y||!F)return;if(v.current){v.current.cancelled=!0,Y.cancelPickElement(F).catch(()=>void 0);return}let t=typeof document<`u`?document.activeElement:null,n={cancelled:!1},r=!1;v.current=n,m(!0),(async()=>{try{if(await Y.setAnnotationSendEnabled?.(F,!!i&&le(e.environmentId,`orchestration:operate`)),n.cancelled)return;let t=await Y.pickElement(F);if(!t||n.cancelled)return;v.current===n&&(v.current=null,y.current&&m(!1),r=!0);let{annotation:a,submission:o,screenshotFailed:s=!1}=t,c=ut(a),l=s||c.status===`failed`,u=c.status===`failed`?{...a,screenshot:null}:a;C(e,u),l&&V.add(G({type:`error`,title:`Could not capture the picked element`,description:`The annotation was kept without the screenshot.`}));let d=c.status===`captured`?c.file:null,f=d&&u.screenshot?{type:`image`,id:u.id,name:d.name,mimeType:d.type,sizeBytes:d.size,previewUrl:u.screenshot.dataUrl,file:d}:null;f&&w(e,f),o===`send`&&le(e.environmentId,`orchestration:operate`)&&i?.(u,f)}catch{}finally{let e=v.current===n;if(e&&(v.current=null,y.current&&m(!1)),(e||r)&&t&&t.isConnected&&typeof t.focus==`function`)try{t.focus({preventScroll:!0})}catch{}}})()},[w,C,i,F,e]);return(0,Z.useEffect)(()=>{f&&Y&&F&&Y.setAnnotationSendEnabled?.(F,g).catch(()=>void 0)},[g,f,F]),(0,Z.useEffect)(()=>()=>{v.current&&(v.current.cancelled=!0,v.current=null,Y&&F&&Y.cancelPickElement(F).catch(()=>void 0),y.current&&m(!1))},[F]),(0,Z.useEffect)(()=>{if(r)return ct(e=>{switch(e){case`refresh`:Ot();return;case`focus-url`:u(e=>(e??0)+1);return;case`zoom-in`:Nt();return;case`zoom-out`:Pt();return;case`reset-zoom`:zt();return;case`toggle-panel`:return}})},[Ot,zt,Nt,Pt,r]),(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col bg-background`,"data-thread-key":p(e),children:[(0,$.jsx)(ft,{url:Ye,loading:Xe||dt,canGoBack:et&&!Ne,canGoForward:tt&&!Ne,refreshDisabled:st||Ne,inputDisabled:Ne,focusUrlNonce:s,onBack:Ht,onForward:Ut,onRefresh:Ot,onSubmit:e=>void Et(e),onOpenInBrowser:P?Wt:void 0,onCapture:Y&&P&&!U?Zt:void 0,captureDisabled:!J||Q||J.pictureInPicture,recording:I!==null,onSeparateWindow:Y&&P&&(!K||re)?Xt:void 0,separateWindow:J?.pictureInPicture??!1,separateWindowDisabled:F===null||!K&&!(J?.hasWebContents??!1),onPickElement:Y&&P&&!U?Qt:void 0,pickActive:f,pickDisabled:!P||Q,pickDisabledReason:Q?`Page didn't load — pick unavailable until the page renders`:void 0,leadingActions:gt===ht.profileId?null:(0,$.jsxs)(me,{children:[gt===`incognito`?(0,$.jsx)(fe,{render:(0,$.jsx)(`span`,{role:`img`,"aria-label":_t,className:`flex shrink-0 text-muted-foreground`}),children:(0,$.jsx)(d,{className:`size-4`})}):(0,$.jsx)(fe,{render:(0,$.jsx)(c,{variant:`outline`,className:`max-w-28 shrink-0`}),children:(0,$.jsx)(`span`,{className:`truncate`,children:_t})}),(0,$.jsx)(pe,{side:`top`,children:_t})]}),trailingActions:Yt?(0,$.jsx)(wt,{enabled:F!==null&&(K||(J?.hasWebContents??!1)),actions:Yt,...Gt?{move:{label:Kt,onMove:()=>void qt()}}:{},profileName:_t,zoomFactor:K?jt:J?.zoomFactor??1,colorScheme:K?L?.colorScheme??`system`:J?.colorScheme??`system`,deviceToolbarVisible:mt._tag!==`fill`,onToggleDeviceToolbar:Vt}):null}),(0,$.jsxs)(`div`,{ref:ge,className:`relative min-h-0 flex-1 overflow-hidden`,children:[F&&L&&U?(0,$.jsxs)($.Fragment,{children:[mt._tag!==`fill`&&!lt&&!Q?(0,$.jsx)(`div`,{className:`absolute inset-x-0 top-0 z-10`,children:(0,$.jsx)(He,{setting:mt,width:_e,aspectRatio:de?mt.width/mt.height:null,onAspectRatioChange:e=>he(e!==null),onChange:e=>Ke(F,e)})}):null,(0,$.jsx)(`div`,{className:`absolute inset-x-0 bottom-0`,style:{top:mt._tag===`fill`?0:38},children:(0,$.jsx)(ot,{ref:q,environmentId:e.environmentId,threadId:e.threadId,tabId:L.tabId,visible:r,onFirstFrame:()=>ze(F),onControl:e=>je(e?.controller===`you`?F:null),onPopup:t=>$e(e,t,`panel`),className:ne(`absolute inset-0 h-full w-full`,(lt||Q)&&`invisible`)},F)})]}):F&&L&&!lt?Y&&J?.pictureInPicture?(0,$.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 p-8 text-center`,children:[(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`Showing in a separate window.`}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(k,{size:`sm`,variant:`outline`,onClick:Xt,children:`Bring back`}),(0,$.jsx)(k,{size:`sm`,variant:`ghost`,onClick:()=>void Y?.pictureInPicture.open(F),children:`Show window`})]})]}):Y?(0,$.jsx)(Qe,{tabId:F,visible:r&&!Q,className:`absolute inset-0 h-full w-full`},F):(0,$.jsx)(`div`,{className:`flex h-full items-center justify-center p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:`This tab is open in the P4 Code desktop app.`})}):null,lt?(0,$.jsx)(bt,{threadRef:e,environmentId:e.environmentId,configuredUrls:n,recentEntries:S,onRemoveRecent:t=>Ae(e,t),onOpenUrl:e=>void Dt(e)}):null,L&&J?(0,$.jsx)(Ft,{zoomFactor:J.zoomFactor}):null,F&&J&&!lt&&!Q&&!_.has(F)?(0,$.jsx)(nt,{tabId:F,zoomFactor:J.zoomFactor,controller:pt}):null,X._tag===`LoadFailed`&&X.download?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(Rt,{threadRef:e,tabId:L?.tabId??``,url:X.url,download:X.download})}):X._tag===`LoadFailed`?(0,$.jsx)(`div`,{className:`absolute inset-0 z-10 bg-background`,children:(0,$.jsx)(kt,{url:X.url,code:X.code,description:X.description,onReload:Ot,...Gt===`server`?{move:{label:Kt,onMove:()=>void qt()}}:{}})}):null]})]})}function Vt(e){let t=(0,Q.c)(18),{mode:n,threadRef:r,tabId:i,configuredUrls:a,visible:o,onSendAnnotation:s}=e,c=Ne(r.environmentId),l=ce(r.environmentId,L);if(!l||!c){let e=l?`Preview is only available in the P4 Code desktop app.`:`Pair this client again with preview access to control browser previews.`,r;t[0]===e?r=t[1]:(r=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-3 p-8 text-center`,children:(0,$.jsx)(`p`,{className:`max-w-sm text-sm text-muted-foreground`,children:e})}),t[0]=e,t[1]=r);let i;return t[2]!==n||t[3]!==r?(i=(0,$.jsx)(K,{mode:n,children:r}),t[2]=n,t[3]=r,t[4]=i):i=t[4],i}let u;t[5]===i?u=t[6]:(u=i===void 0?{}:{tabId:i},t[5]=i,t[6]=u);let d;t[7]===s?d=t[8]:(d=s?{onSendAnnotation:s}:{},t[7]=s,t[8]=d);let f;t[9]!==a||t[10]!==u||t[11]!==d||t[12]!==r||t[13]!==o?(f=(0,$.jsx)(Bt,{threadRef:r,...u,configuredUrls:a,visible:o,...d}),t[9]=a,t[10]=u,t[11]=d,t[12]=r,t[13]=o,t[14]=f):f=t[14];let p;return t[15]!==n||t[16]!==f?(p=(0,$.jsx)(K,{mode:n,children:f}),t[15]=n,t[16]=f,t[17]=p):p=t[17],p}export{Vt as PreviewPanel};
2
+ //# sourceMappingURL=PreviewPanel-C-ReuOpI.js.map
@@ -1,2 +1,2 @@
1
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{BE as t,Ht as ee,Jt as te,Kt as n,Ns as ne,Nt as re,Vt as ie,gh as r,mE as i,nn as ae}from"./utils-B0w8dSf5.js";import{a,c as o,o as s,s as c,t as l}from"./select-CqPGedM1.js";import{t as oe}from"./useNavigate-CSxB1zLo.js";import{i as se}from"./toast-C2NI-Hlh.js";import{E as ce,i as le}from"./useSettings-BeOQNM41.js";import{t as ue}from"./server-DK7wLDqS.js";import{t as u}from"./pullRequestDetail.logic-UDSGN79l.js";import{i as de}from"./p4ProjectFile-CuaSnYfs.js";import{B as fe,F as d,L as pe,N as me,P as he,S as ge,a as f,n as _e,p as ve,r as p,s as ye}from"./settingsLayout-CFe_w3zi.js";import{ha as be,tr as m}from"./main-D6OSHTK1.js";import{t as xe}from"./ProviderModelPicker-BFOGSdmh.js";import{n as Se,t as Ce}from"./runtimeModeConfig-CSStNUjU.js";var we=t(),h=e(i(),1),Te=[`recursive`,`top-level`,`none`];function Ee(e){return e!==null&&Te.includes(e)}function De(e){let t=(0,we.c)(95),{category:i}=e,{scope:De,target:g,targets:Me,connectedEnvironments:Ne}=fe(),_=he(),v=pe(),Pe=oe(),{environments:y}=ce(),b,x,S,C,w;if(t[0]!==y||t[1]!==_||t[2]!==g){S=g?y.find(e=>e.environmentId===g.environmentId):void 0;let e=S?.serverConfig?.providers??ue;C=n(e,_.defaultModelSelection),b=te(ie(ee(e),_,g?.projectId??null)),x=re(_,e,C?.instanceId,C?.model),w=b.find(e=>e.instanceId===C?.instanceId),t[0]=y,t[1]=_,t[2]=g,t[3]=b,t[4]=x,t[5]=S,t[6]=C,t[7]=w}else b=t[3],x=t[4],S=t[5],C=t[6],w=t[7];let T=w,E;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(E=[`defaultModelSelection`],t[8]=E):E=t[8];let D=d(E),O;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(O=[`defaultRuntimeMode`],t[9]=O):O=t[9];let k=d(O),Fe=Ce[_.defaultRuntimeMode].icon,A;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(A=[`defaultThreadEnvMode`],t[10]=A):A=t[10];let j=d(A),M;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(M=[`worktreeSubmodules`],t[11]=M):M=t[11];let N=d(M),P;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(P=[`enableAgentBrowserAccess`],t[12]=P):P=t[12];let F=d(P),I;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=[`defaultAutoPull`],t[13]=I):I=t[13];let L=d(I),R;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(R=[`removeAgentCreditsOnMerge`],t[14]=R):R=t[14];let z=d(R),B;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(B=[`pullRequestMergeMethod`],t[15]=B):B=t[15];let Ie=d(B),V;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(V=[`defaultModelSelection`],t[16]=V):V=t[16];let Le=me(V),H=De.kind===`project`||De.kind===`checkout`,U=Ne.length===0,Re;t[17]===g?Re=t[18]:(Re=g?de(g.settings,null,null,null).settings:null,t[17]=g,t[18]=Re);let ze=Re,Be;t[19]!==b||t[20]!==y||t[21]!==_||t[22]!==Me?(Be=function(e,t){let te=b.find(t=>t.instanceId===e);for(let n of Me){let ne=y.find(e=>e.environmentId===n.environmentId),r=ne?.serverConfig;if(!r)continue;let i=ie(ee(r.providers),n.settings,n.projectId).find(t=>t.instanceId===e),ae=re(le(n.settings,_),r.providers).get(e);if(!i?.enabled||!i.isAvailable||i.driverKind!==te?.driverKind||!ae?.some(e=>e.slug===t&&!e.isUnavailable))return`This model is unavailable on ${ne?.label??`a selected environment`}. Select that environment to choose its model separately.`}return null},t[19]=b,t[20]=y,t[21]=_,t[22]=Me,t[23]=Be):Be=t[23];let W=Be,Ve;t[24]!==W||t[25]!==v?(Ve=e=>{let t=e?W(e.instanceId,e.model):null;if(t){se.add({type:`error`,title:`Default model not saved`,description:t});return}v({defaultModelSelection:e})},t[24]=W,t[25]=v,t[26]=Ve):Ve=t[26];let G=Ve,He;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(He=[`defaultModelSelection`],t[27]=He):He=t[27];let Ue=H?`Model for new threads in this project.`:`Default model for new threads. Projects can override it.`,We=U||D||Le===`project`?void 0:_.defaultModelSelection===null?`Automatic`:void 0,K;t[28]!==G||t[29]!==_.defaultModelSelection?(K=_.defaultModelSelection===null?null:(0,h.jsx)(p,{label:`default model`,onClick:()=>G(null)}),t[28]=G,t[29]=_.defaultModelSelection,t[30]=K):K=t[30];let q;t[31]!==T||t[32]!==b||t[33]!==D||t[34]!==W||t[35]!==x||t[36]!==Pe||t[37]!==S||t[38]!==C||t[39]!==G||t[40]!==_.planModeEnabled?(q=C&&T?(0,h.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-end gap-1.5`,children:[(0,h.jsx)(xe,{environmentId:S?.environmentId??null,activeInstanceId:C.instanceId,model:C.model,lockedProvider:null,instanceEntries:b,modelOptionsByInstance:x,triggerClassName:_e,...D?{triggerLabel:`Mixed`}:{},getModelDisabledReason:W,onOpenProviderSetup:e=>{S&&Pe({to:`/settings/providers`,search:{environmentId:S.environmentId,instanceId:e}})},onInstanceModelChange:(e,t)=>G(ne(e,t))}),D?null:(0,h.jsx)(ae,{provider:T.driverKind,models:T.models,model:C.model,prompt:``,onPromptChange:je,modelOptions:C.options??[],allowPromptInjectedEffort:!1,planModeEnabled:_.planModeEnabled,triggerClassName:_e,onModelOptionsChange:e=>G(ne(C.instanceId,C.model,e))})]}):(0,h.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`No providers available`}),t[31]=T,t[32]=b,t[33]=D,t[34]=W,t[35]=x,t[36]=Pe,t[37]=S,t[38]=C,t[39]=G,t[40]=_.planModeEnabled,t[41]=q):q=t[41];let Ge;t[42]!==D||t[43]!==Ue||t[44]!==We||t[45]!==K||t[46]!==q?(Ge=(0,h.jsx)(f,{serverScoped:!0,settingKeys:He,mixed:D,id:`default-model`,title:`Model`,description:Ue,status:We,resetAction:K,control:q}),t[42]=D,t[43]=Ue,t[44]=We,t[45]=K,t[46]=q,t[47]=Ge):Ge=t[47];let Ke=Ge,qe;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(qe=[`defaultThreadEnvMode`],t[48]=qe):qe=t[48];let Je;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(Je=m(`new-threads`),t[49]=Je):Je=t[49];let Ye=H?`Where new threads in this project start.`:`Where new threads start. Projects and their p4.json can override it.`,J;t[50]!==H||t[51]!==_.defaultThreadEnvMode||t[52]!==v?(J=!H&&_.defaultThreadEnvMode!==null?(0,h.jsx)(p,{label:`default workspace`,onClick:()=>v({defaultThreadEnvMode:null})}):null,t[50]=H,t[51]=_.defaultThreadEnvMode,t[52]=v,t[53]=J):J=t[53];let Xe=j?null:ze?.defaultThreadEnvMode??null,Y;t[54]===v?Y=t[55]:(Y=e=>{(e===`auto`||e===`local`||e===`worktree`)&&v({defaultThreadEnvMode:e})},t[54]=v,t[55]=Y);let X;t[56]===U?X=t[57]:(X=(0,h.jsx)(c,{size:`sm`,"aria-label":`Default workspace`,children:(0,h.jsx)(o,{children:e=>e===`auto`||e===`local`||e===`worktree`?ge(e):U?`Unavailable`:`Mixed`})}),t[56]=U,t[57]=X);let Ze;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(Ze=(0,h.jsx)(a,{value:`auto`,children:ge(`auto`)}),t[58]=Ze):Ze=t[58];let Qe;t[59]===Symbol.for(`react.memo_cache_sentinel`)?(Qe=(0,h.jsx)(a,{value:`local`,children:ge(`local`)}),t[59]=Qe):Qe=t[59];let $e;t[60]===Symbol.for(`react.memo_cache_sentinel`)?($e=(0,h.jsxs)(s,{align:`end`,alignItemWithTrigger:!1,children:[Ze,Qe,(0,h.jsx)(a,{value:`worktree`,children:ge(`worktree`)})]}),t[60]=$e):$e=t[60];let Z;t[61]!==Xe||t[62]!==Y||t[63]!==X?(Z=(0,h.jsxs)(l,{value:Xe,onValueChange:Y,children:[X,$e]}),t[61]=Xe,t[62]=Y,t[63]=X,t[64]=Z):Z=t[64];let et;t[65]!==j||t[66]!==Ye||t[67]!==J||t[68]!==Z?(et=(0,h.jsx)(f,{serverScoped:!0,settingKeys:qe,mixed:j,id:Je.id,title:`Workspace`,description:Ye,resetAction:J,control:Z}),t[65]=j,t[66]=Ye,t[67]=J,t[68]=Z,t[69]=et):et=t[69];let tt=et,nt=i===`general`||i===`project`?`project-defaults`:i===`integrations`?`browser-access`:`source-control-defaults`,rt=i===`general`||i===`project`?`New threads`:i===`integrations`?`Browser`:`Repositories`,Q;t[70]!==Fe||t[71]!==i||t[72]!==ze?.worktreeSubmodules||t[73]!==H||t[74]!==z||t[75]!==L||t[76]!==F||t[77]!==Ie||t[78]!==k||t[79]!==N||t[80]!==Ke||t[81]!==_.defaultAutoPull||t[82]!==_.defaultRuntimeMode||t[83]!==_.enableAgentBrowserAccess||t[84]!==_.pullRequestMergeMethod||t[85]!==_.removeAgentCreditsOnMerge||t[86]!==_.worktreeSubmodules||t[87]!==U||t[88]!==v||t[89]!==tt?(Q=i===`project`?(0,h.jsxs)(h.Fragment,{children:[Ke,tt]}):i===`general`?(0,h.jsxs)(h.Fragment,{children:[Ke,(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`defaultRuntimeMode`],mixed:k,...m(`default-permissions`),description:H?`Permissions for new threads in this project.`:`Default permissions for new threads. Projects can override them.`,resetAction:_.defaultRuntimeMode===r.defaultRuntimeMode?null:(0,h.jsx)(p,{label:`default permissions`,onClick:()=>v({defaultRuntimeMode:r.defaultRuntimeMode})}),control:(0,h.jsxs)(l,{value:k?null:_.defaultRuntimeMode,onValueChange:e=>{e&&v({defaultRuntimeMode:e})},children:[(0,h.jsxs)(c,{size:`sm`,"aria-label":`Default permissions`,children:[!k&&(0,h.jsx)(Fe,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,h.jsx)(o,{children:k?`Mixed`:Ce[_.defaultRuntimeMode].label})]}),(0,h.jsx)(s,{align:`end`,alignItemWithTrigger:!1,children:Se.map(Ae)})]})}),tt,(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`worktreeSubmodules`],mixed:N,...m(`worktree-submodules`),description:H?`How new worktrees in this project populate git submodules.`:`How new worktrees populate git submodules. Projects and their p4.json can override it.`,resetAction:!H&&_.worktreeSubmodules!==null?(0,h.jsx)(p,{label:`worktree submodules`,onClick:()=>v({worktreeSubmodules:null})}):null,control:(0,h.jsxs)(l,{value:N?null:ze?.worktreeSubmodules??null,onValueChange:e=>{Ee(e)&&v({worktreeSubmodules:e})},children:[(0,h.jsx)(c,{size:`sm`,"aria-label":`Worktree submodules`,children:(0,h.jsx)(o,{children:e=>Ee(e)?ve[e]:U?`Unavailable`:`Mixed`})}),(0,h.jsx)(s,{align:`end`,alignItemWithTrigger:!1,children:Te.map(ke)})]})})]}):i===`source-control`?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`defaultAutoPull`],mixed:L,id:`automatic-pull`,title:`Automatically pull`,description:H?`Keeps this project's default branch current when the checkout has no local changes or commits.`:`Keeps the default branch current when the checkout has no local changes or commits. Projects can override it.`,resetAction:_.defaultAutoPull?(0,h.jsx)(p,{label:`default automatic pull`,tooltip:`Reset automatic pull to off`,onClick:()=>v({defaultAutoPull:!1})}):null,control:(0,h.jsx)(be,{"aria-label":`Default automatic pull`,mixed:L,checked:!L&&_.defaultAutoPull,onCheckedChange:e=>v({defaultAutoPull:e})})}),(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`removeAgentCreditsOnMerge`],mixed:z,...m(`remove-agent-credits-on-merge`),description:`Remove recognized agent credit lines from GitHub merge and squash messages, keeping human co-authors. Includes auto-merge. Excludes merge queues, stack merges, and existing commits.`,resetAction:_.removeAgentCreditsOnMerge?(0,h.jsx)(p,{label:`agent credit removal`,tooltip:`Keep agent credits`,onClick:()=>v({removeAgentCreditsOnMerge:!1})}):null,control:(0,h.jsx)(be,{"aria-label":`Remove agent credits when merging`,mixed:z,checked:!z&&_.removeAgentCreditsOnMerge,onCheckedChange:e=>v({removeAgentCreditsOnMerge:e})})}),(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`pullRequestMergeMethod`],mixed:Ie,...m(`pull-request-merge-method`),description:H?`Pull requests in this project start with this method.`:`Pull requests start with this method. Last selected reuses whatever you chose most recently on this device.`,resetAction:_.pullRequestMergeMethod===null?null:(0,h.jsx)(p,{label:`default merge method`,tooltip:`Reset to last selected`,onClick:()=>v({pullRequestMergeMethod:null})}),control:(0,h.jsxs)(l,{value:Ie?null:_.pullRequestMergeMethod??`last`,onValueChange:e=>{e===`last`?v({pullRequestMergeMethod:null}):(e===`merge`||e===`squash`||e===`rebase`)&&v({pullRequestMergeMethod:e})},children:[(0,h.jsx)(c,{size:`sm`,"aria-label":`Default pull request merge method`,children:(0,h.jsx)(o,{children:Oe})}),(0,h.jsxs)(s,{align:`end`,alignItemWithTrigger:!1,children:[(0,h.jsx)(a,{value:`last`,children:`Last selected`}),(0,h.jsx)(a,{value:`merge`,children:u.merge}),(0,h.jsx)(a,{value:`squash`,children:u.squash}),(0,h.jsx)(a,{value:`rebase`,children:u.rebase})]})]})})]}):(0,h.jsx)(h.Fragment,{children:(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`enableAgentBrowserAccess`],mixed:F,id:m(`agent-browser-access`).id,title:`Agent browser access`,description:H?`Allow agents in this project to use the shared browser. Applies when the agent session next starts.`:`Allow agents to use the shared browser. Projects can override it.`,resetAction:_.enableAgentBrowserAccess===r.enableAgentBrowserAccess?null:(0,h.jsx)(p,{label:`default browser access`,onClick:()=>v({enableAgentBrowserAccess:r.enableAgentBrowserAccess})}),control:(0,h.jsx)(be,{"aria-label":`Agent browser access`,mixed:F,checked:!F&&_.enableAgentBrowserAccess,onCheckedChange:e=>v({enableAgentBrowserAccess:e})})})}),t[70]=Fe,t[71]=i,t[72]=ze?.worktreeSubmodules,t[73]=H,t[74]=z,t[75]=L,t[76]=F,t[77]=Ie,t[78]=k,t[79]=N,t[80]=Ke,t[81]=_.defaultAutoPull,t[82]=_.defaultRuntimeMode,t[83]=_.enableAgentBrowserAccess,t[84]=_.pullRequestMergeMethod,t[85]=_.removeAgentCreditsOnMerge,t[86]=_.worktreeSubmodules,t[87]=U,t[88]=v,t[89]=tt,t[90]=Q):Q=t[90];let $;return t[91]!==nt||t[92]!==rt||t[93]!==Q?($=(0,h.jsx)(ye,{id:nt,title:rt,children:Q}),t[91]=nt,t[92]=rt,t[93]=Q,t[94]=$):$=t[94],$}function Oe(e){return e===`merge`||e===`squash`||e===`rebase`?u[e]:e===`last`?`Last selected`:`Mixed`}function ke(e){return(0,h.jsx)(a,{value:e,children:ve[e]},e)}function Ae(e){let t=Ce[e],ee=t.icon;return(0,h.jsx)(a,{value:e,className:`min-w-64`,children:(0,h.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,h.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium`,children:[(0,h.jsx)(ee,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,h.jsx)(`span`,{className:`text-xs leading-4 text-muted-foreground`,children:t.description})]})},e)}function je(){}export{De as t};
2
- //# sourceMappingURL=ProjectDefaultsSettings-xYQqDWRw.js.map
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{BE as t,Ht as ee,Jt as te,Kt as n,Ns as ne,Nt as re,Vt as ie,gh as r,mE as i,nn as ae}from"./utils-B0w8dSf5.js";import{a,c as o,o as s,s as c,t as l}from"./select-CqPGedM1.js";import{t as oe}from"./useNavigate-CSxB1zLo.js";import{i as se}from"./toast-BpFMQUQA.js";import{E as ce,i as le}from"./useSettings-DPnlKDDE.js";import{t as ue}from"./server-CP48yEl0.js";import{t as u}from"./pullRequestDetail.logic-Cjtgtna8.js";import{i as de}from"./p4ProjectFile-DoZgc8hH.js";import{B as fe,F as d,L as pe,N as me,P as he,S as ge,a as f,n as _e,p as ve,r as p,s as ye}from"./settingsLayout-Du-dHkyX.js";import{ha as be,tr as m}from"./main-DIQoY6z5.js";import{t as xe}from"./ProviderModelPicker-B8Pgdnzq.js";import{n as Se,t as Ce}from"./runtimeModeConfig-CSStNUjU.js";var we=t(),h=e(i(),1),Te=[`recursive`,`top-level`,`none`];function Ee(e){return e!==null&&Te.includes(e)}function De(e){let t=(0,we.c)(95),{category:i}=e,{scope:De,target:g,targets:Me,connectedEnvironments:Ne}=fe(),_=he(),v=pe(),Pe=oe(),{environments:y}=ce(),b,x,S,C,w;if(t[0]!==y||t[1]!==_||t[2]!==g){S=g?y.find(e=>e.environmentId===g.environmentId):void 0;let e=S?.serverConfig?.providers??ue;C=n(e,_.defaultModelSelection),b=te(ie(ee(e),_,g?.projectId??null)),x=re(_,e,C?.instanceId,C?.model),w=b.find(e=>e.instanceId===C?.instanceId),t[0]=y,t[1]=_,t[2]=g,t[3]=b,t[4]=x,t[5]=S,t[6]=C,t[7]=w}else b=t[3],x=t[4],S=t[5],C=t[6],w=t[7];let T=w,E;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(E=[`defaultModelSelection`],t[8]=E):E=t[8];let D=d(E),O;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(O=[`defaultRuntimeMode`],t[9]=O):O=t[9];let k=d(O),Fe=Ce[_.defaultRuntimeMode].icon,A;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(A=[`defaultThreadEnvMode`],t[10]=A):A=t[10];let j=d(A),M;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(M=[`worktreeSubmodules`],t[11]=M):M=t[11];let N=d(M),P;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(P=[`enableAgentBrowserAccess`],t[12]=P):P=t[12];let F=d(P),I;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(I=[`defaultAutoPull`],t[13]=I):I=t[13];let L=d(I),R;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(R=[`removeAgentCreditsOnMerge`],t[14]=R):R=t[14];let z=d(R),B;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(B=[`pullRequestMergeMethod`],t[15]=B):B=t[15];let Ie=d(B),V;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(V=[`defaultModelSelection`],t[16]=V):V=t[16];let Le=me(V),H=De.kind===`project`||De.kind===`checkout`,U=Ne.length===0,Re;t[17]===g?Re=t[18]:(Re=g?de(g.settings,null,null,null).settings:null,t[17]=g,t[18]=Re);let ze=Re,Be;t[19]!==b||t[20]!==y||t[21]!==_||t[22]!==Me?(Be=function(e,t){let te=b.find(t=>t.instanceId===e);for(let n of Me){let ne=y.find(e=>e.environmentId===n.environmentId),r=ne?.serverConfig;if(!r)continue;let i=ie(ee(r.providers),n.settings,n.projectId).find(t=>t.instanceId===e),ae=re(le(n.settings,_),r.providers).get(e);if(!i?.enabled||!i.isAvailable||i.driverKind!==te?.driverKind||!ae?.some(e=>e.slug===t&&!e.isUnavailable))return`This model is unavailable on ${ne?.label??`a selected environment`}. Select that environment to choose its model separately.`}return null},t[19]=b,t[20]=y,t[21]=_,t[22]=Me,t[23]=Be):Be=t[23];let W=Be,Ve;t[24]!==W||t[25]!==v?(Ve=e=>{let t=e?W(e.instanceId,e.model):null;if(t){se.add({type:`error`,title:`Default model not saved`,description:t});return}v({defaultModelSelection:e})},t[24]=W,t[25]=v,t[26]=Ve):Ve=t[26];let G=Ve,He;t[27]===Symbol.for(`react.memo_cache_sentinel`)?(He=[`defaultModelSelection`],t[27]=He):He=t[27];let Ue=H?`Model for new threads in this project.`:`Default model for new threads. Projects can override it.`,We=U||D||Le===`project`?void 0:_.defaultModelSelection===null?`Automatic`:void 0,K;t[28]!==G||t[29]!==_.defaultModelSelection?(K=_.defaultModelSelection===null?null:(0,h.jsx)(p,{label:`default model`,onClick:()=>G(null)}),t[28]=G,t[29]=_.defaultModelSelection,t[30]=K):K=t[30];let q;t[31]!==T||t[32]!==b||t[33]!==D||t[34]!==W||t[35]!==x||t[36]!==Pe||t[37]!==S||t[38]!==C||t[39]!==G||t[40]!==_.planModeEnabled?(q=C&&T?(0,h.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center justify-end gap-1.5`,children:[(0,h.jsx)(xe,{environmentId:S?.environmentId??null,activeInstanceId:C.instanceId,model:C.model,lockedProvider:null,instanceEntries:b,modelOptionsByInstance:x,triggerClassName:_e,...D?{triggerLabel:`Mixed`}:{},getModelDisabledReason:W,onOpenProviderSetup:e=>{S&&Pe({to:`/settings/providers`,search:{environmentId:S.environmentId,instanceId:e}})},onInstanceModelChange:(e,t)=>G(ne(e,t))}),D?null:(0,h.jsx)(ae,{provider:T.driverKind,models:T.models,model:C.model,prompt:``,onPromptChange:je,modelOptions:C.options??[],allowPromptInjectedEffort:!1,planModeEnabled:_.planModeEnabled,triggerClassName:_e,onModelOptionsChange:e=>G(ne(C.instanceId,C.model,e))})]}):(0,h.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:`No providers available`}),t[31]=T,t[32]=b,t[33]=D,t[34]=W,t[35]=x,t[36]=Pe,t[37]=S,t[38]=C,t[39]=G,t[40]=_.planModeEnabled,t[41]=q):q=t[41];let Ge;t[42]!==D||t[43]!==Ue||t[44]!==We||t[45]!==K||t[46]!==q?(Ge=(0,h.jsx)(f,{serverScoped:!0,settingKeys:He,mixed:D,id:`default-model`,title:`Model`,description:Ue,status:We,resetAction:K,control:q}),t[42]=D,t[43]=Ue,t[44]=We,t[45]=K,t[46]=q,t[47]=Ge):Ge=t[47];let Ke=Ge,qe;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(qe=[`defaultThreadEnvMode`],t[48]=qe):qe=t[48];let Je;t[49]===Symbol.for(`react.memo_cache_sentinel`)?(Je=m(`new-threads`),t[49]=Je):Je=t[49];let Ye=H?`Where new threads in this project start.`:`Where new threads start. Projects and their p4.json can override it.`,J;t[50]!==H||t[51]!==_.defaultThreadEnvMode||t[52]!==v?(J=!H&&_.defaultThreadEnvMode!==null?(0,h.jsx)(p,{label:`default workspace`,onClick:()=>v({defaultThreadEnvMode:null})}):null,t[50]=H,t[51]=_.defaultThreadEnvMode,t[52]=v,t[53]=J):J=t[53];let Xe=j?null:ze?.defaultThreadEnvMode??null,Y;t[54]===v?Y=t[55]:(Y=e=>{(e===`auto`||e===`local`||e===`worktree`)&&v({defaultThreadEnvMode:e})},t[54]=v,t[55]=Y);let X;t[56]===U?X=t[57]:(X=(0,h.jsx)(c,{size:`sm`,"aria-label":`Default workspace`,children:(0,h.jsx)(o,{children:e=>e===`auto`||e===`local`||e===`worktree`?ge(e):U?`Unavailable`:`Mixed`})}),t[56]=U,t[57]=X);let Ze;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(Ze=(0,h.jsx)(a,{value:`auto`,children:ge(`auto`)}),t[58]=Ze):Ze=t[58];let Qe;t[59]===Symbol.for(`react.memo_cache_sentinel`)?(Qe=(0,h.jsx)(a,{value:`local`,children:ge(`local`)}),t[59]=Qe):Qe=t[59];let $e;t[60]===Symbol.for(`react.memo_cache_sentinel`)?($e=(0,h.jsxs)(s,{align:`end`,alignItemWithTrigger:!1,children:[Ze,Qe,(0,h.jsx)(a,{value:`worktree`,children:ge(`worktree`)})]}),t[60]=$e):$e=t[60];let Z;t[61]!==Xe||t[62]!==Y||t[63]!==X?(Z=(0,h.jsxs)(l,{value:Xe,onValueChange:Y,children:[X,$e]}),t[61]=Xe,t[62]=Y,t[63]=X,t[64]=Z):Z=t[64];let et;t[65]!==j||t[66]!==Ye||t[67]!==J||t[68]!==Z?(et=(0,h.jsx)(f,{serverScoped:!0,settingKeys:qe,mixed:j,id:Je.id,title:`Workspace`,description:Ye,resetAction:J,control:Z}),t[65]=j,t[66]=Ye,t[67]=J,t[68]=Z,t[69]=et):et=t[69];let tt=et,nt=i===`general`||i===`project`?`project-defaults`:i===`integrations`?`browser-access`:`source-control-defaults`,rt=i===`general`||i===`project`?`New threads`:i===`integrations`?`Browser`:`Repositories`,Q;t[70]!==Fe||t[71]!==i||t[72]!==ze?.worktreeSubmodules||t[73]!==H||t[74]!==z||t[75]!==L||t[76]!==F||t[77]!==Ie||t[78]!==k||t[79]!==N||t[80]!==Ke||t[81]!==_.defaultAutoPull||t[82]!==_.defaultRuntimeMode||t[83]!==_.enableAgentBrowserAccess||t[84]!==_.pullRequestMergeMethod||t[85]!==_.removeAgentCreditsOnMerge||t[86]!==_.worktreeSubmodules||t[87]!==U||t[88]!==v||t[89]!==tt?(Q=i===`project`?(0,h.jsxs)(h.Fragment,{children:[Ke,tt]}):i===`general`?(0,h.jsxs)(h.Fragment,{children:[Ke,(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`defaultRuntimeMode`],mixed:k,...m(`default-permissions`),description:H?`Permissions for new threads in this project.`:`Default permissions for new threads. Projects can override them.`,resetAction:_.defaultRuntimeMode===r.defaultRuntimeMode?null:(0,h.jsx)(p,{label:`default permissions`,onClick:()=>v({defaultRuntimeMode:r.defaultRuntimeMode})}),control:(0,h.jsxs)(l,{value:k?null:_.defaultRuntimeMode,onValueChange:e=>{e&&v({defaultRuntimeMode:e})},children:[(0,h.jsxs)(c,{size:`sm`,"aria-label":`Default permissions`,children:[!k&&(0,h.jsx)(Fe,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,h.jsx)(o,{children:k?`Mixed`:Ce[_.defaultRuntimeMode].label})]}),(0,h.jsx)(s,{align:`end`,alignItemWithTrigger:!1,children:Se.map(Ae)})]})}),tt,(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`worktreeSubmodules`],mixed:N,...m(`worktree-submodules`),description:H?`How new worktrees in this project populate git submodules.`:`How new worktrees populate git submodules. Projects and their p4.json can override it.`,resetAction:!H&&_.worktreeSubmodules!==null?(0,h.jsx)(p,{label:`worktree submodules`,onClick:()=>v({worktreeSubmodules:null})}):null,control:(0,h.jsxs)(l,{value:N?null:ze?.worktreeSubmodules??null,onValueChange:e=>{Ee(e)&&v({worktreeSubmodules:e})},children:[(0,h.jsx)(c,{size:`sm`,"aria-label":`Worktree submodules`,children:(0,h.jsx)(o,{children:e=>Ee(e)?ve[e]:U?`Unavailable`:`Mixed`})}),(0,h.jsx)(s,{align:`end`,alignItemWithTrigger:!1,children:Te.map(ke)})]})})]}):i===`source-control`?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`defaultAutoPull`],mixed:L,id:`automatic-pull`,title:`Automatically pull`,description:H?`Keeps this project's default branch current when the checkout has no local changes or commits.`:`Keeps the default branch current when the checkout has no local changes or commits. Projects can override it.`,resetAction:_.defaultAutoPull?(0,h.jsx)(p,{label:`default automatic pull`,tooltip:`Reset automatic pull to off`,onClick:()=>v({defaultAutoPull:!1})}):null,control:(0,h.jsx)(be,{"aria-label":`Default automatic pull`,mixed:L,checked:!L&&_.defaultAutoPull,onCheckedChange:e=>v({defaultAutoPull:e})})}),(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`removeAgentCreditsOnMerge`],mixed:z,...m(`remove-agent-credits-on-merge`),description:`Remove recognized agent credit lines from GitHub merge and squash messages, keeping human co-authors. Includes auto-merge. Excludes merge queues, stack merges, and existing commits.`,resetAction:_.removeAgentCreditsOnMerge?(0,h.jsx)(p,{label:`agent credit removal`,tooltip:`Keep agent credits`,onClick:()=>v({removeAgentCreditsOnMerge:!1})}):null,control:(0,h.jsx)(be,{"aria-label":`Remove agent credits when merging`,mixed:z,checked:!z&&_.removeAgentCreditsOnMerge,onCheckedChange:e=>v({removeAgentCreditsOnMerge:e})})}),(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`pullRequestMergeMethod`],mixed:Ie,...m(`pull-request-merge-method`),description:H?`Pull requests in this project start with this method.`:`Pull requests start with this method. Last selected reuses whatever you chose most recently on this device.`,resetAction:_.pullRequestMergeMethod===null?null:(0,h.jsx)(p,{label:`default merge method`,tooltip:`Reset to last selected`,onClick:()=>v({pullRequestMergeMethod:null})}),control:(0,h.jsxs)(l,{value:Ie?null:_.pullRequestMergeMethod??`last`,onValueChange:e=>{e===`last`?v({pullRequestMergeMethod:null}):(e===`merge`||e===`squash`||e===`rebase`)&&v({pullRequestMergeMethod:e})},children:[(0,h.jsx)(c,{size:`sm`,"aria-label":`Default pull request merge method`,children:(0,h.jsx)(o,{children:Oe})}),(0,h.jsxs)(s,{align:`end`,alignItemWithTrigger:!1,children:[(0,h.jsx)(a,{value:`last`,children:`Last selected`}),(0,h.jsx)(a,{value:`merge`,children:u.merge}),(0,h.jsx)(a,{value:`squash`,children:u.squash}),(0,h.jsx)(a,{value:`rebase`,children:u.rebase})]})]})})]}):(0,h.jsx)(h.Fragment,{children:(0,h.jsx)(f,{serverScoped:!0,settingKeys:[`enableAgentBrowserAccess`],mixed:F,id:m(`agent-browser-access`).id,title:`Agent browser access`,description:H?`Allow agents in this project to use the shared browser. Applies when the agent session next starts.`:`Allow agents to use the shared browser. Projects can override it.`,resetAction:_.enableAgentBrowserAccess===r.enableAgentBrowserAccess?null:(0,h.jsx)(p,{label:`default browser access`,onClick:()=>v({enableAgentBrowserAccess:r.enableAgentBrowserAccess})}),control:(0,h.jsx)(be,{"aria-label":`Agent browser access`,mixed:F,checked:!F&&_.enableAgentBrowserAccess,onCheckedChange:e=>v({enableAgentBrowserAccess:e})})})}),t[70]=Fe,t[71]=i,t[72]=ze?.worktreeSubmodules,t[73]=H,t[74]=z,t[75]=L,t[76]=F,t[77]=Ie,t[78]=k,t[79]=N,t[80]=Ke,t[81]=_.defaultAutoPull,t[82]=_.defaultRuntimeMode,t[83]=_.enableAgentBrowserAccess,t[84]=_.pullRequestMergeMethod,t[85]=_.removeAgentCreditsOnMerge,t[86]=_.worktreeSubmodules,t[87]=U,t[88]=v,t[89]=tt,t[90]=Q):Q=t[90];let $;return t[91]!==nt||t[92]!==rt||t[93]!==Q?($=(0,h.jsx)(ye,{id:nt,title:rt,children:Q}),t[91]=nt,t[92]=rt,t[93]=Q,t[94]=$):$=t[94],$}function Oe(e){return e===`merge`||e===`squash`||e===`rebase`?u[e]:e===`last`?`Last selected`:`Mixed`}function ke(e){return(0,h.jsx)(a,{value:e,children:ve[e]},e)}function Ae(e){let t=Ce[e],ee=t.icon;return(0,h.jsx)(a,{value:e,className:`min-w-64`,children:(0,h.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,h.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium`,children:[(0,h.jsx)(ee,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,h.jsx)(`span`,{className:`text-xs leading-4 text-muted-foreground`,children:t.description})]})},e)}function je(){}export{De as t};
2
+ //# sourceMappingURL=ProjectDefaultsSettings-DJa4b3cl.js.map
@@ -1,3 +1,3 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dynamic-BwDInrZk.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/index-DW7vuxv_.js","assets/Icon-l19w4AjM.js"])))=>i.map(i=>d[i]);
2
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-DW7vuxv_.js";import{r as n}from"./Icon-l19w4AjM.js";import{$o as r,BE as i,eh as a,mE as o,mf as s,t as c}from"./utils-B0w8dSf5.js";import{a as l,i as u}from"./runtime-CxXKASQ8.js";import{E as d,O as f,l as p}from"./TooltipViewport-BkvH9Kzg.js";import{n as m}from"./assets-BNBTdYNP.js";import{i as h,r as g,t as _}from"./ProjectMonogram-C1SBXbLc.js";var v=i(),y=e(n(),1),b=e(o(),1),x=(0,y.lazy)(()=>t(()=>import(`./dynamic-BwDInrZk.js`).then(e=>({default:e.DynamicIcon})),__vite__mapDeps([0,1,2,3])));function S(){let e=(0,v.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,b.jsx)(s,{className:`size-full text-inherit`}),e[0]=t):t=e[0],t}function C(e){let t=(0,v.c)(11),{name:n,className:r}=e,i=a(),o;t[0]!==n||t[1]!==i?(o=h(i,n),t[0]=n,t[1]=i,t[2]=o):o=t[2];let{p4:s,strokeWidth:c}=o;if(s){let e;return t[3]!==s||t[4]!==r?(e=(0,b.jsx)(s,{className:r}),t[3]=s,t[4]=r,t[5]=e):e=t[5],e}let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,b.jsx)(S,{}),t[6]=l):l=t[6];let u;return t[7]!==r||t[8]!==n||t[9]!==c?(u=(0,b.jsx)(y.Suspense,{fallback:l,children:(0,b.jsx)(x,{name:n,className:r,strokeWidth:c,fallback:S})}),t[7]=r,t[8]=n,t[9]=c,t[10]=u):u=t[10],u}function w(e){let t=(0,v.c)(41),{project:n}=e,i;t[0]!==n.environmentId||t[1]!==n.faviconPath||t[2]!==n.workspaceRoot?(i=m({environmentId:n.environmentId,cwd:n.workspaceRoot,faviconPath:n.faviconPath}),t[0]=n.environmentId,t[1]=n.faviconPath,t[2]=n.workspaceRoot,t[3]=i):i=t[3];let a=r(i);if(n.projectIcon?.kind===`monogram`){let r;return t[4]!==e.className||t[5]!==n.projectIcon.color||t[6]!==n.projectIcon.text?(r=(0,b.jsx)(_,{text:n.projectIcon.text,color:n.projectIcon.color,className:e.className}),t[4]=e.className,t[5]=n.projectIcon.color,t[6]=n.projectIcon.text,t[7]=r):r=t[7],r}if(n.projectIcon?.kind===`emoji`){let r;return t[8]!==e.className||t[9]!==n.projectIcon.emoji?(r=(0,b.jsx)(T,{className:e.className,icon:s,emoji:n.projectIcon.emoji}),t[8]=e.className,t[9]=n.projectIcon.emoji,t[10]=r):r=t[10],r}if(n.projectIcon?.kind===`lucide`){let r,i,a,o,s;if(t[11]!==e.className||t[12]!==n.projectIcon.color||t[13]!==n.projectIcon.name){let l=g(n.projectIcon.color),u=c(`inline-flex size-3.5 shrink-0 items-center justify-center`,l,e.className);o=`true`,s=u,r=C,i=n.projectIcon.name,a=c(`size-full`,l),t[11]=e.className,t[12]=n.projectIcon.color,t[13]=n.projectIcon.name,t[14]=r,t[15]=i,t[16]=a,t[17]=o,t[18]=s}else r=t[14],i=t[15],a=t[16],o=t[17],s=t[18];let l;t[19]!==r||t[20]!==i||t[21]!==a?(l=(0,b.jsx)(r,{name:i,className:a}),t[19]=r,t[20]=i,t[21]=a,t[22]=l):l=t[22];let u;return t[23]!==o||t[24]!==s||t[25]!==l?(u=(0,b.jsx)(`span`,{"aria-hidden":o,className:s,children:l}),t[23]=o,t[24]=s,t[25]=l,t[26]=u):u=t[26],u}let o=e.fallbackIcon??s;if(!a||l(a)){let n;return t[27]!==o||t[28]!==e.className||t[29]!==e.folderExpanded?(n=(0,b.jsx)(T,{className:e.className,icon:o,folderExpanded:e.folderExpanded}),t[27]=o,t[28]=e.className,t[29]=e.folderExpanded,t[30]=n):n=t[30],n}let d;t[31]!==n.environmentId||t[32]!==n.faviconPath||t[33]!==n.workspaceRoot?(d=u(n.environmentId,n.workspaceRoot,n.faviconPath),t[31]=n.environmentId,t[32]=n.faviconPath,t[33]=n.workspaceRoot,t[34]=d):d=t[34];let f=d,p;return t[35]!==o||t[36]!==f||t[37]!==e.className||t[38]!==e.folderExpanded||t[39]!==a?(p=(0,b.jsx)(E,{src:a,className:e.className,fallbackIcon:o,folderExpanded:e.folderExpanded},f),t[35]=o,t[36]=f,t[37]=e.className,t[38]=e.folderExpanded,t[39]=a,t[40]=p):p=t[40],p}function T(e){let t=(0,v.c)(13),{className:n,icon:r,emoji:i,folderExpanded:a}=e;if(i){let e;t[0]===n?e=t[1]:(e=c(`inline-flex size-3.5 shrink-0 items-center justify-center leading-none [container-type:size]`,n),t[0]=n,t[1]=e);let r;t[2]===i?r=t[3]:(r=(0,b.jsx)(`span`,{className:`text-[length:80cqh] leading-none`,children:i}),t[2]=i,t[3]=r);let a;return t[4]!==e||t[5]!==r?(a=(0,b.jsx)(`span`,{"aria-hidden":`true`,className:e,children:r}),t[4]=e,t[5]=r,t[6]=a):a=t[6],a}let o;t[7]===n?o=t[8]:(o=c(`size-3.5 shrink-0 text-icon-muted`,n),t[7]=n,t[8]=o);let s=o,l;return t[9]!==r||t[10]!==a||t[11]!==s?(l=a===void 0?(0,b.jsx)(r,{className:s}):(0,b.jsx)(p,{"aria-hidden":!0,className:s,icon:a?f:d}),t[9]=r,t[10]=a,t[11]=s,t[12]=l):l=t[12],l}function E(e){let t=(0,v.c)(18),{src:n,className:r,fallbackIcon:i,folderExpanded:a}=e,o;t[0]===n?o=t[1]:(o=()=>n.startsWith(`data:image/`)?n:null,t[0]=n,t[1]=o);let[s,l]=(0,y.useState)(o),u=s!==n,d;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{l(t=>t===e?null:t)},t[2]=d):d=t[2];let f=d,p;t[3]!==i||t[4]!==r||t[5]!==s||t[6]!==a?(p=s===null?(0,b.jsx)(T,{className:r,icon:i,folderExpanded:a}):null,t[3]=i,t[4]=r,t[5]=s,t[6]=a,t[7]=p):p=t[7];let m;t[8]!==r||t[9]!==s?(m=s?(0,b.jsx)(`img`,{src:s,alt:``,className:c(`size-3.5 shrink-0 rounded-[25%] object-contain`,r),onError:()=>f(s)}):null,t[8]=r,t[9]=s,t[10]=m):m=t[10];let h;t[11]!==u||t[12]!==n?(h=u?(0,b.jsx)(`img`,{src:n,alt:``,className:`hidden`,onLoad:()=>{l(n)},onError:()=>f(n)}):null,t[11]=u,t[12]=n,t[13]=h):h=t[13];let g;return t[14]!==p||t[15]!==m||t[16]!==h?(g=(0,b.jsxs)(b.Fragment,{children:[p,m,h]}),t[14]=p,t[15]=m,t[16]=h,t[17]=g):g=t[17],g}export{w as t};
3
- //# sourceMappingURL=ProjectFavicon-BxL9C_zZ.js.map
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dynamic-D2jjS7tR.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/index-BiM_L8v1.js","assets/Icon-l19w4AjM.js"])))=>i.map(i=>d[i]);
2
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-BiM_L8v1.js";import{r as n}from"./Icon-l19w4AjM.js";import{$o as r,BE as i,eh as a,mE as o,mf as s,t as c}from"./utils-B0w8dSf5.js";import{a as l,i as u}from"./runtime-BWwa38SO.js";import{E as d,O as f,l as p}from"./TooltipViewport-BkvH9Kzg.js";import{n as m}from"./assets-CLcL_zrG.js";import{i as h,r as g,t as _}from"./ProjectMonogram-C1SBXbLc.js";var v=i(),y=e(n(),1),b=e(o(),1),x=(0,y.lazy)(()=>t(()=>import(`./dynamic-D2jjS7tR.js`).then(e=>({default:e.DynamicIcon})),__vite__mapDeps([0,1,2,3])));function S(){let e=(0,v.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,b.jsx)(s,{className:`size-full text-inherit`}),e[0]=t):t=e[0],t}function C(e){let t=(0,v.c)(11),{name:n,className:r}=e,i=a(),o;t[0]!==n||t[1]!==i?(o=h(i,n),t[0]=n,t[1]=i,t[2]=o):o=t[2];let{p4:s,strokeWidth:c}=o;if(s){let e;return t[3]!==s||t[4]!==r?(e=(0,b.jsx)(s,{className:r}),t[3]=s,t[4]=r,t[5]=e):e=t[5],e}let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,b.jsx)(S,{}),t[6]=l):l=t[6];let u;return t[7]!==r||t[8]!==n||t[9]!==c?(u=(0,b.jsx)(y.Suspense,{fallback:l,children:(0,b.jsx)(x,{name:n,className:r,strokeWidth:c,fallback:S})}),t[7]=r,t[8]=n,t[9]=c,t[10]=u):u=t[10],u}function w(e){let t=(0,v.c)(41),{project:n}=e,i;t[0]!==n.environmentId||t[1]!==n.faviconPath||t[2]!==n.workspaceRoot?(i=m({environmentId:n.environmentId,cwd:n.workspaceRoot,faviconPath:n.faviconPath}),t[0]=n.environmentId,t[1]=n.faviconPath,t[2]=n.workspaceRoot,t[3]=i):i=t[3];let a=r(i);if(n.projectIcon?.kind===`monogram`){let r;return t[4]!==e.className||t[5]!==n.projectIcon.color||t[6]!==n.projectIcon.text?(r=(0,b.jsx)(_,{text:n.projectIcon.text,color:n.projectIcon.color,className:e.className}),t[4]=e.className,t[5]=n.projectIcon.color,t[6]=n.projectIcon.text,t[7]=r):r=t[7],r}if(n.projectIcon?.kind===`emoji`){let r;return t[8]!==e.className||t[9]!==n.projectIcon.emoji?(r=(0,b.jsx)(T,{className:e.className,icon:s,emoji:n.projectIcon.emoji}),t[8]=e.className,t[9]=n.projectIcon.emoji,t[10]=r):r=t[10],r}if(n.projectIcon?.kind===`lucide`){let r,i,a,o,s;if(t[11]!==e.className||t[12]!==n.projectIcon.color||t[13]!==n.projectIcon.name){let l=g(n.projectIcon.color),u=c(`inline-flex size-3.5 shrink-0 items-center justify-center`,l,e.className);o=`true`,s=u,r=C,i=n.projectIcon.name,a=c(`size-full`,l),t[11]=e.className,t[12]=n.projectIcon.color,t[13]=n.projectIcon.name,t[14]=r,t[15]=i,t[16]=a,t[17]=o,t[18]=s}else r=t[14],i=t[15],a=t[16],o=t[17],s=t[18];let l;t[19]!==r||t[20]!==i||t[21]!==a?(l=(0,b.jsx)(r,{name:i,className:a}),t[19]=r,t[20]=i,t[21]=a,t[22]=l):l=t[22];let u;return t[23]!==o||t[24]!==s||t[25]!==l?(u=(0,b.jsx)(`span`,{"aria-hidden":o,className:s,children:l}),t[23]=o,t[24]=s,t[25]=l,t[26]=u):u=t[26],u}let o=e.fallbackIcon??s;if(!a||l(a)){let n;return t[27]!==o||t[28]!==e.className||t[29]!==e.folderExpanded?(n=(0,b.jsx)(T,{className:e.className,icon:o,folderExpanded:e.folderExpanded}),t[27]=o,t[28]=e.className,t[29]=e.folderExpanded,t[30]=n):n=t[30],n}let d;t[31]!==n.environmentId||t[32]!==n.faviconPath||t[33]!==n.workspaceRoot?(d=u(n.environmentId,n.workspaceRoot,n.faviconPath),t[31]=n.environmentId,t[32]=n.faviconPath,t[33]=n.workspaceRoot,t[34]=d):d=t[34];let f=d,p;return t[35]!==o||t[36]!==f||t[37]!==e.className||t[38]!==e.folderExpanded||t[39]!==a?(p=(0,b.jsx)(E,{src:a,className:e.className,fallbackIcon:o,folderExpanded:e.folderExpanded},f),t[35]=o,t[36]=f,t[37]=e.className,t[38]=e.folderExpanded,t[39]=a,t[40]=p):p=t[40],p}function T(e){let t=(0,v.c)(13),{className:n,icon:r,emoji:i,folderExpanded:a}=e;if(i){let e;t[0]===n?e=t[1]:(e=c(`inline-flex size-3.5 shrink-0 items-center justify-center leading-none [container-type:size]`,n),t[0]=n,t[1]=e);let r;t[2]===i?r=t[3]:(r=(0,b.jsx)(`span`,{className:`text-[length:80cqh] leading-none`,children:i}),t[2]=i,t[3]=r);let a;return t[4]!==e||t[5]!==r?(a=(0,b.jsx)(`span`,{"aria-hidden":`true`,className:e,children:r}),t[4]=e,t[5]=r,t[6]=a):a=t[6],a}let o;t[7]===n?o=t[8]:(o=c(`size-3.5 shrink-0 text-icon-muted`,n),t[7]=n,t[8]=o);let s=o,l;return t[9]!==r||t[10]!==a||t[11]!==s?(l=a===void 0?(0,b.jsx)(r,{className:s}):(0,b.jsx)(p,{"aria-hidden":!0,className:s,icon:a?f:d}),t[9]=r,t[10]=a,t[11]=s,t[12]=l):l=t[12],l}function E(e){let t=(0,v.c)(18),{src:n,className:r,fallbackIcon:i,folderExpanded:a}=e,o;t[0]===n?o=t[1]:(o=()=>n.startsWith(`data:image/`)?n:null,t[0]=n,t[1]=o);let[s,l]=(0,y.useState)(o),u=s!==n,d;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{l(t=>t===e?null:t)},t[2]=d):d=t[2];let f=d,p;t[3]!==i||t[4]!==r||t[5]!==s||t[6]!==a?(p=s===null?(0,b.jsx)(T,{className:r,icon:i,folderExpanded:a}):null,t[3]=i,t[4]=r,t[5]=s,t[6]=a,t[7]=p):p=t[7];let m;t[8]!==r||t[9]!==s?(m=s?(0,b.jsx)(`img`,{src:s,alt:``,className:c(`size-3.5 shrink-0 rounded-[25%] object-contain`,r),onError:()=>f(s)}):null,t[8]=r,t[9]=s,t[10]=m):m=t[10];let h;t[11]!==u||t[12]!==n?(h=u?(0,b.jsx)(`img`,{src:n,alt:``,className:`hidden`,onLoad:()=>{l(n)},onError:()=>f(n)}):null,t[11]=u,t[12]=n,t[13]=h):h=t[13];let g;return t[14]!==p||t[15]!==m||t[16]!==h?(g=(0,b.jsxs)(b.Fragment,{children:[p,m,h]}),t[14]=p,t[15]=m,t[16]=h,t[17]=g):g=t[17],g}export{w as t};
3
+ //# sourceMappingURL=ProjectFavicon-n6CM3ZfY.js.map
@@ -1,2 +1,2 @@
1
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{BE as n,Ng as r,eh as i,lb as a,lr as o,mE as s,t as c}from"./utils-B0w8dSf5.js";import{n as ee,t as l}from"./toggle-group--s5MIuQv.js";import{t as u}from"./input-CDBTiBJx.js";import{t as te}from"./scroll-area-CT3H0nmo.js";import{a as ne,c as re,i as d,o as ie,r as ae,s as oe,t as se}from"./dialog-Bdi4gsq5.js";import{i as f,n as p,r as ce,t as le}from"./ProjectMonogram-C1SBXbLc.js";import{DynamicIcon as m,t as h}from"./dynamic-BwDInrZk.js";var g=n();function _(e){return e.normalize(`NFKC`).trim()}function v(e){let t=_(e).match(/[\p{L}\p{N}]+/gu)??[],n=t[0];if(!n)return`PR`;let r=Array.from(n),i=r[0]??`P`,a=r.slice(1).find(e=>/\p{N}/u.test(e))??(t.length>1?Array.from(t.at(-1)??``)[0]:r.at(-1))??i;return Array.from(`${i}${a}`.toUpperCase()).slice(0,2).join(``)}function y(e){let t=_(e).toLocaleLowerCase(`en-US`)||`project`,n=0;for(let e of t)n=(n*31+(e.codePointAt(0)??0))%p.length;return p[n]?.value??`blue`}function b(e){return{monogram:v(e),color:y(e)}}var x=e(t(),1),S=[`folder-code`,`code-2`,`terminal`,`globe-2`,`server`,`database`,`bot`,`sparkles`,`smartphone`,`monitor`,`cloud-cog`,`package`,`book-open`,`flask-conical`,`shield-check`,`rocket`,`gamepad-2`,`music`,`image`,`shopping-bag`,`git-branch`,`workflow`,`wrench`,`layers-3`],ue=[{emoji:`💻`,label:`Computer`},{emoji:`🛠️`,label:`Tools`},{emoji:`🚀`,label:`Rocket`},{emoji:`🤖`,label:`Robot`},{emoji:`✨`,label:`Sparkles`},{emoji:`⚡`,label:`Lightning`},{emoji:`🌐`,label:`Web`},{emoji:`📱`,label:`Mobile`},{emoji:`🖥️`,label:`Desktop`},{emoji:`⌨️`,label:`Keyboard`},{emoji:`⚙️`,label:`Gear`},{emoji:`🗄️`,label:`Database`},{emoji:`☁️`,label:`Cloud`},{emoji:`📦`,label:`Package`},{emoji:`📚`,label:`Books`},{emoji:`🧪`,label:`Test tube`},{emoji:`🔒`,label:`Lock`},{emoji:`🎮`,label:`Game`},{emoji:`🎵`,label:`Music`},{emoji:`🎬`,label:`Movie`},{emoji:`🖼️`,label:`Picture`},{emoji:`🛍️`,label:`Shopping`},{emoji:`🔥`,label:`Fire`},{emoji:`💡`,label:`Idea`},{emoji:`🧩`,label:`Puzzle`},{emoji:`📊`,label:`Chart`},{emoji:`🧠`,label:`Brain`},{emoji:`🦄`,label:`Unicorn`},{emoji:`🐙`,label:`Octopus`},{emoji:`🌱`,label:`Seedling`}];function de(e){let t=e.trim().toLowerCase().replaceAll(/\s+/g,`-`);return t?h.filter(e=>e.includes(t)).slice(0,60):S}function fe(e){let t=e.trim();if(!t)return null;let n=new Intl.Segmenter(void 0,{granularity:`grapheme`}).segment(t)[Symbol.iterator]().next().value?.segment,r=/^\p{Regional_Indicator}{2}$/u.test(n??``),i=/^[#*0-9]\uFE0F?\u20E3$/u.test(n??``);return!n||!/\p{Extended_Pictographic}/u.test(n)&&!r&&!i?null:n}var C=e(s(),1),pe=`folder-code`,me=a(r);function he(e){let t=(0,g.c)(8),{name:n}=e,r=i(),a;t[0]!==n||t[1]!==r?(a=f(r,n),t[0]=n,t[1]=r,t[2]=a):a=t[2];let{p4:o,strokeWidth:s}=a;if(o){let e;return t[3]===o?e=t[4]:(e=(0,C.jsx)(o,{className:`size-5`}),t[3]=o,t[4]=e),e}let c;return t[5]!==n||t[6]!==s?(c=(0,C.jsx)(m,{name:n,className:`size-5`,strokeWidth:s}),t[5]=n,t[6]=s,t[7]=c):c=t[7],c}function ge(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function w(e){let t=(0,g.c)(84),{current:n,projectName:r,open:i,onOpenChange:a,onSelect:s}=e,f;t[0]===r?f=t[1]:(f=b(r),t[0]=r,t[1]=f);let m=f,[h,_]=(0,x.useState)(n?.kind??`lucide`),[v,y]=(0,x.useState)(n?.kind===`lucide`?n.name:pe),[S,w]=(0,x.useState)(n&&n.kind!==`emoji`?n.color:m.color),[T,_e]=(0,x.useState)(n?.kind===`monogram`?n.text:m.monogram),[E,D]=(0,x.useState)(n?.kind===`emoji`?n.emoji:`💻`),[O,ve]=(0,x.useState)(``),[k,ye]=(0,x.useState)(``),be=(0,x.useRef)(!1),A,j;t[2]!==m.color||t[3]!==m.monogram||t[4]!==n||t[5]!==i?(A=()=>{i&&!be.current&&(_(n?.kind??`lucide`),y(n?.kind===`lucide`?n.name:pe),w(n&&n.kind!==`emoji`?n.color:m.color),_e(n?.kind===`monogram`?n.text:m.monogram),D(n?.kind===`emoji`?n.emoji:`💻`),ve(``),ye(``)),be.current=i},j=[n,i,m.color,m.monogram],t[2]=m.color,t[3]=m.monogram,t[4]=n,t[5]=i,t[6]=A,t[7]=j):(A=t[6],j=t[7]),(0,x.useEffect)(A,j);let M;t[8]===O?M=t[9]:(M=de(O),t[8]=O,t[9]=M);let N=M,P,F,I,L,R,z,B,V,H,U,W,G,K;if(t[10]!==m.monogram||t[11]!==S||t[12]!==k||t[13]!==E||t[14]!==v||t[15]!==N||t[16]!==T||t[17]!==h||t[18]!==a||t[19]!==s||t[20]!==i||t[21]!==O){let e=ce(S),n,r;t[35]===T?(n=t[36],r=t[37]):(n=T.normalize(`NFKC`).trim().toUpperCase(),r=me(n),t[35]=T,t[36]=n,t[37]=r),K=r;let o;t[38]!==S||t[39]!==E||t[40]!==v||t[41]!==h||t[42]!==n||t[43]!==a||t[44]!==s||t[45]!==K?(o=()=>{(h!==`monogram`||K)&&(s(h===`monogram`?{kind:`monogram`,text:n,color:S}:h===`lucide`?{kind:`lucide`,name:v,color:S}:{kind:`emoji`,emoji:E}),a(!1))},t[38]=S,t[39]=E,t[40]=v,t[41]=h,t[42]=n,t[43]=a,t[44]=s,t[45]=K,t[46]=o):o=t[46],L=o,I=se,z=i,B=a,F=oe,G=`w-full sm:w-[32rem]`,t[47]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,C.jsxs)(ne,{children:[(0,C.jsx)(re,{children:`Choose project icon`}),(0,C.jsx)(ae,{children:`Choose an icon, emoji, or monogram.`})]}),t[47]=R):R=t[47],P=ie,V=`flex min-h-0 flex-col`;let d;t[48]===h?d=t[49]:(d=[h],t[48]=h,t[49]=d);let f,g,b,x;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(f=e=>{let t=e[0];(t===`lucide`||t===`emoji`||t===`monogram`)&&_(t)},g=(0,C.jsx)(l,{value:`lucide`,children:`Icons`}),b=(0,C.jsx)(l,{value:`emoji`,children:`Emoji`}),x=(0,C.jsx)(l,{value:`monogram`,children:`Monogram`}),t[50]=f,t[51]=g,t[52]=b,t[53]=x):(f=t[50],g=t[51],b=t[52],x=t[53]),t[54]===d?H=t[55]:(H=(0,C.jsxs)(ee,{"aria-label":`Icon type`,variant:`segmented`,value:d,onValueChange:f,children:[g,b,x]}),t[54]=d,t[55]=H),t[56]!==S||t[57]!==h?(U=h===`emoji`?null:(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Color`}),(0,C.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,role:`group`,"aria-label":`Icon color`,children:p.map(e=>(0,C.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":S===e.value,className:c(`flex size-6 items-center justify-center rounded-full border border-transparent outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,S===e.value&&`border-foreground/64`),onClick:()=>w(e.value),children:(0,C.jsx)(`span`,{className:c(`size-4 rounded-full`,e.swatchClassName)})},e.value))})]}),t[56]=S,t[57]=h,t[58]=U):U=t[58],W=h===`lucide`?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(u,{type:`search`,value:O,"aria-label":`Search Lucide icons`,placeholder:`Search all Lucide icons`,onChange:e=>ve(e.currentTarget.value)}),(0,C.jsx)(te,{scrollFade:!0,className:`max-h-64`,children:(0,C.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:N.map(t=>(0,C.jsx)(`button`,{type:`button`,"aria-label":ge(t),"aria-pressed":v===t,className:c(`flex aspect-square items-center justify-center rounded-md border border-transparent outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,v===t&&`border-border bg-accent`,e),onClick:()=>y(t),children:(0,C.jsx)(he,{name:t})},t))})}),N.length===0?(0,C.jsx)(`p`,{className:`py-8 text-center text-sm text-muted-foreground`,children:`No icons found.`}):null]}):h===`monogram`?(0,C.jsxs)(`div`,{className:`flex items-center gap-4 py-2`,children:[(0,C.jsx)(le,{text:K?n:m.monogram,color:S,className:`size-12`}),(0,C.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,C.jsx)(`label`,{htmlFor:`project-monogram`,className:`text-sm font-medium`,children:`Letters`}),(0,C.jsx)(u,{id:`project-monogram`,value:T,onChange:e=>_e(e.currentTarget.value),"aria-describedby":`project-monogram-hint`,"aria-invalid":!K,autoComplete:`off`}),(0,C.jsx)(`p`,{id:`project-monogram-hint`,className:`text-xs text-muted-foreground`,children:`One or two letters or numbers.`})]})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(te,{scrollFade:!0,className:`max-h-64`,children:(0,C.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:ue.map(e=>(0,C.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":E===e.emoji,className:c(`flex aspect-square items-center justify-center rounded-md border border-transparent text-xl outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,E===e.emoji&&`border-border bg-accent`),onClick:()=>D(e.emoji),children:e.emoji},e.emoji))})}),(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Or paste any emoji`}),(0,C.jsx)(u,{value:k,"aria-label":`Custom emoji`,placeholder:`Paste an emoji`,onChange:e=>{let t=e.currentTarget.value;ye(t);let n=fe(t);n&&D(n)}})]})]}),t[10]=m.monogram,t[11]=S,t[12]=k,t[13]=E,t[14]=v,t[15]=N,t[16]=T,t[17]=h,t[18]=a,t[19]=s,t[20]=i,t[21]=O,t[22]=P,t[23]=F,t[24]=I,t[25]=L,t[26]=R,t[27]=z,t[28]=B,t[29]=V,t[30]=H,t[31]=U,t[32]=W,t[33]=G,t[34]=K}else P=t[22],F=t[23],I=t[24],L=t[25],R=t[26],z=t[27],B=t[28],V=t[29],H=t[30],U=t[31],W=t[32],G=t[33],K=t[34];let q;t[59]!==P||t[60]!==V||t[61]!==H||t[62]!==U||t[63]!==W?(q=(0,C.jsxs)(P,{className:V,children:[H,U,W]}),t[59]=P,t[60]=V,t[61]=H,t[62]=U,t[63]=W,t[64]=q):q=t[64];let J;t[65]===a?J=t[66]:(J=(0,C.jsx)(o,{variant:`outline`,onClick:()=>a(!1),children:`Cancel`}),t[65]=a,t[66]=J);let Y=h===`monogram`&&!K,X;t[67]!==L||t[68]!==Y?(X=(0,C.jsx)(o,{onClick:L,disabled:Y,children:`Save icon`}),t[67]=L,t[68]=Y,t[69]=X):X=t[69];let Z;t[70]!==J||t[71]!==X?(Z=(0,C.jsxs)(d,{children:[J,X]}),t[70]=J,t[71]=X,t[72]=Z):Z=t[72];let Q;t[73]!==F||t[74]!==R||t[75]!==q||t[76]!==Z||t[77]!==G?(Q=(0,C.jsxs)(F,{className:G,children:[R,q,Z]}),t[73]=F,t[74]=R,t[75]=q,t[76]=Z,t[77]=G,t[78]=Q):Q=t[78];let $;return t[79]!==I||t[80]!==z||t[81]!==B||t[82]!==Q?($=(0,C.jsx)(I,{open:z,onOpenChange:B,children:Q}),t[79]=I,t[80]=z,t[81]=B,t[82]=Q,t[83]=$):$=t[83],$}export{w as ProjectIconPickerDialog};
2
- //# sourceMappingURL=ProjectIconPickerDialog-gjdCKD85.js.map
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{BE as n,Ng as r,eh as i,lb as a,lr as o,mE as s,t as c}from"./utils-B0w8dSf5.js";import{n as ee,t as l}from"./toggle-group--s5MIuQv.js";import{t as u}from"./input-CDBTiBJx.js";import{t as te}from"./scroll-area-CT3H0nmo.js";import{a as ne,c as re,i as d,o as ie,r as ae,s as oe,t as se}from"./dialog-Bdi4gsq5.js";import{i as f,n as p,r as ce,t as le}from"./ProjectMonogram-C1SBXbLc.js";import{DynamicIcon as m,t as h}from"./dynamic-D2jjS7tR.js";var g=n();function _(e){return e.normalize(`NFKC`).trim()}function v(e){let t=_(e).match(/[\p{L}\p{N}]+/gu)??[],n=t[0];if(!n)return`PR`;let r=Array.from(n),i=r[0]??`P`,a=r.slice(1).find(e=>/\p{N}/u.test(e))??(t.length>1?Array.from(t.at(-1)??``)[0]:r.at(-1))??i;return Array.from(`${i}${a}`.toUpperCase()).slice(0,2).join(``)}function y(e){let t=_(e).toLocaleLowerCase(`en-US`)||`project`,n=0;for(let e of t)n=(n*31+(e.codePointAt(0)??0))%p.length;return p[n]?.value??`blue`}function b(e){return{monogram:v(e),color:y(e)}}var x=e(t(),1),S=[`folder-code`,`code-2`,`terminal`,`globe-2`,`server`,`database`,`bot`,`sparkles`,`smartphone`,`monitor`,`cloud-cog`,`package`,`book-open`,`flask-conical`,`shield-check`,`rocket`,`gamepad-2`,`music`,`image`,`shopping-bag`,`git-branch`,`workflow`,`wrench`,`layers-3`],ue=[{emoji:`💻`,label:`Computer`},{emoji:`🛠️`,label:`Tools`},{emoji:`🚀`,label:`Rocket`},{emoji:`🤖`,label:`Robot`},{emoji:`✨`,label:`Sparkles`},{emoji:`⚡`,label:`Lightning`},{emoji:`🌐`,label:`Web`},{emoji:`📱`,label:`Mobile`},{emoji:`🖥️`,label:`Desktop`},{emoji:`⌨️`,label:`Keyboard`},{emoji:`⚙️`,label:`Gear`},{emoji:`🗄️`,label:`Database`},{emoji:`☁️`,label:`Cloud`},{emoji:`📦`,label:`Package`},{emoji:`📚`,label:`Books`},{emoji:`🧪`,label:`Test tube`},{emoji:`🔒`,label:`Lock`},{emoji:`🎮`,label:`Game`},{emoji:`🎵`,label:`Music`},{emoji:`🎬`,label:`Movie`},{emoji:`🖼️`,label:`Picture`},{emoji:`🛍️`,label:`Shopping`},{emoji:`🔥`,label:`Fire`},{emoji:`💡`,label:`Idea`},{emoji:`🧩`,label:`Puzzle`},{emoji:`📊`,label:`Chart`},{emoji:`🧠`,label:`Brain`},{emoji:`🦄`,label:`Unicorn`},{emoji:`🐙`,label:`Octopus`},{emoji:`🌱`,label:`Seedling`}];function de(e){let t=e.trim().toLowerCase().replaceAll(/\s+/g,`-`);return t?h.filter(e=>e.includes(t)).slice(0,60):S}function fe(e){let t=e.trim();if(!t)return null;let n=new Intl.Segmenter(void 0,{granularity:`grapheme`}).segment(t)[Symbol.iterator]().next().value?.segment,r=/^\p{Regional_Indicator}{2}$/u.test(n??``),i=/^[#*0-9]\uFE0F?\u20E3$/u.test(n??``);return!n||!/\p{Extended_Pictographic}/u.test(n)&&!r&&!i?null:n}var C=e(s(),1),pe=`folder-code`,me=a(r);function he(e){let t=(0,g.c)(8),{name:n}=e,r=i(),a;t[0]!==n||t[1]!==r?(a=f(r,n),t[0]=n,t[1]=r,t[2]=a):a=t[2];let{p4:o,strokeWidth:s}=a;if(o){let e;return t[3]===o?e=t[4]:(e=(0,C.jsx)(o,{className:`size-5`}),t[3]=o,t[4]=e),e}let c;return t[5]!==n||t[6]!==s?(c=(0,C.jsx)(m,{name:n,className:`size-5`,strokeWidth:s}),t[5]=n,t[6]=s,t[7]=c):c=t[7],c}function ge(e){return e.split(`-`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function w(e){let t=(0,g.c)(84),{current:n,projectName:r,open:i,onOpenChange:a,onSelect:s}=e,f;t[0]===r?f=t[1]:(f=b(r),t[0]=r,t[1]=f);let m=f,[h,_]=(0,x.useState)(n?.kind??`lucide`),[v,y]=(0,x.useState)(n?.kind===`lucide`?n.name:pe),[S,w]=(0,x.useState)(n&&n.kind!==`emoji`?n.color:m.color),[T,_e]=(0,x.useState)(n?.kind===`monogram`?n.text:m.monogram),[E,D]=(0,x.useState)(n?.kind===`emoji`?n.emoji:`💻`),[O,ve]=(0,x.useState)(``),[k,ye]=(0,x.useState)(``),be=(0,x.useRef)(!1),A,j;t[2]!==m.color||t[3]!==m.monogram||t[4]!==n||t[5]!==i?(A=()=>{i&&!be.current&&(_(n?.kind??`lucide`),y(n?.kind===`lucide`?n.name:pe),w(n&&n.kind!==`emoji`?n.color:m.color),_e(n?.kind===`monogram`?n.text:m.monogram),D(n?.kind===`emoji`?n.emoji:`💻`),ve(``),ye(``)),be.current=i},j=[n,i,m.color,m.monogram],t[2]=m.color,t[3]=m.monogram,t[4]=n,t[5]=i,t[6]=A,t[7]=j):(A=t[6],j=t[7]),(0,x.useEffect)(A,j);let M;t[8]===O?M=t[9]:(M=de(O),t[8]=O,t[9]=M);let N=M,P,F,I,L,R,z,B,V,H,U,W,G,K;if(t[10]!==m.monogram||t[11]!==S||t[12]!==k||t[13]!==E||t[14]!==v||t[15]!==N||t[16]!==T||t[17]!==h||t[18]!==a||t[19]!==s||t[20]!==i||t[21]!==O){let e=ce(S),n,r;t[35]===T?(n=t[36],r=t[37]):(n=T.normalize(`NFKC`).trim().toUpperCase(),r=me(n),t[35]=T,t[36]=n,t[37]=r),K=r;let o;t[38]!==S||t[39]!==E||t[40]!==v||t[41]!==h||t[42]!==n||t[43]!==a||t[44]!==s||t[45]!==K?(o=()=>{(h!==`monogram`||K)&&(s(h===`monogram`?{kind:`monogram`,text:n,color:S}:h===`lucide`?{kind:`lucide`,name:v,color:S}:{kind:`emoji`,emoji:E}),a(!1))},t[38]=S,t[39]=E,t[40]=v,t[41]=h,t[42]=n,t[43]=a,t[44]=s,t[45]=K,t[46]=o):o=t[46],L=o,I=se,z=i,B=a,F=oe,G=`w-full sm:w-[32rem]`,t[47]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,C.jsxs)(ne,{children:[(0,C.jsx)(re,{children:`Choose project icon`}),(0,C.jsx)(ae,{children:`Choose an icon, emoji, or monogram.`})]}),t[47]=R):R=t[47],P=ie,V=`flex min-h-0 flex-col`;let d;t[48]===h?d=t[49]:(d=[h],t[48]=h,t[49]=d);let f,g,b,x;t[50]===Symbol.for(`react.memo_cache_sentinel`)?(f=e=>{let t=e[0];(t===`lucide`||t===`emoji`||t===`monogram`)&&_(t)},g=(0,C.jsx)(l,{value:`lucide`,children:`Icons`}),b=(0,C.jsx)(l,{value:`emoji`,children:`Emoji`}),x=(0,C.jsx)(l,{value:`monogram`,children:`Monogram`}),t[50]=f,t[51]=g,t[52]=b,t[53]=x):(f=t[50],g=t[51],b=t[52],x=t[53]),t[54]===d?H=t[55]:(H=(0,C.jsxs)(ee,{"aria-label":`Icon type`,variant:`segmented`,value:d,onValueChange:f,children:[g,b,x]}),t[54]=d,t[55]=H),t[56]!==S||t[57]!==h?(U=h===`emoji`?null:(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Color`}),(0,C.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,role:`group`,"aria-label":`Icon color`,children:p.map(e=>(0,C.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":S===e.value,className:c(`flex size-6 items-center justify-center rounded-full border border-transparent outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,S===e.value&&`border-foreground/64`),onClick:()=>w(e.value),children:(0,C.jsx)(`span`,{className:c(`size-4 rounded-full`,e.swatchClassName)})},e.value))})]}),t[56]=S,t[57]=h,t[58]=U):U=t[58],W=h===`lucide`?(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(u,{type:`search`,value:O,"aria-label":`Search Lucide icons`,placeholder:`Search all Lucide icons`,onChange:e=>ve(e.currentTarget.value)}),(0,C.jsx)(te,{scrollFade:!0,className:`max-h-64`,children:(0,C.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:N.map(t=>(0,C.jsx)(`button`,{type:`button`,"aria-label":ge(t),"aria-pressed":v===t,className:c(`flex aspect-square items-center justify-center rounded-md border border-transparent outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,v===t&&`border-border bg-accent`,e),onClick:()=>y(t),children:(0,C.jsx)(he,{name:t})},t))})}),N.length===0?(0,C.jsx)(`p`,{className:`py-8 text-center text-sm text-muted-foreground`,children:`No icons found.`}):null]}):h===`monogram`?(0,C.jsxs)(`div`,{className:`flex items-center gap-4 py-2`,children:[(0,C.jsx)(le,{text:K?n:m.monogram,color:S,className:`size-12`}),(0,C.jsxs)(`div`,{className:`flex-1 space-y-2`,children:[(0,C.jsx)(`label`,{htmlFor:`project-monogram`,className:`text-sm font-medium`,children:`Letters`}),(0,C.jsx)(u,{id:`project-monogram`,value:T,onChange:e=>_e(e.currentTarget.value),"aria-describedby":`project-monogram-hint`,"aria-invalid":!K,autoComplete:`off`}),(0,C.jsx)(`p`,{id:`project-monogram-hint`,className:`text-xs text-muted-foreground`,children:`One or two letters or numbers.`})]})]}):(0,C.jsxs)(C.Fragment,{children:[(0,C.jsx)(te,{scrollFade:!0,className:`max-h-64`,children:(0,C.jsx)(`div`,{className:`grid grid-cols-8 gap-1 p-0.5 sm:grid-cols-10`,children:ue.map(e=>(0,C.jsx)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":E===e.emoji,className:c(`flex aspect-square items-center justify-center rounded-md border border-transparent text-xl outline-none hover:bg-accent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,E===e.emoji&&`border-border bg-accent`),onClick:()=>D(e.emoji),children:e.emoji},e.emoji))})}),(0,C.jsxs)(`div`,{children:[(0,C.jsx)(`div`,{className:`mb-2 text-xs font-medium text-muted-foreground`,children:`Or paste any emoji`}),(0,C.jsx)(u,{value:k,"aria-label":`Custom emoji`,placeholder:`Paste an emoji`,onChange:e=>{let t=e.currentTarget.value;ye(t);let n=fe(t);n&&D(n)}})]})]}),t[10]=m.monogram,t[11]=S,t[12]=k,t[13]=E,t[14]=v,t[15]=N,t[16]=T,t[17]=h,t[18]=a,t[19]=s,t[20]=i,t[21]=O,t[22]=P,t[23]=F,t[24]=I,t[25]=L,t[26]=R,t[27]=z,t[28]=B,t[29]=V,t[30]=H,t[31]=U,t[32]=W,t[33]=G,t[34]=K}else P=t[22],F=t[23],I=t[24],L=t[25],R=t[26],z=t[27],B=t[28],V=t[29],H=t[30],U=t[31],W=t[32],G=t[33],K=t[34];let q;t[59]!==P||t[60]!==V||t[61]!==H||t[62]!==U||t[63]!==W?(q=(0,C.jsxs)(P,{className:V,children:[H,U,W]}),t[59]=P,t[60]=V,t[61]=H,t[62]=U,t[63]=W,t[64]=q):q=t[64];let J;t[65]===a?J=t[66]:(J=(0,C.jsx)(o,{variant:`outline`,onClick:()=>a(!1),children:`Cancel`}),t[65]=a,t[66]=J);let Y=h===`monogram`&&!K,X;t[67]!==L||t[68]!==Y?(X=(0,C.jsx)(o,{onClick:L,disabled:Y,children:`Save icon`}),t[67]=L,t[68]=Y,t[69]=X):X=t[69];let Z;t[70]!==J||t[71]!==X?(Z=(0,C.jsxs)(d,{children:[J,X]}),t[70]=J,t[71]=X,t[72]=Z):Z=t[72];let Q;t[73]!==F||t[74]!==R||t[75]!==q||t[76]!==Z||t[77]!==G?(Q=(0,C.jsxs)(F,{className:G,children:[R,q,Z]}),t[73]=F,t[74]=R,t[75]=q,t[76]=Z,t[77]=G,t[78]=Q):Q=t[78];let $;return t[79]!==I||t[80]!==z||t[81]!==B||t[82]!==Q?($=(0,C.jsx)(I,{open:z,onOpenChange:B,children:Q}),t[79]=I,t[80]=z,t[81]=B,t[82]=Q,t[83]=$):$=t[83],$}export{w as ProjectIconPickerDialog};
2
+ //# sourceMappingURL=ProjectIconPickerDialog-mnqh2Fb1.js.map
@@ -1,2 +1,2 @@
1
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{BE as n,mE as r}from"./utils-B0w8dSf5.js";import{q as i}from"./useSettings-BeOQNM41.js";import{c as a,r as o}from"./ThreadTerminalDrawer-aFQnCwrV.js";var s=n(),c=e(t(),1),l=e(r(),1);function u(e){let t=(0,s.c)(16),{output:n,outputOffset:r,onResponse:u}=e,p=(0,c.useRef)(null),m=(0,c.useRef)(null),h=r??n.length,g;t[0]!==u||t[1]!==n||t[2]!==h?(g={output:n,offset:h,onResponse:u},t[0]=u,t[1]=n,t[2]=h,t[3]=g):g=t[3];let _=(0,c.useRef)(g),v=(0,c.useRef)(0),[y,b]=(0,c.useState)(null),x,S;t[4]!==u||t[5]!==n||t[6]!==r?(x=()=>{_.current={output:n,offset:r??n.length,onResponse:u};let e=m.current;if(!e)return;let t=_.current.offset-v.current;t>0&&t<=n.length?e.write(n.slice(-t)):t!==0&&e.resetAndWrite(n),v.current=_.current.offset},S=[n,r,u],t[4]=u,t[5]=n,t[6]=r,t[7]=x,t[8]=S):(x=t[7],S=t[8]),(0,c.useEffect)(x,S);let C,w;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{let e=p.current;if(!e)return;let t=!1;return a.create(e,{theme:o(e),font:{size:13},onData:e=>_.current.onResponse({type:`terminal`,data:e}),onResize:(e,t)=>_.current.onResponse({type:`terminal`,data:``,size:{cols:e,rows:t}}),onSelectionChange:f,beforeKey:d,onLinkActivate:e=>{/^https?:\/\//i.test(e)&&i().shell.openExternal(e).catch(()=>b(`Could not open the provider link.`))}}).then(e=>{if(t){e.dispose();return}m.current=e,e.write(_.current.output),v.current=_.current.offset}).catch(()=>b(`Could not load the sign-in terminal. Cancel and retry sign-in.`)),()=>{t=!0,m.current?.dispose(),m.current=null}},w=[],t[9]=C,t[10]=w):(C=t[9],w=t[10]),(0,c.useEffect)(C,w);let T;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,l.jsx)(`div`,{ref:p,"aria-label":`Provider sign-in terminal`,className:`relative h-64 overflow-hidden rounded-md border border-border`}),t[11]=T):T=t[11];let E;t[12]===y?E=t[13]:(E=y?(0,l.jsx)(`p`,{role:`alert`,className:`text-destructive`,children:y}):null,t[12]=y,t[13]=E);let D;return t[14]===E?D=t[15]:(D=(0,l.jsxs)(l.Fragment,{children:[T,E]}),t[14]=E,t[15]=D),D}function d(e){return e.key!==`Tab`}function f(){}export{u as default};
2
- //# sourceMappingURL=ProviderAuthTerminal-BdqGbrD-.js.map
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{BE as n,mE as r}from"./utils-B0w8dSf5.js";import{q as i}from"./useSettings-DPnlKDDE.js";import{c as a,r as o}from"./ThreadTerminalDrawer-BMD96ec7.js";var s=n(),c=e(t(),1),l=e(r(),1);function u(e){let t=(0,s.c)(16),{output:n,outputOffset:r,onResponse:u}=e,p=(0,c.useRef)(null),m=(0,c.useRef)(null),h=r??n.length,g;t[0]!==u||t[1]!==n||t[2]!==h?(g={output:n,offset:h,onResponse:u},t[0]=u,t[1]=n,t[2]=h,t[3]=g):g=t[3];let _=(0,c.useRef)(g),v=(0,c.useRef)(0),[y,b]=(0,c.useState)(null),x,S;t[4]!==u||t[5]!==n||t[6]!==r?(x=()=>{_.current={output:n,offset:r??n.length,onResponse:u};let e=m.current;if(!e)return;let t=_.current.offset-v.current;t>0&&t<=n.length?e.write(n.slice(-t)):t!==0&&e.resetAndWrite(n),v.current=_.current.offset},S=[n,r,u],t[4]=u,t[5]=n,t[6]=r,t[7]=x,t[8]=S):(x=t[7],S=t[8]),(0,c.useEffect)(x,S);let C,w;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{let e=p.current;if(!e)return;let t=!1;return a.create(e,{theme:o(e),font:{size:13},onData:e=>_.current.onResponse({type:`terminal`,data:e}),onResize:(e,t)=>_.current.onResponse({type:`terminal`,data:``,size:{cols:e,rows:t}}),onSelectionChange:f,beforeKey:d,onLinkActivate:e=>{/^https?:\/\//i.test(e)&&i().shell.openExternal(e).catch(()=>b(`Could not open the provider link.`))}}).then(e=>{if(t){e.dispose();return}m.current=e,e.write(_.current.output),v.current=_.current.offset}).catch(()=>b(`Could not load the sign-in terminal. Cancel and retry sign-in.`)),()=>{t=!0,m.current?.dispose(),m.current=null}},w=[],t[9]=C,t[10]=w):(C=t[9],w=t[10]),(0,c.useEffect)(C,w);let T;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,l.jsx)(`div`,{ref:p,"aria-label":`Provider sign-in terminal`,className:`relative h-64 overflow-hidden rounded-md border border-border`}),t[11]=T):T=t[11];let E;t[12]===y?E=t[13]:(E=y?(0,l.jsx)(`p`,{role:`alert`,className:`text-destructive`,children:y}):null,t[12]=y,t[13]=E);let D;return t[14]===E?D=t[15]:(D=(0,l.jsxs)(l.Fragment,{children:[T,E]}),t[14]=E,t[15]=D),D}function d(e){return e.key!==`Tab`}function f(){}export{u as default};
2
+ //# sourceMappingURL=ProviderAuthTerminal-B0jiV3vR.js.map
@@ -1,2 +1,2 @@
1
- import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$o as n,Ao as r,BE as i,Cd as a,Gs as o,Gt as s,Jm as c,Kn as l,La as u,Lt as d,Rf as f,Us as p,Vg as m,Wt as h,Ym as g,Zt as _,Zu as v,_r as y,bd as b,dm as x,ei as S,jo as C,lr as ee,mE as w,mn as T,pn as E,t as D,ti as O,un as k,ur as A,vm as te,zt as j}from"./utils-B0w8dSf5.js";import{t as M}from"./CompositeRoot-DXqEvNI3.js";import{t as N}from"./useNavigate-CSxB1zLo.js";import{_ as P,d as F}from"./useSettings-BeOQNM41.js";import{s as I}from"./server-DK7wLDqS.js";import{a as L,n as R,r as z,t as B}from"./tooltip-CuJiZzK7.js";import{a as ne,n as re,r as ie,s as ae,t as oe}from"./combobox-CJgXDxx7.js";import{n as se}from"./scroll-area-CT3H0nmo.js";import{t as ce}from"./AnimatedHeight-xpLZZo3s.js";import{_ as le,h as ue,m as de,y as fe}from"./keybindings-4i_VvPsX.js";import{x as V}from"./Icons-bbJxtd49.js";import{i as pe,o as me,t as he}from"./popover-N-pn4OqA.js";import{i as H,n as U,r as W,t as G}from"./alert-D4hu_q2y.js";import{t as ge}from"./semver-CFbvOQKc.js";import{S as K,n as q,t as J}from"./ChatGptUsageButton-B7IBN3Pq.js";import{t as Y}from"./kbd-BGpxKPhX.js";import{Wr as _e,in as ve,ln as ye,rn as X}from"./main-D6OSHTK1.js";var Z=e(t(),1),be=i(),Q=e(w(),1);function xe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function $(e,t){let n=t?.trim();if(!n)return e;let r=RegExp(`^${xe(n)}(?:\\s*[.:/-]\\s*|\\s+)`,`iu`);return e.replace(r,``).trim()||e}function Se(e,t){let n=t?.preferShortName&&e.shortName?e.shortName:e.name;return p($(n,e.subProvider))}function Ce(e,t){let n=e.trim(),r=t?.trim();return r?n&&RegExp(`^${xe(n)}\\s+\\S`,`i`).test(r)?r:`${e} · ${r}`:e}function we(e){return Se(e,{preferShortName:!0})}function Te(e){return we(e)}var Ee={claudeAgent:`Claude Code`,codex:`the Codex CLI`};function De(e){return e.length<=2?e.join(` and `):`${e.slice(0,-1).join(`, `)}, and ${e[e.length-1]}`}function Oe(e,t=``){let n=t.trim().toLocaleLowerCase(),r=(e.updateRequiredModels??[]).filter(e=>n.length===0||e.name.toLocaleLowerCase().includes(n)||e.slug.toLocaleLowerCase().includes(n));if(r.length===0)return null;let i=r.map(e=>e.minVersion).reduce((e,t)=>ge(t,e)>0?t:e);return`Update ${Ee[e.driver]??m[e.driver]??e.driver} to ${i.startsWith(`v`)?i:`v${i}`} or newer to use ${De(r.map(e=>e.name))}.`}var ke=`model:`,Ae=`legacy-models:`;function je(e,t){return`${ke}${e.length}:${e}${t}`}function Me(e){if(!e.startsWith(ke))return null;let t=e.slice(6),n=t.indexOf(`:`);if(n===-1)return null;let r=t.slice(0,n);if(!/^\d+$/.test(r))return null;let i=Number(r),a=t.slice(n+1);return!Number.isSafeInteger(i)||i>a.length?null:{instanceId:a.slice(0,i),slug:a.slice(i)}}function Ne(e){return`${Ae}${e}`}function Pe(e){return e.startsWith(Ae)?e.slice(14):null}var Fe=(0,Z.memo)(function(e){let t=(0,be.c)(71),n;t[0]!==e.model.subProvider||t[1]!==e.providerDisplayName?(n=Ce(e.providerDisplayName,e.model.subProvider),t[0]=e.model.subProvider,t[1]=e.providerDisplayName,t[2]=n):n=t[2];let r=n,i=e.index,a;t[3]!==e.instanceId||t[4]!==e.model.slug?(a=je(e.instanceId,e.model.slug),t[3]=e.instanceId,t[4]=e.model.slug,t[5]=a):a=t[5];let o=!!e.disabledReason,s=e.disabledReason&&`data-disabled:pointer-events-auto data-disabled:cursor-not-allowed`,c;t[6]===s?c=t[7]:(c=D(`group relative w-full !min-w-0 max-w-full cursor-pointer`,s),t[6]=s,t[7]=c);let u;t[8]!==e.model||t[9]!==e.preferShortName||t[10]!==e.useTriggerLabel?(u=e.useTriggerLabel?Te(e.model):Se(e.model,e.preferShortName?{preferShortName:!0}:void 0),t[8]=e.model,t[9]=e.preferShortName,t[10]=e.useTriggerLabel,t[11]=u):u=t[11];let d;t[12]===u?d=t[13]:(d=(0,Q.jsx)(`div`,{className:`min-w-0 truncate text-xs font-medium leading-snug`,children:u}),t[12]=u,t[13]=d);let f;t[14]===e.showNewBadge?f=t[15]:(f=e.showNewBadge?(0,Q.jsx)(`span`,{className:`shrink-0 rounded border border-update/35 bg-update/15 px-0.5 py-px text-3xs font-bold uppercase leading-none tracking-wide text-update-foreground`,"aria-label":`New model`,children:`New`}):null,t[14]=e.showNewBadge,t[15]=f);let p;t[16]===e.unavailable?p=t[17]:(p=e.unavailable?(0,Q.jsx)(l,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[16]=e.unavailable,t[17]=p);let m;t[18]!==d||t[19]!==f||t[20]!==p?(m=(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[d,f,p]}),t[18]=d,t[19]=f,t[20]=p,t[21]=m):m=t[21];let h;t[22]!==e.acpRegistryAgentId||t[23]!==e.acpRegistryIconUrl||t[24]!==e.driverKind||t[25]!==e.providerDisplayName||t[26]!==e.showProvider||t[27]!==r?(h=e.showProvider&&(0,Q.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5`,children:[(0,Q.jsx)(q,{driverKind:e.driverKind,displayName:e.providerDisplayName,acpRegistryAgentId:e.acpRegistryAgentId,acpRegistryIconUrl:e.acpRegistryIconUrl,className:`size-3`,iconClassName:`size-3`}),(0,Q.jsx)(`span`,{className:`truncate text-xs font-normal leading-snug text-muted-foreground/70`,children:r})]}),t[22]=e.acpRegistryAgentId,t[23]=e.acpRegistryIconUrl,t[24]=e.driverKind,t[25]=e.providerDisplayName,t[26]=e.showProvider,t[27]=r,t[28]=h):h=t[28];let g;t[29]!==m||t[30]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[m,h]}),t[29]=m,t[30]=h,t[31]=g):g=t[31];let _;t[32]!==e.isSelected||t[33]!==e.showSelection?(_=e.showSelection&&e.isSelected?(0,Q.jsx)(b,{className:`size-3.5`,"aria-hidden":`true`}):null,t[32]=e.isSelected,t[33]=e.showSelection,t[34]=_):_=t[34];let v;t[35]===e.jumpLabel?v=t[36]:(v=e.jumpLabel?(0,Q.jsx)(Y,{children:e.jumpLabel}):null,t[35]=e.jumpLabel,t[36]=v);let y;t[37]===e?y=t[38]:(y=t=>{t.stopPropagation(),e.onToggleFavorite()},t[37]=e,t[38]=y);let x=!!e.disabledReason,S=e.isFavorite?`Remove from favorites`:`Add to favorites`,C=e.isFavorite&&`fill-current text-warning`,w;t[39]===C?w=t[40]:(w=D(`size-3.5 sm:size-3`,C),t[39]=C,t[40]=w);let T;t[41]===w?T=t[42]:(T=(0,Q.jsx)(te,{className:w}),t[41]=w,t[42]=T);let E;t[43]!==y||t[44]!==x||t[45]!==S||t[46]!==T?(E=(0,Q.jsx)(L,{render:(0,Q.jsx)(ee,{size:`icon-xs`,variant:`ghost-muted`,className:`-mr-1 shrink-0`,onClick:y,onKeyDown:Ie,disabled:x,"aria-label":S,children:T})}),t[43]=y,t[44]=x,t[45]=S,t[46]=T,t[47]=E):E=t[47];let O=e.isFavorite?`Remove from favorites`:`Add to favorites`,k;t[48]===O?k=t[49]:(k=(0,Q.jsx)(R,{side:`top`,align:`center`,children:O}),t[48]=O,t[49]=k);let A;t[50]!==E||t[51]!==k?(A=(0,Q.jsxs)(B,{children:[E,k]}),t[50]=E,t[51]=k,t[52]=A):A=t[52];let j;t[53]!==_||t[54]!==v||t[55]!==A?(j=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[_,v,A]}),t[53]=_,t[54]=v,t[55]=A,t[56]=j):j=t[56];let M;t[57]!==e.index||t[58]!==g||t[59]!==a||t[60]!==j||t[61]!==o||t[62]!==c?(M=(0,Q.jsxs)(ie,{hideIndicator:!0,index:i,value:a,disabled:o,className:c,children:[g,j]}),t[57]=e.index,t[58]=g,t[59]=a,t[60]=j,t[61]=o,t[62]=c,t[63]=M):M=t[63];let N=M;if(!e.disabledReason)return N;let P;t[64]===N?P=t[65]:(P=(0,Q.jsx)(L,{render:N}),t[64]=N,t[65]=P);let F;t[66]===e.disabledReason?F=t[67]:(F=(0,Q.jsx)(R,{side:`left`,align:`center`,children:e.disabledReason}),t[66]=e.disabledReason,t[67]=F);let I;return t[68]!==P||t[69]!==F?(I=(0,Q.jsxs)(B,{children:[P,F]}),t[68]=P,t[69]=F,t[70]=I):I=t[70],I});function Ie(e){e.stopPropagation()}var Le=Z.forwardRef(function(e,t){let{disabled:n=!1,loopFocus:r=!0,orientation:i=`horizontal`,className:a,render:o,style:s,...c}=e,[l,u]=Z.useState(()=>new Map),d=Z.useMemo(()=>{let e=[];for(let t of l.values())t?.index&&!t.focusableWhenDisabled&&e.push(t.index);return e},[l]),f=Z.useMemo(()=>({disabled:n,orientation:i,setItemMap:u}),[n,i,u]),p={disabled:n,orientation:i},m={"aria-orientation":i,role:`toolbar`};return(0,Q.jsx)(S.Provider,{value:f,children:(0,Q.jsx)(M,{render:o,className:a,style:s,state:p,refs:[t],props:[m,c],disabledIndices:d,loopFocus:r,onMapChange:u,orientation:i})})}),Re=Z.createContext(void 0);function ze(e){let t=Z.useContext(Re);if(t===void 0&&!e)throw Error(r(68));return t}var Be=Z.forwardRef(function(e,t){let{className:n,disabled:r=!1,focusableWhenDisabled:i=!0,render:a,nativeButton:o=!0,style:s,...c}=e,l=Z.useMemo(()=>({focusableWhenDisabled:i}),[i]),{disabled:d,orientation:f}=O(),p=ze(!0),m=d||(p?.disabled??!1)||r,{getButtonProps:h,buttonRef:g}=u({disabled:m,focusableWhenDisabled:i,native:o});return(0,Q.jsx)(y,{tag:`button`,render:a,className:n,style:s,metadata:l,state:{disabled:m,orientation:f,focusable:i},refs:[t,g],props:[c,{disabled:m},h]})});function Ve(e){let t=e.displayName;if(!e.enabled||e.status===`disabled`)return`${t} — Disabled in settings.`;if(e.status===`ready`&&e.isAvailable)return t;let n=e.status===`error`?`Unavailable`:e.status===`warning`?`Limited`:`Not ready`,r=e.snapshot.message?.trim();return r?`${t} — ${n}. ${r}`:`${t} — ${n}.`}var He=`pointer-events-none absolute -right-1 top-1/2 z-10 h-5 w-0.75 -translate-y-1/2 rounded-l-full bg-primary`,Ue=`pointer-events-none absolute -right-0.5 top-0.5 z-10 flex size-3.5 items-center justify-center rounded-full bg-transparent shadow-sm text-update-foreground `,We=`left`,Ge=8,Ke=(0,Z.memo)(function(e){let t=(0,be.c)(27),n;t[0]===e?n=t[1]:(n=t=>{e.onSelectInstance(t)},t[0]=e,t[1]=n);let r=n,i=e.showFavorites??!0,[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),[c,l]=(0,Z.useState)(null),u;t[2]===e.selectedInstanceId?u=t[3]:(u=()=>{let t=s.current;if(!t)return;let n=Array.from(t.querySelectorAll(`[data-model-picker-provider]`)).find(t=>t.dataset.modelPickerProvider===e.selectedInstanceId);if(!n){l(null);return}l(n.offsetTop+n.offsetHeight/2-10)},t[2]=e.selectedInstanceId,t[3]=u);let d;t[4]!==e.instanceEntries||t[5]!==e.selectedInstanceId||t[6]!==i?(d=[e.instanceEntries,e.selectedInstanceId,i],t[4]=e.instanceEntries,t[5]=e.selectedInstanceId,t[6]=i,t[7]=d):d=t[7],(0,Z.useLayoutEffect)(u,d);let f;t[8]===e?f=t[9]:(f=t=>{if(!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey)&&t.key===`ArrowRight`){t.preventDefault(),e.onFocusSearch();return}},t[8]=e,t[9]=f);let p;t[10]===c?p=t[11]:(p=c===null?null:(0,Q.jsx)(`div`,{"data-model-picker-selected-indicator":`true`,className:D(He,`right-0 translate-y-0 transition-[top] duration-200 ease-out`),style:{top:c}}),t[10]=c,t[11]=p);let m;t[12]!==r||t[13]!==e.selectedInstanceId||t[14]!==i?(m=i?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":`favorites`,children:(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:(0,Q.jsx)(Be,{className:D(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`),onClick:()=>r(`favorites`),type:`button`,"aria-label":`Favorites`,"aria-pressed":e.selectedInstanceId===`favorites`,children:(0,Q.jsx)(te,{className:`size-5 fill-current shrink-0`,"aria-hidden":!0})})}),(0,Q.jsx)(R,{side:We,sideOffset:Ge,align:`center`,children:`Favorites`})]})}),(0,Q.jsx)(`div`,{className:`border-b border-border/70`,"aria-hidden":`true`})]}):null,t[12]=r,t[13]=e.selectedInstanceId,t[14]=i,t[15]=m):m=t[15];let g;t[16]!==r||t[17]!==a||t[18]!==e?(g=e.instanceEntries.map(t=>{let n=!h(t),i=e.disabledInstanceIds?.has(t.instanceId)??!1,s=e.selectableUnavailableInstanceIds?.has(t.instanceId)??!1,c=n&&!s||i,l=e.selectedInstanceId===t.instanceId,u=a===t.instanceId,d=e.newBadgeInstanceIds?.has(t.instanceId)??!1,f=_(t,e.instanceEntries),p=n?Ve(t):i?e.getDisabledInstanceTooltip?.(t)??t.displayName:d?`${t.displayName} — New`:t.displayName,m=(0,Q.jsxs)(Be,{className:D(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`,c&&`opacity-50 cursor-not-allowed hover:bg-transparent`),"data-provider-accent-color":t.accentColor,onClick:()=>!c&&r(t.instanceId),onMouseEnter:()=>o(t.instanceId),onMouseLeave:()=>o(e=>e===t.instanceId?null:e),onFocus:()=>o(t.instanceId),onBlur:()=>o(e=>e===t.instanceId?null:e),disabled:c,focusableWhenDisabled:!c,"aria-pressed":l,type:`button`,"aria-label":n||i?p:d?`${t.displayName}, new`:t.displayName,children:[(0,Q.jsx)(q,{driverKind:t.driverKind,displayName:t.displayName,accentColor:t.accentColor,acpRegistryAgentId:t.acpRegistryAgentId,acpRegistryIconUrl:t.acpRegistryIconUrl,showBadge:f,className:`size-6 z-30`,iconClassName:`size-5`,indicatorBackground:u&&!c?`var(--muted)`:l?`var(--background)`:`color-mix(in oklab, var(--muted) 30%, transparent)`,...t.accentColor?{badgeClassName:`h-3 min-w-3 px-0.5 text-5xs`}:{}}),d?(0,Q.jsx)(`span`,{className:Ue,"aria-hidden":!0,children:(0,Q.jsx)(x,{className:`size-2`})}):null]}),g=c?(0,Q.jsx)(`span`,{className:`relative block w-full`,children:m}):m;return(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":t.instanceId,children:(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:g}),(0,Q.jsx)(R,{side:We,sideOffset:Ge,align:`center`,children:p})]})},t.instanceId)}),t[16]=r,t[17]=a,t[18]=e,t[19]=g):g=t[19];let v;t[20]!==p||t[21]!==m||t[22]!==g?(v=(0,Q.jsx)(`div`,{className:`h-full overflow-y-auto overscroll-contain [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,Q.jsxs)(`div`,{ref:s,className:`relative flex min-h-full flex-col gap-1 p-1`,children:[p,m,g]})}),t[20]=p,t[21]=m,t[22]=g,t[23]=v):v=t[23];let y;return t[24]!==f||t[25]!==v?(y=(0,Q.jsx)(Le,{className:`w-11 shrink-0 overflow-hidden bg-muted/30`,"data-model-picker-sidebar":`true`,"aria-label":`Providers`,orientation:`vertical`,onKeyDown:f,children:v}),t[24]=f,t[25]=v,t[26]=y):y=t[26],y});function qe(e){let t=e.compatibilityAdvisory;return e.status===`error`&&e.auth.status===`unauthenticated`?null:t?.status===`broken`||e.status===`ready`&&t?.status===`unsupported`?t:null}function Je(e){if(!e||e.status===`disabled`)return null;let t=qe(e);return t?[e.instanceId,t.status,e.version??``,t.message??``].join(`\0`):e.status===`ready`||e.driver===`antigravity`&&e.installed&&e.status===`warning`&&e.auth.status===`unknown`?null:[e.instanceId,e.status,e.auth.status,e.message??``].join(`\0`)}function Ye(e,t){let n=Je(e);return n!==null&&n!==t}function Xe(e){return e.driver===`antigravity`||e.setup?.canAuthenticate===!0||e.setup?.canInstall===!0}function Ze(e){if(e.auth.status!==`unauthenticated`&&e.compatibilityAdvisory?.status===`broken`&&e.compatibilityAdvisory.message)return e.compatibilityAdvisory.message;if(e.message)return e.message;let t=e.displayName?.trim()||C(e.driver);return!e.installed&&Xe(e)?`Open provider setup to install ${C(e.driver)} on this environment.`:e.auth.status===`unauthenticated`?Xe(e)?e.driver===`antigravity`?`Open provider setup to sign in with Google.`:`Open provider setup to sign in.`:`Sign in via the CLI to authenticate again.`:e.status===`ready`?`No models are available for this provider.`:e.status===`error`?`${t} provider is unavailable.`:`${t} provider has limited availability.`}var Qe=(0,Z.memo)(function(e){let t=(0,be.c)(30),{onDismiss:n,onOpenProviderSetup:r,status:i}=e;if(!i||Je(i)===null)return null;let a;t[0]!==i.displayName||t[1]!==i.driver?(a=i.displayName?.trim()||C(i.driver),t[0]=i.displayName,t[1]=i.driver,t[2]=a):a=t[2];let o=a,s=i.status===`error`&&i.auth.status===`unauthenticated`,l;t[3]===i?l=t[4]:(l=qe(i),t[3]=i,t[4]=l);let u=l,d=s?`${o} is unauthenticated`:u?`${o} ${i.version??``} is ${u.status===`broken`?`known to be broken`:`unsupported`}`:`${o} provider status`,p;t[5]!==u?.message||t[6]!==i?(p=u?.message??Ze(i),t[5]=u?.message,t[6]=i,t[7]=p):p=t[7];let m=p,h=u?.status!==`broken`&&(i.status===`warning`||u!==null)?`warning`:`error`,g=u&&u.status!==`broken`?`status`:`alert`,_;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Q.jsx)(f,{}),t[8]=_):_=t[8];let v;t[9]===d?v=t[10]:(v=(0,Q.jsx)(H,{children:d}),t[9]=d,t[10]=v);let y;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Q.jsx)(`div`,{className:`line-clamp-3`}),t[11]=y):y=t[11];let b;t[12]===m?b=t[13]:(b=(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:y,children:m}),(0,Q.jsx)(R,{side:`top`,className:`whitespace-pre-wrap`,children:m})]}),t[12]=m,t[13]=b);let x;t[14]!==r||t[15]!==i?(x=r&&Xe(i)?(0,Q.jsx)(A,{onClick:()=>r(i.instanceId),children:`Open provider setup`}):null,t[14]=r,t[15]=i,t[16]=x):x=t[16];let S;t[17]!==x||t[18]!==b?(S=(0,Q.jsxs)(W,{children:[b,x]}),t[17]=x,t[18]=b,t[19]=S):S=t[19];let w=`Dismiss ${o} provider ${i.status}`,T;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Q.jsx)(c,{}),t[20]=T):T=t[20];let E;t[21]!==n||t[22]!==w?(E=(0,Q.jsx)(U,{children:(0,Q.jsx)(ee,{"aria-label":w,onClick:n,size:`icon-xs`,variant:`ghost-muted`,children:T})}),t[21]=n,t[22]=w,t[23]=E):E=t[23];let D;return t[24]!==S||t[25]!==E||t[26]!==h||t[27]!==g||t[28]!==v?(D=(0,Q.jsx)(`div`,{className:`pointer-events-auto mx-auto w-fit max-w-[calc(100%-2rem)] pt-3`,children:(0,Q.jsxs)(G,{variant:h,role:g,surface:`glass`,controlAlignment:`first-line`,children:[_,v,S,E]})}),t[24]=S,t[25]=E,t[26]=h,t[27]=g,t[28]=v,t[29]=D):D=t[29],D}),$e=24;function et(e){return[X(e.name),...e.shortName?[X(e.shortName)]:[],...e.subProvider?[X(e.subProvider)]:[],X(e.driverKind),X(e.providerDisplayName),nt(e)]}function tt(e,t,n){return ve({value:e,query:t,exactBase:n,prefixBase:n+2,boundaryBase:n+4,includesBase:n+6,...t.length>=3?{fuzzyBase:n+100}:{}})}function nt(e){return X([e.name,e.shortName,e.subProvider,e.driverKind,e.providerDisplayName].filter(e=>typeof e==`string`&&e.length>0).join(` `))}function rt(e,t){let n=X(t).split(/\s+/u).filter(e=>e.length>0);if(n.length===0)return 0;let r=et(e),i=0;for(let e of n){let t=[];for(let n=0;n<r.length;n+=1){let i=tt(r[n],e,n*10);i!==null&&t.push(i)}if(t.length===0)return null;i+=Math.min(...t)}return e.isFavorite?i-$e:i}function it(e){if(e.driverKind===`antigravity`&&e.model===`antigravity-default`){let t=e.options.filter(e=>e.slug!==`antigravity-default`&&!e.isUnavailable);return t.find(e=>e.aliases?.includes(`antigravity-default`))??t.find(e=>e.isDefault)}return e.options.find(t=>t.slug===e.model)}function at(e){return e.entry.driverKind===`antigravity`&&e.option.slug===`antigravity-default`?!1:h(e.entry)?!0:e.entry.enabled&&(e.entry.driverKind===`opencode`||e.entry.driverKind===`antigravity`)&&e.entry.instanceId===e.activeInstanceId&&e.option.slug===e.activeModel&&e.option.isUnavailable===!0}function ot(e,t){return e.enabled&&e.status!==`disabled`&&Xe(e.snapshot)&&(!h(e)||!e.installed||e.snapshot.auth.status===`unauthenticated`||!t.some(e=>!e.isUnavailable))}function st(e){let t=[`favorites`,...e.entries.filter(t=>!e.disabledInstanceIds?.has(t.instanceId)&&(h(t)||e.selectableUnavailableInstanceIds?.has(t.instanceId))).map(e=>e.instanceId)],n=t.indexOf(e.selectedInstanceId);return t[n<0?e.direction===1?0:t.length-1:(n+e.direction+t.length)%t.length]}var ct=new Map,lt=52;function ut(){let e=(0,be.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsx)(`div`,{className:`h-0.5`}),e[0]=t):t=e[0],t}var dt=(0,Z.memo)(function(e){let{keybindings:t,modelOptionsByInstance:r,instanceEntries:i,getModelDisabledReason:c,onInstanceModelChange:l,onToggleModel:u}=e,[f,p]=(0,Z.useState)(``),[m,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(!1),y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),{favorites:C}=F(e.environmentId),ee=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId),w=it({driverKind:ee?.driverKind,model:e.model,options:r.get(e.activeInstanceId)??[]})?.slug??(e.model===`antigravity-default`?``:e.model),T=w?je(e.activeInstanceId,w):null,E=(0,Z.useMemo)(()=>e.selectedModels?.map(e=>{let t=it({driverKind:i.find(t=>t.instanceId===e.instanceId)?.driverKind,model:e.model,options:r.get(e.instanceId)??[]});return je(e.instanceId,t?.slug??e.model)}),[i,r,e.selectedModels]),O=(0,Z.useMemo)(()=>new Set(E??(T?[T]:[])),[E,T]),k=ee!==void 0&&(r.get(e.activeInstanceId)??[]).some(t=>at({entry:ee,option:t,activeInstanceId:e.activeInstanceId,activeModel:w}))&&!h(ee),te=e.onOpenProviderSetup!==void 0&&ee!==void 0&&ot(ee,r.get(e.activeInstanceId)??[]),[M,L]=(0,Z.useState)(()=>e.lockedProvider!==null||k||te?e.activeInstanceId:C.length>0?`favorites`:e.activeInstanceId),[R,B]=(0,Z.useState)(()=>new Set(r.get(e.activeInstanceId)?.some(e=>e.slug===w&&e.isLegacy)?[e.activeInstanceId]:[])),ce=n(I),V=t??ce,pe=N(),me=P(e.environmentId),he=(0,Z.useCallback)(()=>{y.current?.focus({preventScroll:!0})},[]),H=(0,Z.useCallback)(e=>{L(e),window.requestAnimationFrame(()=>{he()})},[he]);(0,Z.useLayoutEffect)(()=>{he();let e=window.requestAnimationFrame(()=>{he()}),t=window.setTimeout(()=>{he()},0);return()=>{window.cancelAnimationFrame(e),window.clearTimeout(t)}},[he]);let U=(0,Z.useMemo)(()=>new Set(C.map(e=>d(e.provider,e.model))),[C]),W=(0,Z.useMemo)(()=>new Map(i.map(e=>[e.instanceId,e])),[i]),G=(0,Z.useCallback)(t=>e.lockedProvider===null?!0:t.driverKind===e.lockedProvider?!e.lockedContinuationGroupKey||t.continuationGroupKey===e.lockedContinuationGroupKey:!1,[e.lockedContinuationGroupKey,e.lockedProvider]),ge=(0,Z.useMemo)(()=>{let t=new Set;if(k&&t.add(e.activeInstanceId),e.onOpenProviderSetup)for(let e of i)ot(e,r.get(e.instanceId)??[])&&t.add(e.instanceId);return t.size>0?t:void 0},[k,i,r,e.activeInstanceId,e.onOpenProviderSetup]),K=(0,Z.useMemo)(()=>{let t=[];for(let[n,i]of r){let r=W.get(n);if(r)for(let a of i)at({entry:r,option:a,activeInstanceId:e.activeInstanceId,activeModel:w})&&t.push({slug:a.slug,name:a.name,...a.shortName?{shortName:a.shortName}:{},...a.subProvider?{subProvider:a.subProvider}:{},...a.badge?{badge:a.badge}:{},...a.isLegacy?{isLegacy:!0}:{},...a.isUnavailable?{isUnavailable:!0}:{},instanceId:n,driverKind:r.driverKind,instanceDisplayName:r.displayName,...r.accentColor?{instanceAccentColor:r.accentColor}:{},...r.acpRegistryAgentId?{acpRegistryAgentId:r.acpRegistryAgentId}:{},...r.acpRegistryIconUrl?{acpRegistryIconUrl:r.acpRegistryIconUrl}:{},...r.continuationGroupKey?{continuationGroupKey:r.continuationGroupKey}:{}})}return t},[r,W,e.activeInstanceId,w]),q=e.lockedProvider!==null,J=f.trim().length>0,Y=(0,Z.useMemo)(()=>{if(!q)return;let e=new Set;for(let t of i)G(t)||e.add(t.instanceId);return e},[i,q,G]),ve=(0,Z.useMemo)(()=>{let e=i.filter(s);if(!q)return e;let t=[],n=[];for(let r of e)G(r)?t.push(r):n.push(r);return[...t,...n]},[i,q,G]),X=!J&&ve.length>0,be=(0,Z.useMemo)(()=>i.map(e=>e.instanceId),[i]),xe=(0,Z.useMemo)(()=>{let t=K;if(f.trim()){let n=t.map(e=>({model:e,score:rt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName,isFavorite:U.has(d(e.instanceId,e.slug))},f),isFavorite:U.has(d(e.instanceId,e.slug)),tieBreaker:nt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName})})).filter(e=>e.score!==null);if(e.lockedProvider!==null){let e=[];for(let t of n)G(t.model)&&e.push(t);return e.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return n.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return e.lockedProvider===null?t=M===`favorites`?t.filter(e=>U.has(d(e.instanceId,e.slug))):t.filter(e=>e.instanceId===M):(t=t.filter(e=>G(e)),t=M===`favorites`?t.filter(e=>U.has(d(e.instanceId,e.slug))):t.filter(e=>e.instanceId===M)),j(t,{favoriteModelKeys:U,groupFavorites:M!==`favorites`,instanceOrder:M===`favorites`?be:[]})},[U,K,be,G,e.lockedProvider,f,M]),$=(0,Z.useMemo)(()=>{if(J||M===`favorites`)return null;let e=xe.filter(e=>!e.isLegacy),t=xe.filter(e=>e.isLegacy);return t.length===0?null:{key:Ne(M),currentModels:e,legacyModels:t,isExpanded:R.has(M)}},[R,xe,J,M]),Se=(0,Z.useMemo)(()=>$?[...$.currentModels,...$.isExpanded?$.legacyModels:[]]:xe,[xe,$]),Ce=M===`favorites`?void 0:W.get(M),we=!J&&e.onOpenProviderSetup?i.filter(e=>G(e)&&ot(e,r.get(e.instanceId)??[])&&(Ce?e.instanceId===Ce.instanceId:xe.length===0)):[],Te=(J?i.filter(G):Ce?[Ce]:[]).flatMap(e=>{let t=Oe(e.snapshot,f);return t?[{instanceId:e.instanceId,notice:t}]:[]}),Ee=(0,Z.useCallback)(e=>{B(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),De=(0,Z.useCallback)((e,t,n=!1)=>{if(c?.(t,e))return;let i=r.get(t);if(!i)return;let a=W.get(t);if(!a)return;let s=o(a.driverKind,e,i);s&&(n&&u?u(t,s):l(t,s))},[W,c,r,l,u]),ke=(0,Z.useMemo)(()=>{let e=new Map,t=0;for(let n of Se){if(c?.(n.instanceId,n.slug))continue;let r=de(t);if(!r)return e;e.set(je(n.instanceId,n.slug),r),t+=1}return e},[c,Se]),Ae=(0,Z.useMemo)(()=>[...ke.keys()],[ke]),Ie=(0,Z.useMemo)(()=>[...K.map(e=>je(e.instanceId,e.slug)),...new Set(K.filter(e=>e.isLegacy).map(e=>Ne(e.instanceId)))],[K]),Le=(0,Z.useMemo)(()=>{let e=Se.map(e=>je(e.instanceId,e.slug));return $&&e.splice($.currentModels.length,0,$.key),e},[$,Se]),Re=(0,Z.useMemo)(()=>new Map(Se.map(e=>[je(e.instanceId,e.slug),e])),[Se]),[ze,Be]=(0,Z.useState)(()=>Le.length*lt),[Ve,He]=(0,Z.useState)(0);(0,Z.useLayoutEffect)(()=>b.current?.getState().listen(`totalSize`,Be),[]);let Ue=Le.length===0?0:`calc(${ze}px + var(--spacing) * 5)`,We=(0,Z.useCallback)(()=>{let e=b.current?.getScrollableNode();if(!(e instanceof HTMLElement))return;let t=Math.max(0,e.scrollHeight-e.clientHeight);g(e.scrollTop>1),v(t-e.scrollTop>1)},[]),Ge=(0,Z.useMemo)(()=>({terminalFocus:!1,terminalOpen:e.terminalOpen,modelPickerOpen:!0}),[e.terminalOpen]),qe=(0,Z.useMemo)(()=>{if(ke.size===0)return ct;let e={platform:navigator.platform,context:Ge},t=new Map;for(let[n,r]of ke){let i=fe(V,r,e);i&&t.set(n,i)}return t.size>0?t:ct},[V,ke,Ge]),Je=(0,Z.useMemo)(()=>({favoritesSet:U,modelJumpLabelByKey:qe,activeModelKey:T,selectedModelKeySet:O}),[U,qe,T,O]);return(0,Z.useEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.repeat||_e())return;let t=le(e,V,{platform:navigator.platform,context:Ge});if(t===`modelPicker.previousProvider`||t===`modelPicker.nextProvider`){e.preventDefault(),e.stopPropagation();let n=st({entries:ve,selectedInstanceId:M,direction:t===`modelPicker.nextProvider`?1:-1,disabledInstanceIds:Y,selectableUnavailableInstanceIds:ge});p(``),H(n);return}let n=ue(t??``);if(n===null)return;e.preventDefault(),e.stopPropagation();let r=Ae[n];if(!r)return;let i=Me(r);i&&De(i.slug,i.instanceId)};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[De,H,V,Y,Ae,Ge,ge,M,ve]),(0,Z.useLayoutEffect)(()=>{g(!1),v(Le.length>5);let e=0,t=window.requestAnimationFrame(()=>{We(),e=window.requestAnimationFrame(We)});return()=>{window.cancelAnimationFrame(t),window.cancelAnimationFrame(e)}},[Le,We]),(0,Q.jsx)(z,{delay:0,children:(0,Q.jsxs)(`div`,{ref:x,className:`relative flex max-h-86.5 w-90 max-w-full flex-row overflow-hidden`,style:J?{height:Ve}:void 0,"data-model-picker-content":`true`,children:[X&&(0,Q.jsx)(Ke,{selectedInstanceId:M,onSelectInstance:H,onFocusSearch:he,instanceEntries:ve,showFavorites:!0,...ge?{selectableUnavailableInstanceIds:ge}:{},...Y?{disabledInstanceIds:Y,getDisabledInstanceTooltip:e=>`${e.displayName} is unavailable in this thread. Start a new thread to switch providers.`}:{}}),(0,Q.jsx)(oe,{inline:!0,items:Ie,filteredItems:Le,filter:null,autoHighlight:!0,open:!0,virtualized:!0,multiple:u!==void 0,value:u?[...O]:T,onItemHighlighted:(e,t)=>{S.current=typeof e==`string`?e:null,t.reason===`keyboard`&&t.index>=0&&b.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onValueChange:(e,t)=>{let n=Array.isArray(e)?e.find(e=>!O.has(e))??[...O].find(t=>!e.includes(t)):e;if(typeof n!=`string`)return;let r=Pe(n);if(r){Ee(r);return}let i=Me(n);i&&De(i.slug,i.instanceId,`shiftKey`in t.event&&t.event.shiftKey===!0)},children:(0,Q.jsxs)(`div`,{className:D(`flex min-h-0 flex-1 flex-col overflow-hidden bg-muted/40`,X&&`border-l border-border/70`),children:[(0,Q.jsx)(ae,{ref:y,placeholder:`Search models...`,value:f,onChange:e=>{J||He(x.current?.offsetHeight??0),p(e.target.value)},onKeyDown:t=>{if(X&&!t.altKey&&!t.ctrlKey&&!t.metaKey&&(t.key===`ArrowLeft`&&!t.shiftKey&&f.length===0||t.key===`Tab`&&t.shiftKey)){let e=t.currentTarget.closest(`[data-model-picker-content]`)?.querySelector(`[data-model-picker-sidebar]`),n=e?.querySelector(`button[aria-pressed="true"]:not(:disabled)`)??e?.querySelector(`button:not(:disabled)`);if(n){t.preventDefault(),t.stopPropagation(),n.focus();return}}if(t.key===`Escape`){t.preventDefault(),t.stopPropagation(),e.onRequestClose?.();return}if(t.key===`Enter`&&S.current){t.preventBaseUIHandler?.(),t.preventDefault(),t.stopPropagation();let e=Pe(S.current);if(e){Ee(e);return}let n=Me(S.current);n&&De(n.slug,n.instanceId,t.shiftKey);return}t.stopPropagation()},onMouseDown:e=>e.stopPropagation(),onTouchStart:e=>e.stopPropagation()}),(0,Q.jsx)(`div`,{className:`relative min-h-0 overflow-hidden pr-px`,style:{height:Ue},children:(0,Q.jsx)(ne,{children:(0,Q.jsx)(ye,{ref:b,data:Le,extraData:Je,keyExtractor:e=>e,renderItem:({item:e,index:t})=>{if($?.key===e)return(0,Q.jsxs)(ie,{hideIndicator:!0,index:t,value:e,"aria-expanded":$.isExpanded,className:`group w-full cursor-pointer`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-medium leading-snug`,children:`Legacy models`}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs font-normal leading-snug text-muted-foreground/70`,children:[$.legacyModels.length,` models`]})]}),(0,Q.jsx)(a,{className:D(`size-4 transition-transform`,$.isExpanded&&`rotate-90`)})]});let n=Re.get(e);if(!n)return null;let r=c?.(n.instanceId,n.slug)??null;return(0,Q.jsx)(Fe,{index:t,model:n,instanceId:n.instanceId,driverKind:n.driverKind,providerDisplayName:n.instanceDisplayName,providerAccentColor:n.instanceAccentColor,acpRegistryAgentId:n.acpRegistryAgentId,acpRegistryIconUrl:n.acpRegistryIconUrl,isFavorite:U.has(d(n.instanceId,n.slug)),isSelected:E===void 0?e===T:O.has(e),showSelection:E!==void 0,showProvider:!0,preferShortName:!q,useTriggerLabel:!1,showNewBadge:n.badge===`new`,unavailable:n.isUnavailable===!0,jumpLabel:qe.get(e)??null,disabledReason:r,onToggleFavorite:()=>me(n.instanceId,n.slug)},e)},estimatedItemSize:lt,drawDistance:480,recycleItems:!0,contentContainerClassName:`pl-2 pr-px`,ItemSeparatorComponent:ut,onLayout:We,onScroll:We,className:D(`scrollbar-gutter-stable h-full overflow-x-hidden overscroll-y-contain py-1.5 [&::-webkit-scrollbar-track]:my-2`,se({top:m,bottom:_}))})})}),we.length>0?(0,Q.jsx)(`div`,{className:`max-h-44 shrink-0 overflow-y-auto border-t border-border/70 p-2`,children:we.map(t=>(0,Q.jsxs)(`div`,{className:`px-1 py-1.5 text-xs leading-snug`,children:[(0,Q.jsx)(`p`,{className:`line-clamp-3 text-muted-foreground`,children:Ze(t.snapshot)}),(0,Q.jsx)(A,{className:`mt-1`,onClick:()=>{e.onRequestClose?.(),e.onOpenProviderSetup?.(t.instanceId)},children:we.length>1?`Set up ${t.displayName}`:`Open provider setup`})]},t.instanceId))}):(0,Q.jsx)(re,{className:`empty:h-0`,children:`No models found`}),Te.map(({instanceId:t,notice:n})=>(0,Q.jsxs)(`p`,{className:`shrink-0 border-t border-border/70 px-3 py-2 text-xs leading-snug text-muted-foreground`,children:[n,` `,(0,Q.jsx)(A,{onClick:()=>{e.onRequestClose?.(),pe({to:`/settings/providers`})},children:`Provider settings`})]},t))]})})]})})});function ft(e){let t=(0,be.c)(1),{provider:n}=e;if(!K(n))return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4 border-t px-3 py-2`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(V,{className:`size-3.5`,"aria-hidden":`true`}),`Using ChatGPT plan`]}),(0,Q.jsx)(J,{size:`xs`})]}),t[0]=r):r=t[0],r}var pt=(0,Z.memo)(function(e){let t=(0,be.c)(120),n=k(),[r,i]=(0,Z.useState)(!1),a=e.open??r,o=e.size??`sm`,[s,c]=(0,Z.useState)(!1),u=(0,Z.useRef)(null),d=(0,Z.useRef)(!!e.renderSettings),f;t[0]!==a||t[1]!==e?(f=()=>{let t=d.current&&!e.renderSettings;d.current=!!e.renderSettings,a&&t&&(c(!1),e.onOpenChange?.(!1),e.open===void 0&&i(!1))},t[0]=a,t[1]=e,t[2]=f):f=t[2];let p;t[3]!==a||t[4]!==e.onOpenChange||t[5]!==e.open||t[6]!==e.renderSettings?(p=[a,e.renderSettings,e.onOpenChange,e.open],t[3]=a,t[4]=e.onOpenChange,t[5]=e.open,t[6]=e.renderSettings,t[7]=p):p=t[7],(0,Z.useLayoutEffect)(f,p);let m,h;t[8]!==a||t[9]!==s?(m=()=>{a&&!s&&u.current?.querySelector(`[data-composer-model-settings] button:not(:disabled)`)?.focus({preventScroll:!0})},h=[a,s],t[8]=a,t[9]=s,t[10]=m,t[11]=h):(m=t[10],h=t[11]),(0,Z.useLayoutEffect)(m,h);let y;t[12]!==e.activeInstanceId||t[13]!==e.instanceEntries?(y=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId)??null,t[12]=e.activeInstanceId,t[13]=e.instanceEntries,t[14]=y):y=t[14];let b=y,x=e.activeInstanceId,S,C;if(t[15]!==b?.driverKind||t[16]!==x||t[17]!==e.model||t[18]!==e.modelOptionsByInstance){let n=e.modelOptionsByInstance.get(x)??[];S=it({driverKind:b?.driverKind,model:e.model,options:n})??(b?.driverKind===`opencode`||b?.driverKind===`antigravity`?void 0:n[0]),C=S?we(S):e.model===`antigravity-default`?`Choose model`:e.model||`Choose model`,t[15]=b?.driverKind,t[16]=x,t[17]=e.model,t[18]=e.modelOptionsByInstance,t[19]=S,t[20]=C}else S=t[19],C=t[20];let w=C,O;t[21]!==b||t[22]!==e.instanceEntries?(O=b!==null&&_(b,e.instanceEntries),t[21]=b,t[22]=e.instanceEntries,t[23]=O):O=t[23];let A=O,te;t[24]===e?te=t[25]:(te=t=>{t||c(!1),e.onOpenChange?.(t),e.open===void 0&&i(t)},t[24]=e,t[25]=te);let j=te,M,N;t[26]===a?(M=t[27],N=t[28]):(M=()=>{if(!a)return;let{documentElement:e,body:t}=document,n=e.style.overscrollBehavior,r=t.style.overflow,i=t.style.paddingRight,o=window.innerWidth-e.clientWidth;e.style.overscrollBehavior=`contain`,t.style.overflow=`hidden`,o>0&&(t.style.paddingRight=`${o}px`);let s=mt,c=e=>{s(e.target)||e.preventDefault()},l=e=>{s(e.target)||e.preventDefault()};return document.addEventListener(`wheel`,c,{capture:!0,passive:!1}),document.addEventListener(`touchmove`,l,{capture:!0,passive:!1}),()=>{document.removeEventListener(`wheel`,c,{capture:!0}),document.removeEventListener(`touchmove`,l,{capture:!0}),e.style.overscrollBehavior=n,t.style.overflow=r,t.style.paddingRight=i}},N=[a],t[26]=a,t[27]=M,t[28]=N),(0,Z.useEffect)(M,N);let P;t[29]!==e||t[30]!==j?(P=(t,n)=>{e.disabled||(e.onInstanceModelChange(t,n),e.renderSettings?c(!1):j(!1))},t[29]=e,t[30]=j,t[31]=P):P=t[31];let F=P,I,L,R,z,B,ne,re,ie,ae;if(t[32]!==b||t[33]!==a||t[34]!==e.activeProviderIconClassName||t[35]!==e.compact||t[36]!==e.disabled||t[37]!==e.instanceEntries||t[38]!==e.instanceIndicatorBackground||t[39]!==e.isComposerOwned||t[40]!==e.modelOptionsByInstance||t[41]!==e.renderSettings||t[42]!==e.selectedModels||t[43]!==e.triggerAriaLabel||t[44]!==e.triggerClassName||t[45]!==e.triggerLabel||t[46]!==j||t[47]!==A||t[48]!==o){z=e.selectedModels?.map(t=>{let n=e.instanceEntries.find(e=>e.instanceId===t.instanceId),r=it({driverKind:n?.driverKind,model:t.model,options:e.modelOptionsByInstance.get(t.instanceId)??[]});return{...t,entry:n,label:r?`${we(r)}${r.isUnavailable?` (Unavailable)`:``}`:t.model}}),R=z?z.length===0?`Choose models`:`${z.slice(0,2).map(ht).join(`, `)}${z.length>2?`, ${z.length-2} more`:``}`:void 0;let n=z?z.map(gt).join(`, `)||`Choose models`:void 0;L=he,ie=a,t[58]!==e.disabled||t[59]!==j?(ae=t=>{if(e.disabled){j(!1);return}j(t)},t[58]=e.disabled,t[59]=j,t[60]=ae):ae=t[60],I=me;let r=e.compact?`max-w-42 shrink-0`:!e.isComposerOwned&&`max-w-48 sm:max-w-56`,i;t[61]!==e.triggerClassName||t[62]!==r?(i=D(`min-w-0 shrink justify-between whitespace-nowrap`,r,e.triggerClassName),t[61]=e.triggerClassName,t[62]=r,t[63]=i):i=t[63],re=(0,Q.jsx)(E,{"aria-label":e.triggerAriaLabel??n,size:o,"data-chat-provider-model-picker":`true`,"data-composer-shortcut":e.renderSettings?`composer.effort`:void 0,className:i,disabled:e.disabled});let s=o===`xs`?`gap-1`:`gap-1.5`;t[64]===s?B=t[65]:(B=D(`flex min-w-0 flex-1 items-center`,s),t[64]=s,t[65]=B),ne=z&&e.triggerLabel===void 0?(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center -space-x-1`,"aria-hidden":`true`,children:[z.slice(0,3).map(_t),z.length>3?(0,Q.jsxs)(`span`,{className:`relative z-30 flex size-4 items-center justify-center rounded-full bg-(--chat-composer-glass-surface,var(--background)) text-3xs ring-2 ring-(--chat-composer-glass-surface,var(--background))`,children:[`+`,z.length-3]}):null]}):b&&e.triggerLabel===void 0?(0,Q.jsx)(q,{driverKind:b.driverKind,displayName:b.displayName,accentColor:b.accentColor,acpRegistryAgentId:b.acpRegistryAgentId,acpRegistryIconUrl:b.acpRegistryIconUrl,showBadge:A,className:`size-4`,iconClassName:D(`size-4`,e.activeProviderIconClassName),indicatorBackground:e.instanceIndicatorBackground??`var(--contrast-input)`,badgeClassName:D(`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 px-0.5 text-5xs`,o===`xs`&&`shadow-none`)}):null,t[32]=b,t[33]=a,t[34]=e.activeProviderIconClassName,t[35]=e.compact,t[36]=e.disabled,t[37]=e.instanceEntries,t[38]=e.instanceIndicatorBackground,t[39]=e.isComposerOwned,t[40]=e.modelOptionsByInstance,t[41]=e.renderSettings,t[42]=e.selectedModels,t[43]=e.triggerAriaLabel,t[44]=e.triggerClassName,t[45]=e.triggerLabel,t[46]=j,t[47]=A,t[48]=o,t[49]=I,t[50]=L,t[51]=R,t[52]=z,t[53]=B,t[54]=ne,t[55]=re,t[56]=ie,t[57]=ae}else I=t[49],L=t[50],R=t[51],z=t[52],B=t[53],ne=t[54],re=t[55],ie=t[56],ae=t[57];let oe;t[66]!==e.fastMode||t[67]!==e.isComposerOwned?(oe=e.isComposerOwned&&e.fastMode?(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-4 shrink-0 fill-current text-foreground`}):null,t[66]=e.fastMode,t[67]=e.isComposerOwned,t[68]=oe):oe=t[68];let se=e.triggerLabel??R??w,le;t[69]===se?le=t[70]:(le=(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,"data-chat-provider-model-picker-label":`true`,children:se}),t[69]=se,t[70]=le);let ue;t[71]===e.settingsLabel?ue=t[72]:(ue=e.settingsLabel?(0,Q.jsx)(`span`,{className:`shrink-0 font-normal text-muted-foreground`,children:e.settingsLabel}):null,t[71]=e.settingsLabel,t[72]=ue);let de;t[73]!==e.triggerLabel||t[74]!==z||t[75]!==S?.isUnavailable?(de=S?.isUnavailable&&!z&&e.triggerLabel===void 0?(0,Q.jsx)(l,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[73]=e.triggerLabel,t[74]=z,t[75]=S?.isUnavailable,t[76]=de):de=t[76];let fe;t[77]!==B||t[78]!==ne||t[79]!==oe||t[80]!==le||t[81]!==ue||t[82]!==de?(fe=(0,Q.jsxs)(`span`,{className:B,children:[ne,oe,le,ue,de]}),t[77]=B,t[78]=ne,t[79]=oe,t[80]=le,t[81]=ue,t[82]=de,t[83]=fe):fe=t[83];let V;t[84]===o?V=t[85]:(V=(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`flex items-center`,children:(0,Q.jsx)(T,{size:o})}),t[84]=o,t[85]=V);let H;t[86]!==I||t[87]!==re||t[88]!==fe||t[89]!==V?(H=(0,Q.jsxs)(I,{render:re,children:[fe,V]}),t[86]=I,t[87]=re,t[88]=fe,t[89]=V,t[90]=H):H=t[90];let U;t[91]!==n||t[92]!==e.isComposerOwned?(U=e.isComposerOwned?n:{},t[91]=n,t[92]=e.isComposerOwned,t[93]=U):U=t[93];let W;t[94]!==e.renderSettings||t[95]!==s?(W=e.renderSettings?{width:`calc(${s?360:288}px + 2px)`,maxWidth:`calc(100vw - 2rem)`}:void 0,t[94]=e.renderSettings,t[95]=s,t[96]=W):W=t[96];let G=s?`models`:`settings`,ge=e.renderSettings?s?`composer-models-enter`:`composer-effort-enter`:void 0,K;t[97]!==b?.snapshot||t[98]!==x||t[99]!==F||t[100]!==R||t[101]!==e||t[102]!==j||t[103]!==s||t[104]!==w?(K=e.renderSettings&&!s?e.renderSettings(R??w,()=>c(!0)):(0,Q.jsxs)(Q.Fragment,{children:[e.renderSettings?(0,Q.jsx)(`div`,{className:`px-2 pt-2`,children:(0,Q.jsxs)(ee,{variant:`ghost-muted`,size:`sm`,onClick:()=>c(!1),children:[(0,Q.jsx)(v,{}),` Model settings`]})}):null,(0,Q.jsx)(dt,{environmentId:e.environmentId,activeInstanceId:x,model:e.model,...e.selectedModels===void 0?{}:{selectedModels:e.selectedModels},...e.onToggleModel?{onToggleModel:(t,n)=>{e.disabled||e.onToggleModel?.(t,n)}}:{},lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey??null,instanceEntries:e.instanceEntries,...e.keybindings?{keybindings:e.keybindings}:{},modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen??!1,onRequestClose:()=>j(!1),...e.onOpenProviderSetup?{onOpenProviderSetup:e.onOpenProviderSetup}:{},...e.getModelDisabledReason?{getModelDisabledReason:e.getModelDisabledReason}:{},onInstanceModelChange:F}),e.selectedModels===void 0?(0,Q.jsx)(ft,{provider:b?.snapshot??null}):null]}),t[97]=b?.snapshot,t[98]=x,t[99]=F,t[100]=R,t[101]=e,t[102]=j,t[103]=s,t[104]=w,t[105]=K):K=t[105];let J;t[106]!==G||t[107]!==ge||t[108]!==K?(J=(0,Q.jsx)(`div`,{ref:u,className:`max-w-[calc(100vw-2rem)]`,children:(0,Q.jsx)(ce,{children:(0,Q.jsx)(`div`,{className:ge,children:K},G)})}),t[106]=G,t[107]=ge,t[108]=K,t[109]=J):J=t[109];let Y;t[110]!==U||t[111]!==W||t[112]!==J?(Y=(0,Q.jsx)(pe,{...U,align:`start`,className:`before:hidden`,padding:`none`,scrollbar:`hidden`,style:W,children:J}),t[110]=U,t[111]=W,t[112]=J,t[113]=Y):Y=t[113];let _e;return t[114]!==L||t[115]!==ie||t[116]!==ae||t[117]!==H||t[118]!==Y?(_e=(0,Q.jsxs)(L,{open:ie,onOpenChange:ae,children:[H,Y]}),t[114]=L,t[115]=ie,t[116]=ae,t[117]=H,t[118]=Y,t[119]=_e):_e=t[119],_e});function mt(e){return e instanceof Element&&e.closest(`[data-model-picker-content]`)}function ht(e){return e.label}function gt(e){return e.label}function _t(e){return e.entry?(0,Q.jsx)(q,{driverKind:e.entry.driverKind,displayName:e.entry.displayName,accentColor:e.entry.accentColor,className:`size-4 rounded-full bg-(--chat-composer-glass-surface,var(--background)) ring-2 ring-(--chat-composer-glass-surface,var(--background))`,iconClassName:`size-4`},`${e.instanceId}:${e.model}`):null}export{Xe as a,Je as i,it as n,Ye as o,Qe as r,we as s,pt as t};
2
- //# sourceMappingURL=ProviderModelPicker-BFOGSdmh.js.map
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$o as n,Ao as r,BE as i,Cd as a,Gs as o,Gt as s,Jm as c,Kn as l,La as u,Lt as d,Rf as f,Us as p,Vg as m,Wt as h,Ym as g,Zt as _,Zu as v,_r as y,bd as b,dm as x,ei as S,jo as C,lr as ee,mE as w,mn as T,pn as E,t as D,ti as O,un as k,ur as A,vm as te,zt as j}from"./utils-B0w8dSf5.js";import{t as M}from"./CompositeRoot-DXqEvNI3.js";import{t as N}from"./useNavigate-CSxB1zLo.js";import{_ as P,d as F}from"./useSettings-DPnlKDDE.js";import{s as I}from"./server-CP48yEl0.js";import{a as L,n as R,r as z,t as B}from"./tooltip-CuJiZzK7.js";import{a as ne,n as re,r as ie,s as ae,t as oe}from"./combobox-CJgXDxx7.js";import{n as se}from"./scroll-area-CT3H0nmo.js";import{t as ce}from"./AnimatedHeight-xpLZZo3s.js";import{_ as le,h as ue,m as de,y as fe}from"./keybindings-4i_VvPsX.js";import{x as V}from"./Icons-bbJxtd49.js";import{i as pe,o as me,t as he}from"./popover-N-pn4OqA.js";import{i as H,n as U,r as W,t as G}from"./alert-D4hu_q2y.js";import{t as ge}from"./semver-CFbvOQKc.js";import{S as K,n as q,t as J}from"./ChatGptUsageButton-DjtyxX8w.js";import{t as Y}from"./kbd-BGpxKPhX.js";import{Wr as _e,in as ve,ln as ye,rn as X}from"./main-DIQoY6z5.js";var Z=e(t(),1),be=i(),Q=e(w(),1);function xe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function $(e,t){let n=t?.trim();if(!n)return e;let r=RegExp(`^${xe(n)}(?:\\s*[.:/-]\\s*|\\s+)`,`iu`);return e.replace(r,``).trim()||e}function Se(e,t){let n=t?.preferShortName&&e.shortName?e.shortName:e.name;return p($(n,e.subProvider))}function Ce(e,t){let n=e.trim(),r=t?.trim();return r?n&&RegExp(`^${xe(n)}\\s+\\S`,`i`).test(r)?r:`${e} · ${r}`:e}function we(e){return Se(e,{preferShortName:!0})}function Te(e){return we(e)}var Ee={claudeAgent:`Claude Code`,codex:`the Codex CLI`};function De(e){return e.length<=2?e.join(` and `):`${e.slice(0,-1).join(`, `)}, and ${e[e.length-1]}`}function Oe(e,t=``){let n=t.trim().toLocaleLowerCase(),r=(e.updateRequiredModels??[]).filter(e=>n.length===0||e.name.toLocaleLowerCase().includes(n)||e.slug.toLocaleLowerCase().includes(n));if(r.length===0)return null;let i=r.map(e=>e.minVersion).reduce((e,t)=>ge(t,e)>0?t:e);return`Update ${Ee[e.driver]??m[e.driver]??e.driver} to ${i.startsWith(`v`)?i:`v${i}`} or newer to use ${De(r.map(e=>e.name))}.`}var ke=`model:`,Ae=`legacy-models:`;function je(e,t){return`${ke}${e.length}:${e}${t}`}function Me(e){if(!e.startsWith(ke))return null;let t=e.slice(6),n=t.indexOf(`:`);if(n===-1)return null;let r=t.slice(0,n);if(!/^\d+$/.test(r))return null;let i=Number(r),a=t.slice(n+1);return!Number.isSafeInteger(i)||i>a.length?null:{instanceId:a.slice(0,i),slug:a.slice(i)}}function Ne(e){return`${Ae}${e}`}function Pe(e){return e.startsWith(Ae)?e.slice(14):null}var Fe=(0,Z.memo)(function(e){let t=(0,be.c)(71),n;t[0]!==e.model.subProvider||t[1]!==e.providerDisplayName?(n=Ce(e.providerDisplayName,e.model.subProvider),t[0]=e.model.subProvider,t[1]=e.providerDisplayName,t[2]=n):n=t[2];let r=n,i=e.index,a;t[3]!==e.instanceId||t[4]!==e.model.slug?(a=je(e.instanceId,e.model.slug),t[3]=e.instanceId,t[4]=e.model.slug,t[5]=a):a=t[5];let o=!!e.disabledReason,s=e.disabledReason&&`data-disabled:pointer-events-auto data-disabled:cursor-not-allowed`,c;t[6]===s?c=t[7]:(c=D(`group relative w-full !min-w-0 max-w-full cursor-pointer`,s),t[6]=s,t[7]=c);let u;t[8]!==e.model||t[9]!==e.preferShortName||t[10]!==e.useTriggerLabel?(u=e.useTriggerLabel?Te(e.model):Se(e.model,e.preferShortName?{preferShortName:!0}:void 0),t[8]=e.model,t[9]=e.preferShortName,t[10]=e.useTriggerLabel,t[11]=u):u=t[11];let d;t[12]===u?d=t[13]:(d=(0,Q.jsx)(`div`,{className:`min-w-0 truncate text-xs font-medium leading-snug`,children:u}),t[12]=u,t[13]=d);let f;t[14]===e.showNewBadge?f=t[15]:(f=e.showNewBadge?(0,Q.jsx)(`span`,{className:`shrink-0 rounded border border-update/35 bg-update/15 px-0.5 py-px text-3xs font-bold uppercase leading-none tracking-wide text-update-foreground`,"aria-label":`New model`,children:`New`}):null,t[14]=e.showNewBadge,t[15]=f);let p;t[16]===e.unavailable?p=t[17]:(p=e.unavailable?(0,Q.jsx)(l,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[16]=e.unavailable,t[17]=p);let m;t[18]!==d||t[19]!==f||t[20]!==p?(m=(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[d,f,p]}),t[18]=d,t[19]=f,t[20]=p,t[21]=m):m=t[21];let h;t[22]!==e.acpRegistryAgentId||t[23]!==e.acpRegistryIconUrl||t[24]!==e.driverKind||t[25]!==e.providerDisplayName||t[26]!==e.showProvider||t[27]!==r?(h=e.showProvider&&(0,Q.jsxs)(`div`,{className:`mt-1 flex items-center gap-1.5`,children:[(0,Q.jsx)(q,{driverKind:e.driverKind,displayName:e.providerDisplayName,acpRegistryAgentId:e.acpRegistryAgentId,acpRegistryIconUrl:e.acpRegistryIconUrl,className:`size-3`,iconClassName:`size-3`}),(0,Q.jsx)(`span`,{className:`truncate text-xs font-normal leading-snug text-muted-foreground/70`,children:r})]}),t[22]=e.acpRegistryAgentId,t[23]=e.acpRegistryIconUrl,t[24]=e.driverKind,t[25]=e.providerDisplayName,t[26]=e.showProvider,t[27]=r,t[28]=h):h=t[28];let g;t[29]!==m||t[30]!==h?(g=(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[m,h]}),t[29]=m,t[30]=h,t[31]=g):g=t[31];let _;t[32]!==e.isSelected||t[33]!==e.showSelection?(_=e.showSelection&&e.isSelected?(0,Q.jsx)(b,{className:`size-3.5`,"aria-hidden":`true`}):null,t[32]=e.isSelected,t[33]=e.showSelection,t[34]=_):_=t[34];let v;t[35]===e.jumpLabel?v=t[36]:(v=e.jumpLabel?(0,Q.jsx)(Y,{children:e.jumpLabel}):null,t[35]=e.jumpLabel,t[36]=v);let y;t[37]===e?y=t[38]:(y=t=>{t.stopPropagation(),e.onToggleFavorite()},t[37]=e,t[38]=y);let x=!!e.disabledReason,S=e.isFavorite?`Remove from favorites`:`Add to favorites`,C=e.isFavorite&&`fill-current text-warning`,w;t[39]===C?w=t[40]:(w=D(`size-3.5 sm:size-3`,C),t[39]=C,t[40]=w);let T;t[41]===w?T=t[42]:(T=(0,Q.jsx)(te,{className:w}),t[41]=w,t[42]=T);let E;t[43]!==y||t[44]!==x||t[45]!==S||t[46]!==T?(E=(0,Q.jsx)(L,{render:(0,Q.jsx)(ee,{size:`icon-xs`,variant:`ghost-muted`,className:`-mr-1 shrink-0`,onClick:y,onKeyDown:Ie,disabled:x,"aria-label":S,children:T})}),t[43]=y,t[44]=x,t[45]=S,t[46]=T,t[47]=E):E=t[47];let O=e.isFavorite?`Remove from favorites`:`Add to favorites`,k;t[48]===O?k=t[49]:(k=(0,Q.jsx)(R,{side:`top`,align:`center`,children:O}),t[48]=O,t[49]=k);let A;t[50]!==E||t[51]!==k?(A=(0,Q.jsxs)(B,{children:[E,k]}),t[50]=E,t[51]=k,t[52]=A):A=t[52];let j;t[53]!==_||t[54]!==v||t[55]!==A?(j=(0,Q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[_,v,A]}),t[53]=_,t[54]=v,t[55]=A,t[56]=j):j=t[56];let M;t[57]!==e.index||t[58]!==g||t[59]!==a||t[60]!==j||t[61]!==o||t[62]!==c?(M=(0,Q.jsxs)(ie,{hideIndicator:!0,index:i,value:a,disabled:o,className:c,children:[g,j]}),t[57]=e.index,t[58]=g,t[59]=a,t[60]=j,t[61]=o,t[62]=c,t[63]=M):M=t[63];let N=M;if(!e.disabledReason)return N;let P;t[64]===N?P=t[65]:(P=(0,Q.jsx)(L,{render:N}),t[64]=N,t[65]=P);let F;t[66]===e.disabledReason?F=t[67]:(F=(0,Q.jsx)(R,{side:`left`,align:`center`,children:e.disabledReason}),t[66]=e.disabledReason,t[67]=F);let I;return t[68]!==P||t[69]!==F?(I=(0,Q.jsxs)(B,{children:[P,F]}),t[68]=P,t[69]=F,t[70]=I):I=t[70],I});function Ie(e){e.stopPropagation()}var Le=Z.forwardRef(function(e,t){let{disabled:n=!1,loopFocus:r=!0,orientation:i=`horizontal`,className:a,render:o,style:s,...c}=e,[l,u]=Z.useState(()=>new Map),d=Z.useMemo(()=>{let e=[];for(let t of l.values())t?.index&&!t.focusableWhenDisabled&&e.push(t.index);return e},[l]),f=Z.useMemo(()=>({disabled:n,orientation:i,setItemMap:u}),[n,i,u]),p={disabled:n,orientation:i},m={"aria-orientation":i,role:`toolbar`};return(0,Q.jsx)(S.Provider,{value:f,children:(0,Q.jsx)(M,{render:o,className:a,style:s,state:p,refs:[t],props:[m,c],disabledIndices:d,loopFocus:r,onMapChange:u,orientation:i})})}),Re=Z.createContext(void 0);function ze(e){let t=Z.useContext(Re);if(t===void 0&&!e)throw Error(r(68));return t}var Be=Z.forwardRef(function(e,t){let{className:n,disabled:r=!1,focusableWhenDisabled:i=!0,render:a,nativeButton:o=!0,style:s,...c}=e,l=Z.useMemo(()=>({focusableWhenDisabled:i}),[i]),{disabled:d,orientation:f}=O(),p=ze(!0),m=d||(p?.disabled??!1)||r,{getButtonProps:h,buttonRef:g}=u({disabled:m,focusableWhenDisabled:i,native:o});return(0,Q.jsx)(y,{tag:`button`,render:a,className:n,style:s,metadata:l,state:{disabled:m,orientation:f,focusable:i},refs:[t,g],props:[c,{disabled:m},h]})});function Ve(e){let t=e.displayName;if(!e.enabled||e.status===`disabled`)return`${t} — Disabled in settings.`;if(e.status===`ready`&&e.isAvailable)return t;let n=e.status===`error`?`Unavailable`:e.status===`warning`?`Limited`:`Not ready`,r=e.snapshot.message?.trim();return r?`${t} — ${n}. ${r}`:`${t} — ${n}.`}var He=`pointer-events-none absolute -right-1 top-1/2 z-10 h-5 w-0.75 -translate-y-1/2 rounded-l-full bg-primary`,Ue=`pointer-events-none absolute -right-0.5 top-0.5 z-10 flex size-3.5 items-center justify-center rounded-full bg-transparent shadow-sm text-update-foreground `,We=`left`,Ge=8,Ke=(0,Z.memo)(function(e){let t=(0,be.c)(27),n;t[0]===e?n=t[1]:(n=t=>{e.onSelectInstance(t)},t[0]=e,t[1]=n);let r=n,i=e.showFavorites??!0,[a,o]=(0,Z.useState)(null),s=(0,Z.useRef)(null),[c,l]=(0,Z.useState)(null),u;t[2]===e.selectedInstanceId?u=t[3]:(u=()=>{let t=s.current;if(!t)return;let n=Array.from(t.querySelectorAll(`[data-model-picker-provider]`)).find(t=>t.dataset.modelPickerProvider===e.selectedInstanceId);if(!n){l(null);return}l(n.offsetTop+n.offsetHeight/2-10)},t[2]=e.selectedInstanceId,t[3]=u);let d;t[4]!==e.instanceEntries||t[5]!==e.selectedInstanceId||t[6]!==i?(d=[e.instanceEntries,e.selectedInstanceId,i],t[4]=e.instanceEntries,t[5]=e.selectedInstanceId,t[6]=i,t[7]=d):d=t[7],(0,Z.useLayoutEffect)(u,d);let f;t[8]===e?f=t[9]:(f=t=>{if(!(t.altKey||t.ctrlKey||t.metaKey||t.shiftKey)&&t.key===`ArrowRight`){t.preventDefault(),e.onFocusSearch();return}},t[8]=e,t[9]=f);let p;t[10]===c?p=t[11]:(p=c===null?null:(0,Q.jsx)(`div`,{"data-model-picker-selected-indicator":`true`,className:D(He,`right-0 translate-y-0 transition-[top] duration-200 ease-out`),style:{top:c}}),t[10]=c,t[11]=p);let m;t[12]!==r||t[13]!==e.selectedInstanceId||t[14]!==i?(m=i?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":`favorites`,children:(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:(0,Q.jsx)(Be,{className:D(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`),onClick:()=>r(`favorites`),type:`button`,"aria-label":`Favorites`,"aria-pressed":e.selectedInstanceId===`favorites`,children:(0,Q.jsx)(te,{className:`size-5 fill-current shrink-0`,"aria-hidden":!0})})}),(0,Q.jsx)(R,{side:We,sideOffset:Ge,align:`center`,children:`Favorites`})]})}),(0,Q.jsx)(`div`,{className:`border-b border-border/70`,"aria-hidden":`true`})]}):null,t[12]=r,t[13]=e.selectedInstanceId,t[14]=i,t[15]=m):m=t[15];let g;t[16]!==r||t[17]!==a||t[18]!==e?(g=e.instanceEntries.map(t=>{let n=!h(t),i=e.disabledInstanceIds?.has(t.instanceId)??!1,s=e.selectableUnavailableInstanceIds?.has(t.instanceId)??!1,c=n&&!s||i,l=e.selectedInstanceId===t.instanceId,u=a===t.instanceId,d=e.newBadgeInstanceIds?.has(t.instanceId)??!1,f=_(t,e.instanceEntries),p=n?Ve(t):i?e.getDisabledInstanceTooltip?.(t)??t.displayName:d?`${t.displayName} — New`:t.displayName,m=(0,Q.jsxs)(Be,{className:D(`relative isolate flex w-full cursor-pointer aspect-square items-center justify-center rounded-md transition-colors hover:bg-foreground/10 focus-visible:bg-foreground/10 focus-visible:outline-none`,c&&`opacity-50 cursor-not-allowed hover:bg-transparent`),"data-provider-accent-color":t.accentColor,onClick:()=>!c&&r(t.instanceId),onMouseEnter:()=>o(t.instanceId),onMouseLeave:()=>o(e=>e===t.instanceId?null:e),onFocus:()=>o(t.instanceId),onBlur:()=>o(e=>e===t.instanceId?null:e),disabled:c,focusableWhenDisabled:!c,"aria-pressed":l,type:`button`,"aria-label":n||i?p:d?`${t.displayName}, new`:t.displayName,children:[(0,Q.jsx)(q,{driverKind:t.driverKind,displayName:t.displayName,accentColor:t.accentColor,acpRegistryAgentId:t.acpRegistryAgentId,acpRegistryIconUrl:t.acpRegistryIconUrl,showBadge:f,className:`size-6 z-30`,iconClassName:`size-5`,indicatorBackground:u&&!c?`var(--muted)`:l?`var(--background)`:`color-mix(in oklab, var(--muted) 30%, transparent)`,...t.accentColor?{badgeClassName:`h-3 min-w-3 px-0.5 text-5xs`}:{}}),d?(0,Q.jsx)(`span`,{className:Ue,"aria-hidden":!0,children:(0,Q.jsx)(x,{className:`size-2`})}):null]}),g=c?(0,Q.jsx)(`span`,{className:`relative block w-full`,children:m}):m;return(0,Q.jsx)(`div`,{className:`relative w-full`,"data-model-picker-provider":t.instanceId,children:(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:g}),(0,Q.jsx)(R,{side:We,sideOffset:Ge,align:`center`,children:p})]})},t.instanceId)}),t[16]=r,t[17]=a,t[18]=e,t[19]=g):g=t[19];let v;t[20]!==p||t[21]!==m||t[22]!==g?(v=(0,Q.jsx)(`div`,{className:`h-full overflow-y-auto overscroll-contain [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:(0,Q.jsxs)(`div`,{ref:s,className:`relative flex min-h-full flex-col gap-1 p-1`,children:[p,m,g]})}),t[20]=p,t[21]=m,t[22]=g,t[23]=v):v=t[23];let y;return t[24]!==f||t[25]!==v?(y=(0,Q.jsx)(Le,{className:`w-11 shrink-0 overflow-hidden bg-muted/30`,"data-model-picker-sidebar":`true`,"aria-label":`Providers`,orientation:`vertical`,onKeyDown:f,children:v}),t[24]=f,t[25]=v,t[26]=y):y=t[26],y});function qe(e){let t=e.compatibilityAdvisory;return e.status===`error`&&e.auth.status===`unauthenticated`?null:t?.status===`broken`||e.status===`ready`&&t?.status===`unsupported`?t:null}function Je(e){if(!e||e.status===`disabled`)return null;let t=qe(e);return t?[e.instanceId,t.status,e.version??``,t.message??``].join(`\0`):e.status===`ready`||e.driver===`antigravity`&&e.installed&&e.status===`warning`&&e.auth.status===`unknown`?null:[e.instanceId,e.status,e.auth.status,e.message??``].join(`\0`)}function Ye(e,t){let n=Je(e);return n!==null&&n!==t}function Xe(e){return e.driver===`antigravity`||e.setup?.canAuthenticate===!0||e.setup?.canInstall===!0}function Ze(e){if(e.auth.status!==`unauthenticated`&&e.compatibilityAdvisory?.status===`broken`&&e.compatibilityAdvisory.message)return e.compatibilityAdvisory.message;if(e.message)return e.message;let t=e.displayName?.trim()||C(e.driver);return!e.installed&&Xe(e)?`Open provider setup to install ${C(e.driver)} on this environment.`:e.auth.status===`unauthenticated`?Xe(e)?e.driver===`antigravity`?`Open provider setup to sign in with Google.`:`Open provider setup to sign in.`:`Sign in via the CLI to authenticate again.`:e.status===`ready`?`No models are available for this provider.`:e.status===`error`?`${t} provider is unavailable.`:`${t} provider has limited availability.`}var Qe=(0,Z.memo)(function(e){let t=(0,be.c)(30),{onDismiss:n,onOpenProviderSetup:r,status:i}=e;if(!i||Je(i)===null)return null;let a;t[0]!==i.displayName||t[1]!==i.driver?(a=i.displayName?.trim()||C(i.driver),t[0]=i.displayName,t[1]=i.driver,t[2]=a):a=t[2];let o=a,s=i.status===`error`&&i.auth.status===`unauthenticated`,l;t[3]===i?l=t[4]:(l=qe(i),t[3]=i,t[4]=l);let u=l,d=s?`${o} is unauthenticated`:u?`${o} ${i.version??``} is ${u.status===`broken`?`known to be broken`:`unsupported`}`:`${o} provider status`,p;t[5]!==u?.message||t[6]!==i?(p=u?.message??Ze(i),t[5]=u?.message,t[6]=i,t[7]=p):p=t[7];let m=p,h=u?.status!==`broken`&&(i.status===`warning`||u!==null)?`warning`:`error`,g=u&&u.status!==`broken`?`status`:`alert`,_;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,Q.jsx)(f,{}),t[8]=_):_=t[8];let v;t[9]===d?v=t[10]:(v=(0,Q.jsx)(H,{children:d}),t[9]=d,t[10]=v);let y;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Q.jsx)(`div`,{className:`line-clamp-3`}),t[11]=y):y=t[11];let b;t[12]===m?b=t[13]:(b=(0,Q.jsxs)(B,{children:[(0,Q.jsx)(L,{render:y,children:m}),(0,Q.jsx)(R,{side:`top`,className:`whitespace-pre-wrap`,children:m})]}),t[12]=m,t[13]=b);let x;t[14]!==r||t[15]!==i?(x=r&&Xe(i)?(0,Q.jsx)(A,{onClick:()=>r(i.instanceId),children:`Open provider setup`}):null,t[14]=r,t[15]=i,t[16]=x):x=t[16];let S;t[17]!==x||t[18]!==b?(S=(0,Q.jsxs)(W,{children:[b,x]}),t[17]=x,t[18]=b,t[19]=S):S=t[19];let w=`Dismiss ${o} provider ${i.status}`,T;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,Q.jsx)(c,{}),t[20]=T):T=t[20];let E;t[21]!==n||t[22]!==w?(E=(0,Q.jsx)(U,{children:(0,Q.jsx)(ee,{"aria-label":w,onClick:n,size:`icon-xs`,variant:`ghost-muted`,children:T})}),t[21]=n,t[22]=w,t[23]=E):E=t[23];let D;return t[24]!==S||t[25]!==E||t[26]!==h||t[27]!==g||t[28]!==v?(D=(0,Q.jsx)(`div`,{className:`pointer-events-auto mx-auto w-fit max-w-[calc(100%-2rem)] pt-3`,children:(0,Q.jsxs)(G,{variant:h,role:g,surface:`glass`,controlAlignment:`first-line`,children:[_,v,S,E]})}),t[24]=S,t[25]=E,t[26]=h,t[27]=g,t[28]=v,t[29]=D):D=t[29],D}),$e=24;function et(e){return[X(e.name),...e.shortName?[X(e.shortName)]:[],...e.subProvider?[X(e.subProvider)]:[],X(e.driverKind),X(e.providerDisplayName),nt(e)]}function tt(e,t,n){return ve({value:e,query:t,exactBase:n,prefixBase:n+2,boundaryBase:n+4,includesBase:n+6,...t.length>=3?{fuzzyBase:n+100}:{}})}function nt(e){return X([e.name,e.shortName,e.subProvider,e.driverKind,e.providerDisplayName].filter(e=>typeof e==`string`&&e.length>0).join(` `))}function rt(e,t){let n=X(t).split(/\s+/u).filter(e=>e.length>0);if(n.length===0)return 0;let r=et(e),i=0;for(let e of n){let t=[];for(let n=0;n<r.length;n+=1){let i=tt(r[n],e,n*10);i!==null&&t.push(i)}if(t.length===0)return null;i+=Math.min(...t)}return e.isFavorite?i-$e:i}function it(e){if(e.driverKind===`antigravity`&&e.model===`antigravity-default`){let t=e.options.filter(e=>e.slug!==`antigravity-default`&&!e.isUnavailable);return t.find(e=>e.aliases?.includes(`antigravity-default`))??t.find(e=>e.isDefault)}return e.options.find(t=>t.slug===e.model)}function at(e){return e.entry.driverKind===`antigravity`&&e.option.slug===`antigravity-default`?!1:h(e.entry)?!0:e.entry.enabled&&(e.entry.driverKind===`opencode`||e.entry.driverKind===`antigravity`)&&e.entry.instanceId===e.activeInstanceId&&e.option.slug===e.activeModel&&e.option.isUnavailable===!0}function ot(e,t){return e.enabled&&e.status!==`disabled`&&Xe(e.snapshot)&&(!h(e)||!e.installed||e.snapshot.auth.status===`unauthenticated`||!t.some(e=>!e.isUnavailable))}function st(e){let t=[`favorites`,...e.entries.filter(t=>!e.disabledInstanceIds?.has(t.instanceId)&&(h(t)||e.selectableUnavailableInstanceIds?.has(t.instanceId))).map(e=>e.instanceId)],n=t.indexOf(e.selectedInstanceId);return t[n<0?e.direction===1?0:t.length-1:(n+e.direction+t.length)%t.length]}var ct=new Map,lt=52;function ut(){let e=(0,be.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,Q.jsx)(`div`,{className:`h-0.5`}),e[0]=t):t=e[0],t}var dt=(0,Z.memo)(function(e){let{keybindings:t,modelOptionsByInstance:r,instanceEntries:i,getModelDisabledReason:c,onInstanceModelChange:l,onToggleModel:u}=e,[f,p]=(0,Z.useState)(``),[m,g]=(0,Z.useState)(!1),[_,v]=(0,Z.useState)(!1),y=(0,Z.useRef)(null),b=(0,Z.useRef)(null),x=(0,Z.useRef)(null),S=(0,Z.useRef)(null),{favorites:C}=F(e.environmentId),ee=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId),w=it({driverKind:ee?.driverKind,model:e.model,options:r.get(e.activeInstanceId)??[]})?.slug??(e.model===`antigravity-default`?``:e.model),T=w?je(e.activeInstanceId,w):null,E=(0,Z.useMemo)(()=>e.selectedModels?.map(e=>{let t=it({driverKind:i.find(t=>t.instanceId===e.instanceId)?.driverKind,model:e.model,options:r.get(e.instanceId)??[]});return je(e.instanceId,t?.slug??e.model)}),[i,r,e.selectedModels]),O=(0,Z.useMemo)(()=>new Set(E??(T?[T]:[])),[E,T]),k=ee!==void 0&&(r.get(e.activeInstanceId)??[]).some(t=>at({entry:ee,option:t,activeInstanceId:e.activeInstanceId,activeModel:w}))&&!h(ee),te=e.onOpenProviderSetup!==void 0&&ee!==void 0&&ot(ee,r.get(e.activeInstanceId)??[]),[M,L]=(0,Z.useState)(()=>e.lockedProvider!==null||k||te?e.activeInstanceId:C.length>0?`favorites`:e.activeInstanceId),[R,B]=(0,Z.useState)(()=>new Set(r.get(e.activeInstanceId)?.some(e=>e.slug===w&&e.isLegacy)?[e.activeInstanceId]:[])),ce=n(I),V=t??ce,pe=N(),me=P(e.environmentId),he=(0,Z.useCallback)(()=>{y.current?.focus({preventScroll:!0})},[]),H=(0,Z.useCallback)(e=>{L(e),window.requestAnimationFrame(()=>{he()})},[he]);(0,Z.useLayoutEffect)(()=>{he();let e=window.requestAnimationFrame(()=>{he()}),t=window.setTimeout(()=>{he()},0);return()=>{window.cancelAnimationFrame(e),window.clearTimeout(t)}},[he]);let U=(0,Z.useMemo)(()=>new Set(C.map(e=>d(e.provider,e.model))),[C]),W=(0,Z.useMemo)(()=>new Map(i.map(e=>[e.instanceId,e])),[i]),G=(0,Z.useCallback)(t=>e.lockedProvider===null?!0:t.driverKind===e.lockedProvider?!e.lockedContinuationGroupKey||t.continuationGroupKey===e.lockedContinuationGroupKey:!1,[e.lockedContinuationGroupKey,e.lockedProvider]),ge=(0,Z.useMemo)(()=>{let t=new Set;if(k&&t.add(e.activeInstanceId),e.onOpenProviderSetup)for(let e of i)ot(e,r.get(e.instanceId)??[])&&t.add(e.instanceId);return t.size>0?t:void 0},[k,i,r,e.activeInstanceId,e.onOpenProviderSetup]),K=(0,Z.useMemo)(()=>{let t=[];for(let[n,i]of r){let r=W.get(n);if(r)for(let a of i)at({entry:r,option:a,activeInstanceId:e.activeInstanceId,activeModel:w})&&t.push({slug:a.slug,name:a.name,...a.shortName?{shortName:a.shortName}:{},...a.subProvider?{subProvider:a.subProvider}:{},...a.badge?{badge:a.badge}:{},...a.isLegacy?{isLegacy:!0}:{},...a.isUnavailable?{isUnavailable:!0}:{},instanceId:n,driverKind:r.driverKind,instanceDisplayName:r.displayName,...r.accentColor?{instanceAccentColor:r.accentColor}:{},...r.acpRegistryAgentId?{acpRegistryAgentId:r.acpRegistryAgentId}:{},...r.acpRegistryIconUrl?{acpRegistryIconUrl:r.acpRegistryIconUrl}:{},...r.continuationGroupKey?{continuationGroupKey:r.continuationGroupKey}:{}})}return t},[r,W,e.activeInstanceId,w]),q=e.lockedProvider!==null,J=f.trim().length>0,Y=(0,Z.useMemo)(()=>{if(!q)return;let e=new Set;for(let t of i)G(t)||e.add(t.instanceId);return e},[i,q,G]),ve=(0,Z.useMemo)(()=>{let e=i.filter(s);if(!q)return e;let t=[],n=[];for(let r of e)G(r)?t.push(r):n.push(r);return[...t,...n]},[i,q,G]),X=!J&&ve.length>0,be=(0,Z.useMemo)(()=>i.map(e=>e.instanceId),[i]),xe=(0,Z.useMemo)(()=>{let t=K;if(f.trim()){let n=t.map(e=>({model:e,score:rt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName,isFavorite:U.has(d(e.instanceId,e.slug))},f),isFavorite:U.has(d(e.instanceId,e.slug)),tieBreaker:nt({name:e.name,...e.shortName?{shortName:e.shortName}:{},...e.subProvider?{subProvider:e.subProvider}:{},driverKind:e.driverKind,providerDisplayName:e.instanceDisplayName})})).filter(e=>e.score!==null);if(e.lockedProvider!==null){let e=[];for(let t of n)G(t.model)&&e.push(t);return e.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return n.toSorted((e,t)=>{let n=e.score-t.score;return n===0?e.isFavorite===t.isFavorite?e.tieBreaker.localeCompare(t.tieBreaker):e.isFavorite?-1:1:n}).map(e=>e.model)}return e.lockedProvider===null?t=M===`favorites`?t.filter(e=>U.has(d(e.instanceId,e.slug))):t.filter(e=>e.instanceId===M):(t=t.filter(e=>G(e)),t=M===`favorites`?t.filter(e=>U.has(d(e.instanceId,e.slug))):t.filter(e=>e.instanceId===M)),j(t,{favoriteModelKeys:U,groupFavorites:M!==`favorites`,instanceOrder:M===`favorites`?be:[]})},[U,K,be,G,e.lockedProvider,f,M]),$=(0,Z.useMemo)(()=>{if(J||M===`favorites`)return null;let e=xe.filter(e=>!e.isLegacy),t=xe.filter(e=>e.isLegacy);return t.length===0?null:{key:Ne(M),currentModels:e,legacyModels:t,isExpanded:R.has(M)}},[R,xe,J,M]),Se=(0,Z.useMemo)(()=>$?[...$.currentModels,...$.isExpanded?$.legacyModels:[]]:xe,[xe,$]),Ce=M===`favorites`?void 0:W.get(M),we=!J&&e.onOpenProviderSetup?i.filter(e=>G(e)&&ot(e,r.get(e.instanceId)??[])&&(Ce?e.instanceId===Ce.instanceId:xe.length===0)):[],Te=(J?i.filter(G):Ce?[Ce]:[]).flatMap(e=>{let t=Oe(e.snapshot,f);return t?[{instanceId:e.instanceId,notice:t}]:[]}),Ee=(0,Z.useCallback)(e=>{B(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),De=(0,Z.useCallback)((e,t,n=!1)=>{if(c?.(t,e))return;let i=r.get(t);if(!i)return;let a=W.get(t);if(!a)return;let s=o(a.driverKind,e,i);s&&(n&&u?u(t,s):l(t,s))},[W,c,r,l,u]),ke=(0,Z.useMemo)(()=>{let e=new Map,t=0;for(let n of Se){if(c?.(n.instanceId,n.slug))continue;let r=de(t);if(!r)return e;e.set(je(n.instanceId,n.slug),r),t+=1}return e},[c,Se]),Ae=(0,Z.useMemo)(()=>[...ke.keys()],[ke]),Ie=(0,Z.useMemo)(()=>[...K.map(e=>je(e.instanceId,e.slug)),...new Set(K.filter(e=>e.isLegacy).map(e=>Ne(e.instanceId)))],[K]),Le=(0,Z.useMemo)(()=>{let e=Se.map(e=>je(e.instanceId,e.slug));return $&&e.splice($.currentModels.length,0,$.key),e},[$,Se]),Re=(0,Z.useMemo)(()=>new Map(Se.map(e=>[je(e.instanceId,e.slug),e])),[Se]),[ze,Be]=(0,Z.useState)(()=>Le.length*lt),[Ve,He]=(0,Z.useState)(0);(0,Z.useLayoutEffect)(()=>b.current?.getState().listen(`totalSize`,Be),[]);let Ue=Le.length===0?0:`calc(${ze}px + var(--spacing) * 5)`,We=(0,Z.useCallback)(()=>{let e=b.current?.getScrollableNode();if(!(e instanceof HTMLElement))return;let t=Math.max(0,e.scrollHeight-e.clientHeight);g(e.scrollTop>1),v(t-e.scrollTop>1)},[]),Ge=(0,Z.useMemo)(()=>({terminalFocus:!1,terminalOpen:e.terminalOpen,modelPickerOpen:!0}),[e.terminalOpen]),qe=(0,Z.useMemo)(()=>{if(ke.size===0)return ct;let e={platform:navigator.platform,context:Ge},t=new Map;for(let[n,r]of ke){let i=fe(V,r,e);i&&t.set(n,i)}return t.size>0?t:ct},[V,ke,Ge]),Je=(0,Z.useMemo)(()=>({favoritesSet:U,modelJumpLabelByKey:qe,activeModelKey:T,selectedModelKeySet:O}),[U,qe,T,O]);return(0,Z.useEffect)(()=>{let e=e=>{if(e.defaultPrevented||e.repeat||_e())return;let t=le(e,V,{platform:navigator.platform,context:Ge});if(t===`modelPicker.previousProvider`||t===`modelPicker.nextProvider`){e.preventDefault(),e.stopPropagation();let n=st({entries:ve,selectedInstanceId:M,direction:t===`modelPicker.nextProvider`?1:-1,disabledInstanceIds:Y,selectableUnavailableInstanceIds:ge});p(``),H(n);return}let n=ue(t??``);if(n===null)return;e.preventDefault(),e.stopPropagation();let r=Ae[n];if(!r)return;let i=Me(r);i&&De(i.slug,i.instanceId)};return window.addEventListener(`keydown`,e,!0),()=>{window.removeEventListener(`keydown`,e,!0)}},[De,H,V,Y,Ae,Ge,ge,M,ve]),(0,Z.useLayoutEffect)(()=>{g(!1),v(Le.length>5);let e=0,t=window.requestAnimationFrame(()=>{We(),e=window.requestAnimationFrame(We)});return()=>{window.cancelAnimationFrame(t),window.cancelAnimationFrame(e)}},[Le,We]),(0,Q.jsx)(z,{delay:0,children:(0,Q.jsxs)(`div`,{ref:x,className:`relative flex max-h-86.5 w-90 max-w-full flex-row overflow-hidden`,style:J?{height:Ve}:void 0,"data-model-picker-content":`true`,children:[X&&(0,Q.jsx)(Ke,{selectedInstanceId:M,onSelectInstance:H,onFocusSearch:he,instanceEntries:ve,showFavorites:!0,...ge?{selectableUnavailableInstanceIds:ge}:{},...Y?{disabledInstanceIds:Y,getDisabledInstanceTooltip:e=>`${e.displayName} is unavailable in this thread. Start a new thread to switch providers.`}:{}}),(0,Q.jsx)(oe,{inline:!0,items:Ie,filteredItems:Le,filter:null,autoHighlight:!0,open:!0,virtualized:!0,multiple:u!==void 0,value:u?[...O]:T,onItemHighlighted:(e,t)=>{S.current=typeof e==`string`?e:null,t.reason===`keyboard`&&t.index>=0&&b.current?.scrollIndexIntoView?.({index:t.index,animated:!1})},onValueChange:(e,t)=>{let n=Array.isArray(e)?e.find(e=>!O.has(e))??[...O].find(t=>!e.includes(t)):e;if(typeof n!=`string`)return;let r=Pe(n);if(r){Ee(r);return}let i=Me(n);i&&De(i.slug,i.instanceId,`shiftKey`in t.event&&t.event.shiftKey===!0)},children:(0,Q.jsxs)(`div`,{className:D(`flex min-h-0 flex-1 flex-col overflow-hidden bg-muted/40`,X&&`border-l border-border/70`),children:[(0,Q.jsx)(ae,{ref:y,placeholder:`Search models...`,value:f,onChange:e=>{J||He(x.current?.offsetHeight??0),p(e.target.value)},onKeyDown:t=>{if(X&&!t.altKey&&!t.ctrlKey&&!t.metaKey&&(t.key===`ArrowLeft`&&!t.shiftKey&&f.length===0||t.key===`Tab`&&t.shiftKey)){let e=t.currentTarget.closest(`[data-model-picker-content]`)?.querySelector(`[data-model-picker-sidebar]`),n=e?.querySelector(`button[aria-pressed="true"]:not(:disabled)`)??e?.querySelector(`button:not(:disabled)`);if(n){t.preventDefault(),t.stopPropagation(),n.focus();return}}if(t.key===`Escape`){t.preventDefault(),t.stopPropagation(),e.onRequestClose?.();return}if(t.key===`Enter`&&S.current){t.preventBaseUIHandler?.(),t.preventDefault(),t.stopPropagation();let e=Pe(S.current);if(e){Ee(e);return}let n=Me(S.current);n&&De(n.slug,n.instanceId,t.shiftKey);return}t.stopPropagation()},onMouseDown:e=>e.stopPropagation(),onTouchStart:e=>e.stopPropagation()}),(0,Q.jsx)(`div`,{className:`relative min-h-0 overflow-hidden pr-px`,style:{height:Ue},children:(0,Q.jsx)(ne,{children:(0,Q.jsx)(ye,{ref:b,data:Le,extraData:Je,keyExtractor:e=>e,renderItem:({item:e,index:t})=>{if($?.key===e)return(0,Q.jsxs)(ie,{hideIndicator:!0,index:t,value:e,"aria-expanded":$.isExpanded,className:`group w-full cursor-pointer`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1 text-left`,children:[(0,Q.jsx)(`div`,{className:`text-xs font-medium leading-snug`,children:`Legacy models`}),(0,Q.jsxs)(`div`,{className:`mt-1 text-xs font-normal leading-snug text-muted-foreground/70`,children:[$.legacyModels.length,` models`]})]}),(0,Q.jsx)(a,{className:D(`size-4 transition-transform`,$.isExpanded&&`rotate-90`)})]});let n=Re.get(e);if(!n)return null;let r=c?.(n.instanceId,n.slug)??null;return(0,Q.jsx)(Fe,{index:t,model:n,instanceId:n.instanceId,driverKind:n.driverKind,providerDisplayName:n.instanceDisplayName,providerAccentColor:n.instanceAccentColor,acpRegistryAgentId:n.acpRegistryAgentId,acpRegistryIconUrl:n.acpRegistryIconUrl,isFavorite:U.has(d(n.instanceId,n.slug)),isSelected:E===void 0?e===T:O.has(e),showSelection:E!==void 0,showProvider:!0,preferShortName:!q,useTriggerLabel:!1,showNewBadge:n.badge===`new`,unavailable:n.isUnavailable===!0,jumpLabel:qe.get(e)??null,disabledReason:r,onToggleFavorite:()=>me(n.instanceId,n.slug)},e)},estimatedItemSize:lt,drawDistance:480,recycleItems:!0,contentContainerClassName:`pl-2 pr-px`,ItemSeparatorComponent:ut,onLayout:We,onScroll:We,className:D(`scrollbar-gutter-stable h-full overflow-x-hidden overscroll-y-contain py-1.5 [&::-webkit-scrollbar-track]:my-2`,se({top:m,bottom:_}))})})}),we.length>0?(0,Q.jsx)(`div`,{className:`max-h-44 shrink-0 overflow-y-auto border-t border-border/70 p-2`,children:we.map(t=>(0,Q.jsxs)(`div`,{className:`px-1 py-1.5 text-xs leading-snug`,children:[(0,Q.jsx)(`p`,{className:`line-clamp-3 text-muted-foreground`,children:Ze(t.snapshot)}),(0,Q.jsx)(A,{className:`mt-1`,onClick:()=>{e.onRequestClose?.(),e.onOpenProviderSetup?.(t.instanceId)},children:we.length>1?`Set up ${t.displayName}`:`Open provider setup`})]},t.instanceId))}):(0,Q.jsx)(re,{className:`empty:h-0`,children:`No models found`}),Te.map(({instanceId:t,notice:n})=>(0,Q.jsxs)(`p`,{className:`shrink-0 border-t border-border/70 px-3 py-2 text-xs leading-snug text-muted-foreground`,children:[n,` `,(0,Q.jsx)(A,{onClick:()=>{e.onRequestClose?.(),pe({to:`/settings/providers`})},children:`Provider settings`})]},t))]})})]})})});function ft(e){let t=(0,be.c)(1),{provider:n}=e;if(!K(n))return null;let r;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-4 border-t px-3 py-2`,children:[(0,Q.jsxs)(`span`,{className:`flex items-center gap-2 text-xs text-muted-foreground`,children:[(0,Q.jsx)(V,{className:`size-3.5`,"aria-hidden":`true`}),`Using ChatGPT plan`]}),(0,Q.jsx)(J,{size:`xs`})]}),t[0]=r):r=t[0],r}var pt=(0,Z.memo)(function(e){let t=(0,be.c)(120),n=k(),[r,i]=(0,Z.useState)(!1),a=e.open??r,o=e.size??`sm`,[s,c]=(0,Z.useState)(!1),u=(0,Z.useRef)(null),d=(0,Z.useRef)(!!e.renderSettings),f;t[0]!==a||t[1]!==e?(f=()=>{let t=d.current&&!e.renderSettings;d.current=!!e.renderSettings,a&&t&&(c(!1),e.onOpenChange?.(!1),e.open===void 0&&i(!1))},t[0]=a,t[1]=e,t[2]=f):f=t[2];let p;t[3]!==a||t[4]!==e.onOpenChange||t[5]!==e.open||t[6]!==e.renderSettings?(p=[a,e.renderSettings,e.onOpenChange,e.open],t[3]=a,t[4]=e.onOpenChange,t[5]=e.open,t[6]=e.renderSettings,t[7]=p):p=t[7],(0,Z.useLayoutEffect)(f,p);let m,h;t[8]!==a||t[9]!==s?(m=()=>{a&&!s&&u.current?.querySelector(`[data-composer-model-settings] button:not(:disabled)`)?.focus({preventScroll:!0})},h=[a,s],t[8]=a,t[9]=s,t[10]=m,t[11]=h):(m=t[10],h=t[11]),(0,Z.useLayoutEffect)(m,h);let y;t[12]!==e.activeInstanceId||t[13]!==e.instanceEntries?(y=e.instanceEntries.find(t=>t.instanceId===e.activeInstanceId)??null,t[12]=e.activeInstanceId,t[13]=e.instanceEntries,t[14]=y):y=t[14];let b=y,x=e.activeInstanceId,S,C;if(t[15]!==b?.driverKind||t[16]!==x||t[17]!==e.model||t[18]!==e.modelOptionsByInstance){let n=e.modelOptionsByInstance.get(x)??[];S=it({driverKind:b?.driverKind,model:e.model,options:n})??(b?.driverKind===`opencode`||b?.driverKind===`antigravity`?void 0:n[0]),C=S?we(S):e.model===`antigravity-default`?`Choose model`:e.model||`Choose model`,t[15]=b?.driverKind,t[16]=x,t[17]=e.model,t[18]=e.modelOptionsByInstance,t[19]=S,t[20]=C}else S=t[19],C=t[20];let w=C,O;t[21]!==b||t[22]!==e.instanceEntries?(O=b!==null&&_(b,e.instanceEntries),t[21]=b,t[22]=e.instanceEntries,t[23]=O):O=t[23];let A=O,te;t[24]===e?te=t[25]:(te=t=>{t||c(!1),e.onOpenChange?.(t),e.open===void 0&&i(t)},t[24]=e,t[25]=te);let j=te,M,N;t[26]===a?(M=t[27],N=t[28]):(M=()=>{if(!a)return;let{documentElement:e,body:t}=document,n=e.style.overscrollBehavior,r=t.style.overflow,i=t.style.paddingRight,o=window.innerWidth-e.clientWidth;e.style.overscrollBehavior=`contain`,t.style.overflow=`hidden`,o>0&&(t.style.paddingRight=`${o}px`);let s=mt,c=e=>{s(e.target)||e.preventDefault()},l=e=>{s(e.target)||e.preventDefault()};return document.addEventListener(`wheel`,c,{capture:!0,passive:!1}),document.addEventListener(`touchmove`,l,{capture:!0,passive:!1}),()=>{document.removeEventListener(`wheel`,c,{capture:!0}),document.removeEventListener(`touchmove`,l,{capture:!0}),e.style.overscrollBehavior=n,t.style.overflow=r,t.style.paddingRight=i}},N=[a],t[26]=a,t[27]=M,t[28]=N),(0,Z.useEffect)(M,N);let P;t[29]!==e||t[30]!==j?(P=(t,n)=>{e.disabled||(e.onInstanceModelChange(t,n),e.renderSettings?c(!1):j(!1))},t[29]=e,t[30]=j,t[31]=P):P=t[31];let F=P,I,L,R,z,B,ne,re,ie,ae;if(t[32]!==b||t[33]!==a||t[34]!==e.activeProviderIconClassName||t[35]!==e.compact||t[36]!==e.disabled||t[37]!==e.instanceEntries||t[38]!==e.instanceIndicatorBackground||t[39]!==e.isComposerOwned||t[40]!==e.modelOptionsByInstance||t[41]!==e.renderSettings||t[42]!==e.selectedModels||t[43]!==e.triggerAriaLabel||t[44]!==e.triggerClassName||t[45]!==e.triggerLabel||t[46]!==j||t[47]!==A||t[48]!==o){z=e.selectedModels?.map(t=>{let n=e.instanceEntries.find(e=>e.instanceId===t.instanceId),r=it({driverKind:n?.driverKind,model:t.model,options:e.modelOptionsByInstance.get(t.instanceId)??[]});return{...t,entry:n,label:r?`${we(r)}${r.isUnavailable?` (Unavailable)`:``}`:t.model}}),R=z?z.length===0?`Choose models`:`${z.slice(0,2).map(ht).join(`, `)}${z.length>2?`, ${z.length-2} more`:``}`:void 0;let n=z?z.map(gt).join(`, `)||`Choose models`:void 0;L=he,ie=a,t[58]!==e.disabled||t[59]!==j?(ae=t=>{if(e.disabled){j(!1);return}j(t)},t[58]=e.disabled,t[59]=j,t[60]=ae):ae=t[60],I=me;let r=e.compact?`max-w-42 shrink-0`:!e.isComposerOwned&&`max-w-48 sm:max-w-56`,i;t[61]!==e.triggerClassName||t[62]!==r?(i=D(`min-w-0 shrink justify-between whitespace-nowrap`,r,e.triggerClassName),t[61]=e.triggerClassName,t[62]=r,t[63]=i):i=t[63],re=(0,Q.jsx)(E,{"aria-label":e.triggerAriaLabel??n,size:o,"data-chat-provider-model-picker":`true`,"data-composer-shortcut":e.renderSettings?`composer.effort`:void 0,className:i,disabled:e.disabled});let s=o===`xs`?`gap-1`:`gap-1.5`;t[64]===s?B=t[65]:(B=D(`flex min-w-0 flex-1 items-center`,s),t[64]=s,t[65]=B),ne=z&&e.triggerLabel===void 0?(0,Q.jsxs)(`span`,{className:`flex shrink-0 items-center -space-x-1`,"aria-hidden":`true`,children:[z.slice(0,3).map(_t),z.length>3?(0,Q.jsxs)(`span`,{className:`relative z-30 flex size-4 items-center justify-center rounded-full bg-(--chat-composer-glass-surface,var(--background)) text-3xs ring-2 ring-(--chat-composer-glass-surface,var(--background))`,children:[`+`,z.length-3]}):null]}):b&&e.triggerLabel===void 0?(0,Q.jsx)(q,{driverKind:b.driverKind,displayName:b.displayName,accentColor:b.accentColor,acpRegistryAgentId:b.acpRegistryAgentId,acpRegistryIconUrl:b.acpRegistryIconUrl,showBadge:A,className:`size-4`,iconClassName:D(`size-4`,e.activeProviderIconClassName),indicatorBackground:e.instanceIndicatorBackground??`var(--contrast-input)`,badgeClassName:D(`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 px-0.5 text-5xs`,o===`xs`&&`shadow-none`)}):null,t[32]=b,t[33]=a,t[34]=e.activeProviderIconClassName,t[35]=e.compact,t[36]=e.disabled,t[37]=e.instanceEntries,t[38]=e.instanceIndicatorBackground,t[39]=e.isComposerOwned,t[40]=e.modelOptionsByInstance,t[41]=e.renderSettings,t[42]=e.selectedModels,t[43]=e.triggerAriaLabel,t[44]=e.triggerClassName,t[45]=e.triggerLabel,t[46]=j,t[47]=A,t[48]=o,t[49]=I,t[50]=L,t[51]=R,t[52]=z,t[53]=B,t[54]=ne,t[55]=re,t[56]=ie,t[57]=ae}else I=t[49],L=t[50],R=t[51],z=t[52],B=t[53],ne=t[54],re=t[55],ie=t[56],ae=t[57];let oe;t[66]!==e.fastMode||t[67]!==e.isComposerOwned?(oe=e.isComposerOwned&&e.fastMode?(0,Q.jsx)(g,{"aria-hidden":!0,className:`size-4 shrink-0 fill-current text-foreground`}):null,t[66]=e.fastMode,t[67]=e.isComposerOwned,t[68]=oe):oe=t[68];let se=e.triggerLabel??R??w,le;t[69]===se?le=t[70]:(le=(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,"data-chat-provider-model-picker-label":`true`,children:se}),t[69]=se,t[70]=le);let ue;t[71]===e.settingsLabel?ue=t[72]:(ue=e.settingsLabel?(0,Q.jsx)(`span`,{className:`shrink-0 font-normal text-muted-foreground`,children:e.settingsLabel}):null,t[71]=e.settingsLabel,t[72]=ue);let de;t[73]!==e.triggerLabel||t[74]!==z||t[75]!==S?.isUnavailable?(de=S?.isUnavailable&&!z&&e.triggerLabel===void 0?(0,Q.jsx)(l,{variant:`outline`,size:`sm`,children:`Unavailable`}):null,t[73]=e.triggerLabel,t[74]=z,t[75]=S?.isUnavailable,t[76]=de):de=t[76];let fe;t[77]!==B||t[78]!==ne||t[79]!==oe||t[80]!==le||t[81]!==ue||t[82]!==de?(fe=(0,Q.jsxs)(`span`,{className:B,children:[ne,oe,le,ue,de]}),t[77]=B,t[78]=ne,t[79]=oe,t[80]=le,t[81]=ue,t[82]=de,t[83]=fe):fe=t[83];let V;t[84]===o?V=t[85]:(V=(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`flex items-center`,children:(0,Q.jsx)(T,{size:o})}),t[84]=o,t[85]=V);let H;t[86]!==I||t[87]!==re||t[88]!==fe||t[89]!==V?(H=(0,Q.jsxs)(I,{render:re,children:[fe,V]}),t[86]=I,t[87]=re,t[88]=fe,t[89]=V,t[90]=H):H=t[90];let U;t[91]!==n||t[92]!==e.isComposerOwned?(U=e.isComposerOwned?n:{},t[91]=n,t[92]=e.isComposerOwned,t[93]=U):U=t[93];let W;t[94]!==e.renderSettings||t[95]!==s?(W=e.renderSettings?{width:`calc(${s?360:288}px + 2px)`,maxWidth:`calc(100vw - 2rem)`}:void 0,t[94]=e.renderSettings,t[95]=s,t[96]=W):W=t[96];let G=s?`models`:`settings`,ge=e.renderSettings?s?`composer-models-enter`:`composer-effort-enter`:void 0,K;t[97]!==b?.snapshot||t[98]!==x||t[99]!==F||t[100]!==R||t[101]!==e||t[102]!==j||t[103]!==s||t[104]!==w?(K=e.renderSettings&&!s?e.renderSettings(R??w,()=>c(!0)):(0,Q.jsxs)(Q.Fragment,{children:[e.renderSettings?(0,Q.jsx)(`div`,{className:`px-2 pt-2`,children:(0,Q.jsxs)(ee,{variant:`ghost-muted`,size:`sm`,onClick:()=>c(!1),children:[(0,Q.jsx)(v,{}),` Model settings`]})}):null,(0,Q.jsx)(dt,{environmentId:e.environmentId,activeInstanceId:x,model:e.model,...e.selectedModels===void 0?{}:{selectedModels:e.selectedModels},...e.onToggleModel?{onToggleModel:(t,n)=>{e.disabled||e.onToggleModel?.(t,n)}}:{},lockedProvider:e.lockedProvider,lockedContinuationGroupKey:e.lockedContinuationGroupKey??null,instanceEntries:e.instanceEntries,...e.keybindings?{keybindings:e.keybindings}:{},modelOptionsByInstance:e.modelOptionsByInstance,terminalOpen:e.terminalOpen??!1,onRequestClose:()=>j(!1),...e.onOpenProviderSetup?{onOpenProviderSetup:e.onOpenProviderSetup}:{},...e.getModelDisabledReason?{getModelDisabledReason:e.getModelDisabledReason}:{},onInstanceModelChange:F}),e.selectedModels===void 0?(0,Q.jsx)(ft,{provider:b?.snapshot??null}):null]}),t[97]=b?.snapshot,t[98]=x,t[99]=F,t[100]=R,t[101]=e,t[102]=j,t[103]=s,t[104]=w,t[105]=K):K=t[105];let J;t[106]!==G||t[107]!==ge||t[108]!==K?(J=(0,Q.jsx)(`div`,{ref:u,className:`max-w-[calc(100vw-2rem)]`,children:(0,Q.jsx)(ce,{children:(0,Q.jsx)(`div`,{className:ge,children:K},G)})}),t[106]=G,t[107]=ge,t[108]=K,t[109]=J):J=t[109];let Y;t[110]!==U||t[111]!==W||t[112]!==J?(Y=(0,Q.jsx)(pe,{...U,align:`start`,className:`before:hidden`,padding:`none`,scrollbar:`hidden`,style:W,children:J}),t[110]=U,t[111]=W,t[112]=J,t[113]=Y):Y=t[113];let _e;return t[114]!==L||t[115]!==ie||t[116]!==ae||t[117]!==H||t[118]!==Y?(_e=(0,Q.jsxs)(L,{open:ie,onOpenChange:ae,children:[H,Y]}),t[114]=L,t[115]=ie,t[116]=ae,t[117]=H,t[118]=Y,t[119]=_e):_e=t[119],_e});function mt(e){return e instanceof Element&&e.closest(`[data-model-picker-content]`)}function ht(e){return e.label}function gt(e){return e.label}function _t(e){return e.entry?(0,Q.jsx)(q,{driverKind:e.entry.driverKind,displayName:e.entry.displayName,accentColor:e.entry.accentColor,className:`size-4 rounded-full bg-(--chat-composer-glass-surface,var(--background)) ring-2 ring-(--chat-composer-glass-surface,var(--background))`,iconClassName:`size-4`},`${e.instanceId}:${e.model}`):null}export{Xe as a,Je as i,it as n,Ye as o,Qe as r,we as s,pt as t};
2
+ //# sourceMappingURL=ProviderModelPicker-B8Pgdnzq.js.map