@p4code/cli 0.8.12 → 0.8.13

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 (336) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/{binCli-DUdPoqDO.mjs → binCli-B9aQxlIK.mjs} +1865 -1492
  3. package/dist/client/.vite/manifest.json +2144 -2145
  4. package/dist/client/assets/AlertDialogRoot-DvQNG7Nt.js +2 -0
  5. package/dist/client/assets/{AnimatedHeight-D-OJUoBJ.js → AnimatedHeight-CH-N3JTc.js} +2 -2
  6. package/dist/client/assets/{AuthSurfaceShell-TTILQgs8.js → AuthSurfaceShell-CJdXkxyH.js} +2 -2
  7. package/dist/client/assets/{CSPContext-D8hlJ4eS.js → CSPContext-4VAD2_gc.js} +2 -2
  8. package/dist/client/assets/{ChatGptUsageButton-BG4sHSE5.js → ChatGptUsageButton-7u9uPgbK.js} +2 -2
  9. package/dist/client/assets/ChatMarkdown-C22JFyYa.js +65 -0
  10. package/dist/client/assets/CheckboxIndicator-ClY0P0ol.js +2 -0
  11. package/dist/client/assets/CodexSetupSection.logic-CEAT7YdZ.js +2 -0
  12. package/dist/client/assets/{CollapsiblePanel-kfl4yLKn.js → CollapsiblePanel-Cubscn-a.js} +2 -2
  13. package/dist/client/assets/ComboboxClear-qTthzuJh.js +2 -0
  14. package/dist/client/assets/{CommandBlock-CgdYijxc.js → CommandBlock-CWt29kmi.js} +2 -2
  15. package/dist/client/assets/{ComposerPromptEditor-5vyHXxd7.js → ComposerPromptEditor-Bt_L4smq.js} +44 -44
  16. package/dist/client/assets/{CompositeRoot-B9Xvst63.js → CompositeRoot-DUqf78yV.js} +2 -2
  17. package/dist/client/assets/{ConnectionStatusDot-DtKQQSMi.js → ConnectionStatusDot-cdpNRZhA.js} +2 -2
  18. package/dist/client/assets/{DevicePanel-DQ8cLDHy.js → DevicePanel-CZm-f5TC.js} +2 -2
  19. package/dist/client/assets/{DeviceSetup-BP4bZJQS.js → DeviceSetup-BdrkGme6.js} +2 -2
  20. package/dist/client/assets/{DialogTitle-BzKEBo4W.js → DialogTitle-CQU6s1Wy.js} +2 -2
  21. package/dist/client/assets/{DiffCommentAnnotation-x4D5cVr3.js → DiffCommentAnnotation-B-XoYYxb.js} +2 -2
  22. package/dist/client/assets/{DiffFileTree-oPb1WMLR.js → DiffFileTree-CwTkSU3R.js} +2 -2
  23. package/dist/client/assets/DiffPanel-BCI9XXpF.js +2 -0
  24. package/dist/client/assets/{DiffWorkerPoolProvider-D2__qhqn.js → DiffWorkerPoolProvider-OPZsOibX.js} +3 -3
  25. package/dist/client/assets/{EmbeddedDesign-ClvOPYvI.js → EmbeddedDesign-DwRAPHYl.js} +4 -4
  26. package/dist/client/assets/{EnvironmentMachineIcon-COX4G5YJ.js → EnvironmentMachineIcon-DCdlTSYU.js} +2 -2
  27. package/dist/client/assets/{ExpandableText-BHihVj6x.js → ExpandableText-BtdwzlFy.js} +3 -3
  28. package/dist/client/assets/{FieldControl-CIaYJhnp.js → FieldControl-BI2gK4Z0.js} +2 -2
  29. package/dist/client/assets/{FileDiff-CrB6gsM6.js → FileDiff-BkJG5QAe.js} +2 -2
  30. package/dist/client/assets/{FilePreviewPanel-BrfGUkiA.js → FilePreviewPanel-CURtQAD1.js} +4 -4
  31. package/dist/client/assets/{FoldedSettingsSection-DGBHqNlE.js → FoldedSettingsSection-B9B8i8Gg.js} +2 -2
  32. package/dist/client/assets/{FormContext-DTtr4Y3v.js → FormContext-Bgwez2tv.js} +2 -2
  33. package/dist/client/assets/{Icons-BFyKltvl.js → Icons-B5JVkp3z.js} +2 -2
  34. package/dist/client/assets/Input-BQRZG5rU.js +2 -0
  35. package/dist/client/assets/{KeybindingsSettings.logic-_oQM9Dzv.js → KeybindingsSettings.logic-6lVDnd1N.js} +2 -2
  36. package/dist/client/assets/{NoProjectsHero-CCYi-y6n.js → NoProjectsHero-CkhVaJk9.js} +2 -2
  37. package/dist/client/assets/PanelLayoutControls-CxuV0JO3.js +216 -0
  38. package/dist/client/assets/{PierreEntryIcon-CKjQpgLO.js → PierreEntryIcon-CPG-jnaN.js} +2 -2
  39. package/dist/client/assets/PopoverHandle-CBT8hFut.js +2 -0
  40. package/dist/client/assets/PreviewPanel-Doh1peEu.js +2 -0
  41. package/dist/client/assets/ProjectDefaultsSettings-DfhAk0_Y.js +2 -0
  42. package/dist/client/assets/{ProjectFavicon-fx1QfVoh.js → ProjectFavicon-DUW6Bo66.js} +3 -3
  43. package/dist/client/assets/{ProjectIconPickerDialog-CFdK4dy-.js → ProjectIconPickerDialog-C613hnVY.js} +2 -2
  44. package/dist/client/assets/{ProjectMonogram-BMGWdmjv.js → ProjectMonogram-B9iJhcVp.js} +2 -2
  45. package/dist/client/assets/{ProviderAuthTerminal-B43zNZyt.js → ProviderAuthTerminal-eq346NX_.js} +2 -2
  46. package/dist/client/assets/{ProviderModelPicker-7TESki3o.js → ProviderModelPicker-DPb-88ui.js} +2 -2
  47. package/dist/client/assets/{ProviderSettingsForm-DTbceLMt.js → ProviderSettingsForm-DTYqzs8W.js} +2 -2
  48. package/dist/client/assets/PullRequestCodeTab-BBz0FfLD.js +6 -0
  49. package/dist/client/assets/{ReadOnlySourcePreview-b2w3OoiX.js → ReadOnlySourcePreview-CkeeLVAm.js} +2 -2
  50. package/dist/client/assets/{RenderErrorBoundary-Dkgc28VE.js → RenderErrorBoundary-mfAvIiFU.js} +2 -2
  51. package/dist/client/assets/{ScheduledTasksSettings-CEsxWqiH.js → ScheduledTasksSettings-BMUE9M9Z.js} +2 -2
  52. package/dist/client/assets/{ScopedSwitch-Bku3NuH1.js → ScopedSwitch-BKOdsllO.js} +2 -2
  53. package/dist/client/assets/{ScrollAreaCorner-SeZ1sx-t.js → ScrollAreaCorner-CoeXGFSL.js} +2 -2
  54. package/dist/client/assets/{SecretInput-D0DyMDSw.js → SecretInput-CROqj1gF.js} +2 -2
  55. package/dist/client/assets/SelectScrollUpArrow-SDOpV3nj.js +2 -0
  56. package/dist/client/assets/{SettingsPanels-BoxSRF3Y.js → SettingsPanels-BHhMJaVc.js} +6 -6
  57. package/dist/client/assets/{SettingsPanels.logic-DIWicQHy.js → SettingsPanels.logic-BwmY39Sq.js} +2 -2
  58. package/dist/client/assets/{SettingsScopeNotice-4PZ3qjUl.js → SettingsScopeNotice-DAPsshab.js} +2 -2
  59. package/dist/client/assets/{T3ConnectAccountPages-DA0BptAt.js → T3ConnectAccountPages-CDuVbE2z.js} +2 -2
  60. package/dist/client/assets/{T3ConnectSidebarSignIn-B05eHBr6.js → T3ConnectSidebarSignIn-BSQHp-Xq.js} +2 -2
  61. package/dist/client/assets/{ThemeEditorPanel-DWb0qJem.js → ThemeEditorPanel-BiuI7Uiy.js} +3 -3
  62. package/dist/client/assets/ThreadTerminalDrawer-B8n6TAqv.js +5 -0
  63. package/dist/client/assets/TooltipViewport-BKD6QABG.js +2 -0
  64. package/dist/client/assets/{Virtualizer-Cyq5hRoq.js → Virtualizer-CTnacEby.js} +2 -2
  65. package/dist/client/assets/{WorkspaceBreadcrumb-B0Ap9wKu.js → WorkspaceBreadcrumb-BmVcurpi.js} +2 -2
  66. package/dist/client/assets/{WorkspacePageContainer-COKQZB3N.js → WorkspacePageContainer-BSjVd7h4.js} +2 -2
  67. package/dist/client/assets/{WorkspacePageHeader-BDzzcsWQ.js → WorkspacePageHeader-BLYOcS9Z.js} +2 -2
  68. package/dist/client/assets/_chat-z348gvgF.js +45 -0
  69. package/dist/client/assets/{_chat.index-obkH3dRC.js → _chat.index-CBbUzaK7.js} +2 -2
  70. package/dist/client/assets/{_chat.new-DVE644MB.js → _chat.new-7TTfcDf1.js} +2 -2
  71. package/dist/client/assets/_chat.pull-requests-BE7Q2lUu.js +2 -0
  72. package/dist/client/assets/{abnfDiagram-VCTEODGH-CPHKGdm2.js → abnfDiagram-VCTEODGH-HaXM7twL.js} +2 -2
  73. package/dist/client/assets/{alert-B2wk0CaO.js → alert-5swcxUBm.js} +2 -2
  74. package/dist/client/assets/architecture-7GRP2DOG-CiMEl2LX.js +1 -0
  75. package/dist/client/assets/{architectureDiagram-5GKGNRK7-DZFW2-cw.js → architectureDiagram-5GKGNRK7-BhWXFsXS.js} +2 -2
  76. package/dist/client/assets/assets-DXnV2oRj.js +2 -0
  77. package/dist/client/assets/{blockDiagram-I7D4REHJ-DmEMRtTm.js → blockDiagram-I7D4REHJ-D213N9iF.js} +2 -2
  78. package/dist/client/assets/{browserHistoryStore-VpfOHXQM.js → browserHistoryStore-DURO3U2L.js} +2 -2
  79. package/dist/client/assets/{browserLinkTarget-BPuATALO.js → browserLinkTarget-DcGx3A8F.js} +2 -2
  80. package/dist/client/assets/{c4Diagram-7LVT6UL2-eYwJlimj.js → c4Diagram-7LVT6UL2-58POuQV-.js} +2 -2
  81. package/dist/client/assets/channel-CDbYAV2D.js +2 -0
  82. package/dist/client/assets/{checkbox-DU_a7ZnJ.js → checkbox-1tz9neVf.js} +2 -2
  83. package/dist/client/assets/{chunk-4HAMMTFA-cctCxKWZ.js → chunk-4HAMMTFA-Bcwcw8Wz.js} +2 -2
  84. package/dist/client/assets/{chunk-75Z2AOVW-yaFLBspz.js → chunk-75Z2AOVW-BaYdZ0Fq.js} +2 -2
  85. package/dist/client/assets/{chunk-DU6HZSFF-COvkbqst.js → chunk-DU6HZSFF-B6TRgw4-.js} +2 -2
  86. package/dist/client/assets/{chunk-F27PBJKO-BoZkG8KP.js → chunk-F27PBJKO-B5arSwg6.js} +2 -2
  87. package/dist/client/assets/{chunk-GMAD6QVW-D54p8a4L.js → chunk-GMAD6QVW-XeNCd3gb.js} +2 -2
  88. package/dist/client/assets/{chunk-GVQU2GXP-CDiM6HNZ.js → chunk-GVQU2GXP-CWVbbWh7.js} +2 -2
  89. package/dist/client/assets/{chunk-IMKFNOWR-BCKRWLFe.js → chunk-IMKFNOWR-Cb-yxIAE.js} +2 -2
  90. package/dist/client/assets/{chunk-L3NEJ4N5-DFKc7N9P.js → chunk-L3NEJ4N5-Di7nZhzu.js} +2 -2
  91. package/dist/client/assets/{chunk-OSK3NFVY-DGczxohY.js → chunk-OSK3NFVY-DcqBXKUK.js} +2 -2
  92. package/dist/client/assets/{chunk-P2QGCYS3-C-hXHVpV.js → chunk-P2QGCYS3-DJ1kMiTY.js} +2 -2
  93. package/dist/client/assets/{chunk-POPQ4Y6H-BMxZmq3k.js → chunk-POPQ4Y6H-Ba9RYr-b.js} +2 -2
  94. package/dist/client/assets/{chunk-PWAF6VOD-CtRucGgL.js → chunk-PWAF6VOD-D4Ch07S8.js} +2 -2
  95. package/dist/client/assets/{chunk-SHT3W25Y-B5VCRMvd.js → chunk-SHT3W25Y-BafMUZgc.js} +2 -2
  96. package/dist/client/assets/{chunk-SVP7TREG-BpH-ABz6.js → chunk-SVP7TREG-CsEVe0s3.js} +2 -2
  97. package/dist/client/assets/{chunk-TICWLB2K-CTkLpoi-.js → chunk-TICWLB2K-D3tgdZlp.js} +2 -2
  98. package/dist/client/assets/classDiagram-ZZMXUADV-Cdtwlmxc.js +2 -0
  99. package/dist/client/assets/classDiagram-v2-VYDZK3BY-Cdtwlmxc.js +2 -0
  100. package/dist/client/assets/{color-picker-CYOS1hwQ.js → color-picker-N6f_Hu7P.js} +2 -2
  101. package/dist/client/assets/{combobox-CZradSHe.js → combobox-B07cVaQY.js} +2 -2
  102. package/dist/client/assets/{command-BB0IyhBc.js → command-B70eQIps.js} +2 -2
  103. package/dist/client/assets/{connect-liVdG7hL.js → connect-Vt7wlrih.js} +2 -2
  104. package/dist/client/assets/{connect-agent-CMmb-Zab.js → connect-agent-CX70rAkF.js} +2 -2
  105. package/dist/client/assets/{cynefin-OW5HDTMX-B4foSkMN.js → cynefin-OW5HDTMX-CU8HnD4F.js} +1 -1
  106. package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-Cq1u5nRd.js → cynefinDiagram-5FMLGOSQ-Cvc6_oYZ.js} +2 -2
  107. package/dist/client/assets/{dagre-GXQ25YYZ-BnWkCI00.js → dagre-GXQ25YYZ-Bx5buWLS.js} +2 -2
  108. package/dist/client/assets/device-BgvBRE7C.js +2 -0
  109. package/dist/client/assets/{diagram-S7CK7UJ4-Bk90dFWN.js → diagram-S7CK7UJ4-CPZrAy0P.js} +2 -2
  110. package/dist/client/assets/{diagram-UQ7AKVKN-Dh52RrnP.js → diagram-UQ7AKVKN-kBtSnHpL.js} +2 -2
  111. package/dist/client/assets/{diagram-VSXAHHWV-uV_w7lVo.js → diagram-VSXAHHWV-DQP2q1tS.js} +2 -2
  112. package/dist/client/assets/{diagram-VX7I27RA-DL1AuClH.js → diagram-VX7I27RA-DRUN0yEk.js} +2 -2
  113. package/dist/client/assets/{diagram-Z3DM3KII-B5dyOgFp.js → diagram-Z3DM3KII-D4WMsQZZ.js} +2 -2
  114. package/dist/client/assets/{dialog-x5a5g_fa.js → dialog-DmneyTGi.js} +2 -2
  115. package/dist/client/assets/{diffRendering-DHxotmCj.js → diffRendering-iR2meoVj.js} +2 -2
  116. package/dist/client/assets/{discovery-list-Bn1UyUNL.js → discovery-list-ZGkddsst.js} +2 -2
  117. package/dist/client/assets/{dist-DtZBcVS4.js → dist-vr51zfzA.js} +3 -3
  118. package/dist/client/assets/{draft-input-CwXvLRjL.js → draft-input-DHZ1J7B_.js} +2 -2
  119. package/dist/client/assets/{duoViewer-zxcLfYBx.js → duoViewer-DTVry3xd.js} +2 -2
  120. package/dist/client/assets/{dynamic-6kg5nPKs.js → dynamic-CuoX2JEO.js} +2 -2
  121. package/dist/client/assets/{ebnfDiagram-PWID7BFC-1CxZtGTD.js → ebnfDiagram-PWID7BFC-BNUtunQw.js} +2 -2
  122. package/dist/client/assets/{embeddedScripts-DYX91Iqp.js → embeddedScripts-BMvBWRz_.js} +2 -2
  123. package/dist/client/assets/{empty-C-FrtXzi.js → empty-hFNkAHps.js} +2 -2
  124. package/dist/client/assets/entities-7B8nzlQw.js +2 -0
  125. package/dist/client/assets/{environments-C3ohMa2W.js → environments-DYIXXf7q.js} +2 -2
  126. package/dist/client/assets/{erDiagram-RLTQ6QDP-CsGV-1_T.js → erDiagram-RLTQ6QDP-DHjjowZq.js} +2 -2
  127. package/dist/client/assets/eventmodeling-NTZA5JFV-DNKqiuCf.js +1 -0
  128. package/dist/client/assets/{fileLinks-Dm5o4ow4.js → fileLinks-BYi-XNUG.js} +2 -2
  129. package/dist/client/assets/{fileTreeExpansion-C8bS7Zih.js → fileTreeExpansion-DIOxQqDo.js} +2 -2
  130. package/dist/client/assets/flowDiagram-HODETNUW-CbOoDtR7.js +1 -0
  131. package/dist/client/assets/{ganttDiagram-EL5Y4UJY-DPJOvh4Y.js → ganttDiagram-EL5Y4UJY-DEPOqoj0.js} +2 -2
  132. package/dist/client/assets/{getDiffFileInput-Dl5o7z9L.js → getDiffFileInput-DMj15wpy.js} +2 -2
  133. package/dist/client/assets/{gitGraph-4MIJSDKK-BZfRHVrB.js → gitGraph-4MIJSDKK-BGKW_zhb.js} +1 -1
  134. package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-DAAU0j3h.js → gitGraphDiagram-WWUBYQGX-7UhsI5zi.js} +2 -2
  135. package/dist/client/assets/{guideRunStore-CEASlKCi.js → guideRunStore-BEkwZ9H7.js} +2 -2
  136. package/dist/client/assets/{htmlRender-Egw4Y-80.js → htmlRender-BxVc1PlI.js} +2 -2
  137. package/dist/client/assets/{index-B_GLtP0M.js → index-C_MVyH59.js} +3 -3
  138. package/dist/client/assets/{info-A6RAGUB7-ycVybacD.js → info-A6RAGUB7-jvyzx_4e.js} +1 -1
  139. package/dist/client/assets/{infoDiagram-27XIBGKW-oqlTnqq9.js → infoDiagram-27XIBGKW-lTTpu3as.js} +2 -2
  140. package/dist/client/assets/{input-DhWmPSxf.js → input-RqvQJ9gh.js} +2 -2
  141. package/dist/client/assets/{input-group-D4qHaxH8.js → input-group-BFtrsedw.js} +2 -2
  142. package/dist/client/assets/{ishikawaDiagram-5VMMS53U-BUi7N4un.js → ishikawaDiagram-5VMMS53U-DlrQNGG9.js} +2 -2
  143. package/dist/client/assets/{journeyDiagram-3NMN7TZE-B2J9IlBm.js → journeyDiagram-3NMN7TZE-Buy9e-fU.js} +2 -2
  144. package/dist/client/assets/{kanban-definition-UXKFOSKX-49qHmkgE.js → kanban-definition-UXKFOSKX-1KgAXH0g.js} +2 -2
  145. package/dist/client/assets/{kbd-I5TavBvc.js → kbd-BnsXAHsc.js} +2 -2
  146. package/dist/client/assets/{keybindings-B3kvDAJC.js → keybindings-BtHOXkP-.js} +2 -2
  147. package/dist/client/assets/{lazyRouteComponent-ZmKiS4iU.js → lazyRouteComponent-T0YE6Rn9.js} +2 -2
  148. package/dist/client/assets/{line-C5HQ6j78.js → line-DUV1hs6X.js} +2 -2
  149. package/dist/client/assets/{link-DQB3a7WC.js → link-gKYnbTYT.js} +2 -2
  150. package/dist/client/assets/{linkedPrompt-FeVRd-O-.js → linkedPrompt-Da8rJho3.js} +2 -2
  151. package/dist/client/assets/main-Bh6Hj0_-.js +30 -0
  152. package/dist/client/assets/{main-CuoFsMGE.css → main-CoSpTpWL.css} +1 -1
  153. package/dist/client/assets/{mediaReference-ltmoE8jM.js → mediaReference-CLlAiRVc.js} +2 -2
  154. package/dist/client/assets/{mediaSource-CMMCxBE2.js → mediaSource-BTCWn94E.js} +2 -2
  155. package/dist/client/assets/{mermaid-parser.core-CrL8urD6.js → mermaid-parser.core-CsBuWV4-.js} +4 -4
  156. package/dist/client/assets/{mermaid.core-P-NUuG-D.js → mermaid.core-BcICv5EB.js} +5 -5
  157. package/dist/client/assets/{mindmap-definition-YA3MSWOX-CIwOTWEt.js → mindmap-definition-YA3MSWOX-BqCqe4io.js} +2 -2
  158. package/dist/client/assets/number-field-DIYUxout.js +2 -0
  159. package/dist/client/assets/{observeResize-Cpph8C0G.js → observeResize-D9ECzP-D.js} +2 -2
  160. package/dist/client/assets/{onboarding-BU1V8wHr.js → onboarding-COQ6KgRG.js} +2 -2
  161. package/dist/client/assets/{openFileInPreview-DHDgTtRZ.js → openFileInPreview-BhRAqg63.js} +2 -2
  162. package/dist/client/assets/{p4ProjectFile-D9Mx0dmO.js → p4ProjectFile-z5Hlq99W.js} +2 -2
  163. package/dist/client/assets/{packet-AYTQ26CC-Dx1MWiCF.js → packet-AYTQ26CC-BYCaPqFA.js} +1 -1
  164. package/dist/client/assets/{pair-Cu7mXLMq.js → pair-BDKjGij-.js} +2 -2
  165. package/dist/client/assets/{pegDiagram-XKGWAZYB-6LaNggoU.js → pegDiagram-XKGWAZYB-CqCw5Z-L.js} +2 -2
  166. package/dist/client/assets/{phoneViewer-DxbJZZ1_.js → phoneViewer-DLSM0QXE.js} +2 -2
  167. package/dist/client/assets/{pie-WAS4IAKB-BHElrMQ0.js → pie-WAS4IAKB-BfOlqQx1.js} +1 -1
  168. package/dist/client/assets/{pieDiagram-E7YTZNPT-BZ-KGbt4.js → pieDiagram-E7YTZNPT-DZpCrUQF.js} +2 -2
  169. package/dist/client/assets/{pierre-icons-BoPbdUrw.js → pierre-icons-BG7vd34x.js} +2 -2
  170. package/dist/client/assets/{popover-Bc0WvoPP.js → popover-DE9WCm99.js} +2 -2
  171. package/dist/client/assets/{preview-IWIgXHdy.js → preview-Cl-7ojv-.js} +2 -2
  172. package/dist/client/assets/{preview-Bdfy10VL.js → preview-bd-MGMMz.js} +2 -2
  173. package/dist/client/assets/{previewMiniPlayerStore-CTOOyQLc.js → previewMiniPlayerStore-Bz1T9oVV.js} +2 -2
  174. package/dist/client/assets/primary-BwHoAoya.js +2 -0
  175. package/dist/client/assets/primaryCloudLinkState-DtOYGRkF.js +2 -0
  176. package/dist/client/assets/projectFilesQueryState-BP_JvI7-.js +2 -0
  177. package/dist/client/assets/projectScriptEditor-BGLshibY.js +2 -0
  178. package/dist/client/assets/{providerSkills-CKg8n_Pc.js → providerSkills-DxYtwoxJ.js} +2 -2
  179. package/dist/client/assets/{pullRequestDetail.logic-rvhEbiFP.js → pullRequestDetail.logic-C_aVDAY_.js} +4 -4
  180. package/dist/client/assets/{pullRequestIcons-BaQbmCBu.js → pullRequestIcons-D5Yo5Zsn.js} +2 -2
  181. package/dist/client/assets/{pullRequestReviewStore-wpVYihKr.js → pullRequestReviewStore-DaEzt1m1.js} +2 -2
  182. package/dist/client/assets/{pullRequests-DJrYzynz.js → pullRequests-D0no1PZS.js} +2 -2
  183. package/dist/client/assets/{quadrantDiagram-AXDQQJYC-CvnGxXew.js → quadrantDiagram-AXDQQJYC-BTtuOXlL.js} +2 -2
  184. package/dist/client/assets/queries-DkmaXOL-.js +2 -0
  185. package/dist/client/assets/query-Bd5_Y_Vy.js +2 -0
  186. package/dist/client/assets/{radar-RG4KPBEZ-BrffrDRx.js → radar-RG4KPBEZ-BiJgnIUY.js} +1 -1
  187. package/dist/client/assets/radio-group-CBunNtTU.js +2 -0
  188. package/dist/client/assets/{railroad-74A4TZTK-B3VSFrGQ.js → railroad-74A4TZTK-C0CA0mcr.js} +1 -1
  189. package/dist/client/assets/railroad-abnf-HS5TGJTU-BtC_0p6z.js +1 -0
  190. package/dist/client/assets/railroad-ebnf-LZEXJU2U-IeTBC6cs.js +1 -0
  191. package/dist/client/assets/railroad-peg-WCYAUIDC-DLoLKYq3.js +1 -0
  192. package/dist/client/assets/{railroadDiagram-O6MQD6OU-BbIi-aIS.js → railroadDiagram-O6MQD6OU-WczOSoF4.js} +2 -2
  193. package/dist/client/assets/{renderScheduler-B_XMfDdk.js → renderScheduler-BLjFSKnt.js} +2 -2
  194. package/dist/client/assets/{requirementDiagram-BXWQKSXE-BcjJ0oP9.js → requirementDiagram-BXWQKSXE-B3qCIQP5.js} +2 -2
  195. package/dist/client/assets/{rightPanelStore-37-59X44.js → rightPanelStore-6-YhsfkE.js} +2 -2
  196. package/dist/client/assets/runtime-Bni_zt6P.js +2 -0
  197. package/dist/client/assets/runtime-D8mKjOP-.js +6 -0
  198. package/dist/client/assets/{runtimeModeConfig-DF8wod3s.js → runtimeModeConfig-C3q8YqVA.js} +2 -2
  199. package/dist/client/assets/{sankeyDiagram-P5KCCOFB-DmFJ2EWh.js → sankeyDiagram-P5KCCOFB-e2-j7ERe.js} +2 -2
  200. package/dist/client/assets/{scheduledTasksSettings.logic-BYBxTiFF.js → scheduledTasksSettings.logic-BNC897-_.js} +3 -3
  201. package/dist/client/assets/{scroll-area-BDT5qfX2.js → scroll-area-Davaj52_.js} +2 -2
  202. package/dist/client/assets/{select-BQxcmO_1.js → select-B47XfaxQ.js} +2 -2
  203. package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-D8YdQDYA.js → sequenceDiagram-WJ2MYXX4-DG7-8UJk.js} +2 -2
  204. package/dist/client/assets/server-CaLEm3Wt.js +2 -0
  205. package/dist/client/assets/{session-CLz6NCKX.js → session-2CRBJwS7.js} +2 -2
  206. package/dist/client/assets/{session-logic-CD6ctino.js → session-logic-BLOBsHEA.js} +4 -4
  207. package/dist/client/assets/{settings-Swwhfgp0.js → settings-BIwaDm1N.js} +2 -2
  208. package/dist/client/assets/settings.appearance-ToUM8fHh.js +2 -0
  209. package/dist/client/assets/settings.archived-Cq_qclay.js +2 -0
  210. package/dist/client/assets/{settings.computer-use-nLbSQfdv.js → settings.computer-use-BEghs16L.js} +2 -2
  211. package/dist/client/assets/settings.connections-C_LVk0gJ.js +2 -0
  212. package/dist/client/assets/{settings.data-controls-BZsALFNW.js → settings.data-controls-BaTil8NB.js} +2 -2
  213. package/dist/client/assets/{settings.decisions-ewNyURd9.js → settings.decisions-JTbMt08J.js} +2 -2
  214. package/dist/client/assets/settings.diagnostics-ByG62ZGs.js +2 -0
  215. package/dist/client/assets/settings.general-BT78z_Cn.js +2 -0
  216. package/dist/client/assets/{settings.integrations-Cra2dW7z.js → settings.integrations-C3jj2T1d.js} +2 -2
  217. package/dist/client/assets/{settings.keybindings-TlPhoEQg.js → settings.keybindings-CeqZWQEi.js} +2 -2
  218. package/dist/client/assets/{settings.open-source-licenses-B-yrCrWG.js → settings.open-source-licenses-BAFwkfI8.js} +2 -2
  219. package/dist/client/assets/settings.plugins-D5l1ZPSB.js +5 -0
  220. package/dist/client/assets/settings.projects-Cqx1zAvs.js +4 -0
  221. package/dist/client/assets/settings.providers-CS55UrI1.js +3 -0
  222. package/dist/client/assets/settings.scheduled-tasks-CFJTEOb1.js +2 -0
  223. package/dist/client/assets/{settings.snap-shot-DjahqLFc.js → settings.snap-shot-E3AITJyC.js} +2 -2
  224. package/dist/client/assets/{settings.source-control-2ejyJuaq.js → settings.source-control-CWWy9E3b.js} +2 -2
  225. package/dist/client/assets/{settings.storage-CWhyfrpB.js → settings.storage-BnUI1rFT.js} +2 -2
  226. package/dist/client/assets/{settingsLayout-D-5E1K-3.js → settingsLayout-DHc6oKfL.js} +3 -3
  227. package/dist/client/assets/{sidebar-D5nBG54l.js → sidebar-BkujXU9U.js} +2 -2
  228. package/dist/client/assets/{sidebarProjectGrouping-D1iMa8Uh.js → sidebarProjectGrouping-DD4nu9RX.js} +2 -2
  229. package/dist/client/assets/{skeleton-oZHFXSZp.js → skeleton-C6_D5JUu.js} +2 -2
  230. package/dist/client/assets/{sortable.esm-By3lSBxO.js → sortable.esm-BAEGChD3.js} +2 -2
  231. package/dist/client/assets/{sourceControl-mPa5Da0-.js → sourceControl-BAghu6LN.js} +2 -2
  232. package/dist/client/assets/{spinner-Bnjv_L8F.js → spinner-CpLstN6u.js} +2 -2
  233. package/dist/client/assets/{standalone-page-Davc_MrS.js → standalone-page-7vaVYOp-.js} +2 -2
  234. package/dist/client/assets/{stateDiagram-D77RDMKH-DoURp1ek.js → stateDiagram-D77RDMKH-CpZF58eW.js} +2 -2
  235. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-DewOo-MV.js +2 -0
  236. package/dist/client/assets/{swimlanes-42K2YHIH-CnIKMVp7.js → swimlanes-42K2YHIH-D1b49puG.js} +2 -2
  237. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-d9EGwk-5.js +9 -0
  238. package/dist/client/assets/{terminal-links-BT70vIBN.js → terminal-links-CjmSI9gV.js} +2 -2
  239. package/dist/client/assets/{terminalSessions-5_U2zswb.js → terminalSessions-Q2t1JYPS.js} +2 -2
  240. package/dist/client/assets/{textarea-B8WPFAr0.js → textarea-DKdxwZZC.js} +2 -2
  241. package/dist/client/assets/{themePalette-CdoksNDx.js → themePalette-7p_LOU3J.js} +3 -3
  242. package/dist/client/assets/{threadSort-CGw2yc3P.js → threadSort-C5oCCRfj.js} +2 -2
  243. package/dist/client/assets/{timeline-definition-24CTP7MA-Bb4-XE1H.js → timeline-definition-24CTP7MA-89AJY6KO.js} +2 -2
  244. package/dist/client/assets/toast-DhMYg_gN.js +2 -0
  245. package/dist/client/assets/{toggle-DLuCM2ny.js → toggle-BshAsXT6.js} +2 -2
  246. package/dist/client/assets/{toggle-group-RZD18_sD.js → toggle-group-ZNzhUvHt.js} +2 -2
  247. package/dist/client/assets/tooltip-Cq9yz15d.js +2 -0
  248. package/dist/client/assets/{treeView-Q6P3EWNA-m0IX4uRr.js → treeView-Q6P3EWNA-CqNF2YcW.js} +1 -1
  249. package/dist/client/assets/{treemap-WGGIJYW6-DjF5oRc6.js → treemap-WGGIJYW6-LJa3ZEYA.js} +1 -1
  250. package/dist/client/assets/usage-CJVyABbK.js +2 -0
  251. package/dist/client/assets/{usageAccess-CGcVLBtI.js → usageAccess-CieOJbVm.js} +2 -2
  252. package/dist/client/assets/{usageFormat-B-HlJYM5.js → usageFormat-BEGhDYfU.js} +2 -2
  253. package/dist/client/assets/{usageShortcuts-CUsmDt-0.js → usageShortcuts-DxuByyhD.js} +2 -2
  254. package/dist/client/assets/{use-atom-command-BEC7Dpf5.js → use-atom-command-x4GQBtio.js} +2 -2
  255. package/dist/client/assets/{useAriaLabelledBy-DZIzyiAY.js → useAriaLabelledBy-u5efXUxw.js} +2 -2
  256. package/dist/client/assets/{useHandleNewThread-B6GE4-lt.js → useHandleNewThread-CReGBX6y.js} +2 -2
  257. package/dist/client/assets/{useLocation-UcmQE5FC.js → useLocation-B3ir4ben.js} +2 -2
  258. package/dist/client/assets/useNavigate-DRqH9NhA.js +2 -0
  259. package/dist/client/assets/{useNavigateBack-B0y76gBs.js → useNavigateBack-XQd0WINI.js} +2 -2
  260. package/dist/client/assets/{useParams-DdYFF9g9.js → useParams-Cil-ZIwd.js} +2 -2
  261. package/dist/client/assets/{usePermissionStatus-C01enB4u.js → usePermissionStatus-C4aMrLLP.js} +2 -2
  262. package/dist/client/assets/{usePullRequestActions-C9Nx99x7.js → usePullRequestActions-BL4mjngC.js} +3 -3
  263. package/dist/client/assets/{useRegisterFieldControl-Bmw-33lq.js → useRegisterFieldControl-75QESVfk.js} +2 -2
  264. package/dist/client/assets/{useScopedModelAvailability-Bx5MEwNY.js → useScopedModelAvailability-CBOIiaXC.js} +2 -2
  265. package/dist/client/assets/useSettings-Dx076NWT.js +3 -0
  266. package/dist/client/assets/{useT3ConnectAuthPrompt-B9-kgi3N.js → useT3ConnectAuthPrompt-1zTdZLsH.js} +2 -2
  267. package/dist/client/assets/utils-BEVyjoxo.js +37 -0
  268. package/dist/client/assets/vcsRefInvalidation-46AnO9mr.js +2 -0
  269. package/dist/client/assets/{vennDiagram-4TSXK5OY-CCjFehou.js → vennDiagram-4TSXK5OY-CvvE7gMp.js} +2 -2
  270. package/dist/client/assets/{wardley-WFR3VGLG-C8OgmKG3.js → wardley-WFR3VGLG-Ca8Qzkpo.js} +1 -1
  271. package/dist/client/assets/{wardleyDiagram-VM6X3IG4-aAotQeyV.js → wardleyDiagram-VM6X3IG4-BBSNgSMI.js} +2 -2
  272. package/dist/client/assets/{welcome-DgOu9i5m.js → welcome-B3wsq5wK.js} +2 -2
  273. package/dist/client/assets/{xychartDiagram-S5SC5T6Z-B6Gl2NIG.js → xychartDiagram-S5SC5T6Z-D8OhWe48.js} +2 -2
  274. package/dist/client/index.html +1 -1
  275. package/dist/{renderer-C4obs87z.mjs → renderer-C4CdFj__.mjs} +2 -2
  276. package/dist/{runtime-2Dbe0RYi.mjs → runtime-CCVFqL3Y.mjs} +78 -4
  277. package/package.json +1 -1
  278. package/dist/client/assets/AlertDialogRoot-Bb5-VhZe.js +0 -2
  279. package/dist/client/assets/ChatMarkdown-6z7RF4Ki.js +0 -65
  280. package/dist/client/assets/CheckboxIndicator-BzFOZwIv.js +0 -2
  281. package/dist/client/assets/CodexSetupSection.logic-CesZU0jj.js +0 -2
  282. package/dist/client/assets/ComboboxClear-Di7TLMMS.js +0 -2
  283. package/dist/client/assets/DiffPanel-FegTwEoZ.js +0 -2
  284. package/dist/client/assets/Input-DoZ73vNO.js +0 -2
  285. package/dist/client/assets/PanelLayoutControls-CNS9IpqP.js +0 -216
  286. package/dist/client/assets/PopoverHandle-D2swQJBt.js +0 -2
  287. package/dist/client/assets/PreviewPanel-CJ81wdo6.js +0 -2
  288. package/dist/client/assets/ProjectDefaultsSettings-CXY57B72.js +0 -2
  289. package/dist/client/assets/PullRequestCodeTab-ClHfRIZg.js +0 -6
  290. package/dist/client/assets/SelectScrollUpArrow-CAd5YEsi.js +0 -2
  291. package/dist/client/assets/ThreadTerminalDrawer-g8xlxRvR.js +0 -5
  292. package/dist/client/assets/TooltipViewport-Wc_QpRGI.js +0 -2
  293. package/dist/client/assets/_chat-BCpoMsA8.js +0 -45
  294. package/dist/client/assets/_chat.pull-requests-Dl8vaGsi.js +0 -2
  295. package/dist/client/assets/architecture-7GRP2DOG-Dr1CsNUa.js +0 -1
  296. package/dist/client/assets/assets-Bv4X710m.js +0 -2
  297. package/dist/client/assets/channel-DSsQ3W5t.js +0 -2
  298. package/dist/client/assets/classDiagram-ZZMXUADV-BBQf0-yA.js +0 -2
  299. package/dist/client/assets/classDiagram-v2-VYDZK3BY-BBQf0-yA.js +0 -2
  300. package/dist/client/assets/device-DLB3WAXi.js +0 -2
  301. package/dist/client/assets/entities-ed9IspYf.js +0 -2
  302. package/dist/client/assets/eventmodeling-NTZA5JFV-Ji6bAwP8.js +0 -1
  303. package/dist/client/assets/flowDiagram-HODETNUW-AAO2RT67.js +0 -1
  304. package/dist/client/assets/main-DUXMPAgZ.js +0 -30
  305. package/dist/client/assets/number-field-N4gbrhyd.js +0 -2
  306. package/dist/client/assets/primary-Ce2kT30K.js +0 -2
  307. package/dist/client/assets/primaryCloudLinkState-Do0JJRXu.js +0 -2
  308. package/dist/client/assets/projectFilesQueryState-CRMf46rk.js +0 -2
  309. package/dist/client/assets/projectScriptEditor-BCJfjG7L.js +0 -2
  310. package/dist/client/assets/queries-p9BAZLb-.js +0 -2
  311. package/dist/client/assets/query-CpOQgkic.js +0 -2
  312. package/dist/client/assets/radio-group-CfHe3q1m.js +0 -2
  313. package/dist/client/assets/railroad-abnf-HS5TGJTU-BS7JDegU.js +0 -1
  314. package/dist/client/assets/railroad-ebnf-LZEXJU2U-PJ7TdaXJ.js +0 -1
  315. package/dist/client/assets/railroad-peg-WCYAUIDC-BnDwBnfu.js +0 -1
  316. package/dist/client/assets/runtime-AivVP3k8.js +0 -6
  317. package/dist/client/assets/runtime-BfjHqyQH.js +0 -2
  318. package/dist/client/assets/server-BC4-DXjw.js +0 -2
  319. package/dist/client/assets/settings.appearance-BSzr_T9U.js +0 -2
  320. package/dist/client/assets/settings.archived-BoCdDvJy.js +0 -2
  321. package/dist/client/assets/settings.connections-C4NVZA2N.js +0 -2
  322. package/dist/client/assets/settings.diagnostics-DD8ubhwU.js +0 -2
  323. package/dist/client/assets/settings.general-CtzJh4Rx.js +0 -2
  324. package/dist/client/assets/settings.plugins-imKgCVn_.js +0 -5
  325. package/dist/client/assets/settings.projects-tzSgXlw4.js +0 -4
  326. package/dist/client/assets/settings.providers-CJMKBwGi.js +0 -3
  327. package/dist/client/assets/settings.scheduled-tasks-CsxzXKIe.js +0 -2
  328. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-D7St643I.js +0 -2
  329. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-D5SXc1iu.js +0 -9
  330. package/dist/client/assets/toast-BYGWNQVa.js +0 -2
  331. package/dist/client/assets/tooltip-924Ikq0L.js +0 -2
  332. package/dist/client/assets/usage-DozNd-7N.js +0 -2
  333. package/dist/client/assets/useNavigate-Dvl9uiuL.js +0 -2
  334. package/dist/client/assets/useSettings-CbuRZg7F.js +0 -3
  335. package/dist/client/assets/utils-CRwA5SKO.js +0 -37
  336. package/dist/client/assets/vcsRefInvalidation-Dkz0bLCm.js +0 -2
@@ -0,0 +1,5 @@
1
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{r as t}from"./Icon-l19w4AjM.js";import{$g as n,Aw as r,Cm as i,Gn as a,Hp as o,Jp as s,Ku as c,Lp as l,NE as u,NT as d,Np as f,Pp as p,Qg as m,Qp as h,Ss as g,Wn as _,Xg as v,Yg as y,Yn as b,Yo as x,Zg as S,Zn as C,e_ as w,gd as T,ib as E,l as D,lE as O,n_ as k,od as A,or as j,sr as M,t as N,t_ as P,up as F}from"./utils-BEVyjoxo.js";import{n as I}from"./ChatMarkdown-C22JFyYa.js";import{a as L,c as R,o as z,s as B,t as ee}from"./select-B47XfaxQ.js";import{t as V}from"./useLocation-B3ir4ben.js";import{p as te}from"./toast-DhMYg_gN.js";import{a as H,n as U,t as W}from"./tooltip-Cq9yz15d.js";import{n as G}from"./environments-DYIXXf7q.js";import{f as K}from"./server-CaLEm3Wt.js";import{t as q}from"./use-atom-command-x4GQBtio.js";import{s as ne,u as re}from"./providerSkills-DxYtwoxJ.js";import{t as ie}from"./skeleton-C6_D5JUu.js";import{t as ae}from"./textarea-DKdxwZZC.js";import{n as oe,t as se}from"./toggle-group-ZNzhUvHt.js";import{t as J}from"./input-RqvQJ9gh.js";import{c as ce,r as le,s as ue,t as de}from"./dialog-DmneyTGi.js";import{i as fe,o as pe,r as me,t as he}from"./empty-hFNkAHps.js";import{n as ge,r as _e,t as ve}from"./input-group-BFtrsedw.js";import{a as ye}from"./projectFilesQueryState-BP_JvI7-.js";import{B as be,P as xe,U as Se,a as Ce,i as we,s as Te}from"./settingsLayout-DHc6oKfL.js";import{Ar as Ee,Fr as De,Ir as Oe,La as ke,Mr as Ae,Ni as je,Nr as Me,Pr as Ne,ir as Pe,jr as Fe}from"./main-Bh6Hj0_-.js";import{t as Ie}from"./SecretInput-CROqj1gF.js";var Y=u(),Le={spawn:`Failed to start`,timeout:`Timed out`,protocol:`Not an MCP server`,http:`Can't connect`,auth:`Credentials rejected`};function Re(e,t,n){if(!e.enabled)return{tone:`muted`,label:`Off`,needsSignIn:!1};if(n)return{tone:`muted`,label:`Checking…`,needsSignIn:!1};if(e.transport.type===`http`&&e.transport.auth===`oauth`&&t?.auth===`signed-out`)return{tone:`warning`,label:`Needs sign-in`,needsSignIn:!0};let r=t?.health;switch(r?.status){case`connected`:return{tone:`success`,label:`Connected · ${r.toolCount} ${r.toolCount===1?`tool`:`tools`}`,needsSignIn:!1};case`needs-auth`:return{tone:`warning`,label:`Needs sign-in`,needsSignIn:!0};case`error`:return{tone:`error`,label:Le[r.category],detail:r.message,needsSignIn:!1};default:return t?.auth===`signed-in`?{tone:`success`,label:`Signed in`,needsSignIn:!1}:{tone:`muted`,label:`Not checked`,needsSignIn:!1}}}function ze(e){let t=e.transport;if(t.type===`http`)try{let e=new URL(t.url);return`Remote · ${e.host}${e.pathname===`/`?``:e.pathname}`}catch{return`Remote`}return[t.command,...t.args].join(` `)}var X=e(t(),1),Z=e(O(),1);function Be({environmentId:e,plugin:t,enabled:n,disabled:r,onDetails:i,onToggle:o}){let s=x(ye(e,t.path,`.claude-plugin/plugin.json`)),c=d(g(s)),u,f;try{let e=c&&!c.truncated?JSON.parse(c.contents):null;if(typeof e==`object`&&e&&(`description`in e&&typeof e.description==`string`&&(u=e.description),`author`in e)){let t=e.author;typeof t==`string`?f=t:typeof t==`object`&&t&&`name`in t&&typeof t.name==`string`&&(f=t.name)}}catch{}let p=re(e);return(0,Z.jsxs)(`li`,{className:`flex items-center gap-4 py-4`,children:[(0,Z.jsx)(`span`,{"aria-hidden":!0,className:`flex size-10 shrink-0 items-center justify-center rounded-xl border border-border/60 bg-muted`,children:(0,Z.jsx)(l,{className:`size-5 text-muted-foreground`})}),(0,Z.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-1`,children:[(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-baseline gap-x-2`,children:[(0,Z.jsx)(`span`,{className:`break-words text-sm font-medium`,children:t.name}),f?(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f}):null]}),(0,Z.jsx)(`p`,{className:`break-words text-xs text-muted-foreground`,children:u??`Local Claude plugin`})]}),(0,Z.jsxs)(a,{children:[(0,Z.jsxs)(W,{children:[(0,Z.jsx)(H,{render:(0,Z.jsx)(j,{render:(0,Z.jsx)(M,{variant:`ghost`,size:`icon-sm`,"aria-label":`More for ${t.name}`,children:(0,Z.jsx)(F,{"aria-hidden":!0})})})}),(0,Z.jsx)(U,{children:`Plugin actions`})]}),(0,Z.jsxs)(C,{align:`end`,children:[p.capabilities.canOpenDefault?(0,Z.jsx)(b,{onClick:()=>void p.activate(`open`,{environmentId:e,filePath:t.path,workspaceRoot:void 0}),children:`Open`}):null,(0,Z.jsx)(b,{onClick:i,children:`Details`})]})]}),(0,Z.jsx)(ke,{"aria-label":`Load ${t.name}`,checked:n,disabled:r,onCheckedChange:o})]})}var Ve=[`Personal`,`Built-in`,`Project`,`Plugins`,`Other`];function He(e){switch(ne(e)){case`personal`:return`Personal`;case`system`:return`Built-in`;case`repo`:case`project`:return`Project`;case`app`:return`Plugins`;default:return`Other`}}var Q=[[`codex`,`Codex`],[`claudeAgent`,`Claude`],[`cursor`,`Cursor`],[`grok`,`Grok`],[`antigravity`,`Antigravity`],[`opencode`,`OpenCode`],[`muse`,`Muse`],[`pi`,`Pi`]],Ue={remote:`Remote servers aren't supported by this provider`,"working-directory":`Servers with a working directory aren't supported here`,provider:`Not supported by this provider yet`};function We(e){return Q.find(([t])=>t===e)?.[1]??e}function Ge(e){switch(e){case`signed-in`:return`Signed in`;case`signed-out`:return`Not signed in`;case`unavailable`:return`Add this server to the provider's own MCP config to sign in.`;case`unknown`:return`Sign-in status unknown`}}function Ke(e,t){if(!w(e))return`unavailable`;let n=t.filter(t=>t.driver===e);if(n.some(e=>e.status===`signed-in`))return`signed-in`;if(n.some(e=>e.status===`signed-out`))return`needs-sign-in`}function qe(e){return Q.map(([t,n])=>{let r=m(t,e.transport),i=k.make(t);return{driver:i,label:n,enabled:r.supported&&!e.disabledProviders.includes(i),...r.supported?{}:{unsupported:Ue[r.reason]}}})}var Je={name:``,type:`stdio`,command:``,args:``,cwd:``,url:``,auth:`none`,values:[]};function Ye(e){let t=e.transport;return t.type===`stdio`?{...Je,name:e.name,type:`stdio`,command:t.command,args:t.args.join(`
2
+ `),cwd:t.cwd??``,values:Object.entries(t.env).map(([e,t])=>({key:e,value:t}))}:{...Je,name:e.name,type:`http`,url:t.url,auth:t.auth,values:Object.entries(t.headers).map(([e,t])=>({key:e,value:t}))}}var Xe=/^[a-zA-Z0-9][a-zA-Z0-9_-]*$/;function Ze(e,t){let n=e.name.trim();if(!n)return`Enter a name.`;if(!Xe.test(n)||n.length>64)return`Use letters, numbers, dashes, and underscores.`;if(n===`t3-code`)return`That name belongs to P4 Code's own server.`;if(t.has(n))return`Another server already uses that name.`;if(e.type===`stdio`&&!e.command.trim())return`Enter the command that starts it.`;if(e.type===`http`&&!/^https?:\/\/\S+$/i.test(e.url.trim()))return`Enter an http or https URL.`}function Qe(e,t){let n=Object.fromEntries(e.values.map(e=>[e.key.trim(),e.value]).filter(([e])=>e.length>0)),r=e.type===`stdio`?{type:`stdio`,command:e.command.trim(),args:e.args.split(`
3
+ `).map(e=>e.trim()).filter(e=>e.length>0),env:n,...e.cwd.trim()?{cwd:e.cwd.trim()}:{}}:{type:`http`,url:e.url.trim(),headers:n,auth:e.auth};return{name:e.name.trim(),enabled:t?.enabled??!0,transport:r,disabledProviders:t?.disabledProviders??[],...t?.source===void 0?{}:{source:t.source}}}function $e(e){let t=new Map;for(let n of e){let e=n.displayName??n.driver;for(let r of n.skills){let n=`${r.scope??``}\u0000${r.name}`,i=t.get(n);i===void 0?t.set(n,{skill:r,providers:[e]}):i.providers.includes(e)||i.providers.push(e)}}return[...t.values()].toSorted((e,t)=>et(e.skill).localeCompare(et(t.skill)))}var et=e=>e.displayName??e.name.split(/[-_\s]+/).filter(e=>e.length>0).map(e=>e[0].toUpperCase()+e.slice(1)).join(` `);function tt(e){switch(e){case void 0:return;case`user`:return`Personal`;case`project`:case`repo`:return`Project`;case`system`:return`Built-in`;default:return e[0].toUpperCase()+e.slice(1)}}function nt(e){let t=/^---\r?\n[\s\S]*?\r?\n---\r?\n?/.exec(e);return(t===null?e:e.slice(t[0].length)).trimStart()}function rt(e){let t=(0,Y.c)(14),{title:n,onBack:r,onUninstall:a,children:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(c,{"aria-hidden":!0}),t[0]=s):s=t[0];let l;t[1]===r?l=t[2]:(l=(0,Z.jsxs)(M,{size:`xs`,variant:`ghost`,className:`w-fit`,onClick:r,children:[s,`Back`]}),t[1]=r,t[2]=l);let u;t[3]===n?u=t[4]:(u=(0,Z.jsx)(`h2`,{className:`min-w-0 truncate text-xl font-semibold text-foreground`,children:n}),t[3]=n,t[4]=u);let d;t[5]===a?d=t[6]:(d=a?(0,Z.jsxs)(M,{size:`sm`,variant:`destructive-outline`,onClick:a,children:[(0,Z.jsx)(i,{"aria-hidden":!0}),`Uninstall`]}):null,t[5]=a,t[6]=d);let f;t[7]!==u||t[8]!==d?(f=(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[u,d]}),t[7]=u,t[8]=d,t[9]=f):f=t[9];let p;return t[10]!==o||t[11]!==l||t[12]!==f?(p=(0,Z.jsxs)(`div`,{className:`grid gap-6`,children:[l,f,o]}),t[10]=o,t[11]=l,t[12]=f,t[13]=p):p=t[13],p}function $(e){let t=(0,Y.c)(6),{label:n,htmlFor:r,children:i}=e,a;t[0]!==r||t[1]!==n?(a=(0,Z.jsx)(je,{htmlFor:r,children:n}),t[0]=r,t[1]=n,t[2]=a):a=t[2];let o;return t[3]!==i||t[4]!==a?(o=(0,Z.jsxs)(`div`,{className:`grid gap-2 px-4 py-4`,children:[a,i]}),t[3]=i,t[4]=a,t[5]=o):o=t[5],o}function it(e){let t=(0,Y.c)(69),{server:n,takenNames:r,onSave:a}=e,o;t[0]===n?o=t[1]:(o=n===void 0?Je:Ye(n),t[0]=n,t[1]=o);let s=o,[c,l]=(0,X.useState)(s),u;t[2]===s?u=t[3]:(u=JSON.stringify(s),t[2]=s,t[3]=u);let d=u,[f,m]=(0,X.useState)(d);d!==f&&(m(d),l(s));let h;t[4]!==c||t[5]!==r?(h=Ze(c,r),t[4]=c,t[5]=r,t[6]=h):h=t[6];let g=h,_;t[7]===c?_=t[8]:(_=JSON.stringify(c),t[7]=c,t[8]=_);let v=_!==d,y;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>l(t=>({...t,...e})),t[9]=y):y=t[9];let b=y,x=c.type===`stdio`?`Environment variables`:`Headers`,S;t[10]===c.values?S=t[11]:(S=(e,t)=>b({values:c.values.map((n,r)=>r===e?{...n,...t}:n)}),t[10]=c.values,t[11]=S);let C=S,w;t[12]!==v||t[13]!==c||t[14]!==a||t[15]!==g||t[16]!==n?(w=e=>{e.preventDefault(),v&&g===void 0&&a(Qe(c,n))},t[12]=v,t[13]=c,t[14]=a,t[15]=g,t[16]=n,t[17]=w):w=t[17];let T;t[18]===n?T=t[19]:(T=n===void 0?null:(0,Z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`To switch between a command and a URL, uninstall the server and add it again.`}),t[18]=n,t[19]=T);let E;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>b({name:e.target.value}),t[20]=E):E=t[20];let D;t[21]===c.name?D=t[22]:(D=(0,Z.jsx)($,{label:`Name`,htmlFor:`mcp-server-name`,children:(0,Z.jsx)(J,{id:`mcp-server-name`,placeholder:`github`,value:c.name,onChange:E})}),t[21]=c.name,t[22]=D);let O;t[23]!==c.type||t[24]!==n?(O=n===void 0?(0,Z.jsx)($,{label:`Type`,children:(0,Z.jsxs)(oe,{"aria-label":`How P4 Code reaches the server`,value:[c.type],onValueChange:e=>{let t=e[0];(t===`stdio`||t===`http`)&&b({type:t,values:[]})},children:[(0,Z.jsx)(se,{value:`stdio`,children:`Command`}),(0,Z.jsx)(se,{value:`http`,children:`URL`})]})}):null,t[23]=c.type,t[24]=n,t[25]=O):O=t[25];let k;t[26]!==c.args||t[27]!==c.auth||t[28]!==c.command||t[29]!==c.cwd||t[30]!==c.type||t[31]!==c.url?(k=c.type===`stdio`?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)($,{label:`Command`,htmlFor:`mcp-server-command`,children:(0,Z.jsx)(J,{id:`mcp-server-command`,placeholder:`npx`,value:c.command,onChange:e=>b({command:e.target.value})})}),(0,Z.jsx)($,{label:`Arguments, one per line`,htmlFor:`mcp-server-args`,children:(0,Z.jsx)(ae,{id:`mcp-server-args`,placeholder:`-y
4
+ @modelcontextprotocol/server-postgres`,value:c.args,onChange:e=>b({args:e.target.value})})}),(0,Z.jsx)($,{label:`Working directory (optional)`,htmlFor:`mcp-server-cwd`,children:(0,Z.jsx)(J,{id:`mcp-server-cwd`,placeholder:`The session's project folder`,value:c.cwd,onChange:e=>b({cwd:e.target.value})})})]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)($,{label:`URL`,htmlFor:`mcp-server-url`,children:(0,Z.jsx)(J,{id:`mcp-server-url`,placeholder:`https://mcp.example.com/mcp`,value:c.url,onChange:e=>b({url:e.target.value})})}),(0,Z.jsx)($,{label:`Authentication`,children:(0,Z.jsxs)(ee,{value:c.auth,onValueChange:e=>{(e===`none`||e===`oauth`)&&b({auth:e})},children:[(0,Z.jsx)(B,{"aria-label":`Authentication`,children:(0,Z.jsx)(R,{children:at})}),(0,Z.jsxs)(z,{alignItemWithTrigger:!1,children:[(0,Z.jsx)(L,{value:`none`,children:`None or headers`}),(0,Z.jsx)(L,{value:`oauth`,children:`OAuth (sign in after saving)`})]})]})})]}),t[26]=c.args,t[27]=c.auth,t[28]=c.command,t[29]=c.cwd,t[30]=c.type,t[31]=c.url,t[32]=k):k=t[32];let A;t[33]!==c.type||t[34]!==c.values||t[35]!==C||t[36]!==x?(A=c.values.map((e,t)=>(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(J,{"aria-label":`${x} name`,placeholder:c.type===`stdio`?`API_TOKEN`:`Authorization`,value:e.key,onChange:e=>C(t,{key:e.target.value})}),(0,Z.jsx)(Ie,{"aria-label":`${x} value`,placeholder:`Value`,value:e.value,onChange:e=>C(t,{value:e.target.value})}),(0,Z.jsx)(M,{size:`icon-sm`,variant:`ghost`,"aria-label":`Remove ${e.key||`row`}`,onClick:()=>b({values:c.values.filter((e,n)=>n!==t)}),children:(0,Z.jsx)(i,{"aria-hidden":!0})})]},t)),t[33]=c.type,t[34]=c.values,t[35]=C,t[36]=x,t[37]=A):A=t[37];let j;t[38]===c.values?j=t[39]:(j=()=>b({values:[...c.values,{key:``,value:``}]}),t[38]=c.values,t[39]=j);let N;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,Z.jsx)(p,{"aria-hidden":!0}),t[40]=N):N=t[40];let P=c.type===`stdio`?`variable`:`header`,F;t[41]!==j||t[42]!==P?(F=(0,Z.jsxs)(M,{variant:`soft`,onClick:j,children:[N,`Add `,P]}),t[41]=j,t[42]=P,t[43]=F):F=t[43];let I;t[44]!==A||t[45]!==F?(I=(0,Z.jsxs)(`div`,{className:`grid gap-2`,children:[A,F]}),t[44]=A,t[45]=F,t[46]=I):I=t[46];let V;t[47]!==I||t[48]!==x?(V=(0,Z.jsx)($,{label:x,children:I}),t[47]=I,t[48]=x,t[49]=V):V=t[49];let te;t[50]!==D||t[51]!==O||t[52]!==k||t[53]!==V?(te=(0,Z.jsxs)(Se,{children:[D,O,k,V]}),t[50]=D,t[51]=O,t[52]=k,t[53]=V,t[54]=te):te=t[54];let H;t[55]!==v||t[56]!==g?(H=v&&g!==void 0?(0,Z.jsx)(`p`,{role:`alert`,className:`text-sm text-destructive-foreground`,children:g}):null,t[55]=v,t[56]=g,t[57]=H):H=t[57];let U=!v||g!==void 0,W=n===void 0?`Add server`:`Save`,G;t[58]!==U||t[59]!==W?(G=(0,Z.jsx)(M,{type:`submit`,disabled:U,children:W}),t[58]=U,t[59]=W,t[60]=G):G=t[60];let K;t[61]!==H||t[62]!==G?(K=(0,Z.jsxs)(`div`,{className:`flex items-center justify-end gap-3`,children:[H,G]}),t[61]=H,t[62]=G,t[63]=K):K=t[63];let q;return t[64]!==te||t[65]!==K||t[66]!==w||t[67]!==T?(q=(0,Z.jsxs)(`form`,{className:`grid gap-3`,onSubmit:w,children:[T,te,K]}),t[64]=te,t[65]=K,t[66]=w,t[67]=T,t[68]=q):q=t[68],q}function at(e){return e===`oauth`?`OAuth (sign in after saving)`:`None or headers`}function ot(e){let t=(0,Y.c)(35),{plugin:n,environmentLabel:r,onSave:i}=e,[a,o]=(0,X.useState)(n?.name??``),[s,c]=(0,X.useState)(n?.path??``),l=`${n?.name??``}\u0000${n?.path??``}`,[u,d]=(0,X.useState)(l);l!==u&&(d(l),o(n?.name??``),c(n?.path??``));let f=a!==(n?.name??``)||s!==(n?.path??``),p;t[0]!==a||t[1]!==s?(p=a.trim().length>0&&s.trim().startsWith(`/`),t[0]=a,t[1]=s,t[2]=p):p=t[2];let m=p,h;t[3]!==f||t[4]!==a||t[5]!==i||t[6]!==s||t[7]!==n?.enabled||t[8]!==m?(h=e=>{e.preventDefault(),f&&m&&i({name:a.trim(),path:s.trim(),enabled:n?.enabled??!0})},t[3]=f,t[4]=a,t[5]=i,t[6]=s,t[7]=n?.enabled,t[8]=m,t[9]=h):h=t[9];let g;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(g=e=>o(e.target.value),t[10]=g):g=t[10];let _;t[11]===a?_=t[12]:(_=(0,Z.jsx)($,{label:`Name`,htmlFor:`plugin-name`,children:(0,Z.jsx)(J,{id:`plugin-name`,value:a,onChange:g})}),t[11]=a,t[12]=_);let v=`Folder on ${r}`,y;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>c(e.target.value),t[13]=y):y=t[13];let b;t[14]===s?b=t[15]:(b=(0,Z.jsx)(J,{id:`plugin-path`,placeholder:`/Users/me/plugins/my-plugin`,value:s,onChange:y}),t[14]=s,t[15]=b);let x;t[16]!==v||t[17]!==b?(x=(0,Z.jsx)($,{label:v,htmlFor:`plugin-path`,children:b}),t[16]=v,t[17]=b,t[18]=x):x=t[18];let S;t[19]!==_||t[20]!==x?(S=(0,Z.jsxs)(Se,{children:[_,x]}),t[19]=_,t[20]=x,t[21]=S):S=t[21];let C;t[22]!==f||t[23]!==m?(C=f&&!m?(0,Z.jsx)(`p`,{role:`alert`,className:`text-sm text-destructive-foreground`,children:`Enter a name and the plugin folder's full path.`}):null,t[22]=f,t[23]=m,t[24]=C):C=t[24];let w=!f||!m,T=n===void 0?`Add plugin`:`Save`,E;t[25]!==w||t[26]!==T?(E=(0,Z.jsx)(M,{type:`submit`,disabled:w,children:T}),t[25]=w,t[26]=T,t[27]=E):E=t[27];let D;t[28]!==C||t[29]!==E?(D=(0,Z.jsxs)(`div`,{className:`flex items-center justify-end gap-3`,children:[C,E]}),t[28]=C,t[29]=E,t[30]=D):D=t[30];let O;return t[31]!==D||t[32]!==h||t[33]!==S?(O=(0,Z.jsxs)(`form`,{className:`grid gap-3`,onSubmit:h,children:[S,D]}),t[31]=D,t[32]=h,t[33]=S,t[34]=O):O=t[34],O}var st=e=>e.replace(/[\\/][^\\/]*$/,``)||`/`;function ct(e){let t=(0,Y.c)(69),{entry:n,environmentId:r,onClose:i}=e,{skill:o,providers:s}=n,c,l,u;t[0]!==r||t[1]!==o.path?(c=st(o.path),l=x,u=ye(r,c,o.path),t[0]=r,t[1]=o.path,t[2]=c,t[3]=l,t[4]=u):(c=t[2],l=t[3],u=t[4]);let f=l(u),p;t[5]===f?p=t[6]:(p=d(g(f)),t[5]=f,t[6]=p);let m=p,h=re(r),{copyToClipboard:_}=te(),v;t[7]!==r||t[8]!==o.path?(v={environmentId:r,filePath:o.path,workspaceRoot:void 0},t[7]=r,t[8]=o.path,t[9]=v):v=t[9];let y=v,S=o.shortDescription??o.description,w;t[10]===o.scope?w=t[11]:(w=tt(o.scope),t[10]=o.scope,t[11]=w);let T=w,E;t[12]===i?E=t[13]:(E=e=>!e&&i(),t[12]=i,t[13]=E);let D;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(D=(0,Z.jsx)(`span`,{"aria-hidden":!0,className:`flex size-12 shrink-0 items-center justify-center rounded-full border border-border/60 text-muted-foreground`,children:(0,Z.jsx)(A,{className:`size-5`})}),t[14]=D):D=t[14];let O;t[15]===o?O=t[16]:(O=et(o),t[15]=o,t[16]=O);let k=`More for ${O}`,N;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(N=(0,Z.jsx)(F,{"aria-hidden":!0}),t[17]=N):N=t[17];let P;t[18]===k?P=t[19]:(P=(0,Z.jsx)(j,{render:(0,Z.jsx)(M,{size:`icon-sm`,variant:`ghost`,"aria-label":k,children:N})}),t[18]=k,t[19]=P);let L;t[20]!==h||t[21]!==y?(L=h.capabilities.canOpenDefault?(0,Z.jsx)(b,{onClick:()=>void h.activate(`open`,y),children:`Open`}):null,t[20]=h,t[21]=y,t[22]=L):L=t[22];let R;t[23]!==h||t[24]!==y?(R=h.capabilities.revealLabel?(0,Z.jsx)(b,{onClick:()=>void h.activate(`reveal-in-folder`,y),children:h.capabilities.revealLabel}):null,t[23]=h,t[24]=y,t[25]=R):R=t[25];let z=m===null,B;t[26]!==_||t[27]!==m?(B=()=>m&&_(m.contents,void 0),t[26]=_,t[27]=m,t[28]=B):B=t[28];let ee;t[29]!==z||t[30]!==B?(ee=(0,Z.jsx)(b,{disabled:z,onClick:B,children:`Copy Markdown`}),t[29]=z,t[30]=B,t[31]=ee):ee=t[31];let V;t[32]!==L||t[33]!==R||t[34]!==ee?(V=(0,Z.jsxs)(C,{align:`end`,children:[L,R,ee]}),t[32]=L,t[33]=R,t[34]=ee,t[35]=V):V=t[35];let H;t[36]!==P||t[37]!==V?(H=(0,Z.jsxs)(`div`,{className:`flex items-start justify-between gap-3 pe-8`,children:[D,(0,Z.jsxs)(a,{children:[P,V]})]}),t[36]=P,t[37]=V,t[38]=H):H=t[38];let U;t[39]===o?U=t[40]:(U=et(o),t[39]=o,t[40]=U);let W;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,Z.jsx)(`span`,{className:`font-normal text-muted-foreground`,children:`Skill`}),t[41]=W):W=t[41];let G;t[42]===U?G=t[43]:(G=(0,Z.jsxs)(ce,{children:[U,` `,W]}),t[42]=U,t[43]=G);let K;t[44]===S?K=t[45]:(K=S?(0,Z.jsx)(le,{children:S}):null,t[44]=S,t[45]=K);let q;t[46]!==G||t[47]!==K?(q=(0,Z.jsxs)(`div`,{className:`grid gap-1.5`,children:[G,K]}),t[46]=G,t[47]=K,t[48]=q):q=t[48];let ne;t[49]!==c||t[50]!==r||t[51]!==m||t[52]!==f?(ne=(0,Z.jsx)(`div`,{className:`max-h-[50vh] min-h-24 overflow-y-auto rounded-xl border border-border/60 bg-card/40 px-5 py-4`,children:m===null?f._tag===`Failure`?(0,Z.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This skill's file could not be read. It may have moved since the provider last scanned it.`}):(0,Z.jsxs)(`div`,{className:`grid gap-2`,children:[(0,Z.jsx)(ie,{className:`h-4 w-3/4`}),(0,Z.jsx)(ie,{className:`h-4 w-full`}),(0,Z.jsx)(ie,{className:`h-4 w-2/3`})]}):(0,Z.jsx)(I,{text:nt(m.contents),cwd:c,environmentId:r})}),t[49]=c,t[50]=r,t[51]=m,t[52]=f,t[53]=ne):ne=t[53];let ae;t[54]===s?ae=t[55]:(ae=s.join(`, `),t[54]=s,t[55]=ae);let oe=`Loaded by ${ae}`,se;t[56]!==T||t[57]!==oe?(se=[T,oe].filter(Boolean),t[56]=T,t[57]=oe,t[58]=se):se=t[58];let J=se.join(` · `),fe;t[59]===J?fe=t[60]:(fe=(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:J}),t[59]=J,t[60]=fe);let pe;t[61]!==H||t[62]!==q||t[63]!==ne||t[64]!==fe?(pe=(0,Z.jsx)(ue,{className:`max-w-2xl`,children:(0,Z.jsxs)(`div`,{className:`grid min-h-0 gap-4 p-6`,children:[H,q,ne,fe]})}),t[61]=H,t[62]=q,t[63]=ne,t[64]=fe,t[65]=pe):pe=t[65];let me;return t[66]!==pe||t[67]!==E?(me=(0,Z.jsx)(de,{open:!0,onOpenChange:E,children:pe}),t[66]=pe,t[67]=E,t[68]=me):me=t[68],me}var lt={claude:`Claude`,codex:`Codex`,cursor:`Cursor`},ut={success:`bg-success`,warning:`bg-warning`,error:`bg-destructive`,muted:`bg-muted-foreground/40`},dt={success:`text-success-foreground`,warning:`text-warning-foreground`,error:`text-destructive-foreground`,muted:`text-muted-foreground`},ft=E(y);function pt(e){let t=r(e);return ft(t)&&t.reason===`rejected`?`This server only lets apps it has approved sign in, and it refused P4 Code. Sign in with a provider below instead.`:`Sign-in could not start. Check the server URL, then try again.`}function mt(e,t,n){return e.transport.type===`http`&&(e.transport.auth===`oauth`||n?.auth===`signed-in`||t.needsSignIn)}function ht(e){let t=(0,Y.c)(13),{status:n,className:r}=e,i=dt[n.tone],a;t[0]!==r||t[1]!==i?(a=N(`flex min-w-0 items-center gap-1.5 text-xs`,i,r),t[0]=r,t[1]=i,t[2]=a):a=t[2];let o=ut[n.tone],s;t[3]===o?s=t[4]:(s=N(`size-1.5 shrink-0 rounded-full`,o),t[3]=o,t[4]=s);let c;t[5]===s?c=t[6]:(c=(0,Z.jsx)(`span`,{"aria-hidden":!0,className:s}),t[5]=s,t[6]=c);let l;t[7]===n.label?l=t[8]:(l=(0,Z.jsx)(`span`,{className:`truncate`,children:n.label}),t[7]=n.label,t[8]=l);let u;return t[9]!==a||t[10]!==c||t[11]!==l?(u=(0,Z.jsxs)(`span`,{className:a,children:[c,l]}),t[9]=a,t[10]=c,t[11]=l,t[12]=u):u=t[12],u}function gt(){let e=(0,Y.c)(6),{environment:t,scope:n}=be(),r=t?.connection.phase===`connected`&&t.serverConfig!==null,i=r?t.environmentId:null,a=r&&t.serverConfig?.environment.capabilities.mcpRegistry===!0,o;return e[0]!==r||e[1]!==t||e[2]!==i||e[3]!==n||e[4]!==a?(o=(0,Z.jsx)(we,{width:`wide`,children:t===null||!r?(0,Z.jsx)(he,{children:(0,Z.jsxs)(fe,{children:[(0,Z.jsx)(pe,{children:`Connect to manage plugins and MCP servers`}),(0,Z.jsx)(me,{children:`They live on each environment. Choose a connected one above.`})]})}):!a||i===null?(0,Z.jsx)(he,{children:(0,Z.jsxs)(fe,{children:[(0,Z.jsxs)(pe,{children:[`Update `,t.label,` to manage plugins and MCP servers`]}),(0,Z.jsx)(me,{children:`This environment runs a version without them.`})]})}):(0,Z.jsx)(bt,{environmentId:i,environmentLabel:t.label,projectId:n.kind===`checkout`?n.checkout.id:n.kind===`project`?n.members.find(e=>e.environmentId===i)?.id:void 0,projectLabel:n.kind===`project`||n.kind===`checkout`?n.label:void 0},i)}),e[0]=r,e[1]=t,e[2]=i,e[3]=n,e[4]=a,e[5]=o):o=e[5],o}var _t={plugins:`Search plugins`,mcps:`Search MCP servers`,skills:`Search skills`},vt=(e,...t)=>e===``||t.some(t=>t.toLowerCase().includes(e));function yt(e){let t=(0,Y.c)(9),{text:n}=e,r=(0,X.useRef)(null),[i,a]=(0,X.useState)(!1),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=e=>{let t=r.current;a(e&&t!==null&&t.scrollWidth>t.clientWidth)},t[0]=o):o=t[0];let s;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(`span`,{ref:r,tabIndex:0,className:`block truncate text-xs text-muted-foreground`}),t[1]=s):s=t[1];let c,l;t[2]===n?(c=t[3],l=t[4]):(c=(0,Z.jsx)(H,{render:s,children:n}),l=(0,Z.jsx)(U,{children:n}),t[2]=n,t[3]=c,t[4]=l);let u;return t[5]!==i||t[6]!==c||t[7]!==l?(u=(0,Z.jsxs)(W,{open:i,onOpenChange:o,children:[c,l]}),t[5]=i,t[6]=c,t[7]=l,t[8]=u):u=t[8],u}function bt({environmentId:e,environmentLabel:t,projectId:r,projectLabel:i}){let c=V({select:e=>e.hash}),[u,d]=(0,X.useState)(()=>c.replace(/^#/,``)===`mcp-servers`?`mcps`:c.replace(/^#/,``)===`skills`?`skills`:`plugins`),[p,m]=(0,X.useState)(``),[g,_]=(0,X.useState)(`All categories`),y=x(K.configValueAtom(e))?.providers,w=(0,X.useMemo)(()=>$e(y??[]),[y]),[E,O]=(0,X.useState)(null),k=xe(e=>e.mcpServers),N=xe(e=>e.plugins),I=xe(e=>e.projectSettingsOverrides),te=xe(e=>e.skillOverrides),ne=re(e),ie=x(K.updateSettings.permissionAtom(e)),[ae,J]=(0,X.useState)(null),ce=x(K.mcpRegistryTest.permissionAtom(e)),le=G(e),ue=q(K.updateSettings,{label:`update MCP registry`,reportFailure:!0}),de=q(K.mcpRegistryState,{reportFailure:!1}),fe=q(K.mcpRegistryTest,{label:`check MCP server`,reportFailure:!0}),pe=q(K.mcpRegistryOAuthStart,{label:`start MCP sign-in`,reportFailure:!0}),me=q(K.mcpRegistryOAuthSignOut,{label:`sign out of MCP server`,reportFailure:!0}),he=q(K.mcpRegistryDiscover,{reportFailure:!1}),ye=q(K.mcpRegistryImport,{label:`import MCP servers`,reportFailure:!0}),[be,Se]=(0,X.useState)({}),[Ce,we]=(0,X.useState)(new Set),[je,Ie]=(0,X.useState)([]),[Y,Le]=(0,X.useState)({kind:`list`}),Q=Y.kind!==`list`&&Y.id!==null&&(Y.kind===`server`?k[Y.id]===void 0:N[Y.id]===void 0)?{kind:`list`}:Y,[Ue,We]=(0,X.useState)(c);if(c!==Ue){We(c);let e=c.replace(/^#/,``);(e===`mcp-servers`||e===`plugins`||e===`skills`)&&(d(e===`mcp-servers`?`mcps`:e),Le({kind:`list`}))}let[Ge,Ke]=(0,X.useState)(null),[qe,Je]=(0,X.useState)(null),[Ye,Xe]=(0,X.useState)({}),Ze=(0,X.useMemo)(()=>Object.entries(k).map(([e,t])=>[v.make(e),t]).toSorted(([,e],[,t])=>e.name.localeCompare(t.name)),[k]),Qe=(0,X.useMemo)(()=>Object.entries(N).map(([e,t])=>[S.make(e),t]),[N]),tt=(0,X.useCallback)(async()=>{let t=await de({environmentId:e,input:{}});t._tag===`Success`&&Se(t.value.servers)},[e,de]),nt=(0,X.useCallback)(async()=>{if(!ce)return;let t=await he({environmentId:e,input:r===void 0?{}:{projectId:r}});t._tag===`Success`&&Ie(t.value.servers)},[ce,he,e,r]);(0,X.useEffect)(()=>{tt(),nt()},[tt,nt]);let $=e=>{d(`mcps`),Le({kind:`server`,id:e})},at=e=>{d(`plugins`),Le({kind:`plugin`,id:e})},st=t=>ue({environmentId:e,input:{patch:t}}),ut=async t=>{we(e=>new Set(e).add(t));let n=await fe({environmentId:e,input:{serverId:t}});if(we(e=>{let n=new Set(e);return n.delete(t),n}),n._tag===`Success`)return Se(e=>({...e,[t]:n.value})),n.value},dt=(0,X.useEffectEvent)(async e=>{(await ut(e))?.health.status===`connected`&&Je(null)});(0,X.useEffect)(()=>{if(qe===null)return;let e=()=>void dt(qe);return window.addEventListener(`focus`,e),()=>window.removeEventListener(`focus`,e)},[qe]);let ft=async(e,t,n)=>{(await st({mcpServers:{[e]:t}}))._tag===`Success`&&(n&&Le({kind:`list`}),nt(),t.enabled&&await ut(e))},gt=async(t,n=!1)=>{let r=le??window.location.origin;Xe(e=>{let n={...e};return delete n[t],n});let i=await pe({environmentId:e,input:{serverId:t,origin:new URL(r,window.location.href).origin,...n?{reauthenticate:n}:{}}});if(i._tag!==`Success`){i._tag===`Failure`&&Xe(e=>({...e,[t]:pt(i.cause)}));return}if(i.value.authorizationUrl===null){await ut(t);return}Je(t),window.open(i.value.authorizationUrl,`_blank`,`noopener,noreferrer`)},bt=async t=>{let n=await me({environmentId:e,input:{serverId:t}});n._tag===`Success`&&Se(e=>({...e,[t]:n.value}))},xt=(e,t,n)=>{if(r===void 0)return;let i=I[r]??{},a={...i[e]};n===void 0?delete a[t]:a[t]={enabled:n},st({projectSettingsOverrides:{[r]:{...i,[e]:a}}})},Ct=async()=>{let t=Ge;if(Ke(null),t!==null){if(t.kind===`server`){let n=k[t.id];n?.transport.type===`http`&&n.transport.auth===`oauth`&&await me({environmentId:e,input:{serverId:t.id}}),await st({mcpServers:{[t.id]:null}})}else await st({plugins:{[t.id]:null}});Le({kind:`list`})}},wt=je.filter(e=>!e.alreadyAdded),Tt=new Set(Ze.filter(([e])=>Q.kind!==`server`||e!==Q.id).map(([,e])=>e.name)),Et=p.trim().toLowerCase(),Dt=Ze.filter(([,e])=>vt(Et,e.name,ze(e))),Ot=Qe.filter(([,e])=>vt(Et,e.name,e.path)),kt=wt.filter(e=>vt(Et,e.name,e.summary)),jt=(e,t)=>n({mcpServers:k,plugins:N,projectSettingsOverrides:I},e,r??null,t),Mt=(e,t,n)=>{if(r!==void 0){xt(e,t,n);return}st(e===`mcpServers`?{mcpServers:{[t]:{...k[t],enabled:n}}}:{plugins:{[t]:{...N[t],enabled:n}}})},Nt=(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-4`,children:[(0,Z.jsxs)(`div`,{className:`grid gap-1`,children:[(0,Z.jsx)(`h1`,{className:`text-2xl font-semibold text-foreground`,children:`Plugins`}),(0,Z.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`Manage plugins, skills, and MCP servers given to agents on `,t,`.`]})]}),ce?(0,Z.jsxs)(a,{children:[(0,Z.jsx)(j,{render:(0,Z.jsxs)(M,{children:[`Add`,(0,Z.jsx)(T,{"aria-hidden":!0})]})}),(0,Z.jsxs)(C,{align:`end`,children:[(0,Z.jsxs)(b,{onClick:()=>$(null),children:[(0,Z.jsx)(f,{"aria-hidden":!0}),`Add MCP server`]}),(0,Z.jsxs)(b,{onClick:()=>at(null),children:[(0,Z.jsx)(l,{"aria-hidden":!0}),`Add plugin`]})]})]}):null]}),Pt=(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Z.jsxs)(oe,{"aria-label":`Show`,variant:`default`,value:[u],onValueChange:e=>{let t=e[0];(t===`plugins`||t===`mcps`||t===`skills`)&&(d(t),Le({kind:`list`}))},children:[(0,Z.jsxs)(se,{value:`plugins`,...Pe(`plugins`),children:[`Plugins `,(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:Qe.length})]}),(0,Z.jsxs)(se,{value:`mcps`,...Pe(`mcp-servers`),children:[`MCPs `,(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:Ze.length})]}),(0,Z.jsxs)(se,{value:`skills`,...Pe(`skills`),children:[`Skills `,(0,Z.jsx)(`span`,{className:`text-muted-foreground`,children:w.length})]})]}),(0,Z.jsxs)(`div`,{className:`flex w-full gap-2 sm:w-auto`,children:[u===`skills`?(0,Z.jsx)(`div`,{className:`w-fit shrink-0`,children:(0,Z.jsxs)(ee,{value:g,onValueChange:e=>e&&_(e),children:[(0,Z.jsx)(B,{"aria-label":`Skill category`,children:(0,Z.jsx)(R,{})}),(0,Z.jsxs)(z,{children:[(0,Z.jsx)(L,{value:`All categories`,children:`All categories`}),Ve.filter(e=>e===`Personal`||e===`Built-in`||w.some(({skill:t})=>He(t)===e)).map(e=>(0,Z.jsx)(L,{value:e,children:e},e))]})]})}):null,(0,Z.jsxs)(ve,{className:`min-w-0 flex-1 sm:w-56`,children:[(0,Z.jsx)(ge,{children:(0,Z.jsx)(s,{"aria-hidden":!0})}),(0,Z.jsx)(_e,{"aria-label":_t[u],placeholder:_t[u],value:p,onChange:e=>m(e.currentTarget.value)})]})]})]}),Ft=(e,t)=>(0,Z.jsxs)(W,{children:[(0,Z.jsx)(H,{render:(0,Z.jsx)(M,{size:`icon-sm`,variant:`ghost`,"aria-label":e,onClick:t,children:(0,Z.jsx)(h,{"aria-hidden":!0})})}),(0,Z.jsx)(U,{children:e})]}),It=Ot.length===0?(0,Z.jsx)(`p`,{className:`py-6 text-sm text-muted-foreground`,children:Qe.length===0?`No plugins yet. Add a Claude Code plugin folder to load it in Claude sessions.`:`No plugins match your search.`}):(0,Z.jsx)(`ul`,{className:`grid gap-1`,children:Ot.map(([t,n])=>(0,Z.jsx)(Be,{environmentId:e,plugin:n,enabled:jt(`plugins`,t),disabled:!ie,onDetails:()=>at(t),onToggle:e=>Mt(`plugins`,t,e)},t))}),Lt=w.filter(({skill:e})=>(g===`All categories`||He(e)===g)&&vt(Et,et(e),e.name,e.shortDescription??``,e.description??``)),Rt=Lt.length===0?(0,Z.jsx)(`p`,{className:`py-6 text-sm text-muted-foreground`,children:w.length===0?`No skills found. Providers report the skills they load when they start.`:`No skills match these filters.`}):(0,Z.jsxs)(`div`,{className:`grid gap-3`,children:[(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Switches apply to new Claude and OpenCode sessions.`}),(0,Z.jsx)(`ul`,{className:`grid gap-1`,children:Lt.map(t=>{let n=He(t.skill),i=(y??[]).filter(e=>P(e.driver)&&e.skills.some(e=>e.name===t.skill.name)),o=i.length?i.map(e=>e.displayName??e.driver).join(`, `):`Native settings`;return(0,Z.jsxs)(`li`,{className:`flex items-center gap-3 py-3`,children:[(0,Z.jsx)(`span`,{"aria-hidden":!0,className:`flex size-10 shrink-0 items-center justify-center rounded-full border border-border/60 text-muted-foreground`,children:(0,Z.jsx)(A,{className:`size-4`})}),(0,Z.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-1`,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:()=>O(t),className:`w-fit break-words text-left text-sm font-medium outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,children:et(t.skill)}),(0,Z.jsx)(yt,{text:t.skill.shortDescription??t.skill.description??t.skill.path}),(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:[n,o].filter(Boolean).join(` · `)})]}),(0,Z.jsxs)(a,{children:[(0,Z.jsxs)(W,{children:[(0,Z.jsx)(H,{render:(0,Z.jsx)(j,{render:(0,Z.jsx)(M,{variant:`ghost`,size:`icon-sm`,"aria-label":`More for ${et(t.skill)}`,children:(0,Z.jsx)(F,{"aria-hidden":!0})})})}),(0,Z.jsx)(U,{children:`Skill actions`})]}),(0,Z.jsxs)(C,{align:`end`,children:[ne.capabilities.canOpenDefault?(0,Z.jsx)(b,{onClick:()=>void ne.activate(`open`,{environmentId:e,filePath:t.skill.path,workspaceRoot:void 0}),children:`Open`}):null,(0,Z.jsx)(b,{onClick:()=>O(t),children:`Details`}),r!==void 0&&I[r]?.skillOverrides?.[t.skill.name]!==void 0?(0,Z.jsx)(b,{onClick:()=>{let e=I[r]??{},n={...e.skillOverrides};delete n[t.skill.name],st({projectSettingsOverrides:{[r]:{...e,skillOverrides:n}}})},children:`Use environment setting`}):null]})]}),(0,Z.jsx)(ke,{"aria-label":`Enable ${et(t.skill)} for ${o}`,checked:(r===void 0?void 0:I[r]?.skillOverrides?.[t.skill.name])??te[t.skill.name]??t.skill.enabled,disabled:!ie||ae!==null||i.length===0,onCheckedChange:e=>{J(t.skill.name),st(r===void 0?{skillOverrides:{[t.skill.name]:e}}:{projectSettingsOverrides:{[r]:{...I[r],skillOverrides:{...I[r]?.skillOverrides,[t.skill.name]:e}}}}).finally(()=>J(null))}})]},t.skill.path)})})]}),zt=(0,Z.jsxs)(`div`,{className:`grid gap-6`,children:[Ze.length>0?(0,Z.jsx)(Te,{title:`Servers`,children:Dt.length===0?(0,Z.jsx)(`p`,{className:`px-3 text-sm text-muted-foreground sm:px-4`,children:`No MCP servers match your search.`}):(0,Z.jsx)(Z.Fragment,{children:Dt.map(([e,t])=>{let n=jt(`mcpServers`,e),r=Re({...t,enabled:n},be[e],Ce.has(e)),i=Ye[e],o=mt(t,r,be[e]);return(0,Z.jsxs)(`div`,{className:`flex min-h-14 items-center gap-3 px-4 py-3`,children:[(0,Z.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-0.5`,children:[(0,Z.jsx)(`span`,{className:`break-words text-sm font-medium text-foreground`,children:t.name}),r.tone===`error`||o?(0,Z.jsx)(ht,{status:r}):null,i?(0,Z.jsx)(`span`,{className:`text-xs text-destructive-foreground`,children:i}):null]}),r.needsSignIn&&ce?(0,Z.jsx)(M,{size:`xs`,variant:`outline`,onClick:()=>void gt(e),children:`Authenticate`}):null,o&&!r.needsSignIn&&ce?(0,Z.jsxs)(a,{children:[(0,Z.jsxs)(W,{children:[(0,Z.jsx)(H,{render:(0,Z.jsx)(j,{render:(0,Z.jsx)(M,{variant:`ghost`,size:`icon-sm`,"aria-label":`More for ${t.name}`,children:(0,Z.jsx)(F,{"aria-hidden":!0})})})}),(0,Z.jsx)(U,{children:`Sign-in actions`})]}),(0,Z.jsxs)(C,{align:`end`,children:[(0,Z.jsx)(b,{onClick:()=>void gt(e,!0),children:`Re-authenticate`}),be[e]?.auth===`signed-in`?(0,Z.jsx)(b,{onClick:()=>void bt(e),children:`Sign out`}):null]})]}):null,Ft(`Settings for ${t.name}`,()=>$(e)),(0,Z.jsx)(ke,{"aria-label":`Give ${t.name} to agents`,checked:n,disabled:!ce,onCheckedChange:t=>Mt(`mcpServers`,e,t)})]},e)})})}):null,ce&&kt.length>0?(0,Z.jsx)(Te,{title:`Found in provider configs`,headerAction:(0,Z.jsx)(M,{size:`icon-xs`,variant:`ghost`,"aria-label":`Look again`,onClick:()=>void nt(),children:(0,Z.jsx)(o,{"aria-hidden":!0})}),children:(0,Z.jsx)(Z.Fragment,{children:kt.map(t=>(0,Z.jsxs)(`div`,{className:`flex min-h-14 items-center gap-3 px-4 py-3`,children:[(0,Z.jsxs)(`div`,{className:`grid min-w-0 flex-1 gap-0.5`,children:[(0,Z.jsx)(`span`,{className:`break-words text-sm font-medium text-foreground`,children:t.name}),kt.filter(e=>e.name===t.name).length>1?(0,Z.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:(t.providers??[t.provider]).map(e=>lt[e]).join(`, `)}):null]}),(0,Z.jsx)(M,{size:`xs`,variant:`outline`,onClick:async()=>{(await ye({environmentId:e,input:{...r===void 0?{}:{projectId:r},servers:[{provider:t.provider,path:t.path,name:t.name}]}}))._tag===`Success`&&(nt(),tt())},children:`Import`})]},`${t.provider}:${t.path}:${t.name}`))})}):null]}),Bt=Q.kind===`server`?(0,Z.jsxs)(rt,{title:Q.id===null?`Add MCP server`:`Update ${k[Q.id]?.name??`server`} MCP`,onBack:()=>Le({kind:`list`}),onUninstall:Q.id!==null&&ce?()=>Ke({kind:`server`,id:Q.id}):void 0,children:[(0,Z.jsx)(it,{server:Q.id===null?void 0:k[Q.id],takenNames:Tt,onSave:e=>void ft(Q.id??v.make(D()),e,Q.id===null)},Q.id??`new`),Q.id!==null&&k[Q.id]!==void 0?(0,Z.jsx)(St,{environmentId:e,id:Q.id,server:k[Q.id],runtime:be[Q.id],checking:Ce.has(Q.id),canManage:ce,projectLabel:i,projectOverride:r===void 0?void 0:I[r]?.mcpServers?.[Q.id],awaitingSignIn:qe===Q.id,onProviderToggle:(e,t)=>{let n=k[Q.id],r=t?n.disabledProviders.filter(t=>t!==e):[...n.disabledProviders,e];st({mcpServers:{[Q.id]:{...n,disabledProviders:r}}})},onProjectOverride:r===void 0?void 0:e=>xt(`mcpServers`,Q.id,e),signInError:Ye[Q.id],onTest:()=>void ut(Q.id),onSignIn:()=>void gt(Q.id),onReauthenticate:()=>void gt(Q.id,!0),onSignOut:()=>void bt(Q.id)},Q.id):null]}):null,Vt=Q.kind===`plugin`?(0,Z.jsxs)(rt,{title:Q.id===null?`Add plugin`:`Update ${N[Q.id]?.name??`plugin`}`,onBack:()=>Le({kind:`list`}),onUninstall:Q.id!==null&&ce?()=>Ke({kind:`plugin`,id:Q.id}):void 0,children:[(0,Z.jsx)(ot,{plugin:Q.id===null?void 0:N[Q.id],environmentLabel:t,onSave:async e=>{let t=Q.id??S.make(D());(await st({plugins:{[t]:e}}))._tag===`Success`&&Q.id===null&&Le({kind:`list`})}},Q.id??`new`),Q.id!==null&&N[Q.id]!==void 0?(0,Z.jsx)(At,{plugin:N[Q.id],environmentLabel:t,projectLabel:i,projectOverride:r===void 0?void 0:I[r]?.plugins?.[Q.id],onProjectOverride:r===void 0?void 0:e=>xt(`plugins`,Q.id,e)}):null]}):null;return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`grid gap-6`,children:[Nt,Pt,Bt??Vt??(u===`plugins`?It:u===`mcps`?zt:Rt)]}),E===null?null:(0,Z.jsx)(ct,{entry:E,environmentId:e,onClose:()=>O(null)}),(0,Z.jsx)(Ee,{open:Ge!==null,onOpenChange:e=>!e&&Ke(null),children:(0,Z.jsxs)(De,{children:[(0,Z.jsxs)(Ne,{children:[(0,Z.jsxs)(Oe,{children:[`Remove`,` `,Ge?.kind===`server`?k[Ge.id]?.name??`server`:Ge?.kind===`plugin`?N[Ge.id]?.name??`plugin`:``,`?`]}),(0,Z.jsxs)(Ae,{children:[`New sessions on `,t,` stop getting it. Its stored values and sign-in are deleted. Provider config files are not changed.`]})]}),(0,Z.jsxs)(Me,{children:[(0,Z.jsx)(Fe,{render:(0,Z.jsx)(M,{variant:`outline`,children:`Cancel`})}),(0,Z.jsx)(M,{variant:`destructive`,onClick:()=>void Ct(),children:`Remove`})]})]})})]})}function xt(e){let t=(0,Y.c)(16),{projectLabel:n,override:r,inherited:i,onChange:a}=e,o=r?.enabled!==void 0,s=`In ${n}`,c=o?`Set for this project.`:`Follows the environment (${i?`on`:`off`}).`,l;t[0]!==a||t[1]!==o?(l=o?(0,Z.jsx)(M,{size:`xs`,variant:`ghost`,onClick:()=>a(void 0),children:`Reset`}):null,t[0]=a,t[1]=o,t[2]=l):l=t[2];let u=`Use in ${n}`,d=r?.enabled??i,f;t[3]===a?f=t[4]:(f=e=>a(e),t[3]=a,t[4]=f);let p;t[5]!==u||t[6]!==d||t[7]!==f?(p=(0,Z.jsx)(ke,{"aria-label":u,checked:d,onCheckedChange:f}),t[5]=u,t[6]=d,t[7]=f,t[8]=p):p=t[8];let m;t[9]!==l||t[10]!==p?(m=(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[l,p]}),t[9]=l,t[10]=p,t[11]=m):m=t[11];let h;return t[12]!==s||t[13]!==c||t[14]!==m?(h=(0,Z.jsx)(Ce,{title:s,description:c,control:m}),t[12]=s,t[13]=c,t[14]=m,t[15]=h):h=t[15],h}function St(e){let t=(0,Y.c)(96),{environmentId:n,id:r,server:i,runtime:a,checking:o,canManage:s,projectLabel:c,projectOverride:l,awaitingSignIn:u,signInError:d,onProviderToggle:f,onProjectOverride:p,onTest:m,onSignIn:h,onReauthenticate:g,onSignOut:v}=e,y=s&&i.transport.type===`http`&&i.transport.auth===`oauth`&&a?.auth===`signed-out`,b=Et(n,r,y),x=b.entries,S;t[0]!==o||t[1]!==a||t[2]!==i?(S=Re(i,a,o),t[0]=o,t[1]=a,t[2]=i,t[3]=S):S=t[3];let C=S,w;t[4]!==C||t[5]!==x?(w=C.needsSignIn&&x?.some(wt)===!0?{...C,tone:`success`,label:`Signed in through providers`}:C,t[4]=C,t[5]=x,t[6]=w):w=t[6];let T=w,E,D,O,k,A,j,N;if(t[7]!==u||t[8]!==s||t[9]!==o||t[10]!==x||t[11]!==r||t[12]!==f||t[13]!==g||t[14]!==h||t[15]!==v||t[16]!==m||t[17]!==a?.auth||t[18]!==i||t[19]!==d||t[20]!==b||t[21]!==T||t[22]!==y){let e;t[30]===x?e=t[31]:(e=e=>({...e,badge:x===null||e.unsupported!==void 0?void 0:Ke(e.driver,x)}),t[30]=x,t[31]=e);let n=qe(i).map(e),c=i.transport.type===`http`&&a?.auth===`signed-in`,l=d??T.detail;A=`grid gap-6`,j=r;let p;t[32]===T?p=t[33]:(p=(0,Z.jsx)(ht,{status:T,className:`flex-1 text-sm`}),t[32]=T,t[33]=p);let S;t[34]!==u||t[35]!==s||t[36]!==h||t[37]!==T.needsSignIn?(S=T.needsSignIn&&s?(0,Z.jsx)(M,{size:`xs`,onClick:h,children:u?`Open sign-in again`:`Authenticate`}):null,t[34]=u,t[35]=s,t[36]=h,t[37]=T.needsSignIn,t[38]=S):S=t[38];let C;t[39]!==s||t[40]!==g||t[41]!==c||t[42]!==T.needsSignIn?(C=c&&!T.needsSignIn&&s?(0,Z.jsx)(M,{size:`xs`,variant:`outline`,onClick:g,children:`Re-authenticate`}):null,t[39]=s,t[40]=g,t[41]=c,t[42]=T.needsSignIn,t[43]=C):C=t[43];let w;t[44]!==s||t[45]!==v||t[46]!==c?(w=c&&s?(0,Z.jsx)(M,{size:`xs`,variant:`ghost`,onClick:v,children:`Sign out`}):null,t[44]=s,t[45]=v,t[46]=c,t[47]=w):w=t[47];let P;t[48]!==s||t[49]!==o||t[50]!==m||t[51]!==i.enabled?(P=s&&i.enabled?(0,Z.jsx)(M,{size:`xs`,variant:`outline`,disabled:o,onClick:m,children:`Test connection`}):null,t[48]=s,t[49]=o,t[50]=m,t[51]=i.enabled,t[52]=P):P=t[52];let F;t[53]!==S||t[54]!==C||t[55]!==w||t[56]!==P||t[57]!==p?(F=(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[p,S,C,w,P]}),t[53]=S,t[54]=C,t[55]=w,t[56]=P,t[57]=p,t[58]=F):F=t[58];let I;t[59]!==u||t[60]!==T.needsSignIn||t[61]!==y?(I=T.needsSignIn?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:u?`Finish signing in in your browser, then come back here.`:y?`Sign in here to give it to every provider.`:`Agents can't reach this server until you sign in.`}):null,t[59]=u,t[60]=T.needsSignIn,t[61]=y,t[62]=I):I=t[62];let L;t[63]===l?L=t[64]:(L=l?(0,Z.jsx)(`p`,{className:`rounded-md bg-destructive/8 px-2.5 py-1.5 text-xs text-destructive-foreground`,children:l}):null,t[63]=l,t[64]=L);let R;t[65]===i.source?R=t[66]:(R=i.source?(0,Z.jsxs)(`p`,{className:`truncate text-xs text-muted-foreground`,children:[`Imported from `,i.source.path]}):null,t[65]=i.source,t[66]=R);let z=y?(0,Z.jsx)(Dt,{serverName:i.name,signIns:b,blocked:n.filter(Ct).length}):null;t[67]!==F||t[68]!==I||t[69]!==L||t[70]!==R||t[71]!==z?(N=(0,Z.jsx)(Te,{title:`Status`,children:(0,Z.jsx)(Se,{children:(0,Z.jsxs)(`div`,{className:`grid gap-2 px-4 py-3`,children:[F,I,L,R,z]})})}),t[67]=F,t[68]=I,t[69]=L,t[70]=R,t[71]=z,t[72]=N):N=t[72],D=Te,k=`Providers`,E=Se;let B;t[73]!==s||t[74]!==f||t[75]!==i.name?(B=e=>(0,Z.jsx)(Ce,{title:e.label,...e.unsupported===void 0?{}:{description:e.unsupported},control:(0,Z.jsxs)(`div`,{className:`flex items-center gap-3`,children:[e.badge===void 0?null:(0,Z.jsx)(_,{variant:kt[e.badge].variant,children:kt[e.badge].label}),(0,Z.jsx)(ke,{"aria-label":`Give ${i.name} to ${e.label}`,checked:e.enabled&&e.badge!==`unavailable`,disabled:!s||e.unsupported!==void 0||e.badge===`unavailable`,onCheckedChange:t=>f(e.driver,t)})]})},e.driver),t[73]=s,t[74]=f,t[75]=i.name,t[76]=B):B=t[76],O=n.map(B),t[7]=u,t[8]=s,t[9]=o,t[10]=x,t[11]=r,t[12]=f,t[13]=g,t[14]=h,t[15]=v,t[16]=m,t[17]=a?.auth,t[18]=i,t[19]=d,t[20]=b,t[21]=T,t[22]=y,t[23]=E,t[24]=D,t[25]=O,t[26]=k,t[27]=A,t[28]=j,t[29]=N}else E=t[23],D=t[24],O=t[25],k=t[26],A=t[27],j=t[28],N=t[29];let P;t[77]!==E||t[78]!==O?(P=(0,Z.jsx)(E,{children:O}),t[77]=E,t[78]=O,t[79]=P):P=t[79];let F;t[80]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,Z.jsx)(`p`,{className:`px-3 text-xs text-muted-foreground sm:px-4`,children:`A change reaches a thread when its provider session next starts.`}),t[80]=F):F=t[80];let I;t[81]!==D||t[82]!==k||t[83]!==P?(I=(0,Z.jsxs)(D,{title:k,children:[P,F]}),t[81]=D,t[82]=k,t[83]=P,t[84]=I):I=t[84];let L;t[85]!==p||t[86]!==c||t[87]!==l||t[88]!==i.enabled?(L=c!==void 0&&p!==void 0?(0,Z.jsx)(Te,{title:`Project`,children:(0,Z.jsx)(Se,{children:(0,Z.jsx)(xt,{projectLabel:c,override:l,inherited:i.enabled,onChange:p})})}):null,t[85]=p,t[86]=c,t[87]=l,t[88]=i.enabled,t[89]=L):L=t[89];let R;return t[90]!==I||t[91]!==L||t[92]!==A||t[93]!==j||t[94]!==N?(R=(0,Z.jsxs)(`div`,{className:A,"data-server-id":j,children:[N,I,L]}),t[90]=I,t[91]=L,t[92]=A,t[93]=j,t[94]=N,t[95]=R):R=t[95],R}function Ct(e){return e.enabled&&e.badge===`unavailable`}function wt(e){return e.status===`signed-in`}function Tt(e){let t=r(e);return ft(t)&&t.detail!==void 0?t.detail:`Sign-in could not start. Try again.`}function Et(e,t,n){let r=(0,Y.c)(33),i;r[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={reportFailure:!1},r[0]=i):i=r[0];let a=q(K.mcpRegistryProviderSignInState,i),o;r[1]===Symbol.for(`react.memo_cache_sentinel`)?(o={reportFailure:!1},r[1]=o):o=r[1];let s=q(K.mcpRegistryProviderSignInStart,o),c;r[2]===Symbol.for(`react.memo_cache_sentinel`)?(c={reportFailure:!1},r[2]=c):c=r[2];let l=q(K.mcpRegistryProviderSignInWait,c),u;r[3]===Symbol.for(`react.memo_cache_sentinel`)?(u={label:`sign a provider out of an MCP server`,reportFailure:!0},r[3]=u):u=r[3];let d=q(K.mcpRegistryProviderSignOut,u),[f,p]=(0,X.useState)(null),[m,h]=(0,X.useState)(null),g;r[4]===Symbol.for(`react.memo_cache_sentinel`)?(g={},r[4]=g):g=r[4];let[_,v]=(0,X.useState)(g),y;r[5]===Symbol.for(`react.memo_cache_sentinel`)?(y=new Map,r[5]=y):y=r[5];let b=(0,X.useRef)(y),[x,S]=(0,X.useState)(null),C;r[6]===Symbol.for(`react.memo_cache_sentinel`)?(C=new Set,r[6]=C):C=r[6];let w=(0,X.useRef)(C),T;r[7]===Symbol.for(`react.memo_cache_sentinel`)?(T=new Map,r[7]=T):T=r[7];let E=(0,X.useRef)(T),D,O;r[8]!==n||r[9]!==e||r[10]!==a||r[11]!==t?(D=()=>{if(!n)return;let r=!1;return a({environmentId:e,input:{serverId:t}}).then(e=>{r||p(e._tag===`Success`?e.value.providers:[])}),()=>{r=!0}},O=[n,e,a,t],r[8]=n,r[9]=e,r[10]=a,r[11]=t,r[12]=D,r[13]=O):(D=r[12],O=r[13]),(0,X.useEffect)(D,O);let k;r[14]===Symbol.for(`react.memo_cache_sentinel`)?(k=e=>p(t=>t?.map(t=>t.instanceId===e.instanceId?e:t)??null),r[14]=k):k=r[14];let A=k,j;r[15]===Symbol.for(`react.memo_cache_sentinel`)?(j=(e,t)=>v(n=>{let r={...n};return t===void 0?delete r[e]:r[e]=t,r}),r[15]=j):j=r[15];let M=j,N;r[16]===Symbol.for(`react.memo_cache_sentinel`)?(N=(e,t)=>{h(t=>t===e?null:t),t._tag===`Success`&&A(t.value)},r[16]=N):N=r[16];let P=N,F;r[17]!==e||r[18]!==t||r[19]!==s||r[20]!==l?(F=async n=>{if(w.current.has(n))return;let r=b.current.get(n)??0,i=r+1;b.current.set(n,i),M(n,void 0);let a={serverId:t,instanceId:n};w.current.add(n),S(n);let o=await s({environmentId:e,input:a}).finally(()=>{w.current.delete(n),S(e=>e===n?null:e)});if(o._tag!==`Success`){if(o._tag===`Failure`&&M(n,Tt(o.cause)),b.current.get(n)===i){b.current.set(n,r);let e=E.current.get(n);e?.attempt===r&&(E.current.delete(n),P(n,e.finished))}return}h(n),window.open(o.value.authorizationUrl,`_blank`,`noopener,noreferrer`);let c=await l({environmentId:e,input:a});if(b.current.get(n)!==i){E.current.set(n,{attempt:i,finished:c});return}E.current.delete(n),P(n,c)},r[17]=e,r[18]=t,r[19]=s,r[20]=l,r[21]=F):F=r[21];let I=F,L;r[22]!==e||r[23]!==d||r[24]!==t?(L=async n=>{M(n,void 0);let r=await d({environmentId:e,input:{serverId:t,instanceId:n}});r._tag===`Success`&&A(r.value)},r[22]=e,r[23]=d,r[24]=t,r[25]=L):L=r[25];let R=L,z=n?f:null,B;return r[26]!==_||r[27]!==I||r[28]!==R||r[29]!==x||r[30]!==z||r[31]!==m?(B={entries:z,waiting:m,starting:x,errors:_,signIn:I,signOut:R},r[26]=_,r[27]=I,r[28]=R,r[29]=x,r[30]=z,r[31]=m,r[32]=B):B=r[32],B}function Dt(e){let t=(0,Y.c)(19),{serverName:n,signIns:r,blocked:i}=e,{entries:o,waiting:s,starting:c,errors:l,signIn:u,signOut:d}=r,f;if(t[0]!==i||t[1]!==o||t[2]!==l||t[3]!==n||t[4]!==u||t[5]!==d||t[6]!==c||t[7]!==s){let e=o?.flatMap(e=>{let t=e.displayName??We(e.driver),n=l[e.instanceId]??(s===e.instanceId?`Finish signing in in your browser.`:e.status===`unavailable`?Ge(e.status):void 0);return n===void 0?[]:[{id:e.instanceId,text:`${t}: ${n}`,error:e.instanceId in l}]})??[],r;t[9]===n?r=t[10]:(r=(0,Z.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Until P4 Code signs in, only providers with their own sign-in can use `,n,`. Finish each sign-in in a browser on the computer running P4 Code.`]}),t[9]=n,t[10]=r);let p;t[11]!==i||t[12]!==o||t[13]!==n||t[14]!==u||t[15]!==d||t[16]!==c||t[17]!==s?(p=o===null?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Checking providers…`}):o.length===0?(0,Z.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No enabled provider here can sign in to MCP servers itself.`}):(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[o.map(e=>{let t=e.displayName??We(e.driver);return(0,Z.jsxs)(`span`,{className:`inline-flex h-8 items-center gap-1.5 rounded-full border border-border bg-background ps-3 pe-1 text-xs`,children:[(0,Z.jsx)(`span`,{"aria-hidden":!0,className:N(`size-1.5 shrink-0 rounded-full`,e.status===`signed-in`?`bg-success`:`bg-muted-foreground/40`)}),(0,Z.jsx)(`span`,{className:`pe-1.5`,children:t}),e.status===`signed-in`?(0,Z.jsxs)(a,{children:[(0,Z.jsx)(j,{render:(0,Z.jsx)(M,{variant:`ghost`,size:`icon-xs`,"aria-label":`Sign-in actions for ${t}`,children:(0,Z.jsx)(F,{"aria-hidden":!0})})}),(0,Z.jsx)(C,{align:`end`,children:(0,Z.jsx)(b,{onClick:()=>void d(e.instanceId),children:`Sign out`})})]}):e.status===`unavailable`?null:(0,Z.jsx)(M,{size:`xs`,disabled:c===e.instanceId,onClick:()=>void u(e.instanceId),children:s===e.instanceId?`Open sign-in again`:`Sign in`})]},e.instanceId)}),i>0?(0,Z.jsxs)(`span`,{className:`inline-flex h-8 items-center gap-1.5 rounded-full border border-border px-3 text-xs text-muted-foreground`,children:[(0,Z.jsx)(`span`,{"aria-hidden":!0,className:`size-1.5 shrink-0 rounded-full bg-muted-foreground/40`}),i===1?`1 other provider`:`${i} other providers`,` can't use`,` `,n]}):null]}),t[11]=i,t[12]=o,t[13]=n,t[14]=u,t[15]=d,t[16]=c,t[17]=s,t[18]=p):p=t[18],f=(0,Z.jsxs)(`div`,{className:`grid gap-2 border-t border-border pt-3`,children:[r,p,e.map(Ot)]}),t[0]=i,t[1]=o,t[2]=l,t[3]=n,t[4]=u,t[5]=d,t[6]=c,t[7]=s,t[8]=f}else f=t[8];return f}function Ot(e){return(0,Z.jsx)(`p`,{className:N(`text-xs`,e.error?`text-destructive-foreground`:`text-muted-foreground`),children:e.text},e.id)}var kt={"signed-in":{variant:`success`,label:`Signed in`},"needs-sign-in":{variant:`warning`,label:`Sign in needed`},unavailable:{variant:`secondary`,label:`Unavailable`}};function At(e){let t=(0,Y.c)(13),{plugin:n,environmentLabel:r,projectLabel:i,projectOverride:a,onProjectOverride:o}=e,s=`Claude sessions on ${r} load this plugin folder.`,c;t[0]===s?c=t[1]:(c=(0,Z.jsx)(Ce,{title:`Claude`,description:s}),t[0]=s,t[1]=c);let l;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Z.jsx)(Ce,{title:`Codex, Cursor, Grok, OpenCode, Antigravity`,description:`Not supported here. These providers have no Claude plugin format.`}),t[2]=l):l=t[2];let u;t[3]===c?u=t[4]:(u=(0,Z.jsx)(Te,{title:`Providers`,children:(0,Z.jsxs)(Se,{children:[c,l]})}),t[3]=c,t[4]=u);let d;t[5]!==o||t[6]!==n||t[7]!==i||t[8]!==a?(d=i!==void 0&&o!==void 0?(0,Z.jsx)(Te,{title:`Project`,children:(0,Z.jsx)(Se,{children:(0,Z.jsx)(xt,{projectLabel:i,override:a,inherited:n.enabled,onChange:o})})}):null,t[5]=o,t[6]=n,t[7]=i,t[8]=a,t[9]=d):d=t[9];let f;return t[10]!==u||t[11]!==d?(f=(0,Z.jsxs)(`div`,{className:`grid gap-6`,children:[u,d]}),t[10]=u,t[11]=d,t[12]=f):f=t[12],f}var jt=gt;export{jt as component};
5
+ //# sourceMappingURL=settings.plugins-D5l1ZPSB.js.map
@@ -0,0 +1,4 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ProjectIconPickerDialog-C613hnVY.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/Icon-l19w4AjM.js","assets/utils-BEVyjoxo.js","assets/activity-C1Y3O_v1.js","assets/createLucideIcon-CacG5mZC.js","assets/alarm-clock-Pw90g7hE.js","assets/app-window-D2LBv8RE.js","assets/archive-0Qz6rgBl.js","assets/arrow-down-up-B46gw0xW.js","assets/arrow-down-DvRecXuy.js","assets/arrow-left-BLE461db.js","assets/arrow-right-left-BqjFeAD_.js","assets/arrow-right-CoV5ameY.js","assets/arrow-up-down-ibtVnemT.js","assets/arrow-up-left-BMvgV_8i.js","assets/arrow-up-right-C6IM-WPd.js","assets/arrow-up-3Yp3lsoe.js","assets/battery-Bjbw2yxu.js","assets/bell-CLuvLMth.js","assets/blocks-B-VfW07Q.js","assets/book-open-HEEW8eqT.js","assets/bookmark-HM-xwl47.js","assets/bot-DpQzHyXo.js","assets/box-CKWcQvdq.js","assets/bug-Dtc5BRVF.js","assets/calendar-arrow-down-CAFi0Chs.js","assets/calendar-arrow-up-Cs2MbLyZ.js","assets/calendar-clock-DTUOomkO.js","assets/calendar-c_JH_1V1.js","assets/camera-V1Ufc9sC.js","assets/chart-no-axes-column-DKbSsm0y.js","assets/check-Cmy7pM2Y.js","assets/chevron-down-DHV04o66.js","assets/chevron-left-DrNh6cTh.js","assets/chevron-right-NbahR9_s.js","assets/chevron-up-C-w52bD6.js","assets/chevrons-left-right-ellipsis-D2Qu5H2y.js","assets/chevrons-up-down-BMPucOK_.js","assets/chromium-BusoCgri.js","assets/circle-alert-B83jEPoh.js","assets/circle-arrow-up-kT0Pa2jA.js","assets/circle-check-Y1T60J9X.js","assets/circle-dashed-ChJzoouS.js","assets/circle-dot-DSAuCGJf.js","assets/circle-slash-Ceo-2WKq.js","assets/circle-x-C-GXnJRB.js","assets/circle-4zZlZno3.js","assets/clock-3-SBiWJYHb.js","assets/clock-bc9N_wA2.js","assets/cloud-download-BE7c7r3I.js","assets/cloud-upload-noux3Cbp.js","assets/cloud-DyVMWy7X.js","assets/code-xml-CbuCFrkh.js","assets/code-DuFehkNQ.js","assets/columns-2-D1kdFD9w.js","assets/copy-CoM62e83.js","assets/corner-left-up-BCqW4dF8.js","assets/corner-up-right--t3OPVhh.js","assets/cpu-mffhvvYB.js","assets/database-DipbOz0U.js","assets/download-BAp4p4A-.js","assets/earth-CTY23Bx1.js","assets/ellipsis-vertical-fYTS1grT.js","assets/ellipsis-6x3R4_IB.js","assets/external-link-NWS0I_zo.js","assets/eye-off-BJFC-Vn7.js","assets/eye-Dh5UEUs_.js","assets/file-braces-CcggTVd0.js","assets/file-code-corner-Dt6PpZnb.js","assets/file-diff-BE4sroJp.js","assets/file-search-DotMSEoS.js","assets/file-spreadsheet-Boc78Vjm.js","assets/file-text-xj3y_Xbg.js","assets/file-1cutE11R.js","assets/files-CQwG7JjF.js","assets/film-CYJIuMHb.js","assets/flask-conical-WkWFg73e.js","assets/folder-closed-zBKiY8_q.js","assets/folder-cog-BMK_9DOi.js","assets/folder-git-2-BxqGR5ht.js","assets/folder-git-CoMYGJp_.js","assets/folder-open-BqgCWh1y.js","assets/folder-plus-BHa3aD6W.js","assets/folder-tree-CIpeR87A.js","assets/folder-CMIvEUJv.js","assets/gauge-C_4eEUrj.js","assets/git-branch-plus-BQ_ISFgF.js","assets/git-branch-CAP5iwh8.js","assets/git-commit-horizontal-6IR7R88i.js","assets/git-fork-BEEZa2l_.js","assets/git-merge-C47N_dux.js","assets/git-pull-request-arrow-C9_ZycDh.js","assets/git-pull-request-closed-BkRFT_Rl.js","assets/git-pull-request-draft-BNpXqUsz.js","assets/globe-BygqUCSx.js","assets/grip-vertical-B8ERFH5y.js","assets/hammer-BRTj-Vot.js","assets/hard-drive-CVWUL95f.js","assets/history-B22_6xEN.js","assets/house-D_gjXlRt.js","assets/image-xUrgiZ2i.js","assets/inbox-48iST-IJ.js","assets/info-BHB-83EA.js","assets/keyboard-9HUE6Zs7.js","assets/laptop-05PEAB3d.js","assets/layers-BqgDAlx3.js","assets/lightbulb-CEqRo_1f.js","assets/link-2-B_p2EG7Q.js","assets/link-zAXVcUwk.js","assets/list-checks-CQu2FTgJ.js","assets/list-filter-BOx8tW9q.js","assets/list-ordered-f2n8ZhGo.js","assets/list-todo-D7F9k-PE.js","assets/list-BAEaXVbr.js","assets/loader-circle-B3Ce8JIQ.js","assets/lock-open-Bt3QlIE2.js","assets/lock-Cc3mNdEd.js","assets/log-in-BpPtfyCd.js","assets/mail-J8kfrAC7.js","assets/maximize-2-CHT2IkVy.js","assets/maximize-CoWtPryT.js","assets/memory-stick-C7kBEkBW.js","assets/message-circle-question-mark-Blboafqi.js","assets/message-circle-CwQpPAbq.js","assets/message-square-dashed-DrEYZ6F3.js","assets/message-square-off-BstjdZP9.js","assets/message-square-text-CJTpB0rs.js","assets/message-square-warning-I95tWaoN.js","assets/message-square-DLzUyuIE.js","assets/messages-square-BNeF2306.js","assets/minimize-2-DOhpJbnX.js","assets/minus-C7W28oE7.js","assets/monitor-Ddj8MK6z.js","assets/moon-B9ss2TfK.js","assets/mouse-pointer-2-DbBU41il.js","assets/mouse-pointer-click-DsDE4K7M.js","assets/octagon-alert-BKVCgU--.js","assets/package-plus-Cl7EzKuY.js","assets/package-CeeyHFJU.js","assets/paintbrush-D1BKpWrm.js","assets/palette-Xj4s0pmv.js","assets/panel-bottom-BzpRd9wr.js","assets/panel-left-DzXd97so.js","assets/panel-right-C3EFo10c.js","assets/paperclip-BCpF_jt0.js","assets/panels-top-left-C5lf6BGD.js","assets/pen-line-BeMREvYs.js","assets/pencil-ruler-CU_Sl28D.js","assets/pencil-CnxrJI7X.js","assets/picture-in-picture-2-g5nsWFVw.js","assets/pilcrow-DMiXqMTk.js","assets/pin-DfMqpQHz.js","assets/play-Bvcnzkvl.js","assets/plug-2-DkrvJqyh.js","assets/plus-Cr075-cy.js","assets/plug-Cdxb0djR.js","assets/power-BZu57mPF.js","assets/presentation-DvMc9hxG.js","assets/puzzle-Bv9mngwk.js","assets/qr-code-D3ZNC-wH.js","assets/quote-zNyOHYG3.js","assets/radio-tower-CT5Np78y.js","assets/redo-2-DRHZshO-.js","assets/refresh-cw-PY_ECjtI.js","assets/rotate-ccw-Dr4MwDMq.js","assets/rotate-cw-10CQA0Ej.js","assets/route-CQ6wZzks.js","assets/rows-3-Bhc8vjss.js","assets/scale-V7dmr96y.js","assets/search-Cr9eaeTj.js","assets/send-CMOvB09P.js","assets/server-Le_hLOlf.js","assets/settings-2-XzWAl_8P.js","assets/settings-CTjEqsg3.js","assets/shield-check-k2SY7zjx.js","assets/shield-question-mark-pgYZYoSI.js","assets/shield-veV1FXDO.js","assets/sliders-horizontal-lg5XUMZM.js","assets/smartphone-zkhAIn1Q.js","assets/smile-plus-20kjE9KX.js","assets/sparkles-cStmYKbH.js","assets/square-arrow-out-up-right-DRKYZdVU.js","assets/square-pen-DIW48FdK.js","assets/square-plus-CeFmBUPF.js","assets/square-split-horizontal-Ba4BZbro.js","assets/square-split-vertical-BqJX4cZa.js","assets/square-terminal-CB0QR1vW.js","assets/square-DVrCvZRU.js","assets/star-DJ6Ycqv6.js","assets/sun-C8irSiA-.js","assets/tag-DhRIoqTo.js","assets/target-DziMQLku.js","assets/terminal-6kKaKv-Q.js","assets/text-align-start-C-EHiBr4.js","assets/text-search-BsqmpFYh.js","assets/text-wrap-C8SwAUbc.js","assets/ticket-LnwYlhC1.js","assets/trash-2-CiyAV2xI.js","assets/trending-down-CZZKiTTZ.js","assets/trending-up-CyMfjRD-.js","assets/triangle-alert-BiHUyRl3.js","assets/type-ChjbxAhu.js","assets/undo-2-ZlIXiNdF.js","assets/unlink-2-DKAoaBiV.js","assets/unplug-Dg15iaHA.js","assets/upload-D9-Kv89Z.js","assets/user-check-BtCtF_-l.js","assets/user-lock-BWt0Um72.js","assets/user-plus-DbG1t95t.js","assets/user-round-x-D7izbSMH.js","assets/user-round-GtkOza8y.js","assets/users-LmqvhHnq.js","assets/wifi-off-DtJhRDhE.js","assets/workflow-Za5zYpKH.js","assets/wrench-CSZxFJCP.js","assets/x-CSwbgjBe.js","assets/zap-CrtYfJ8v.js","assets/toggle-group-ZNzhUvHt.js","assets/CompositeRoot-DUqf78yV.js","assets/toggle-BshAsXT6.js","assets/input-RqvQJ9gh.js","assets/Input-BQRZG5rU.js","assets/FieldControl-BI2gK4Z0.js","assets/useRegisterFieldControl-75QESVfk.js","assets/scroll-area-Davaj52_.js","assets/ScrollAreaCorner-CoeXGFSL.js","assets/CSPContext-4VAD2_gc.js","assets/dialog-DmneyTGi.js","assets/DialogTitle-CQU6s1Wy.js","assets/ProjectMonogram-B9iJhcVp.js","assets/dynamic-CuoX2JEO.js","assets/index-C_MVyH59.js"])))=>i.map(i=>d[i]);
2
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-C_MVyH59.js";import{r as n}from"./Icon-l19w4AjM.js";import{C_ as r,Cm as i,D as a,Gn as o,Gs as s,Jn as c,Ks as l,Mf as u,NE as d,Pp as f,Qp as p,Tc as m,Yn as h,Yo as g,Zn as _,__ as v,fw as y,gd as b,in as x,k_ as S,lE as C,ms as w,n as T,or as E,qn as ee,r as D,sr as O,tr as te,uy as ne,xs as k}from"./utils-BEVyjoxo.js";import{R as re,U as A,W as ie,z as j}from"./runtime-D8mKjOP-.js";import{C as M,P as ae,W as N,k as P}from"./entities-7B8nzlQw.js";import{yn as F}from"./runtime-Bni_zt6P.js";import{t as I}from"./useNavigate-DRqH9NhA.js";import{t as L}from"./useLocation-B3ir4ben.js";import{i as R}from"./toast-DhMYg_gN.js";import{a as oe,s as z}from"./environments-DYIXXf7q.js";import{f as B,s as V}from"./server-CaLEm3Wt.js";import{n as H,o as U}from"./session-2CRBJwS7.js";import{t as W}from"./use-atom-command-x4GQBtio.js";import{I as G,R as K}from"./useSettings-Dx076NWT.js";import{n as q}from"./toastHelpers-Dsph6LwL.js";import{i as J,o as Y,r as X}from"./command-B70eQIps.js";import{t as se}from"./input-RqvQJ9gh.js";import{D as ce,E as le,O as ue,j as de,y as fe}from"./keybindings-BtHOXkP-.js";import{t as pe}from"./PierreEntryIcon-CPG-jnaN.js";import{t as me}from"./ProjectFavicon-DUW6Bo66.js";import{d as he}from"./projectFilesQueryState-BP_JvI7-.js";import{n as ge}from"./p4ProjectFile-z5Hlq99W.js";import{r as _e,t as ve}from"./alert-5swcxUBm.js";import{B as ye,H as be,I as xe,a as Z,i as Se,r as Ce,s as we}from"./settingsLayout-DHc6oKfL.js";import{Mi as Te,Sn as Ee,bn as De,pn as Oe,yi as ke}from"./main-Bh6Hj0_-.js";import{c as Ae,f as je,i as Me,n as Ne,o as Pe,r as Fe,s as Ie,t as Le}from"./projectScriptEditor-BGLshibY.js";import{t as Re}from"./ProjectDefaultsSettings-DfhAk0_Y.js";import{t as ze}from"./SettingsScopeNotice-DAPsshab.js";var Be=d(),Q=e(n(),1),$=e(C(),1);function Ve(e,t,n){return t||(n?e.trim()?`Searching project files…`:`Indexing project files…`:e.trim()?`No matching image files.`:`No image files found.`)}function He(e,t){return!D(t)||F(e)}function Ue(e){let[t,n]=(0,Q.useState)(``),[r,i]=(0,Q.useState)(null),[a,o]=(0,Q.useState)(!1),s=he(e.environmentId,e.cwd,t,200,{imageOnly:!0}),{resolvedTheme:c}=G(),l=g(V),u=e.onPickExternal,d=T(typeof navigator>`u`?``:navigator.platform),f=(0,Q.useMemo)(()=>Oe(s.entries,s.matchedQuery).map(t=>({kind:`action`,value:`project-favicon:${t.path}`,searchTerms:[t.name,t.path],title:t.name,description:t.path,icon:(0,$.jsx)(pe,{pathValue:t.path,kind:`file`,theme:c}),run:async()=>e.onSelect(t.path)})),[e.onSelect,c,s.entries,s.matchedQuery]);return(0,$.jsx)(X,{open:e.open,onOpenChange:e.onOpenChange,children:e.open?(0,$.jsx)(J,{"aria-label":`Choose project icon`,className:`overflow-hidden`,onBackdropPointerDown:()=>e.onOpenChange(!1),children:(0,$.jsx)(Ee,{"aria-label":`Choose project icon`,autoHighlight:`always`,escapeLabel:`Close`,footerActionLabel:`Select icon`,footerTrailing:u?(0,$.jsx)(Y,{disabled:a,onClick:()=>{o(!0),u().then(t=>{t&&(e.onOpenChange(!1),e.onSelect(t))}).catch(e=>{R.add({type:`error`,title:`Could not open image picker`,description:e instanceof Error?e.message:`An error occurred.`})}).finally(()=>o(!1))},children:`Open in ${d}`}):null,inputProps:{placeholder:`Search image files…`},mode:`none`,onItemHighlighted:e=>{i(typeof e==`string`?e:null)},onValueChange:e=>{i(null),n(e)},panelSize:`tall-list`,testId:`project-favicon-picker`,value:t,children:(0,$.jsx)(De,{groups:f.length>0?[{value:`project-favicon-files`,label:e.projectName,items:f}]:[],highlightedItemValue:r,isActionsOnly:!1,keybindings:l,onExecuteItem:t=>{t.kind===`action`&&(e.onOpenChange(!1),t.run())},emptyStateMessage:Ve(t,s.error,s.isPending)})})}):null})}function We(e){let t=(0,Be.c)(10),{scripts:n,keybindings:r,disabled:i,onEdit:a}=e;if(n.length===0){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`p`,{className:`px-3 py-2 text-base text-muted-foreground sm:px-4 sm:text-sm`,children:`No actions configured.`}),t[0]=e):e=t[0],e}let o;if(t[1]!==i||t[2]!==r||t[3]!==a||t[4]!==n){let e;t[6]!==i||t[7]!==r||t[8]!==a?(e=e=>{let t=fe(r,ce(e.id));return(0,$.jsx)(Z,{className:`group py-2`,title:(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,$.jsx)(Fe,{icon:e.icon,className:`size-4 shrink-0 text-muted-foreground`}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:e.name}),e.runOnWorktreeCreate?(0,$.jsx)(`span`,{className:`shrink-0 rounded-sm border border-border/60 px-1.5 py-px text-2xs font-normal text-muted-foreground`,children:`setup`}):null,e.runOnSettle?(0,$.jsx)(`span`,{className:`shrink-0 rounded-sm border border-border/60 px-1.5 py-px text-2xs font-normal text-muted-foreground`,children:`on settle`}):null,e.previewUrl?(0,$.jsx)(`span`,{className:`shrink-0 rounded-sm border border-border/60 px-1.5 py-px text-2xs font-normal text-muted-foreground max-sm:hidden`,children:`preview · desktop only`}):null]}),description:(0,$.jsx)(`code`,{className:`block max-w-full truncate font-mono`,children:e.command}),control:(0,$.jsxs)($.Fragment,{children:[t?(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:t}):null,(0,$.jsx)(`span`,{className:`flex shrink-0 opacity-0 group-focus-within:opacity-100 group-hover:opacity-100`,children:(0,$.jsx)(O,{size:`icon-xs`,variant:`ghost-muted`,"aria-label":`Edit ${e.name}`,disabled:i,onClick:()=>a(e),children:(0,$.jsx)(p,{className:`size-3.5`})})})]})},e.id)},t[6]=i,t[7]=r,t[8]=a,t[9]=e):e=t[9],o=n.map(e),t[1]=i,t[2]=r,t[3]=a,t[4]=n,t[5]=o}else o=t[5];return o}function Ge(e){if(e._tag===`Failure`&&!re(e)){let t=ie(e);R.add({type:`error`,title:`Failed to save project actions`,description:t instanceof Error?t.message:`An error occurred.`})}return j(e,()=>void 0)}function Ke(e){let t=M(),[n,i]=(0,Q.useState)(!1),a=(0,Q.useRef)(!1),o=W(B.updateSettings,`project actions update`),s=W(B.upsertKeybinding,`action shortcut update`),c=W(B.removeKeybinding,`action shortcut removal`);async function l(n,l,u){if(a.current||e.length===0){let e=`No available machine, or another action change is saving.`;return R.add({type:`error`,title:`Actions not saved`,description:e}),w(y(Error(e)))}if(e.some(({environmentId:e})=>!H(e,`settings:write`)))return Ge(w(y(new S({requiredScope:r,message:`This connection cannot change environment settings.`}))));a.current=!0,i(!0);try{for(let{environmentId:r,settings:i,keybindings:a,project:d}of e){let e=d?je(i,d):i.defaultProjectScripts,f=n(e),p=f??i.defaultProjectScripts,m=await o({environmentId:r,input:{patch:d?{projectSettingsOverrides:{[d.id]:f===null?ge(i,d.id,[`defaultProjectScripts`]):{...i.projectSettingsOverrides[d.id],defaultProjectScripts:f}}}:{defaultProjectScripts:f??[]}}});if(m._tag===`Failure`)return Ge(m);let h=l?[l]:e.filter(e=>!p.some(t=>t.id===e.id)).map(e=>e.id);for(let e of h){let n=ce(e),o=Ae(a,n),l=o?Ie({keybinding:o,command:n}):null,p=Ie({keybinding:u,command:n}),m=!f?.some(t=>t.id===e)&&(d&&i.defaultProjectScripts.some(t=>t.id===e)||Object.entries(i.projectSettingsOverrides).some(([t,n])=>t!==d?.id&&n.defaultProjectScripts?.some(t=>t.id===e))||t.some(t=>t.environmentId===r&&t.id!==d?.id&&(d?je(i,t):t.scripts).some(t=>t.id===e))),h=p?await s({environmentId:r,input:l&&l.key!==p.key?{...p,replace:l}:p}):l&&!m?await c({environmentId:r,input:l}):null;if(h?._tag===`Failure`)return Ge(h)}}return k(void 0)}finally{a.current=!1,i(!1)}}function u(n,r){let i=[...t.flatMap(e=>e.scripts.map(e=>e.id)),...e.flatMap(({settings:e,project:t})=>[...e.defaultProjectScripts,...Object.values(e.projectSettingsOverrides).flatMap(e=>e.defaultProjectScripts??[]),...t?.scripts??[]].map(e=>e.id))],a=n??ue(r.name,i),o=le(a,r);return l(e=>{let t=e.map(e=>e.id===a?o:de(e,r));return n===null?[...t,o]:t},a,r.keybinding)}return{saving:n,persist:l,submit:u}}function qe(){let e=(0,Be.c)(67),{scope:t,targets:n,target:r}=ye(),{environments:i}=oe(),a=t.kind===`project`||t.kind===`checkout`,s;e[0]!==i||e[1]!==r?(s=r?i.find(e=>e.environmentId===r.environmentId)?.serverConfig:void 0,e[0]=i,e[1]=r,e[2]=s):s=e[2];let l=s,u;e[3]===r?.settings.defaultProjectScripts?u=e[4]:(u=r?.settings.defaultProjectScripts??[],e[3]=r?.settings.defaultProjectScripts,e[4]=u);let d=u,p=l?.keybindings??m,g;if(e[5]!==d||e[6]!==n){let t;e[8]===d?t=e[9]:(t=e=>JSON.stringify(e.settings.defaultProjectScripts)!==JSON.stringify(d),e[8]=d,e[9]=t),g=n.some(t),e[5]=d,e[6]=n,e[7]=g}else g=e[7];let v=g,y=xe(),[x,S]=(0,Q.useState)(null),C,w,T;e[10]!==i||e[11]!==a||e[12]!==t.members||e[13]!==n?(C=new Map(a?t.members.map(Ye):[]),w=Ke,T=n.flatMap(e=>{let t=i.find(t=>t.environmentId===e.environmentId);if(!t?.serverConfig)return[];let n=e.projectId?C.get(e.projectId):void 0;return n&&t.serverConfig.environment?.capabilities.projectSettingsOverrides!==!0?[]:[{environmentId:e.environmentId,settings:t.serverConfig.settings,keybindings:t.serverConfig.keybindings,...n?{project:n}:{}}]}),e[10]=i,e[11]=a,e[12]=t.members,e[13]=n,e[14]=C,e[15]=w,e[16]=T):(C=e[14],w=e[15],T=e[16]);let{saving:D,persist:k,submit:A}=w(T),j;e[17]!==C||e[18]!==r?(j=r?.projectId?C.get(r.projectId):void 0,e[17]=C,e[18]=r,e[19]=j):j=e[19];let M=j,ae;e[20]===M?.environmentId?ae=e[21]:(ae=M?.environmentId??ne.make(`none`),e[20]=M?.environmentId,e[21]=ae);let N=Pe(ae,M?.workspaceRoot??null),P;if(e[22]!==d||e[23]!==N.scripts){let t;e[25]===d?t=e[26]:(t=e=>!d.some(t=>t.command===e.command||t.name.toLowerCase()===e.name.toLowerCase()),e[25]=d,e[26]=t),P=N.scripts.filter(t),e[22]=d,e[23]=N.scripts,e[24]=P}else P=e[24];let F=P,I;e[27]===A?I=e[28]:(I=async e=>{let t={name:e.name,command:e.command,icon:e.icon??`play`,runOnWorktreeCreate:e.runOnWorktreeCreate??!1,waitForSetup:e.runOnWorktreeCreate===!0&&e.async===!1,runOnSettle:e.runOnSettle??!1,keybinding:null,previewUrl:e.previewUrl??null,autoOpenPreview:e.previewUrl?e.autoOpenPreview??!1:!1},n=await A(null,t);if(n._tag===`Failure`&&!re(n)){let e=ie(n);S({scriptId:null,initial:t,error:e instanceof Error?e.message:`Failed to import action.`})}},e[27]=A,e[28]=I);let L=I,R;e[29]===Symbol.for(`react.memo_cache_sentinel`)?(R=[`defaultProjectScripts`],e[29]=R):R=e[29];let z;e[30]===k?z=e[31]:(z=()=>void k(Je),e[30]=k,e[31]=z);let B;e[32]!==y||e[33]!==L||e[34]!==F||e[35]!==D?(B=F.length>0?(0,$.jsxs)(o,{children:[(0,$.jsxs)(E,{render:(0,$.jsx)(O,{id:`import-scripts`,size:`xs`,variant:`ghost`,disabled:D||!y,type:`button`}),children:[`Import scripts`,(0,$.jsx)(b,{className:`size-3.5`})]}),(0,$.jsxs)(_,{align:`end`,children:[(0,$.jsxs)(ee,{children:[(0,$.jsx)(c,{children:`Import from p4.json`}),(0,$.jsx)(`p`,{className:`px-2 pb-2 text-pretty text-sm text-muted-foreground`,children:`Add actions declared by this checkout without editing them first.`})]}),(0,$.jsx)(te,{}),F.map(e=>(0,$.jsxs)(h,{onClick:()=>void L(e),children:[(0,$.jsx)(Fe,{icon:e.icon??`play`,className:`size-4 shrink-0`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`truncate font-medium`,children:e.name}),(0,$.jsx)(`div`,{className:`truncate font-mono text-muted-foreground`,children:e.command})]})]},`${e.name} ${e.command}`))]})]}):null,e[32]=y,e[33]=L,e[34]=F,e[35]=D,e[36]=B):B=e[36];let V=D||!y||n.length===0,H,U;e[37]===Symbol.for(`react.memo_cache_sentinel`)?(H=()=>S({scriptId:null,initial:Le}),U=(0,$.jsx)(f,{className:`size-3.5`}),e[37]=H,e[38]=U):(H=e[37],U=e[38]);let W;e[39]===V?W=e[40]:(W=(0,$.jsxs)(O,{size:`xs`,variant:`outline`,disabled:V,onClick:H,children:[U,`Add action`]}),e[39]=V,e[40]=W);let G;e[41]!==B||e[42]!==W?(G=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[B,W]}),e[41]=B,e[42]=W,e[43]=G):G=e[43];let K;e[44]!==v||e[45]!==z||e[46]!==G?(K=(0,$.jsx)(Z,{serverScoped:!0,settingKeys:R,mixed:v,title:`Actions`,description:`Commands that run in this project's checkout or its worktree, with optional shortcuts.`,onResetOverride:z,control:G}),e[44]=v,e[45]=z,e[46]=G,e[47]=K):K=e[47];let q;e[48]!==y||e[49]!==p||e[50]!==v||e[51]!==D||e[52]!==d?(q=v?(0,$.jsx)(Z,{title:`Different actions across environments`,description:`Choose one environment to edit its list. Adding an action here adds it on every selected environment.`}):(0,$.jsx)(We,{scripts:d,keybindings:p,disabled:D||!y,onEdit:e=>S(Me(e,p))}),e[48]=y,e[49]=p,e[50]=v,e[51]=D,e[52]=d,e[53]=q):q=e[53];let J;e[54]===N.status?J=e[55]:(J=N.status===`invalid`?(0,$.jsx)(Z,{title:`p4.json is invalid`,description:`A p4.json exists in this checkout but fails to parse, so every action and icon it declares is ignored. Check the JSON syntax and icon values.`,className:`text-warning`}):null,e[54]=N.status,e[55]=J);let Y;e[56]!==k||e[57]!==x||e[58]!==d||e[59]!==A||e[60]!==r?(Y=r&&(0,$.jsx)(Ne,{environmentId:r.environmentId,editScope:`settings:write`,request:x,scripts:d,onSubmit:A,onDelete:e=>void k(t=>t.filter(t=>t.id!==e),e,null),onClose:()=>S(null)}),e[56]=k,e[57]=x,e[58]=d,e[59]=A,e[60]=r,e[61]=Y):Y=e[61];let X;return e[62]!==K||e[63]!==q||e[64]!==J||e[65]!==Y?(X=(0,$.jsxs)(we,{id:`project-actions`,title:`Actions`,children:[K,q,J,Y]}),e[62]=K,e[63]=q,e[64]=J,e[65]=Y,e[66]=X):X=e[66],X}function Je(){return null}function Ye(e){return[e.id,e]}function Xe(e,t,n){return n&&e.some(e=>e!==t)}var Ze=(0,Q.lazy)(()=>t(()=>import(`./ProjectIconPickerDialog-C613hnVY.js`).then(e=>({default:e.ProjectIconPickerDialog})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232])));function Qe(e){return`${e.environmentId}:${e.id}`}function $e(e){let t=(0,Be.c)(34),{projectKey:n,environmentId:r,checkoutKey:i}=e,a=r===void 0?null:r,o=i===void 0?null:i,s=be(),c;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c={from:`/settings`},t[0]=c):c=t[0];let l=I(c),u;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(u={select:tt},t[1]=u):u=t[1];let d=L(u),f;t[2]!==s||t[3]!==n?(f=s.find(e=>e.projectKey===n)??null,t[2]=s,t[3]=n,t[4]=f):f=t[4];let p=f,m;t[5]!==o||t[6]!==a||t[7]!==p?.memberProjects?(m=p?.memberProjects.filter(e=>(a===null||e.environmentId===a)&&(o===null||e.physicalProjectKey===o))??[],t[5]=o,t[6]=a,t[7]=p?.memberProjects,t[8]=m):m=t[8];let h=m,g=(0,Q.useRef)(null),_,v;t[9]!==o||t[10]!==a||t[11]!==h||t[12]!==p?(_=()=>{p&&h.length!==0&&(g.current={key:p.projectKey,environmentId:a,checkoutKey:o,memberKeys:h.map(et)})},v=[p,h,a,o],t[9]=o,t[10]=a,t[11]=h,t[12]=p,t[13]=_,t[14]=v):(_=t[13],v=t[14]),(0,Q.useEffect)(_,v);let y,b;if(t[15]!==o||t[16]!==a||t[17]!==s||t[18]!==h.length||t[19]!==l||t[20]!==d||t[21]!==n?(b=()=>{if(h.length>0)return;let e=g.current;if(e?.key!==n||e.environmentId!==a||e.checkoutKey!==o)return;let t=s.find(t=>t.memberProjects.some(t=>e.memberKeys.includes(t.physicalProjectKey)));t&&l({to:d,search:()=>({project:t.projectKey,machine:a??void 0,checkout:o??void 0}),replace:!0,hashScrollIntoView:!1})},y=[s,l,d,n,h.length,a,o],t[15]=o,t[16]=a,t[17]=s,t[18]=h.length,t[19]=l,t[20]=d,t[21]=n,t[22]=y,t[23]=b):(y=t[22],b=t[23]),(0,Q.useEffect)(b,y),!p){let e=s.length===0?`Add a project from the sidebar to configure it here.`:`This project is no longer available.`,n;return t[24]===e?n=t[25]:(n=(0,$.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-8 text-sm text-muted-foreground`,children:e}),t[24]=e,t[25]=n),n}if(h.length===0){let e;return t[26]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`p`,{className:`p-8 text-sm text-muted-foreground`,children:`This checkout is no longer available in the selected project and environment.`}),t[26]=e):e=t[26],e}let x;t[27]!==h||t[28]!==p?(x={...p,memberProjects:h,environmentId:h[0].environmentId,id:h[0].id},t[27]=h,t[28]=p,t[29]=x):x=t[29];let S=x,C=`${p.projectKey}:${a??`all`}:${o??`all`}`,w=h.length<p.memberProjects.length,T;return t[30]!==S||t[31]!==C||t[32]!==w?(T=(0,$.jsx)(nt,{group:S,hasOtherMembers:w},C),t[30]=S,t[31]=C,t[32]=w,t[33]=T):T=t[33],T}function et(e){return e.physicalProjectKey}function tt(e){return e.pathname}function nt({group:e,hasOtherMembers:t}){let n=I({from:`/settings`}),r=z(),{environments:o}=oe(),c=(0,Q.useMemo)(()=>new Map(o.map(e=>[e.environmentId,e])),[o]),d=U(e.memberProjects,v),f=e.memberProjects.every(e=>d.has(e.environmentId)),p=e.memberProjects.find(e=>c.get(e.environmentId)?.serverConfig!=null)??e.memberProjects[0],m=P(),h=Te(N.update,{reportFailure:!1}),g=Te(N.delete,{reportFailure:!1}),_=(0,Q.useRef)(!1),b=p.faviconPath??null,S=p.projectIcon??null,C=typeof window<`u`&&e.memberProjects.every(e=>e.environmentId===r&&He(e.workspaceRoot,navigator.platform))?window.desktopBridge?.pickProjectFavicon:void 0,T=(0,Q.useCallback)((e,t)=>{if(t._tag!==`Failure`||re(t))return;let n=ie(t);R.add(q({type:`error`,title:e,description:n instanceof Error?n.message:`An error occurred.`}))},[]),E=(0,Q.useCallback)((e,t)=>{let n=e.find(e=>!H(e.environmentId,v));if(!n)return null;let r=w(y(Error(`This connection cannot change projects in ${n.environmentLabel??`this environment`}.`)));return T(t,r),r},[T]),ee=(0,Q.useCallback)(async(t,n)=>{let r=E(e.memberProjects,n);if(r)return r;let i=e.memberProjects.find(e=>{let t=c.get(e.environmentId);return t?.connection.phase!==`connected`||!t.serverConfig});if(i){let e=Error(`Connect ${i.environmentLabel??`the selected environment`} and try again.`),t=w(y(e));return T(n,t),t}for(let r of e.memberProjects){let i=E([r],n);if(i)return i;let a=j(await h({environmentId:r.environmentId,input:{projectId:r.id,...t}}),()=>void 0);if(a._tag===`Failure`)return T(e.memberProjects.length>1?`${n} on ${r.environmentLabel??`the current environment`}`:n,a),a}return k(void 0)},[E,c,e.memberProjects,T,h]),D=(0,Q.useCallback)(async(t,n)=>{let r=t.trim();if(!r){R.add({type:`warning`,title:`Project title cannot be empty`});return}Xe(e.memberProjects.map(e=>e.title),r,n)&&await ee({title:r},`Failed to rename project`)},[e.memberProjects,ee]),[te,ne]=x(!f),[M,F]=x(!f),[L,B]=(0,Q.useState)(!1),V=(0,Q.useRef)(!1),W=(0,Q.useCallback)(async e=>{if(!V.current){V.current=!0,B(!0);try{await ee(e,`Failed to update project icon`)}finally{V.current=!1,B(!1)}}},[ee]),G=e.memberProjects.length>1,J=(0,Q.useCallback)(async r=>{if(E(r,`Failed to remove project`))return;let i=K();if(!i)return;let o=new Set(r.map(Qe)),c=m.filter(e=>o.has(`${e.environmentId}:${e.projectId}`)),u=r.length===e.memberProjects.length,d=t||!u?`checkout`:`project`,f=r.length===1?r[0]:null,p=f?.title??e.displayName,h=await A(()=>i.dialogs.confirm([c.length>0?`Remove ${d} "${p}" and delete its ${c.length} thread${c.length===1?``:`s`}?`:`Remove ${d} "${p}"?`,...f?[`Path: ${f.workspaceRoot}`,...f.environmentLabel?[`Environment: ${f.environmentLabel}`]:[]]:[`This removes ${r.length} grouped project entries.`],...c.length>0?[`This permanently clears conversation history for those threads and any archived threads.`]:[`This permanently clears any archived conversation history.`],u&&!t?`This removes only the project entries, not the files on disk.`:`Other entries in this grouped project are unaffected.`,`This action cannot be undone.`].join(`
3
+ `),{variant:`destructive`}));if(h._tag===`Failure`||!h.value||E(r,`Failed to remove project`))return;let _=a.getState();for(let e of r){if(E([e],`Failed to remove project`))return;let t=c.filter(t=>t.environmentId===e.environmentId&&t.projectId===e.id),n=j(await g({environmentId:e.environmentId,input:{projectId:e.id,force:!0}}),()=>void 0);if(n._tag===`Failure`){T(`Failed to remove "${e.title}"`,n);return}let r=s(e.environmentId,e.id);await ae(r),ke(r,t.map(e=>l(e.environmentId,e.id)));let i=_.getDraftThreadByProjectRef(r);i&&_.clearDraftThread(i.draftId),_.clearProjectDraftThreadId(r)}u&&!t&&n({to:`/`,replace:!0})},[E,g,e.displayName,e.memberProjects.length,t,n,T,m]),Y=(0,$.jsx)(we,{title:`Checkouts`,children:e.memberProjects.map(e=>(0,$.jsx)(Z,{title:e.environmentLabel??`Environment`,description:e.workspaceRoot,control:(0,$.jsx)(O,{size:`sm`,variant:`outline`,disabled:!d.has(e.environmentId),onClick:()=>void J([e]),"aria-label":`Remove checkout ${e.workspaceRoot}`,children:`Remove`})},e.physicalProjectKey))});return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Se,{className:`gap-6`,children:[(0,$.jsxs)(ve,{variant:`info`,children:[(0,$.jsx)(u,{"aria-hidden":!0}),(0,$.jsx)(_e,{children:`Can't find a setting? Keep this project picked above and hop to any other settings page.`})]}),(0,$.jsxs)(we,{id:`project-overview`,title:`Project`,hideTitle:!0,children:[f?null:(0,$.jsx)(`p`,{className:`px-3 py-2 text-sm text-muted-foreground sm:px-4`,children:e.memberProjects.length>1?`Shared settings require permission to change every checkout in this group.`:`This connection cannot change this project.`}),(0,$.jsx)(Z,{title:`Name`,description:`The shared name for this project group in the sidebar and thread lists.`,control:(0,$.jsx)(se,{size:`sm`,className:`w-full sm:w-64`,"aria-label":`Project name`,disabled:!f,defaultValue:e.displayName,onChange:()=>{_.current=!0},onBlur:e=>{let t=_.current;_.current=!1,D(e.currentTarget.value,t)},onKeyDown:e=>{e.key===`Enter`&&e.currentTarget.blur()}},`${e.projectKey}:${e.displayName}`)}),(0,$.jsx)(Z,{title:`Project icon`,description:S?.kind===`lucide`?`${S.name} · ${S.color}`:S?.kind===`monogram`?`${S.text} · ${S.color}`:S?.kind===`emoji`?S.emoji:b??`Automatic`,resetAction:e.memberProjects.some(e=>e.faviconPath!=null||e.projectIcon!=null)?(0,$.jsx)(Ce,{label:`project icon`,disabled:L||!f,onClick:()=>void W({faviconPath:null,projectIcon:null})}):null,control:(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(me,{project:p,className:`size-6`}),(0,$.jsx)(O,{size:`sm`,variant:`outline`,type:`button`,"aria-label":`Choose a project icon`,disabled:L||!f,onClick:()=>F(!0),children:`Choose icon`}),(0,$.jsx)(O,{size:`sm`,variant:`outline`,type:`button`,"aria-label":`Choose a project icon file`,disabled:L||!f,onClick:()=>ne(!0),children:`Choose file`})]})})]}),(0,$.jsx)(Re,{category:`project`}),(0,$.jsx)(qe,{}),G?Y:null,(0,$.jsx)(we,{title:`Danger`,children:(0,$.jsx)(Z,{title:t?`Remove checkout`:e.memberProjects.length>1?`Remove this project everywhere`:`Remove project`,description:t?`Deletes the selected machine's checkout entries and their threads. Other machines and files on disk are not touched.`:e.memberProjects.length>1?`Deletes all ${e.memberProjects.length} checkout entries and their threads on every machine. Files on disk are not touched.`:`Deletes the project entry and its threads. Files on disk are not touched.`,control:(0,$.jsxs)(O,{size:`sm`,variant:`destructive-outline`,disabled:!f,onClick:()=>void J(e.memberProjects),children:[(0,$.jsx)(i,{}),t?`Remove checkout`:e.memberProjects.length>1?`Remove all entries`:`Remove project`]})})})]}),(0,$.jsx)(Ue,{cwd:p.workspaceRoot,environmentId:p.environmentId,onOpenChange:ne,...C?{onPickExternal:()=>C(p.workspaceRoot)}:{},onSelect:e=>void W({faviconPath:e,projectIcon:null}),open:te&&f,projectName:e.displayName},`${p.environmentId}:${p.workspaceRoot}:${te}`),M&&f?(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Ze,{current:S,projectName:p.title,open:!0,onOpenChange:F,onSelect:e=>void W({faviconPath:null,projectIcon:e})})}):null]})}function rt(){let e=(0,Be.c)(7),{search:t,scope:n}=ye(),r=n.kind===`project`||n.kind===`checkout`||n.kind===`unavailable`&&(n.reason===`project-missing`||n.reason===`checkout-missing`),i;return e[0]!==r||e[1]!==n.kind||e[2]!==n.message||e[3]!==t.checkout||e[4]!==t.machine||e[5]!==t.project?(i=(0,$.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:t.project&&r?(0,$.jsx)($e,{projectKey:t.project,environmentId:t.machine?ne.make(t.machine):null,checkoutKey:t.checkout??null}):n.kind===`unavailable`?(0,$.jsx)(Se,{children:(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:n.message})}):(0,$.jsx)(ze,{target:`project`,children:`Choose a project to manage its name, icon, checkouts and actions.`})}),e[0]=r,e[1]=n.kind,e[2]=n.message,e[3]=t.checkout,e[4]=t.machine,e[5]=t.project,e[6]=i):i=e[6],i}var it=rt;export{it as component};
4
+ //# sourceMappingURL=settings.projects-Cqx1zAvs.js.map
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ProviderAuthTerminal-eq346NX_.js","assets/rolldown-runtime-Dd_uD5pT.js","assets/Icon-l19w4AjM.js","assets/utils-BEVyjoxo.js","assets/activity-C1Y3O_v1.js","assets/createLucideIcon-CacG5mZC.js","assets/alarm-clock-Pw90g7hE.js","assets/app-window-D2LBv8RE.js","assets/archive-0Qz6rgBl.js","assets/arrow-down-up-B46gw0xW.js","assets/arrow-down-DvRecXuy.js","assets/arrow-left-BLE461db.js","assets/arrow-right-left-BqjFeAD_.js","assets/arrow-right-CoV5ameY.js","assets/arrow-up-down-ibtVnemT.js","assets/arrow-up-left-BMvgV_8i.js","assets/arrow-up-right-C6IM-WPd.js","assets/arrow-up-3Yp3lsoe.js","assets/battery-Bjbw2yxu.js","assets/bell-CLuvLMth.js","assets/blocks-B-VfW07Q.js","assets/book-open-HEEW8eqT.js","assets/bookmark-HM-xwl47.js","assets/bot-DpQzHyXo.js","assets/box-CKWcQvdq.js","assets/bug-Dtc5BRVF.js","assets/calendar-arrow-down-CAFi0Chs.js","assets/calendar-arrow-up-Cs2MbLyZ.js","assets/calendar-clock-DTUOomkO.js","assets/calendar-c_JH_1V1.js","assets/camera-V1Ufc9sC.js","assets/chart-no-axes-column-DKbSsm0y.js","assets/check-Cmy7pM2Y.js","assets/chevron-down-DHV04o66.js","assets/chevron-left-DrNh6cTh.js","assets/chevron-right-NbahR9_s.js","assets/chevron-up-C-w52bD6.js","assets/chevrons-left-right-ellipsis-D2Qu5H2y.js","assets/chevrons-up-down-BMPucOK_.js","assets/chromium-BusoCgri.js","assets/circle-alert-B83jEPoh.js","assets/circle-arrow-up-kT0Pa2jA.js","assets/circle-check-Y1T60J9X.js","assets/circle-dashed-ChJzoouS.js","assets/circle-dot-DSAuCGJf.js","assets/circle-slash-Ceo-2WKq.js","assets/circle-x-C-GXnJRB.js","assets/circle-4zZlZno3.js","assets/clock-3-SBiWJYHb.js","assets/clock-bc9N_wA2.js","assets/cloud-download-BE7c7r3I.js","assets/cloud-upload-noux3Cbp.js","assets/cloud-DyVMWy7X.js","assets/code-xml-CbuCFrkh.js","assets/code-DuFehkNQ.js","assets/columns-2-D1kdFD9w.js","assets/copy-CoM62e83.js","assets/corner-left-up-BCqW4dF8.js","assets/corner-up-right--t3OPVhh.js","assets/cpu-mffhvvYB.js","assets/database-DipbOz0U.js","assets/download-BAp4p4A-.js","assets/earth-CTY23Bx1.js","assets/ellipsis-vertical-fYTS1grT.js","assets/ellipsis-6x3R4_IB.js","assets/external-link-NWS0I_zo.js","assets/eye-off-BJFC-Vn7.js","assets/eye-Dh5UEUs_.js","assets/file-braces-CcggTVd0.js","assets/file-code-corner-Dt6PpZnb.js","assets/file-diff-BE4sroJp.js","assets/file-search-DotMSEoS.js","assets/file-spreadsheet-Boc78Vjm.js","assets/file-text-xj3y_Xbg.js","assets/file-1cutE11R.js","assets/files-CQwG7JjF.js","assets/film-CYJIuMHb.js","assets/flask-conical-WkWFg73e.js","assets/folder-closed-zBKiY8_q.js","assets/folder-cog-BMK_9DOi.js","assets/folder-git-2-BxqGR5ht.js","assets/folder-git-CoMYGJp_.js","assets/folder-open-BqgCWh1y.js","assets/folder-plus-BHa3aD6W.js","assets/folder-tree-CIpeR87A.js","assets/folder-CMIvEUJv.js","assets/gauge-C_4eEUrj.js","assets/git-branch-plus-BQ_ISFgF.js","assets/git-branch-CAP5iwh8.js","assets/git-commit-horizontal-6IR7R88i.js","assets/git-fork-BEEZa2l_.js","assets/git-merge-C47N_dux.js","assets/git-pull-request-arrow-C9_ZycDh.js","assets/git-pull-request-closed-BkRFT_Rl.js","assets/git-pull-request-draft-BNpXqUsz.js","assets/globe-BygqUCSx.js","assets/grip-vertical-B8ERFH5y.js","assets/hammer-BRTj-Vot.js","assets/hard-drive-CVWUL95f.js","assets/history-B22_6xEN.js","assets/house-D_gjXlRt.js","assets/image-xUrgiZ2i.js","assets/inbox-48iST-IJ.js","assets/info-BHB-83EA.js","assets/keyboard-9HUE6Zs7.js","assets/laptop-05PEAB3d.js","assets/layers-BqgDAlx3.js","assets/lightbulb-CEqRo_1f.js","assets/link-2-B_p2EG7Q.js","assets/link-zAXVcUwk.js","assets/list-checks-CQu2FTgJ.js","assets/list-filter-BOx8tW9q.js","assets/list-ordered-f2n8ZhGo.js","assets/list-todo-D7F9k-PE.js","assets/list-BAEaXVbr.js","assets/loader-circle-B3Ce8JIQ.js","assets/lock-open-Bt3QlIE2.js","assets/lock-Cc3mNdEd.js","assets/log-in-BpPtfyCd.js","assets/mail-J8kfrAC7.js","assets/maximize-2-CHT2IkVy.js","assets/maximize-CoWtPryT.js","assets/memory-stick-C7kBEkBW.js","assets/message-circle-question-mark-Blboafqi.js","assets/message-circle-CwQpPAbq.js","assets/message-square-dashed-DrEYZ6F3.js","assets/message-square-off-BstjdZP9.js","assets/message-square-text-CJTpB0rs.js","assets/message-square-warning-I95tWaoN.js","assets/message-square-DLzUyuIE.js","assets/messages-square-BNeF2306.js","assets/minimize-2-DOhpJbnX.js","assets/minus-C7W28oE7.js","assets/monitor-Ddj8MK6z.js","assets/moon-B9ss2TfK.js","assets/mouse-pointer-2-DbBU41il.js","assets/mouse-pointer-click-DsDE4K7M.js","assets/octagon-alert-BKVCgU--.js","assets/package-plus-Cl7EzKuY.js","assets/package-CeeyHFJU.js","assets/paintbrush-D1BKpWrm.js","assets/palette-Xj4s0pmv.js","assets/panel-bottom-BzpRd9wr.js","assets/panel-left-DzXd97so.js","assets/panel-right-C3EFo10c.js","assets/paperclip-BCpF_jt0.js","assets/panels-top-left-C5lf6BGD.js","assets/pen-line-BeMREvYs.js","assets/pencil-ruler-CU_Sl28D.js","assets/pencil-CnxrJI7X.js","assets/picture-in-picture-2-g5nsWFVw.js","assets/pilcrow-DMiXqMTk.js","assets/pin-DfMqpQHz.js","assets/play-Bvcnzkvl.js","assets/plug-2-DkrvJqyh.js","assets/plus-Cr075-cy.js","assets/plug-Cdxb0djR.js","assets/power-BZu57mPF.js","assets/presentation-DvMc9hxG.js","assets/puzzle-Bv9mngwk.js","assets/qr-code-D3ZNC-wH.js","assets/quote-zNyOHYG3.js","assets/radio-tower-CT5Np78y.js","assets/redo-2-DRHZshO-.js","assets/refresh-cw-PY_ECjtI.js","assets/rotate-ccw-Dr4MwDMq.js","assets/rotate-cw-10CQA0Ej.js","assets/route-CQ6wZzks.js","assets/rows-3-Bhc8vjss.js","assets/scale-V7dmr96y.js","assets/search-Cr9eaeTj.js","assets/send-CMOvB09P.js","assets/server-Le_hLOlf.js","assets/settings-2-XzWAl_8P.js","assets/settings-CTjEqsg3.js","assets/shield-check-k2SY7zjx.js","assets/shield-question-mark-pgYZYoSI.js","assets/shield-veV1FXDO.js","assets/sliders-horizontal-lg5XUMZM.js","assets/smartphone-zkhAIn1Q.js","assets/smile-plus-20kjE9KX.js","assets/sparkles-cStmYKbH.js","assets/square-arrow-out-up-right-DRKYZdVU.js","assets/square-pen-DIW48FdK.js","assets/square-plus-CeFmBUPF.js","assets/square-split-horizontal-Ba4BZbro.js","assets/square-split-vertical-BqJX4cZa.js","assets/square-terminal-CB0QR1vW.js","assets/square-DVrCvZRU.js","assets/star-DJ6Ycqv6.js","assets/sun-C8irSiA-.js","assets/tag-DhRIoqTo.js","assets/target-DziMQLku.js","assets/terminal-6kKaKv-Q.js","assets/text-align-start-C-EHiBr4.js","assets/text-search-BsqmpFYh.js","assets/text-wrap-C8SwAUbc.js","assets/ticket-LnwYlhC1.js","assets/trash-2-CiyAV2xI.js","assets/trending-down-CZZKiTTZ.js","assets/trending-up-CyMfjRD-.js","assets/triangle-alert-BiHUyRl3.js","assets/type-ChjbxAhu.js","assets/undo-2-ZlIXiNdF.js","assets/unlink-2-DKAoaBiV.js","assets/unplug-Dg15iaHA.js","assets/upload-D9-Kv89Z.js","assets/user-check-BtCtF_-l.js","assets/user-lock-BWt0Um72.js","assets/user-plus-DbG1t95t.js","assets/user-round-x-D7izbSMH.js","assets/user-round-GtkOza8y.js","assets/users-LmqvhHnq.js","assets/wifi-off-DtJhRDhE.js","assets/workflow-Za5zYpKH.js","assets/wrench-CSZxFJCP.js","assets/x-CSwbgjBe.js","assets/zap-CrtYfJ8v.js","assets/useSettings-Dx076NWT.js","assets/runtime-D8mKjOP-.js","assets/runtime-Bni_zt6P.js","assets/toast-DhMYg_gN.js","assets/TooltipViewport-BKD6QABG.js","assets/spinner-CpLstN6u.js","assets/useParams-Cil-ZIwd.js","assets/tooltip-Cq9yz15d.js","assets/env-wK1YYxA8.js","assets/environments-DYIXXf7q.js","assets/server-CaLEm3Wt.js","assets/session-2CRBJwS7.js","assets/use-atom-command-x4GQBtio.js","assets/themePalette-7p_LOU3J.js","assets/ThreadTerminalDrawer-B8n6TAqv.js","assets/rightPanelStore-6-YhsfkE.js","assets/fileLinks-BYi-XNUG.js","assets/toastHelpers-Dsph6LwL.js","assets/observeResize-D9ECzP-D.js","assets/browserHistoryStore-DURO3U2L.js","assets/entities-7B8nzlQw.js","assets/preview-Cl-7ojv-.js","assets/keybindings-BtHOXkP-.js","assets/preview-bd-MGMMz.js","assets/browserLinkTarget-DcGx3A8F.js","assets/popover-DE9WCm99.js","assets/PopoverHandle-CBT8hFut.js","assets/terminal-links-CjmSI9gV.js","assets/terminalSessions-Q2t1JYPS.js","assets/query-Bd5_Y_Vy.js","assets/terminalLabels-BgLOlb2G.js","assets/main-Bh6Hj0_-.js","assets/index-C_MVyH59.js","assets/vcsRefInvalidation-46AnO9mr.js","assets/number-field-DIYUxout.js","assets/useRegisterFieldControl-75QESVfk.js","assets/FormContext-Bgwez2tv.js","assets/CSPContext-4VAD2_gc.js","assets/select-B47XfaxQ.js","assets/SelectScrollUpArrow-SDOpV3nj.js","assets/link-gKYnbTYT.js","assets/redirect-D3L17tzd.js","assets/lazyRouteComponent-T0YE6Rn9.js","assets/useNavigate-DRqH9NhA.js","assets/useLocation-B3ir4ben.js","assets/queries-DkmaXOL-.js","assets/diffRendering-iR2meoVj.js","assets/session-logic-BLOBsHEA.js","assets/htmlRender-BxVc1PlI.js","assets/mediaSource-BTCWn94E.js","assets/mediaReference-CLlAiRVc.js","assets/usageFormat-BEGhDYfU.js","assets/timestampFormat-wac2e_Jz.js","assets/skeleton-C6_D5JUu.js","assets/useAriaLabelledBy-u5efXUxw.js","assets/toggle-BshAsXT6.js","assets/toggle-group-ZNzhUvHt.js","assets/CompositeRoot-DUqf78yV.js","assets/command-B70eQIps.js","assets/ComboboxClear-qTthzuJh.js","assets/input-RqvQJ9gh.js","assets/Input-BQRZG5rU.js","assets/FieldControl-BI2gK4Z0.js","assets/scroll-area-Davaj52_.js","assets/ScrollAreaCorner-CoeXGFSL.js","assets/DialogTitle-CQU6s1Wy.js","assets/dialog-DmneyTGi.js","assets/dist-vr51zfzA.js","assets/sidebar-BkujXU9U.js","assets/useResizeDrag-KJl_F2EN.js","assets/CollapsiblePanel-Cubscn-a.js","assets/AnimatedHeight-CH-N3JTc.js","assets/assets-DXnV2oRj.js","assets/sourceControl-BAghu6LN.js","assets/openFileInPreview-BhRAqg63.js","assets/Icons-B5JVkp3z.js","assets/PierreEntryIcon-CPG-jnaN.js","assets/pierre-icons-BG7vd34x.js","assets/RenderErrorBoundary-mfAvIiFU.js","assets/threadSort-C5oCCRfj.js","assets/pullRequestIcons-D5Yo5Zsn.js","assets/pullRequests-D0no1PZS.js","assets/ProjectFavicon-DUW6Bo66.js","assets/ProjectMonogram-B9iJhcVp.js","assets/projectFilesQueryState-BP_JvI7-.js","assets/checkbox-1tz9neVf.js","assets/CheckboxIndicator-ClY0P0ol.js","assets/FieldItemContext-Bn6xBVJg.js","assets/AlertDialogRoot-DvQNG7Nt.js","assets/guideRunStore-BEkwZ9H7.js","assets/pullRequestDetail.logic-C_aVDAY_.js","assets/pullRequestReviewStore-DaEzt1m1.js","assets/sortable.esm-BAEGChD3.js","assets/p4ProjectFile-z5Hlq99W.js","assets/sidebarProjectGrouping-DD4nu9RX.js","assets/useHandleNewThread-CReGBX6y.js","assets/EnvironmentMachineIcon-DCdlTSYU.js","assets/alert-5swcxUBm.js","assets/semver-CFbvOQKc.js","assets/ChatGptUsageButton-7u9uPgbK.js","assets/kbd-BnsXAHsc.js","assets/settingsLayout-DHc6oKfL.js","assets/WorkspacePageContainer-BSjVd7h4.js","assets/KeybindingsSettings.logic-6lVDnd1N.js","assets/usageShortcuts-DxuByyhD.js","assets/primaryCloudLinkState-DtOYGRkF.js","assets/ConnectionStatusDot-cdpNRZhA.js","assets/standalone-page-7vaVYOp-.js","assets/primary-BwHoAoya.js","assets/onboarding-COQ6KgRG.js","assets/scheduledTasksSettings.logic-BNC897-_.js","assets/main-CoSpTpWL.css"])))=>i.map(i=>d[i]);
2
+ import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{t}from"./index-C_MVyH59.js";import{r as n}from"./Icon-l19w4AjM.js";import{C_ as r,Cm as i,Ep as a,Ff as o,Ft as s,Hs as c,Ig as l,Is as u,Jp as d,Kd as f,NE as p,Os as m,Ou as h,Pp as g,Rs as _,Rt as v,TT as y,Th as b,Um as x,Vu as S,Wd as C,Wn as w,Wu as T,Xm as E,Yo as D,Yt as O,Yu as k,Zu as A,Zw as j,__ as M,a_ as N,bT as ee,b_ as te,fT as P,fh as F,hd as I,i_ as L,lE as R,n_ as z,o_ as ne,pm as re,r_ as ie,sr as B,t as ae,v_ as V,wh as oe,yl as H,zd as U}from"./utils-BEVyjoxo.js";import{R as se,W as ce,_t as le}from"./runtime-D8mKjOP-.js";import{C as W,w as ue}from"./entities-7B8nzlQw.js";import{_ as de,xt as fe}from"./runtime-Bni_zt6P.js";import{a as G,i as pe,n as me,r as he,t as K}from"./number-field-DIYUxout.js";import{a as q,c as ge,o as _e,s as ve,t as J}from"./select-B47XfaxQ.js";import{t as ye}from"./spinner-CpLstN6u.js";import{i as be,m as xe,p as Se}from"./toast-DhMYg_gN.js";import{A as Y,a as Ce,c as we,k as Te,n as Ee,t as De}from"./tooltip-Cq9yz15d.js";import{a as Oe,s as ke}from"./environments-DYIXXf7q.js";import{f as X,t as Ae}from"./server-CaLEm3Wt.js";import{a as je,i as Me,n as Ne}from"./session-2CRBJwS7.js";import{n as Pe}from"./query-Bd5_Y_Vy.js";import{t as Z}from"./use-atom-command-x4GQBtio.js";import{E as Fe,L as Ie,_ as Le,b as Re,f as ze,k as Be,m as Ve,y as He}from"./useSettings-Dx076NWT.js";import{n as Ue}from"./toastHelpers-Dsph6LwL.js";import{u as We}from"./timestampFormat-wac2e_Jz.js";import{i as Ge,n as Ke,r as qe}from"./radio-group-CBunNtTU.js";import{n as Je,t as Ye}from"./toggle-group-ZNzhUvHt.js";import{t as Xe}from"./input-RqvQJ9gh.js";import{t as Ze}from"./scroll-area-Davaj52_.js";import{a as Qe,c as $e,i as et,o as tt,r as nt,s as rt,t as it}from"./dialog-DmneyTGi.js";import{a as at,i as ot,n as st,o as ct,r as lt,t as ut}from"./empty-hFNkAHps.js";import{i as dt,n as ft,o as pt,t as mt}from"./popover-DE9WCm99.js";import{n as ht,r as gt,t as _t}from"./input-group-BFtrsedw.js";import{i as vt,n as yt,r as bt,t as xt}from"./color-picker-N6f_Hu7P.js";import{n as St}from"./EnvironmentMachineIcon-DCdlTSYU.js";import{r as Ct,t as wt}from"./alert-5swcxUBm.js";import{i as Tt,n as Et}from"./ChatGptUsageButton-7u9uPgbK.js";import{B as Dt,U as Ot,a as kt,f as At,i as jt,r as Mt,s as Nt,t as Pt,u as Ft}from"./settingsLayout-DHc6oKfL.js";import{n as It,r as Lt,t as Rt}from"./ConnectionStatusDot-cdpNRZhA.js";import{Aa as zt,Ar as Bt,Bn as Vt,Fr as Ht,Hn as Ut,Ir as Wt,La as Gt,Lr as Kt,Ma as qt,Mr as Jt,Na as Yt,Ni as Xt,Nr as Zt,Pr as Qt,Rr as $t,Un as en,Vn as tn,Wn as nn,fr as rn,ir as an,ja as on,jr as sn,ka as cn,qa as ln,r as un,yr as dn,zn as fn}from"./main-Bh6Hj0_-.js";import{t as pn}from"./draft-input-DHZ1J7B_.js";import{i as mn,l as hn,r as gn,t as _n}from"./SettingsPanels.logic-BwmY39Sq.js";import{t as vn}from"./FoldedSettingsSection-B9B8i8Gg.js";import{t as yn}from"./ExpandableText-BtdwzlFy.js";import{t as bn}from"./SecretInput-CROqj1gF.js";import{a as xn,c as Sn,i as Cn,n as wn,o as Tn,p as En,r as Dn,s as On,t as kn}from"./CodexSetupSection.logic-CEAT7YdZ.js";import{n as An,t as jn}from"./ProviderSettingsForm-DTYqzs8W.js";var Mn=p(),Q=e(n(),1),$=e(R(),1),Nn=`#2563eb`;function Pn(e){let t=(0,Mn.c)(29),{onCommit:n}=e,r;t[0]===e.value?r=t[1]:(r=()=>bt(e.value),t[0]=e.value,t[1]=r);let[i,a]=(0,Q.useState)(r),o;t[2]!==i.h||t[3]!==i.s||t[4]!==i.v?(o=vt(i.h,i.s,i.v),t[2]=i.h,t[3]=i.s,t[4]=i.v,t[5]=o):o=t[5];let s=o,[c,l]=(0,Q.useState)(null),u;t[6]===n?u=t[7]:(u=e=>{a(e),n(vt(e.h,e.s,e.v))},t[6]=n,t[7]=u);let d=u,f;t[8]!==d||t[9]!==i?(f=(0,$.jsx)(yt,{label:`Accent color`,value:i,onChange:d,variant:`edge`}),t[8]=d,t[9]=i,t[10]=f):f=t[10];let p;t[11]!==d||t[12]!==i?(p=e=>d({...i,h:e}),t[11]=d,t[12]=i,t[13]=p):p=t[13];let m;t[14]!==i.h||t[15]!==p?(m=(0,$.jsx)(xt,{label:`Accent color hue`,value:i.h,onChange:p}),t[14]=i.h,t[15]=p,t[16]=m):m=t[16];let h=c??s,g;t[17]===e?g=t[18]:(g=t=>{let n=t.currentTarget.value;l(n),/^#[\da-f]{6}$/i.test(n)&&(a(bt(n)),e.onCommit(n))},t[17]=e,t[18]=g);let _;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(_=()=>l(null),t[19]=_):_=t[19];let v;t[20]!==h||t[21]!==g?(v=(0,$.jsx)(Xe,{nativeInput:!0,size:`compact`,value:h,onChange:g,onBlur:_,font:`mono`,"aria-label":`Custom hex accent color`,spellCheck:!1}),t[20]=h,t[21]=g,t[22]=v):v=t[22];let y;t[23]!==m||t[24]!==v?(y=(0,$.jsxs)(`div`,{className:`grid gap-3 p-3`,children:[m,v]}),t[23]=m,t[24]=v,t[25]=y):y=t[25];let b;return t[26]!==y||t[27]!==f?(b=(0,$.jsxs)(`div`,{className:`w-56 bg-popover`,children:[f,y]}),t[26]=y,t[27]=f,t[28]=b):b=t[28],b}function Fn(e){let t=(0,Mn.c)(22),n;t[0]===e.value?n=t[1]:(n=O(e.value),t[0]=e.value,t[1]=n);let r=n,i;t[2]===r?i=t[3]:(i=r?{backgroundColor:r}:void 0,t[2]=r,t[3]=i);let a=`${r?`Change`:`Add`} accent color for ${e.displayName}`,o;t[4]===r?o=t[5]:(o=r?(0,$.jsx)(`span`,{className:`sr-only`,children:`Change accent color`}):(0,$.jsx)(g,{"aria-hidden":!0}),t[4]=r,t[5]=o);let s;t[6]!==i||t[7]!==a||t[8]!==o?(s=(0,$.jsx)(pt,{render:(0,$.jsx)(B,{type:`button`,size:`icon-sm`,variant:`ghost-muted`,style:i,"aria-label":a,children:o})}),t[6]=i,t[7]=a,t[8]=o,t[9]=s):s=t[9];let c=r??Nn,l;t[10]!==e.onCommit||t[11]!==c?(l=(0,$.jsx)(Pn,{value:c,onCommit:e.onCommit}),t[10]=e.onCommit,t[11]=c,t[12]=l):l=t[12];let u;t[13]!==r||t[14]!==e.onClear?(u=r?(0,$.jsx)(`div`,{className:`border-t border-border/60 p-1`,children:(0,$.jsx)(ft,{render:(0,$.jsxs)(B,{type:`button`,size:`compact`,variant:`ghost-muted`,className:`w-full justify-start`,onClick:e.onClear,children:[(0,$.jsx)(x,{className:`size-3.5`,"aria-hidden":!0}),`Clear color`]})})}):null,t[13]=r,t[14]=e.onClear,t[15]=u):u=t[15];let d;t[16]!==l||t[17]!==u?(d=(0,$.jsxs)(dt,{side:`bottom`,align:`start`,sideOffset:6,padding:`none`,children:[l,u]}),t[16]=l,t[17]=u,t[18]=d):d=t[18];let f;return t[19]!==s||t[20]!==d?(f=(0,$.jsxs)(mt,{children:[s,d]}),t[19]=s,t[20]=d,t[21]=f):f=t[21],f}function In(e){let t=(0,Mn.c)(28),{commitDelayMs:n,description:r,displayName:i,layout:a,onCommit:o,value:s}=e,c=n===void 0?0:n,l=a===void 0?`stacked`:a,u;t[0]===s?u=t[1]:(u=()=>s??``,t[0]=s,t[1]=u);let[d,f]=(0,Q.useState)(u),p=(0,Q.useRef)(null),m=(0,Q.useRef)(null),h=(0,Q.useRef)(o),g,_;t[2]===o?(g=t[3],_=t[4]):(g=()=>{h.current=o},_=[o],t[2]=o,t[3]=g,t[4]=_),(0,Q.useEffect)(g,_);let v,y;t[5]===s?(v=t[6],y=t[7]):(v=()=>{m.current===null&&f(s??``)},y=[s],t[5]=s,t[6]=v,t[7]=y),(0,Q.useEffect)(v,y);let b,x;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(b=()=>()=>{p.current!==null&&clearTimeout(p.current);let e=m.current;e!==null&&h.current(e)},x=[],t[8]=b,t[9]=x):(b=t[8],x=t[9]),(0,Q.useEffect)(b,x);let S;t[10]!==c||t[11]!==o?(S=e=>{let t=O(e)??``;if(f(t),c<=0){m.current=null,p.current!==null&&(clearTimeout(p.current),p.current=null),o(t);return}m.current=t,p.current!==null&&clearTimeout(p.current),p.current=setTimeout(()=>{p.current=null;let e=m.current;m.current=null,e!==null&&h.current(e)},c)},t[10]=c,t[11]=o,t[12]=S):S=t[12];let C=S,w;t[13]===d?w=t[14]:(w=O(d),t[13]=d,t[14]=w);let T=w,E;t[15]===C?E=t[16]:(E=()=>C(``),t[15]=C,t[16]=E);let D;t[17]!==C||t[18]!==i||t[19]!==T||t[20]!==E?(D=(0,$.jsx)(Fn,{displayName:i,value:T,onCommit:C,onClear:E}),t[17]=C,t[18]=i,t[19]=T,t[20]=E,t[21]=D):D=t[21];let k=D;if(l===`inline`)return k;let A;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(A=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Accent color`}),t[22]=A):A=t[22];let j;t[23]===r?j=t[24]:(j=r?(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:r}):null,t[23]=r,t[24]=j);let M;return t[25]!==k||t[26]!==j?(M=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[A,k,j]}),t[25]=k,t[26]=j,t[27]=M):M=t[27],M}var Ln=1,Rn=1,zn=[`Provider`,`Identity`,`Config`],Bn=[`Provider`,`Identity`,`Sign in`],Vn=[`Provider`,`Identity`],Hn={label:``,accentColor:``,instanceIdOverride:null};function Un(e,t){return e[t]??Hn}function Wn(e,t,n){return{...e,[t]:{...Un(e,t),...n}}}function Gn(e,t,n){let r=e(t);if(!r||!n.has(r))return r;for(let e=2;;e+=1){let t=`_${e}`,i=`${r.slice(0,64-t.length)}${t}`;if(!n.has(i))return i}}function Kn(e,t){return Object.values(e).some(e=>{if(e.driver!==`acpRegistry`||!e.config||typeof e.config!=`object`)return!1;let n=e.config;return n.source!==`local`&&n.agentId===t})}function qn(e,t,n,r){let i=Math.max(0,n-1),a=Math.max(0,Math.min(i,t)),o=r.identityStep??Ln,s=r.prerequisite;return s?.error&&e<=s.step&&a>s.step?{kind:`blocked`,step:Math.min(s.step,i),error:s.error}:e<=o&&a>o&&r.instanceIdError!==null?{kind:`blocked`,step:Math.min(o,i),error:r.instanceIdError}:{kind:`navigate`,step:a}}function Jn(e,t,n){return qn(e,t,Bn.length,{instanceIdError:n.instanceIdError,identityStep:Rn,prerequisite:{step:0,error:n.selectionError}})}function Yn(e){let t=(0,Mn.c)(15),{currentStep:n,summaries:r,instanceIdError:i,steps:a,identityStep:o,prerequisite:s,onNavigation:c,disabled:l}=e,u=a===void 0?zn:a,d=l!==void 0&&l,f;t[0]===d?f=t[1]:(f=()=>d,t[0]=d,t[1]=f);let p;t[2]!==n||t[3]!==o||t[4]!==i||t[5]!==c||t[6]!==s||t[7]!==u.length?(p=e=>c(qn(n,e,u.length,{instanceIdError:i,...o===void 0?{}:{identityStep:o},...s===void 0?{}:{prerequisite:s}})),t[2]=n,t[3]=o,t[4]=i,t[5]=c,t[6]=s,t[7]=u.length,t[8]=p):p=t[8];let m;return t[9]!==n||t[10]!==u||t[11]!==r||t[12]!==f||t[13]!==p?(m=(0,$.jsx)(Yt,{steps:u,currentStep:n,summaries:r,isStepDisabled:f,onStepChange:p}),t[9]=n,t[10]=u,t[11]=r,t[12]=f,t[13]=p,t[14]=m):m=t[14],m}function Xn(e){return e instanceof Error&&e.message.trim()?e.message:`The ACP could not be prepared.`}function Zn(e,t){return{...e,id:t.agentId,version:t.version,distribution:t.distribution}}function Qn(e){let t=(0,Mn.c)(48),{environmentId:n,providerInstances:r,onPrepared:i,onManualConfiguration:a,onLocalConfiguration:o,onLoadingChange:s,onPreparingChange:c}=e,[l,u]=(0,Q.useState)(``),[p,m]=(0,Q.useState)(``),h=Me(n,te),[g,_]=(0,Q.useState)(null),[v,y]=(0,Q.useState)(null),b=(0,Q.useRef)(0),x=(0,Q.useRef)(null),S;t[0]!==n||t[1]!==p?(S=X.searchAcpRegistry({environmentId:n,input:{query:p}}),t[0]=n,t[1]=p,t[2]=S):S=t[2];let C=Pe(S),w;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(w={reportFailure:!1},t[3]=w):w=t[3];let T=Z(X.prepareAcpRegistryAgent,w),E,D;t[4]===c?(E=t[5],D=t[6]):(E=()=>()=>{b.current+=1,x.current!==null&&clearTimeout(x.current),c?.(!1)},D=[c],t[4]=c,t[5]=E,t[6]=D),(0,Q.useEffect)(E,D);let O;t[7]!==C||t[8]!==p?(O=e=>{x.current!==null&&clearTimeout(x.current);let t=e.trim();u(t),y(null),t===p?C.refresh():m(t)},t[7]=C,t[8]=p,t[9]=O):O=t[9];let k=O,A;t[10]!==l||t[11]!==k?(A=e=>{e.preventDefault(),k(l)},t[10]=l,t[11]=k,t[12]=A):A=t[12];let j=A,M=async e=>{if(!Ne(n,`providers:manage`))return;let t=b.current+=1;y(null),_(e.id),c?.(!0);let r=await T({environmentId:n,input:{agentId:e.id}});if(b.current===t){if(_(null),c?.(!1),r._tag===`Success`){i(Zn(e,r.value));return}se(r)||y(Xn(ce(r)))}},N=C.data?.agents??null,ee=C.isPending&&N===null,P=C.isPending&&N!==null,F=N?.length??0,I,L;t[13]!==s||t[14]!==C.isPending?(I=()=>(s?.(C.isPending),()=>s?.(!1)),L=[s,C.isPending],t[13]=s,t[14]=C.isPending,t[15]=I,t[16]=L):(I=t[15],L=t[16]),(0,Q.useLayoutEffect)(I,L);let R;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`h3`,{className:`sr-only`,id:`acp-registry-search-heading`,children:`Choose an agent`}),t[17]=R):R=t[17];let ne;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(ne=(0,$.jsx)(ht,{children:(0,$.jsx)(d,{})}),t[18]=ne):ne=t[18];let re=g!==null,ie;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(ie=e=>{let t=e.currentTarget.value;u(t),y(null),x.current!==null&&clearTimeout(x.current),x.current=setTimeout(()=>{x.current=null,m(t.trim())},300)},t[19]=ie):ie=t[19];let ae;t[20]!==l||t[21]!==re?(ae=(0,$.jsxs)(_t,{className:`min-w-40 flex-1`,children:[ne,(0,$.jsx)(gt,{"aria-label":`Search ACP Registry`,disabled:re,onChange:ie,placeholder:`Search agents…`,size:`sm`,type:`search`,value:l})]}),t[20]=l,t[21]=re,t[22]=ae):ae=t[22];let V=g!==null,oe;t[23]!==a||t[24]!==V?(oe=(0,$.jsx)(B,{disabled:V,onClick:a,size:`sm`,type:`button`,variant:`ghost-muted`,children:`Enter manually`}),t[23]=a,t[24]=V,t[25]=oe):oe=t[25];let H;t[26]!==o||t[27]!==g?(H=o?(0,$.jsx)(B,{disabled:g!==null,onClick:o,size:`sm`,type:`button`,variant:`outline`,children:`Local ACP command`}):null,t[26]=o,t[27]=g,t[28]=H):H=t[28];let U;t[29]!==j||t[30]!==ae||t[31]!==oe||t[32]!==H?(U=(0,$.jsxs)(`form`,{className:`flex flex-wrap items-center gap-2`,onSubmit:j,children:[ae,oe,H]}),t[29]=j,t[30]=ae,t[31]=oe,t[32]=H,t[33]=U):U=t[33];let le=ee?`Searching the ACP Registry.`:P?`Refreshing ACP Registry results.`:N?`${F} compatible ${F===1?`agent`:`agents`} found.`:``,W;t[34]===le?W=t[35]:(W=(0,$.jsx)(`div`,{className:`sr-only`,role:`status`,children:le}),t[34]=le,t[35]=W);let ue;t[36]!==v||t[37]!==C.error?(ue=C.error||v?(0,$.jsx)(wt,{variant:`error`,role:`status`,"aria-live":`polite`,children:(0,$.jsx)(Ct,{children:v??C.error})}):null,t[36]=v,t[37]=C.error,t[38]=ue):ue=t[38];let de;t[39]===ee?de=t[40]:(de=ee?(0,$.jsx)(`div`,{className:`flex min-h-20 items-center justify-center text-sm text-muted-foreground`,children:`Searching the registry...`}):null,t[39]=ee,t[40]=de);let fe=N?N.length===0?(0,$.jsxs)(`div`,{className:`flex min-h-28 flex-col items-center justify-center rounded-2xl border border-dashed px-4 text-center`,children:[(0,$.jsx)(`p`,{className:`text-sm font-medium`,children:`No compatible agents found`}),(0,$.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`Try a broader search.`})]}):(0,$.jsx)(Ze,{scrollFade:!0,className:`max-h-64`,children:(0,$.jsx)(`div`,{className:`pr-2.5`,children:N.map(e=>{let t=Kn(r,e.id),n=g===e.id,i=e.distribution===`binary`?`Downloading`:`Preparing`;return(0,$.jsx)(`article`,{className:`min-w-0 py-2.5`,children:(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,$.jsx)(Et,{driverKind:z.make(`acpRegistry`),displayName:e.name,acpRegistryAgentId:e.id,acpRegistryIconUrl:e.icon??void 0,iconClassName:`size-6 rounded-md text-muted-foreground`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`div`,{className:`flex min-w-0 items-baseline gap-2`,children:(0,$.jsx)(`h4`,{className:`min-w-0 truncate text-sm font-medium text-foreground`,children:e.name})}),e.description?(0,$.jsx)(`p`,{className:`mt-0.5 truncate text-xs text-muted-foreground`,children:e.description}):null]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[e.website||e.repository?(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-xs`,variant:`ghost-muted`,"aria-label":`About ${e.name}`,render:(0,$.jsx)(`a`,{href:e.website||e.repository||void 0,target:`_blank`,rel:`noreferrer`}),children:(0,$.jsx)(f,{})})}),(0,$.jsxs)(Ee,{children:[`About `,e.name]})]}):null,(0,$.jsx)(B,{"aria-label":`${t?`Already added`:n?i:`Add`} ${e.name}`,disabled:!h||t||g!==null,onClick:()=>void M(e),size:`xs`,variant:n?`secondary`:`outline`,children:t?`Added`:n?i:`Add`})]})]})},e.id)})})}):null,G;return t[41]!==R||t[42]!==U||t[43]!==W||t[44]!==ue||t[45]!==de||t[46]!==fe?(G=(0,$.jsxs)(`section`,{className:`grid gap-3`,"aria-labelledby":`acp-registry-search-heading`,children:[R,U,W,ue,de,fe]}),t[41]=R,t[42]=U,t[43]=W,t[44]=ue,t[45]=de,t[46]=fe,t[47]=G):G=t[47],G}var $n=(0,Q.lazy)(()=>t(()=>import(`./ProviderAuthTerminal-eq346NX_.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329])));function er({environmentId:e,environmentLabel:t,instanceId:n,provider:r,readOnly:i}){let a={environmentId:e,input:{instanceId:n}},o=Pe(X.providerAuthState(a)),s={reportFailure:!1,reportDefect:!1},c=Z(X.startProviderAuth,s),l=Z(X.respondProviderAuth,s),u=Z(X.completeProviderAuth,s),d=Z(X.cancelProviderAuth,s),f=Z(X.logoutProviderAuth,s),[p,m]=(0,Q.useState)(``),[h,g]=(0,Q.useState)({id:``,values:{}}),[_,v]=(0,Q.useState)(null),[y,b]=(0,Q.useState)(!1),x=(0,Q.useRef)(!1),S=(0,Q.useRef)([]),C=(0,Q.useRef)(!1),w=o.data,T=w?.interaction,E=w?.phase===`starting`||w?.phase===`waiting`||w?.phase===`verifying`,D=r.auth.status===`authenticated`||r.auth.status===`unknown`&&w?.phase===`succeeded`,O=r.driver===`acpRegistry`&&!E&&!D&&!o.error&&w?.methods===void 0,k=!E&&!D&&(r.setup?.canAuthenticate===!1||r.driver===`acpRegistry`&&w?.methods?.length===0),A=E?w?.phase===`starting`?`Starting sign-in…`:w?.phase===`verifying`?`Checking your account…`:T?.type===`terminal`?`Complete sign-in in the terminal below.`:T?.type===`credentials`?`Enter your credentials below.`:`Finish signing in in your browser.`:D?`Signed in.`:O?`Discovering sign-in methods…`:k?`No in-app sign-in advertised. Follow the provider's docs to finish setup.`:`Sign in on ${t}.`,j=w?.phase===`failed`?w.message:null,M=i||y||o.error!==null||O,N=`${w?.flowId??``}:${T?.id??``}`,ee=h.id===N?h.values:{},te=T?.type===`browser`||T?.type===`deviceCode`?T.url:w?.authorizationUrl;async function P(e){if(x.current)return!1;x.current=!0,b(!0),v(null);let t=!1;try{let n=await e();if(n._tag===`Success`)t=!0;else if(!se(n)){let e=ce(n);v(e instanceof Error?e.message:`Provider sign-in failed. Try again.`)}}catch{v(`Provider sign-in failed. Try again.`)}return x.current=!1,b(!1),t}async function F(t){return!w?.flowId||!T?!1:P(()=>l({environmentId:e,input:{instanceId:n,flowId:w.flowId,interactionId:T.id,response:t}}))}async function I(){if(!te||i)return;let e=T?.type===`browser`&&T.requiresConsent,t=e&&!window.desktopBridge?window.open(``,`_blank`):null;t&&(t.opener=null);try{if(e&&!await F({type:`browser`,action:`accept`})){t?.close();return}t?t.location.href=te:await Ie().shell.openExternal(te),v(null)}catch{t?.close(),v(`Could not open the sign-in page. Copy the link and open it in your browser.`)}}function L(e,t){g({id:N,values:{...ee,[e]:t}})}return(0,$.jsx)(kt,{title:`Account`,description:D&&!E&&r.auth.email?.trim()?(0,$.jsxs)(`span`,{children:[`Signed in as`,` `,(0,$.jsx)(rn,{value:r.auth.email,ariaLabel:`Toggle account email visibility`,revealTooltip:`Click to reveal email`,hideTooltip:`Click to hide email`,className:`max-w-full truncate`},r.auth.email)]}):(0,$.jsx)(`span`,{role:`status`,children:A}),status:j?(0,$.jsx)(`p`,{role:`status`,className:`[overflow-wrap:anywhere]`,children:j}):void 0,control:(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-1.5`,children:[!E&&(w?.methods?.length??0)>1?(0,$.jsxs)(J,{value:w?.methods?.some(e=>e.id===p)?p:``,disabled:M,onValueChange:e=>m(e??``),children:[(0,$.jsx)(ve,{size:`sm`,"aria-label":`Sign-in method`,className:`w-44`,children:(0,$.jsx)(ge,{children:w?.methods?.find(e=>e.id===p)?.name??`Provider default`})}),(0,$.jsxs)(_e,{children:[(0,$.jsx)(q,{value:``,children:`Provider default`}),w?.methods?.map(e=>(0,$.jsx)(q,{value:e.id,children:e.name},e.id))]})]}):null,te?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(B,{size:`sm`,variant:`outline`,disabled:M,onClick:()=>void I(),children:`Open browser`}),(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{"aria-label":`Copy sign-in link`,size:`icon-sm`,variant:`ghost-muted`,disabled:M,onClick:()=>{let e=xe(te,`Provider sign-in link`);(async()=>{await e,T?.type===`browser`&&T.requiresConsent&&await F({type:`browser`,action:`accept`})})().catch(()=>v(`Could not copy the sign-in link.`))},children:(0,$.jsx)(U,{})})}),(0,$.jsx)(Ee,{children:`Copy sign-in link`})]})]}):null,(0,$.jsxs)($.Fragment,{children:[k&&r.setup?.documentationUrl?(0,$.jsx)(B,{size:`sm`,variant:`outline`,render:(0,$.jsx)(`a`,{href:r.setup.documentationUrl,target:`_blank`,rel:`noreferrer`}),children:`Open docs`}):E&&w?.flowId?(0,$.jsx)(B,{size:`sm`,variant:`ghost-muted`,"aria-label":`Cancel sign-in`,disabled:M,onClick:()=>void P(()=>d({environmentId:e,input:{instanceId:n,flowId:w.flowId}})),children:`Cancel`}):!E&&!k&&r.setup?.canAuthenticate!==!1?(0,$.jsx)(B,{size:`sm`,variant:`outline`,disabled:M||!r.enabled||!r.installed||!w,onClick:()=>void P(()=>c({environmentId:e,input:{instanceId:n,...p&&w?.methods?.some(e=>e.id===p)?{methodId:p}:{}}})),children:D?`Change account`:w?.phase===`failed`||w?.phase===`cancelled`?`Retry sign-in`:`Sign in`}):null,!E&&D&&(r.auth.canLogout??r.setup?.canAuthenticate)?(0,$.jsx)(B,{size:`sm`,variant:`ghost`,disabled:M||!w,onClick:()=>{Ie().dialogs.confirm(`Sign out of ${r.displayName??r.driver} on ${t}? This stops running threads that share this sign-in. Thread history is kept.`).then(e=>{e&&P(()=>f(a))})},children:`Sign out`}):null]})]}),children:T?.type===`terminal`||T?.type===`credentials`||T?.type===`deviceCode`||te&&(T?.type===`browser`?T.acceptsCallback:!T)||_||o.error?(0,$.jsxs)($.Fragment,{children:[T?.type===`deviceCode`?(0,$.jsxs)(`p`,{className:`py-2 text-sm text-muted-foreground`,children:[`Enter code`,` `,(0,$.jsx)(`code`,{className:`select-all font-mono text-foreground`,children:T.userCode}),` `,`in your browser.`]}):null,T?.type===`terminal`?(0,$.jsx)(`div`,{className:`py-2`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Loading sign-in terminal…`}),children:(0,$.jsx)($n,{output:T.output,outputOffset:T.outputOffset,onResponse:t=>{if(!i&&w?.flowId){for(let e=0;e<Math.max(1,t.data.length);e+=4096)S.current.push({instanceId:n,flowId:w.flowId,interactionId:T.id,response:{...t,data:t.data.slice(e,e+4096)}});C.current||(C.current=!0,(async()=>{for(;S.current.length>0;){let t=S.current.shift(),n=await l({environmentId:e,input:t});if(n._tag!==`Success`){S.current=[],se(n)||v(`The provider sign-in terminal is no longer available.`);break}}})().catch(()=>{S.current=[],v(`Could not send input to the provider sign-in terminal.`)}).finally(()=>{C.current=!1}))}}},`${w?.flowId}:${T.id}`)})}):null,T?.type===`credentials`?(0,$.jsxs)(`form`,{className:`grid gap-2 py-2 text-sm leading-normal`,onSubmit:e=>{e.preventDefault(),F({type:`credentials`,values:ee}).then(e=>{e&&g({id:``,values:{}})})},children:[T.fields.map(e=>(0,$.jsxs)(`label`,{className:`grid gap-1`,children:[e.label,(0,$.jsx)(Xe,{size:`sm`,type:e.secret?`password`:`text`,autoComplete:`off`,value:ee[e.name]??``,disabled:M,maxLength:16384,onChange:t=>L(e.name,t.target.value)})]},e.name)),(0,$.jsx)(B,{type:`submit`,size:`sm`,variant:`outline`,className:`w-fit`,disabled:M,children:`Connect`})]}):null,te&&(T?.type===`browser`?T.acceptsCallback:!T)?(0,$.jsxs)(`form`,{className:`grid gap-2 py-2 text-sm leading-normal`,onSubmit:t=>{t.preventDefault(),w?.flowId&&ee.callback?.trim()&&P(()=>u({environmentId:e,input:{instanceId:n,flowId:w.flowId,callbackUrl:ee.callback}})).then(e=>{e&&g({id:``,values:{}})})},children:[(0,$.jsxs)(`label`,{className:`grid gap-1`,children:[`If the final localhost page does not load, paste its full URL here.`,(0,$.jsx)(Xe,{size:`sm`,id:`provider-callback-${n}`,type:`url`,autoComplete:`off`,value:ee.callback??``,disabled:M,maxLength:16384,onChange:e=>L(`callback`,e.target.value)})]}),(0,$.jsx)(B,{type:`submit`,size:`sm`,variant:`outline`,className:`w-fit`,disabled:M||!ee.callback?.trim(),children:`Continue`})]}):null,_||o.error?(0,$.jsx)(`p`,{role:`alert`,className:`py-2 text-xs text-destructive`,children:_??o.error}):null]}):null})}function tr(e){let t=(0,Mn.c)(26),{environmentId:n,environmentLabel:r,instanceId:i,onFinish:a}=e,o=D(X.providersValueAtom(n))??Ae,s;if(t[0]!==i||t[1]!==o){let e;t[3]===i?e=t[4]:(e=e=>e.instanceId===i,t[3]=i,t[4]=e),s=o.find(e),t[0]=i,t[1]=o,t[2]=s}else s=t[2];let c=s,l;t[5]!==n||t[6]!==i?(l=X.providerAuthState({environmentId:n,input:{instanceId:i}}),t[5]=n,t[6]=i,t[7]=l):l=t[7];let u=Pe(l),d=u.data,f=d?.phase===`starting`||d?.phase===`waiting`||d?.phase===`verifying`,p=c?.auth.status===`authenticated`||c?.auth.status===`unknown`&&d?.phase===`succeeded`,m=!p&&!u.error&&d?.methods===void 0,h=(d?.methods?.length??0)>0,g;t[8]!==d?.message||t[9]!==h||t[10]!==n||t[11]!==r||t[12]!==i||t[13]!==m||t[14]!==c||t[15]!==u.error||t[16]!==p?(g=(0,$.jsx)(on,{className:`min-h-72`,children:(0,$.jsx)(Ot,{variant:`plain`,children:c&&(h||p)?(0,$.jsx)(er,{environmentId:n,environmentLabel:r,instanceId:i,provider:{...c,setup:{...c.setup,canInstall:c.setup?.canInstall??!1,canAuthenticate:h}},readOnly:!1}):(0,$.jsx)(kt,{title:`Account`,description:m?`Discovering sign-in methods…`:u.error??d?.message??`No in-app sign-in advertised. Follow the provider's docs to finish setup.`,control:m?(0,$.jsx)(B,{disabled:!0,size:`sm`,variant:`outline`,children:`Sign in`}):c?.setup?.documentationUrl?(0,$.jsx)(B,{size:`sm`,variant:`outline`,render:(0,$.jsx)(`a`,{href:c.setup.documentationUrl,target:`_blank`,rel:`noreferrer`}),children:`Open docs`}):void 0})})}),t[8]=d?.message,t[9]=h,t[10]=n,t[11]=r,t[12]=i,t[13]=m,t[14]=c,t[15]=u.error,t[16]=p,t[17]=g):g=t[17];let _=p?`default`:`outline`,v=p?`Done`:`Skip for now`,y;t[18]!==f||t[19]!==a||t[20]!==_||t[21]!==v?(y=(0,$.jsx)(cn,{children:(0,$.jsx)(B,{size:`sm`,variant:_,disabled:f,onClick:a,children:v})}),t[18]=f,t[19]=a,t[20]=_,t[21]=v,t[22]=y):y=t[22];let b;return t[23]!==g||t[24]!==y?(b=(0,$.jsxs)($.Fragment,{children:[g,y]}),t[23]=g,t[24]=y,t[25]=b):b=t[25],b}var nr=[{id:`low`,label:`Low`},{id:`medium`,label:`Medium`,isDefault:!0},{id:`high`,label:`High`},{id:`xhigh`,label:`Extra High`}],rr={[z.make(`codex`)]:[{id:`reasoningEffort`,label:`Reasoning`,type:`select`,choices:nr},{id:`serviceTier`,label:`Speed`,type:`select`,choices:[{id:`default`,label:`Standard`,isDefault:!0},{id:`fast`,label:`Fast`}]}],[z.make(`claudeAgent`)]:[{id:`effort`,label:`Reasoning`,type:`select`,choices:[{id:`low`,label:`Low`},{id:`medium`,label:`Medium`},{id:`high`,label:`High`,isDefault:!0},{id:`xhigh`,label:`Extra High`},{id:`max`,label:`Max`}]},{id:`fastMode`,label:`Fast Mode`,type:`boolean`},{id:`thinking`,label:`Thinking`,type:`boolean`}],[z.make(`cursor`)]:[{id:`reasoning`,label:`Reasoning`,type:`select`,choices:nr},{id:`fastMode`,label:`Fast Mode`,type:`boolean`},{id:`thinking`,label:`Thinking`,type:`boolean`}],[z.make(`grok`)]:[{id:`reasoningEffort`,label:`Reasoning`,type:`select`,choices:nr}],[z.make(`pi`)]:[{id:`thinking`,label:`Thinking`,type:`select`,choices:[{id:`off`,label:`Off`},{id:`minimal`,label:`Minimal`},{id:`low`,label:`Low`},{id:`medium`,label:`Medium`,isDefault:!0},{id:`high`,label:`High`},{id:`xhigh`,label:`Extra High`},{id:`max`,label:`Max`}]}],[z.make(`opencode`)]:[{id:`variant`,label:`Reasoning`,type:`select`,choices:nr},{id:`agent`,label:`Agent`,type:`select`,choices:[{id:`build`,label:`Build`,isDefault:!0},{id:`plan`,label:`Plan`}]}]},ir=0;function ar(){return ir+=1,`k${ir}`}function or(e){return{key:ar(),id:e.id,label:e.label,isDefault:!!e.isDefault}}function sr(e){return{key:ar(),type:e.type,id:e.id,label:e.label,choices:(e.choices??[]).map(or)}}function cr(){return{key:ar(),type:`select`,id:``,label:``,choices:[]}}function lr(){return{key:ar(),id:``,label:``,isDefault:!1}}function ur(e){let t=new Set(e.type===`select`?e.promptInjectedValues??[]:[]),n=e.type===`select`?e.options.filter(e=>!t.has(e.id)):[],r=n.find(t=>t.id===e.currentValue)??n.find(e=>e.isDefault);return{key:ar(),type:e.type,id:e.id,label:e.label,...e.description===void 0?{}:{description:e.description},...e.type===`boolean`&&e.currentValue!==void 0?{currentBooleanValue:e.currentValue}:{},choices:n.map(e=>({key:ar(),id:e.id,label:e.label,...e.description===void 0?{}:{description:e.description},isDefault:e===r}))}}function dr(e){return{slug:e.slug,name:e.name===e.slug?``:e.name,descriptors:(e.capabilities?.optionDescriptors??[]).map(ur)}}function fr(e,t){return(e?.optionDescriptors??[]).filter(e=>t!==`claudeAgent`||e.id!==`contextWindow`).map(ur)}function pr(e){let t=new Set;for(let[n,r]of e.descriptors.entries()){let e=`Option ${n+1}`,i=r.id.trim();if(!i)return`${e} needs an id.`;if(t.has(i))return`${e}: id "${i}" is used twice.`;if(t.add(i),!r.label.trim())return`${e} needs a label.`;if(r.type!==`select`)continue;if(r.choices.length===0)return`${e} needs at least one choice.`;let a=new Set;for(let t of r.choices){let n=t.id.trim();if(!n)return`${e} has a choice without a value.`;if(a.has(n))return`${e}: choice "${n}" is used twice.`;a.add(n)}}return null}function mr(e){let t=e.descriptors.map(e=>{let t=e.id.trim(),n=e.label.trim();if(e.type===`boolean`)return{id:t,label:n,type:`boolean`,...e.description===void 0?{}:{description:e.description},...e.currentBooleanValue===void 0?{}:{currentValue:e.currentBooleanValue}};let r=e.choices.map(e=>({id:e.id.trim(),label:e.label.trim()||e.id.trim(),...e.description===void 0?{}:{description:e.description},...e.isDefault?{isDefault:!0}:{}})),i=r.find(e=>e.isDefault)?.id;return{id:t,label:n,type:`select`,...e.description===void 0?{}:{description:e.description},options:r,...i?{currentValue:i}:{}}}),n=e.name.trim();return{slug:e.slug,name:n||e.slug,capabilities:t.length>0?m({optionDescriptors:t}):null}}var hr=`__custom__`,gr=`__none__`;function _r(e){let t=(0,Mn.c)(79),{instanceId:n,driverKind:r,entry:i,builtInModels:a,onSave:o,onCancel:s}=e,c;t[0]===i?c=t[1]:(c=()=>dr(i),t[0]=i,t[1]=c);let[l,u]=(0,Q.useState)(c),[d,f]=(0,Q.useState)(null),p;t[2]===r?p=t[3]:(p=r?rr[r]??[]:[],t[2]=r,t[3]=p);let m=p,h;t[4]===a?h=t[5]:(h=a.filter(br),t[4]=a,t[5]=h);let _=h,v;t[6]===n?v=t[7]:(v=e=>`provider-instance-${n}-custom-model-${e}`,t[6]=n,t[7]=v);let y=v,b;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(b=(e,t)=>{f(null),u(n=>({...n,descriptors:n.descriptors.map(n=>n.key===e?{...n,...t}:n)}))},t[8]=b):b=t[8];let S=b,C;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(C=(e,t,n)=>{f(null),u(r=>({...r,descriptors:r.descriptors.map(r=>r.key===e?{...r,choices:r.choices.map(e=>e.key===t?{...e,...n}:n.isDefault?{...e,isDefault:!1}:e)}:r)}))},t[9]=C):C=t[9];let w=C,T;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(T=e=>{f(null),u(t=>({...t,descriptors:t.descriptors.filter(t=>t.key!==e)}))},t[10]=T):T=t[10];let E=T,D;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(D=e=>{f(null),u(t=>({...t,descriptors:[...t.descriptors,e]}))},t[11]=D):D=t[11];let O=D,k;t[12]===m?k=t[13]:(k=(e,t)=>{if(t===null)return;if(t===hr){S(e.key,{id:``});return}let n=m.find(e=>e.id===t);n&&S(e.key,{id:n.id,label:n.label,type:n.type,choices:(n.choices??[]).map(or),currentBooleanValue:void 0,description:void 0})},t[12]=m,t[13]=k);let A=k,j;t[14]!==r||t[15]!==_?(j=e=>{if(e===null||e===gr)return;let t=_.find(t=>t.slug===e);t&&(f(null),u(e=>({...e,descriptors:fr(t.capabilities,r)})))},t[14]=r,t[15]=_,t[16]=j):j=t[16];let M=j,N;t[17]!==l||t[18]!==o?(N=()=>{let e=pr(l);if(e){f(e);return}o(mr(l))},t[17]=l,t[18]=o,t[19]=N):N=t[19];let ee=N,te;t[20]===m?te=t[21]:(te=e=>m.some(t=>t.id===e.id)?e.id:hr,t[20]=m,t[21]=te);let P=te,F;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(F=(e,t)=>(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Xe,{size:`compact`,value:t.id,onChange:n=>w(e.key,t.key,{id:n.target.value}),placeholder:`value`,font:`mono`,className:`w-28`,spellCheck:!1,"aria-label":`Choice value`}),(0,$.jsx)(Xe,{size:`compact`,value:t.label,onChange:n=>w(e.key,t.key,{label:n.target.value}),placeholder:`Label`,className:`min-w-0 flex-1`,"aria-label":`Choice label`}),(0,$.jsxs)(`label`,{className:`flex shrink-0 items-center gap-1.5 text-2xs text-muted-foreground`,children:[(0,$.jsx)(Gt,{size:`sm`,checked:t.isDefault,onCheckedChange:n=>w(e.key,t.key,{isDefault:n}),"aria-label":`Default choice`}),`Default`]}),(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,"aria-label":`Remove choice`,onClick:()=>S(e.key,{choices:e.choices.filter(e=>e.key!==t.key)}),children:(0,$.jsx)(x,{className:`size-3`})})]},t.key),t[22]=F):F=t[22];let I=F,L;t[23]!==A||t[24]!==P||t[25]!==m?(L=(e,t)=>(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border border-border/60 bg-background/40 p-2.5`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`w-14 shrink-0 text-2xs text-muted-foreground`,children:[`Option `,t+1]}),m.length>0?(0,$.jsxs)(J,{value:P(e),onValueChange:t=>A(e,t),children:[(0,$.jsx)(ve,{size:`compact`,className:`w-40`,"aria-label":`Option id`,children:(0,$.jsx)(ge,{children:P(e)===hr?`Custom…`:e.id})}),(0,$.jsxs)(_e,{align:`start`,alignItemWithTrigger:!1,children:[m.map(yr),(0,$.jsx)(q,{value:hr,children:`Custom…`})]})]}):null,P(e)===hr?(0,$.jsx)(Xe,{size:`compact`,value:e.id,onChange:t=>S(e.key,{id:t.target.value}),placeholder:`optionId`,font:`mono`,className:`w-36`,spellCheck:!1,"aria-label":`Option id`}):null,(0,$.jsx)(Xe,{size:`compact`,value:e.label,onChange:t=>S(e.key,{label:t.target.value}),placeholder:`Label`,className:`min-w-0 flex-1`,"aria-label":`Option label`}),(0,$.jsxs)(J,{value:e.type,onValueChange:t=>S(e.key,{type:t===`boolean`?`boolean`:`select`}),children:[(0,$.jsx)(ve,{size:`compact`,className:`w-24`,"aria-label":`Option type`,children:(0,$.jsx)(ge,{children:e.type===`boolean`?`Toggle`:`Choices`})}),(0,$.jsxs)(_e,{align:`end`,alignItemWithTrigger:!1,children:[(0,$.jsx)(q,{value:`select`,children:`Choices`}),(0,$.jsx)(q,{value:`boolean`,children:`Toggle`})]})]}),(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,"aria-label":`Remove option ${t+1}`,onClick:()=>E(e.key),children:(0,$.jsx)(x,{className:`size-3`})})]}),e.type===`select`?(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5 pl-16`,children:[e.choices.map(t=>I(e,t)),(0,$.jsxs)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,className:`-ml-2 self-start`,onClick:()=>S(e.key,{choices:[...e.choices,lr()]}),children:[(0,$.jsx)(g,{className:`size-3`}),`Add choice`]})]}):null]},e.key),t[23]=A,t[24]=P,t[25]=m,t[26]=L):L=t[26];let R=L,z;t[27]===s?z=t[28]:(z=e=>{e.key===`Escape`&&(e.preventDefault(),s())},t[27]=s,t[28]=z);let ne=y(`name`),re;t[29]===ne?re=t[30]:(re=(0,$.jsx)(`label`,{htmlFor:ne,className:`text-xs text-muted-foreground`,children:`Display name`}),t[29]=ne,t[30]=re);let ie=y(`name`),V;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(V=e=>u(t=>({...t,name:e.target.value})),t[31]=V):V=t[31];let oe;t[32]!==l.name||t[33]!==l.slug||t[34]!==ie?(oe=(0,$.jsx)(Xe,{id:ie,size:`sm`,autoFocus:!0,value:l.name,onChange:V,placeholder:l.slug,className:`sm:w-72`,spellCheck:!1}),t[32]=l.name,t[33]=l.slug,t[34]=ie,t[35]=oe):oe=t[35];let H;t[36]!==re||t[37]!==oe?(H=(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[re,oe]}),t[36]=re,t[37]=oe,t[38]=H):H=t[38];let U;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Options shown in the composer`}),t[39]=U):U=t[39];let se;t[40]!==M||t[41]!==_?(se=_.length>0?(0,$.jsxs)(J,{value:gr,onValueChange:M,children:[(0,$.jsx)(ve,{size:`compact`,className:`w-44`,"aria-label":`Copy options from a built-in model`,children:(0,$.jsx)(ge,{children:`Copy from…`})}),(0,$.jsx)(_e,{align:`end`,alignItemWithTrigger:!1,children:_.map(vr)})]}):null,t[40]=M,t[41]=_,t[42]=se):se=t[42];let ce;t[43]===se?ce=t[44]:(ce=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[U,se]}),t[43]=se,t[44]=ce);let le;t[45]===l.descriptors.length?le=t[46]:(le=l.descriptors.length===0?(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground/70`,children:`No custom options. The composer uses the provider's default options.`}):null,t[45]=l.descriptors.length,t[46]=le);let W;t[47]!==l.descriptors||t[48]!==R?(W=l.descriptors.map(R),t[47]=l.descriptors,t[48]=R,t[49]=W):W=t[49];let ue;if(t[50]!==l.descriptors||t[51]!==m){let e;t[53]===l.descriptors?e=t[54]:(e=e=>!l.descriptors.some(t=>t.id===e.id),t[53]=l.descriptors,t[54]=e);let n;t[55]===Symbol.for(`react.memo_cache_sentinel`)?(n=e=>(0,$.jsxs)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,className:ae(`-ml-2 first:ml-0`),onClick:()=>O(sr(e)),children:[(0,$.jsx)(g,{className:`size-3`}),e.label]},e.id),t[55]=n):n=t[55],ue=m.filter(e).map(n),t[50]=l.descriptors,t[51]=m,t[52]=ue}else ue=t[52];let de;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,$.jsxs)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,onClick:()=>O(cr()),children:[(0,$.jsx)(g,{className:`size-3`}),`Custom option`]}),t[56]=de):de=t[56];let fe;t[57]===ue?fe=t[58]:(fe=(0,$.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[ue,de]}),t[57]=ue,t[58]=fe);let G;t[59]!==ce||t[60]!==le||t[61]!==W||t[62]!==fe?(G=(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[ce,le,W,fe]}),t[59]=ce,t[60]=le,t[61]=W,t[62]=fe,t[63]=G):G=t[63];let pe;t[64]===d?pe=t[65]:(pe=d?(0,$.jsx)(`p`,{className:`text-xs text-destructive`,children:d}):null,t[64]=d,t[65]=pe);let me;t[66]===ee?me=t[67]:(me=(0,$.jsx)(B,{size:`sm`,variant:`outline`,onClick:ee,children:`Save`}),t[66]=ee,t[67]=me);let he;t[68]===s?he=t[69]:(he=(0,$.jsx)(B,{size:`sm`,variant:`ghost`,onClick:s,children:`Cancel`}),t[68]=s,t[69]=he);let K;t[70]!==me||t[71]!==he?(K=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[me,he]}),t[70]=me,t[71]=he,t[72]=K):K=t[72];let ye;return t[73]!==z||t[74]!==H||t[75]!==G||t[76]!==pe||t[77]!==K?(ye=(0,$.jsxs)(`div`,{className:`mx-2 mt-1 mb-2 flex flex-col gap-3 rounded-md border border-border bg-muted/20 p-3`,onKeyDown:z,children:[H,G,pe,K]}),t[73]=z,t[74]=H,t[75]=G,t[76]=pe,t[77]=K,t[78]=ye):ye=t[78],ye}function vr(e){return(0,$.jsx)(q,{value:e.slug,children:e.name},e.slug)}function yr(e){return(0,$.jsx)(q,{value:e.id,children:(0,$.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,$.jsx)(`code`,{className:`font-mono text-xs`,children:e.id}),(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:e.label})]})},e.id)}function br(e){return(e.capabilities?.optionDescriptors?.length??0)>0}var xr={[z.make(`codex`)]:`gpt-6.7-codex-ultra-preview`,[z.make(`claudeAgent`)]:`claude-sonnet-5`,[z.make(`cursor`)]:`claude-sonnet-4-6`,[z.make(`opencode`)]:`openai/gpt-5`,[z.make(`pi`)]:`anthropic/claude-sonnet-5`},Sr=8;function Cr(e){let t=e.capabilities?.optionDescriptors??[],n=[];return t.some(e=>e.id===`fastMode`||e.id===`serviceTier`&&e.type===`select`&&e.options.some(e=>e.id===`fast`||e.label===`Fast`))&&n.push(`Fast mode`),t.some(e=>e.id===`thinking`)&&n.push(`Thinking`),t.some(e=>e.type===`select`&&(e.id===`reasoningEffort`||e.id===`effort`||e.id===`reasoning`||e.id===`variant`))&&n.push(`Reasoning`),n}function wr(e,t){let n=v(e,{favoriteModels:t.favoriteModels,groupFavorites:!0,modelOrder:t.modelOrder}),r=e=>!e.isCustom&&t.hiddenModels.has(e.slug);return[...n.filter(e=>t.favoriteModels.has(e.slug)),...n.filter(e=>!t.favoriteModels.has(e.slug)&&!r(e)),...n.filter(e=>!t.favoriteModels.has(e.slug)&&r(e))]}function Tr(e,t){let n=e.filter(e=>!e.isCustom).map(e=>e.slug),r=new Set(n);return n.every(e=>t.includes(e))?t.filter(e=>!r.has(e)):[...new Set([...t,...n])]}function Er(e){let t=(0,Mn.c)(148),{instanceId:n,driverKind:r,models:i,customModels:o,canManageCustomModels:s,canWritePreferences:c,hiddenModels:l,favoriteModels:d,modelOrder:f,onChange:p,onHiddenModelsChange:m,onFavoriteModelsChange:h,onToggleFavorite:_,onModelOrderChange:v}=e,y=c===void 0||c,[b,S]=(0,Q.useState)(``),[C,w]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(``),[O,k]=(0,Q.useState)(null),[j,M]=(0,Q.useState)(null),N=(0,Q.useRef)(null),ee=(0,Q.useRef)(null),te;t[0]===l?te=t[1]:(te=new Set(l),t[0]=l,t[1]=te);let P=te,F;t[2]===d?F=t[3]:(F=new Set(d),t[2]=d,t[3]=F);let I=F,L;t[4]!==I||t[5]!==P||t[6]!==f||t[7]!==i?(L=wr(i,{favoriteModels:I,hiddenModels:P,modelOrder:f}),t[4]=I,t[5]=P,t[6]=f,t[7]=i,t[8]=L):L=t[8];let R=L,z;if(t[9]!==R||t[10]!==I){let e;t[12]===I?e=t[13]:(e=e=>I.has(e.slug),t[12]=I,t[13]=e),z=R.filter(e),t[9]=R,t[10]=I,t[11]=z}else z=t[11];let ne=z.length,ie;if(t[14]!==R||t[15]!==P){let e;t[17]===P?e=t[18]:(e=e=>!e.isCustom&&P.has(e.slug),t[17]=P,t[18]=e),ie=R.filter(e),t[14]=R,t[15]=P,t[16]=ie}else ie=t[16];let V=ie.length,oe;t[19]===i?oe=t[20]:(oe=i.filter(jr),t[19]=i,t[20]=oe);let H=oe,U;t[21]!==H||t[22]!==P?(U=H.length>0&&H.every(e=>P.has(e.slug)),t[21]=H,t[22]=P,t[23]=U):U=t[23];let se=U,ce=i.length>Sr,le,W;if(t[24]!==R||t[25]!==E||t[26]!==ce){let e=E.trim().toLowerCase();le=ce&&e.length>0,W=le?R.filter(t=>t.name.toLowerCase().includes(e)||t.slug.toLowerCase().includes(e)):R,t[24]=R,t[25]=E,t[26]=ce,t[27]=le,t[28]=W}else le=t[27],W=t[28];let ue=W,de;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(de=()=>{let e=ee.current;if(e===null)return;let t=N.current?.querySelector(`[data-model-slug="${CSS.escape(e)}"]`);t&&(ee.current=null,t.scrollIntoView({block:`nearest`}))},t[29]=de):de=t[29];let fe;t[30]===R?fe=t[31]:(fe=[R],t[30]=R,t[31]=fe),(0,Q.useEffect)(de,fe);let G;t[32]!==s||t[33]!==o||t[34]!==r||t[35]!==b||t[36]!==i||t[37]!==p?(G=()=>{if(!s||r===`antigravity`)return;let e=u(b);if(!e){k(`Enter a model slug.`);return}if(i.some(t=>!t.isCustom&&t.slug===e)){k(`That model is already built in.`);return}if(e.length>256){k(`Model slugs must be 256 characters or less.`);return}if(o.some(t=>t.slug===e)){k(`That custom model is already saved.`);return}ee.current=e,D(``),p([...o,{slug:e,name:e,capabilities:null}]),S(``),k(null),w(!1)},t[32]=s,t[33]=o,t[34]=r,t[35]=b,t[36]=i,t[37]=p,t[38]=G):G=t[38];let pe=G,me;t[39]===Symbol.for(`react.memo_cache_sentinel`)?(me=()=>{S(``),k(null),w(!1)},t[39]=me):me=t[39];let he=me,K;t[40]!==s||t[41]!==o||t[42]!==j||t[43]!==d||t[44]!==f||t[45]!==p||t[46]!==h||t[47]!==v?(K=e=>{s&&(j===e&&M(null),p(o.filter(t=>t.slug!==e)),v(f.filter(t=>t!==e)),h(d.filter(t=>t!==e)),k(null))},t[40]=s,t[41]=o,t[42]=j,t[43]=d,t[44]=f,t[45]=p,t[46]=h,t[47]=v,t[48]=K):K=t[48];let q=K,ge;t[49]!==s||t[50]!==o||t[51]!==p?(ge=e=>{s&&(p(o.map(t=>t.slug===e.slug?e:t)),M(null))},t[49]=s,t[50]=o,t[51]=p,t[52]=ge):ge=t[52];let _e=ge,ve;t[53]!==y||t[54]!==P||t[55]!==l||t[56]!==m?(ve=(e,t)=>{y&&t!==P.has(e)&&m(t?[...l,e]:l.filter(t=>t!==e),[e])},t[53]=y,t[54]=P,t[55]=l,t[56]=m,t[57]=ve):ve=t[57];let J=ve,ye;t[58]!==y||t[59]!==_?(ye=e=>{y&&_(e)},t[58]=y,t[59]=_,t[60]=ye):ye=t[60];let be=ye,xe;t[61]!==I||t[62]!==P?(xe=e=>I.has(e.slug)?`favorite`:!e.isCustom&&P.has(e.slug)?`hidden`:`visible`,t[61]=I,t[62]=P,t[63]=xe):xe=t[63];let Se=xe,Y;t[64]!==y||t[65]!==R||t[66]!==Se||t[67]!==v?(Y=(e,t)=>{if(!y)return;let n=R.findIndex(t=>t.slug===e),r=n+t;if(n<0||r<0||r>=R.length||Se(R[n])!==Se(R[r]))return;let i=R.map(Ar),[a,o]=[i[r],i[n]];i[n]=a,i[r]=o,v(i)},t[64]=y,t[65]=R,t[66]=Se,t[67]=v,t[68]=Y):Y=t[68];let we=Y,Te;t[69]!==y||t[70]!==be?(Te=(e,t)=>(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,disabled:!y,onClick:()=>be(e.slug),"aria-label":`${t?`Remove`:`Add`} ${e.name} ${t?`from`:`to`} favorites`}),children:(0,$.jsx)(re,{className:ae(`size-3`,t&&`fill-current text-warning`)})}),(0,$.jsx)(Ee,{side:`top`,children:t?`Remove from favorites`:`Add to favorites`})]}),t[69]=y,t[70]=be,t[71]=Te):Te=t[71];let Oe=Te,ke;t[72]!==s||t[73]!==y||t[74]!==we||t[75]!==q||t[76]!==le?(ke=(e,t)=>(0,$.jsxs)(`span`,{className:`flex shrink-0 items-center justify-end gap-0.5`,children:[!t.isHidden&&!le?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,disabled:!y||!t.canMoveUp,onClick:()=>we(e.slug,-1),"aria-label":`Move ${e.name} up`}),children:(0,$.jsx)(A,{className:`size-3`})}),(0,$.jsx)(Ee,{side:`top`,children:`Move up`})]}),(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,disabled:!y||!t.canMoveDown,onClick:()=>we(e.slug,1),"aria-label":`Move ${e.name} down`}),children:(0,$.jsx)(T,{className:`size-3`})}),(0,$.jsx)(Ee,{side:`top`,children:`Move down`})]})]}):null,e.isCustom?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,disabled:!s,"aria-label":`Edit ${e.slug}`,onClick:()=>{s&&M(t=>t===e.slug?null:e.slug)}}),children:(0,$.jsx)(a,{className:`size-3`})}),(0,$.jsx)(Ee,{side:`top`,children:`Edit name and options`})]}),(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,disabled:!s,"aria-label":`Remove ${e.slug}`,onClick:()=>q(e.slug)}),children:(0,$.jsx)(x,{className:`size-3`})}),(0,$.jsx)(Ee,{side:`top`,children:`Remove custom model`})]})]}):null]}),t[72]=s,t[73]=y,t[74]=we,t[75]=q,t[76]=le,t[77]=ke):ke=t[77];let X=ke,Ae=kr,je;t[78]!==y||t[79]!==J?(je=(e,t)=>(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(`span`,{className:`flex shrink-0 items-center`}),children:(0,$.jsx)(Gt,{size:`sm`,checked:!t,disabled:!y||e.isCustom,onCheckedChange:t=>J(e.slug,!t),"aria-label":`Show ${e.name} in the model picker`})}),(0,$.jsx)(Ee,{side:`top`,children:Ae(e,t)})]}),t[78]=y,t[79]=J,t[80]=je):je=t[80];let Me=je,Ne;t[81]!==R||t[82]!==Se||t[83]!==P||t[84]!==n||t[85]!==le||t[86]!==Me||t[87]!==X||t[88]!==Oe?(Ne=e=>{let t=Cr(e),r=Se(e),i=!e.isCustom&&P.has(e.slug),a=r===`favorite`,o=R.indexOf(e),s=R[o-1],c=R[o+1],l=!le&&s!==void 0&&Se(s)===r,u=!le&&c!==void 0&&Se(c)===r,d=ae(`text-xs`,i?`text-muted-foreground`:`text-foreground/90`);return(0,$.jsxs)(`div`,{"data-model-slug":e.slug,className:ae(`grid h-7 grid-cols-[1.5rem_minmax(0,1fr)_auto_minmax(5.5rem,auto)_auto] items-center gap-2 rounded-md px-2 transition-colors hover:bg-muted/30`,i&&`opacity-50`),children:[Oe(e,a),(0,$.jsxs)(`span`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,$.jsx)(`span`,{className:ae(d,`truncate`),children:e.name}),e.name===e.slug?null:(0,$.jsx)(`code`,{className:`truncate font-mono text-2xs text-muted-foreground/70`,children:e.slug}),e.isCustom?(0,$.jsx)(`span`,{className:`text-2xs text-muted-foreground/70`,children:`custom`}):null]}),(0,$.jsx)(`span`,{className:`text-2xs text-muted-foreground/70`,children:t.length>0?(0,$.jsx)(`span`,{className:`hidden sm:inline`,children:t.join(` · `)}):null}),X(e,{isHidden:i,canMoveUp:l,canMoveDown:u}),Me(e,i)]},`${n}:${e.slug}`)},t[81]=R,t[82]=Se,t[83]=P,t[84]=n,t[85]=le,t[86]=Me,t[87]=X,t[88]=Oe,t[89]=Ne):Ne=t[89];let Pe=Ne,Z=Or,Fe;t[90]!==E||t[91]!==ce?(Fe=ce?(0,$.jsx)(Xe,{value:E,onChange:e=>D(e.target.value),placeholder:`Filter models`,size:`sm`,className:`w-56 max-w-full`,spellCheck:!1,"aria-label":`Filter models`}):null,t[90]=E,t[91]=ce,t[92]=Fe):Fe=t[92];let Ie;t[93]!==se||t[94]!==H||t[95]!==l||t[96]!==i||t[97]!==m?(Ie=H.length>0?(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,onClick:()=>m(Tr(i,l),H.map(Dr)),children:se?`Enable all`:`Disable all`}):null,t[93]=se,t[94]=H,t[95]=l,t[96]=i,t[97]=m,t[98]=Ie):Ie=t[98];let Le=i.length===1?``:`s`,Re=ne>0?` · ${ne} favorite${ne===1?``:`s`}`:``,ze=V>0?` · ${V} hidden`:``,Be;t[99]!==i.length||t[100]!==Le||t[101]!==Re||t[102]!==ze?(Be=(0,$.jsxs)(`span`,{className:`text-xs text-muted-foreground`,children:[i.length,` model`,Le,Re,ze]}),t[99]=i.length,t[100]=Le,t[101]=Re,t[102]=ze,t[103]=Be):Be=t[103];let Ve;t[104]!==Ie||t[105]!==Be?(Ve=(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[Ie,Be]}),t[104]=Ie,t[105]=Be,t[106]=Ve):Ve=t[106];let He;t[107]!==r||t[108]!==C?(He=r!==`antigravity`&&!C?(0,$.jsxs)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,className:`ml-auto`,onClick:()=>w(!0),children:[(0,$.jsx)(g,{className:`size-3`}),`Add custom model`]}):null,t[107]=r,t[108]=C,t[109]=He):He=t[109];let Ue;t[110]!==Fe||t[111]!==Ve||t[112]!==He?(Ue=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[Fe,Ve,He]}),t[110]=Fe,t[111]=Ve,t[112]=He,t[113]=Ue):Ue=t[113];let We;t[114]!==le||t[115]!==ue.length?(We=ue.length===0?(0,$.jsx)(`p`,{className:`px-2 py-2 text-xs text-muted-foreground`,children:le?`No models match.`:`No models reported for this provider yet.`}):null,t[114]=le,t[115]=ue.length,t[116]=We):We=t[116];let Ge;t[117]!==H||t[118]!==s||t[119]!==o||t[120]!==r||t[121]!==j||t[122]!==ne||t[123]!==Se||t[124]!==_e||t[125]!==n||t[126]!==Pe||t[127]!==ue?(Ge=ue.map((e,t)=>{let i=Se(e),a=ue[t-1],c=a===void 0||Se(a)!==i,l=s&&e.isCustom&&j===e.slug?o.find(t=>t.slug===e.slug):void 0;return(0,$.jsxs)(`div`,{children:[c&&ne>0&&i===`favorite`?Z(`Favorites`,t===0):null,c&&ne>0&&i===`visible`?Z(`All`,t===0):null,c&&i===`hidden`?Z(`Hidden from picker`,t===0):null,Pe(e),l?(0,$.jsx)(_r,{instanceId:n,driverKind:r,entry:l,builtInModels:H,onSave:_e,onCancel:()=>M(null)},`${n}:${e.slug}:editor`):null]},`${n}:${e.slug}:group`)}),t[117]=H,t[118]=s,t[119]=o,t[120]=r,t[121]=j,t[122]=ne,t[123]=Se,t[124]=_e,t[125]=n,t[126]=Pe,t[127]=ue,t[128]=Ge):Ge=t[128];let Ke;t[129]!==We||t[130]!==Ge?(Ke=(0,$.jsxs)(`div`,{ref:N,className:`mt-2 -mx-2 max-h-64 overflow-y-auto lg:max-h-none lg:min-h-0 lg:flex-1`,children:[We,Ge]}),t[129]=We,t[130]=Ge,t[131]=Ke):Ke=t[131];let qe;t[132]!==s||t[133]!==r||t[134]!==O||t[135]!==pe||t[136]!==b||t[137]!==n||t[138]!==C?(qe=r===`antigravity`||!s?null:C?(0,$.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2 sm:flex-row`,children:[(0,$.jsx)(Xe,{id:`provider-instance-${n}-custom-model`,size:`sm`,autoFocus:!0,value:b,onChange:e=>{S(e.target.value),O&&k(null)},onKeyDown:e=>{if(e.key===`Escape`){e.preventDefault(),he();return}e.key===`Enter`&&(e.preventDefault(),pe())},placeholder:r?xr[r]:`model-slug`,spellCheck:!1}),(0,$.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,$.jsx)(B,{size:`sm`,variant:`outline`,onClick:pe,children:`Add`}),(0,$.jsx)(B,{size:`sm`,variant:`ghost`,onClick:he,children:`Cancel`})]})]}):null,t[132]=s,t[133]=r,t[134]=O,t[135]=pe,t[136]=b,t[137]=n,t[138]=C,t[139]=qe):qe=t[139];let Je;t[140]!==r||t[141]!==O?(Je=r!==`antigravity`&&O?(0,$.jsx)(`p`,{className:`mt-2 text-xs text-destructive`,children:O}):null,t[140]=r,t[141]=O,t[142]=Je):Je=t[142];let Ye;return t[143]!==Ue||t[144]!==Ke||t[145]!==qe||t[146]!==Je?(Ye=(0,$.jsxs)(`div`,{className:`lg:flex lg:h-full lg:min-h-0 lg:flex-col`,children:[Ue,Ke,qe,Je]}),t[143]=Ue,t[144]=Ke,t[145]=qe,t[146]=Je,t[147]=Ye):Ye=t[147],Ye}function Dr(e){return e.slug}function Or(e,t){return(0,$.jsx)(`div`,{className:ae(`px-2 pb-1.5 text-2xs text-muted-foreground`,t?`pt-1`:`pt-5`),children:e})}function kr(e,t){return e.isCustom?`Custom models are always shown in the picker`:t?`Hidden from picker`:`Shown in picker`}function Ar(e){return e.slug}function jr(e){return!e.isCustom}function Mr(e,t){if(t._tag!==`Failure`||se(t))return;let n=ce(t);be.add({type:`error`,title:e,description:n instanceof Error?n.message:`The ACP operation failed.`})}function Nr(e){let t=Me(e.environmentId,M),n=Me(e.environmentId,V),[r,i]=(0,Q.useState)(e.projects[0]?.id??null),[a,o]=(0,Q.useState)([]),[s,c]=(0,Q.useState)(null),[l,u]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(null),[p,m]=(0,Q.useState)(null),[h,g]=(0,Q.useState)(!1),[_,v]=(0,Q.useState)([]),[y,b]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(null),[C,w]=(0,Q.useState)({}),T=Z(X.listAcpRegistrySessions,{reportFailure:!1}),E=Z(X.importAcpRegistrySession,{reportFailure:!1}),D=Z(X.deleteAcpRegistrySession,{reportFailure:!1}),O=Z(X.listAcpRegistryProviders,{reportFailure:!1}),k=Z(X.setAcpRegistryProvider,{reportFailure:!1}),A=Z(X.disableAcpRegistryProvider,{reportFailure:!1}),j=Z(X.logoutAcpRegistry,{reportFailure:!1}),N=e.provider.nativeSessions?.canList===!0,ee=e.provider.nativeSessions?.canLoad===!0||e.provider.nativeSessions?.canResume===!0,te=e.provider.auth.canLogout===!0&&!e.provider.setup?.canAuthenticate,P=e.provider.nativeSessions?.canDelete===!0,F=e.provider.configurableProviders===!0,I=l||d!==null||p!==null||y||x!==null;if(!N&&!te&&!F)return null;let L=async t=>{if(r===null||l)return;u(!0);let n=await T({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r,...t===void 0?{}:{cursor:t}}});if(u(!1),n._tag===`Success`){o(e=>t===void 0?n.value.sessions:[...e,...n.value.sessions]),c(n.value.nextCursor);return}Mr(`Could not list ACP sessions`,n)},R=async t=>{if(!Ne(e.environmentId,`orchestration:operate`)||r===null||d!==null)return;f(t.sessionId);let n=await E({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r,sessionId:t.sessionId,title:t.title,updatedAt:t.updatedAt}});if(f(null),n._tag===`Success`){o(e=>e.map(e=>e.sessionId===t.sessionId?{...e,importedThreadId:n.value.threadId}:e)),be.add({type:`success`,title:n.value.imported?`ACP session imported`:`ACP session already imported`});return}Mr(`Could not import ACP session`,n)},z=async t=>{if(r===null||p!==null||t.importedThreadId!==null||!await Ie().dialogs.confirm(`Permanently delete native ACP session "${t.title??t.sessionId}"?`,{variant:`destructive`})||!Ne(e.environmentId,`orchestration:operate`))return;m(t.sessionId);let n=await D({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r,sessionId:t.sessionId}});if(m(null),n._tag===`Success`){o(e=>e.filter(e=>e.sessionId!==t.sessionId)),be.add({type:`success`,title:`ACP session deleted`});return}Mr(`Could not delete ACP session`,n)},ne=async()=>{if(r===null||y)return;b(!0);let t=await O({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r}});if(b(!1),t._tag===`Success`){v(t.value.providers),w(Object.fromEntries(t.value.providers.map(e=>[e.providerId,{apiType:e.current?.apiType??e.supported[0]??``,baseUrl:e.current?.baseUrl??``,headers:``}])));return}Mr(`Could not list ACP providers`,t)},re=async t=>{if(!Ne(e.environmentId,`providers:manage`)||r===null||x!==null)return;let n=C[t.providerId];if(n===void 0||n.apiType.length===0||n.baseUrl.length===0)return;let i;if(n.headers.trim().length>0)try{let e=JSON.parse(n.headers);if(typeof e!=`object`||!e||Array.isArray(e)||!Object.values(e).every(e=>typeof e==`string`))throw Error(`Headers must be a JSON object with string values.`);i=e}catch(e){be.add({type:`error`,title:`Invalid provider headers`,description:e instanceof Error?e.message:`Headers must be valid JSON.`});return}S(t.providerId);let a=await k({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r,providerId:t.providerId,apiType:n.apiType,baseUrl:n.baseUrl,...i===void 0?{}:{headers:i}}});if(S(null),a._tag===`Success`){be.add({type:`success`,title:`ACP provider configured`}),await ne();return}Mr(`Could not configure ACP provider`,a)},ie=async t=>{if(r===null||x!==null||t.required||!await Ie().dialogs.confirm(`Disable ACP provider "${t.providerId}"?`,{variant:`destructive`})||!Ne(e.environmentId,`providers:manage`))return;S(t.providerId);let n=await A({environmentId:e.environmentId,input:{instanceId:e.instanceId,projectId:r,providerId:t.providerId}});if(S(null),n._tag===`Success`){be.add({type:`success`,title:`ACP provider disabled`}),await ne();return}Mr(`Could not disable ACP provider`,n)},ae=async()=>{if(h||!Ne(e.environmentId,`providers:manage`))return;g(!0);let t=await j({environmentId:e.environmentId,input:{instanceId:e.instanceId}});if(g(!1),t._tag===`Success`){o([]),c(null),be.add({type:`success`,title:`Logged out of ACP agent`});return}Mr(`Could not log out of ACP agent`,t)};return(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsx)(kt,{title:`Native sessions`,description:`Resume agent-owned conversations as P4 threads.`,status:N&&e.projects.length===0?`Add a project before importing sessions.`:void 0,control:(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[te?(0,$.jsx)(B,{type:`button`,size:`sm`,variant:`outline`,disabled:e.readOnly||h,onClick:()=>void ae(),children:h?`Logging out`:`Log out`}):null,N&&e.projects.length>0?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(J,{value:r??``,disabled:!n||I,onValueChange:e=>{e!==null&&(i(e),o([]),c(null),v([]),w({}))},children:[(0,$.jsx)(ve,{"aria-label":`Project for ACP sessions`,className:`w-40`,size:`sm`,children:(0,$.jsx)(ge,{children:e.projects.find(e=>e.id===r)?.title})}),(0,$.jsx)(_e,{children:e.projects.map(e=>(0,$.jsx)(q,{value:e.id,children:e.title},e.id))})]}),(0,$.jsx)(B,{type:`button`,size:`sm`,variant:`outline`,disabled:!n||l||r===null,onClick:()=>void L(),children:l?`Loading`:a.length===0?`List sessions`:`Refresh`})]}):null]}),children:N&&(a.length>0||s!==null)?(0,$.jsxs)($.Fragment,{children:[a.length>0?(0,$.jsx)(`div`,{className:`divide-y divide-border/60 border-y border-border/60`,children:a.map(e=>(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3 py-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-xs text-foreground`,children:e.title??e.sessionId}),(0,$.jsx)(`code`,{className:`block truncate text-3xs text-muted-foreground`,children:e.sessionId})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,disabled:!t||!ee||e.importedThreadId!==null||d!==null,onClick:()=>void R(e),children:e.importedThreadId===null?d===e.sessionId?`Importing`:`Import`:`Imported`}),P?(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,disabled:!t||e.importedThreadId!==null||p!==null,onClick:()=>void z(e),children:p===e.sessionId?`Deleting`:`Delete`}):null]})]},e.sessionId))}):null,s===null?null:(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,className:`w-fit`,disabled:!n||l,onClick:()=>void L(s),children:l?`Loading`:`Load more`})]}):null}),F?(0,$.jsxs)(`div`,{className:`grid gap-3 border-t border-border/60 px-3 py-3 sm:px-4`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`text-xs font-medium text-foreground`,children:`Agent providers`}),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Configure non-secret routing. Headers are write-only.`})]}),(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`outline`,disabled:!n||y||r===null,onClick:()=>void ne(),children:y?`Loading`:_.length===0?`List providers`:`Refresh`})]}),!N&&e.projects.length>1?(0,$.jsxs)(J,{value:r??``,disabled:!n||I,onValueChange:e=>{e!==null&&(i(e),v([]),w({}))},children:[(0,$.jsx)(ve,{"aria-label":`Project for ACP providers`,className:`min-w-48`,size:`xs`,children:(0,$.jsx)(ge,{children:e.projects.find(e=>e.id===r)?.title})}),(0,$.jsx)(_e,{children:e.projects.map(e=>(0,$.jsx)(q,{value:e.id,children:e.title},e.id))})]}):null,_.length>0?(0,$.jsx)(`div`,{className:`divide-y divide-border/60 border-y border-border/60`,children:_.map(t=>{let n=C[t.providerId]??{apiType:t.current?.apiType??t.supported[0]??``,baseUrl:t.current?.baseUrl??``,headers:``},r=e=>w(r=>({...r,[t.providerId]:{...n,...e}}));return(0,$.jsxs)(`div`,{className:`grid gap-2 py-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-xs font-medium text-foreground`,children:t.providerId}),(0,$.jsxs)(`p`,{className:`text-3xs text-muted-foreground`,children:[t.current===null?`Disabled`:`Configured`,t.required?` · Required`:``]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`outline`,disabled:e.readOnly||x!==null||n.apiType.length===0||n.baseUrl.length===0,onClick:()=>void re(t),children:x===t.providerId?`Saving`:`Save`}),!t.required&&t.current!==null?(0,$.jsx)(B,{type:`button`,size:`xs`,variant:`ghost-muted`,disabled:e.readOnly||x!==null,onClick:()=>void ie(t),children:`Disable`}):null]})]}),(0,$.jsxs)(`div`,{className:`grid gap-2 sm:grid-cols-[9rem_minmax(0,1fr)]`,children:[(0,$.jsxs)(J,{value:n.apiType,disabled:e.readOnly||x!==null,onValueChange:e=>{e!==null&&r({apiType:e})},children:[(0,$.jsx)(ve,{"aria-label":`${t.providerId} protocol`,size:`sm`,children:(0,$.jsx)(ge,{children:n.apiType})}),(0,$.jsx)(_e,{children:t.supported.map(e=>(0,$.jsx)(q,{value:e,children:e},e))})]}),(0,$.jsx)(Xe,{size:`sm`,type:`url`,"aria-label":`${t.providerId} base URL`,placeholder:`https://api.example.com`,value:n.baseUrl,disabled:e.readOnly||x!==null,onValueChange:e=>r({baseUrl:e})})]}),(0,$.jsx)(Xe,{size:`sm`,type:`password`,"aria-label":`${t.providerId} write-only headers JSON`,placeholder:`Write-only headers JSON, e.g. {"Authorization":"Bearer …"}`,value:n.headers,disabled:e.readOnly||x!==null,onValueChange:e=>r({headers:e})})]},t.providerId)})}):null]}):null]})}var Pr=/^[a-zA-Z_][a-zA-Z0-9_]*$/;function Fr(e){let t=(0,Mn.c)(7),{detail:n,children:r}=e;if(!n)return r;let i;t[0]===r?i=t[1]:(i=(0,$.jsx)(Ce,{render:r}),t[0]=r,t[1]=i);let a;t[2]===n?a=t[3]:(a=(0,$.jsx)(Ee,{side:`top`,children:n}),t[2]=n,t[3]=a);let o;return t[4]!==i||t[5]!==a?(o=(0,$.jsxs)(De,{children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6],o}var Ir=0,Lr=()=>`provider-env-${Ir++}`;function Rr(e,t){return{id:`${t}:${e.name}`,name:e.name,value:e.value,sensitive:e.sensitive,...e.valueRedacted===void 0?{}:{valueRedacted:e.valueRedacted}}}function zr(e,t){return e.length===t.length&&e.every((e,n)=>{let r=t[n];return r!==void 0&&e.name===r.name&&e.value===r.value&&e.sensitive===r.sensitive&&e.valueRedacted===r.valueRedacted})}function Br(e){return typeof e!=`object`||!e?[]:_(e.customModels)}function Vr(e,t){if(typeof e!=`object`||!e)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():null}function Hr(e,t,n){let r=typeof e==`object`&&e?{...e}:{};return r[t]=n,r}function Ur(e){let t=new Map(P(e.liveModels??[],e=>e.isCustom?y([e.slug,e]):ee)),n=e.liveModels?.filter(e=>!e.isCustom)??[],r=new Set(n.map(e=>e.slug)),i=e.customModels.flatMap(e=>r.has(e.slug)?[]:[{slug:e.slug,name:e.name,isCustom:!0,capabilities:e.capabilities??t.get(e.slug)?.capabilities??null}]);return[...n,...i]}function Wr(e){let t=(0,Mn.c)(4),n;t[0]===e.email?n=t[1]:(n=e.email?.trim(),t[0]=e.email,t[1]=n);let r=n;if(!r)return null;let i;return t[2]===r?i=t[3]:(i=(0,$.jsx)(rn,{value:r,ariaLabel:`Toggle account email visibility`,revealTooltip:`Click to reveal email`,hideTooltip:`Click to hide email`,className:`max-w-full truncate`}),t[2]=r,t[3]=i),i}function Gr(e,t){return e?.find(e=>e.name===t)}function Kr(e,t){return(e??[]).filter(e=>!t.has(e.name))}function qr(e,t,n){let r=n.trim(),i=[],a=!1;for(let n of e??[]){if(n.name!==t.name){i.push(n);continue}a=!0,r.length>0&&i.push({name:n.name,value:r,sensitive:t.sensitive??!0})}return!a&&r.length>0&&i.push({name:t.name,value:r,sensitive:t.sensitive??!0}),i}function Jr(e){let t=(0,Mn.c)(16),n=`${e.idPrefix}-environment-${e.field.name}`,r=e.variable?.valueRedacted?``:e.variable?.value??``,i;t[0]!==n||t[1]!==e.field.label?(i=(0,$.jsx)(`label`,{htmlFor:n,children:e.field.label}),t[0]=n,t[1]=e.field.label,t[2]=i):i=t[2];let a;t[3]!==n||t[4]!==e||t[5]!==r?(a=e.field.sensitive===!1?(0,$.jsx)(pn,{id:n,size:`sm`,className:`min-w-0 flex-1`,autoComplete:`off`,value:r,onCommit:t=>e.onCommit(e.field,t),placeholder:e.field.placeholder,spellCheck:!1}):(0,$.jsx)(bn,{id:n,size:`sm`,className:`min-w-0 flex-1`,value:r,onCommit:t=>e.onCommit(e.field,t),placeholder:e.field.placeholder,configured:e.variable?.valueRedacted===!0,spellCheck:!1}),t[3]=n,t[4]=e,t[5]=r,t[6]=a):a=t[6];let o;t[7]===e?o=t[8]:(o=e.variable?(0,$.jsx)(B,{type:`button`,size:`icon-sm`,variant:`ghost-destructive`,onClick:()=>e.onRemove(e.field),"aria-label":`Clear ${e.field.label}`,children:(0,$.jsx)(x,{className:`size-3.5`})}):null,t[7]=e,t[8]=o);let s;t[9]!==a||t[10]!==o?(s=(0,$.jsxs)(`div`,{className:`flex w-full min-w-0 items-center gap-2 @min-[32rem]/settings-row:w-56`,children:[a,o]}),t[9]=a,t[10]=o,t[11]=s):s=t[11];let c;return t[12]!==e.field.description||t[13]!==i||t[14]!==s?(c=(0,$.jsx)(kt,{title:i,description:e.field.description,control:s}),t[12]=e.field.description,t[13]=i,t[14]=s,t[15]=c):c=t[15],c}function Yr(e){let t=(0,Mn.c)(13),n;t[0]===e.environment?n=t[1]:(n=()=>e.environment.map(Rr),t[0]=e.environment,t[1]=n);let[r,i]=(0,Q.useState)(n),a=(0,Q.useRef)(e.environment),o=(0,Q.useRef)(void 0),s,c;t[2]===e.environment?(s=t[3],c=t[4]):(s=()=>{let t=a.current,n=o.current;a.current=e.environment,o.current=void 0,!(t===e.environment||zr(t,e.environment)||n!==void 0&&zr(n,e.environment))&&i(e.environment.map(Rr))},c=[e.environment],t[2]=e.environment,t[3]=s,t[4]=c),(0,Q.useEffect)(s,c);let l;if(t[5]!==e||t[6]!==r){let n=t=>{let n=[];for(let e of t){let t=e.name.trim();if(!Pr.test(t)){if(t.length>0||e.value.length>0||e.sensitive!==!0||e.valueRedacted!==void 0)return;continue}let{id:r,...i}=e;n.push({...i,name:t})}o.current=n,e.onChange(n)},a=(e,t)=>{let a=r.map(n=>n.id===e?{...n,...t,...t.value===void 0?{}:{valueRedacted:!1}}:n);i(a),n(a)},s=e=>{let t=r.filter(t=>t.id!==e);i(t),n(t)},c;t[8]===r?c=t[9]:(c=()=>i([...r,{id:Lr(),name:``,value:``,sensitive:!0}]),t[8]=r,t[9]=c);let u=c,d;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,$.jsx)(g,{className:`size-3`}),t[10]=d):d=t[10];let f;t[11]===u?f=t[12]:(f=(0,$.jsxs)(B,{type:`button`,size:`sm`,variant:`outline`,onClick:u,children:[d,`Add variable`]}),t[11]=u,t[12]=f),l=(0,$.jsx)(kt,{title:`Variables`,description:`API keys, base URLs, and other per-instance CLI settings.`,control:f,children:r.length>0?(0,$.jsxs)(`div`,{className:`mt-3 min-w-0 space-y-2 pb-2`,children:[r.map((e,t)=>(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-1.5`,children:[(0,$.jsx)(pn,{size:`sm`,font:`mono`,className:`w-full min-w-0 sm:w-44 sm:shrink-0`,value:e.name,onCommit:t=>a(e.id,{name:t.trim()}),placeholder:`VARIABLE_NAME`,spellCheck:!1,"aria-label":`Environment variable name ${t+1}`}),(0,$.jsx)(`span`,{className:`hidden text-xs text-muted-foreground sm:inline`,"aria-hidden":!0,children:`=`}),e.sensitive?(0,$.jsx)(bn,{size:`sm`,font:`mono`,className:`min-w-0 flex-1`,value:e.valueRedacted?``:e.value,onCommit:t=>a(e.id,{value:t}),placeholder:`value`,configured:e.valueRedacted===!0,spellCheck:!1,"aria-label":`Environment variable value ${t+1}`}):(0,$.jsx)(pn,{size:`sm`,font:`mono`,className:`min-w-0 flex-1`,value:e.valueRedacted?``:e.value,onCommit:t=>a(e.id,{value:t}),autoComplete:`off`,placeholder:`value`,spellCheck:!1,"aria-label":`Environment variable value ${t+1}`}),(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{type:`button`,size:`icon-micro`,variant:`ghost-muted`,onClick:()=>{let t=!e.sensitive;a(e.id,{sensitive:t,...t&&e.valueRedacted===void 0?{}:{valueRedacted:t?e.valueRedacted:!1}})},"aria-pressed":e.sensitive,"aria-label":`Mark environment variable ${e.name||t+1} as sensitive`,children:(0,$.jsx)(we,{className:`size-3`,icon:e.sensitive?Te:Y})})}),(0,$.jsx)(Ee,{side:`top`,children:e.sensitive?`Sensitive, stored separately`:`Plain text`})]}),(0,$.jsx)(B,{type:`button`,size:`icon-micro`,variant:`ghost-destructive`,onClick:()=>s(e.id),"aria-label":`Remove environment variable ${e.name||t+1}`,children:(0,$.jsx)(x,{className:`size-3`})})]},e.id)),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Sensitive values are stored separately and never returned to the app.`})]}):null}),t[5]=e,t[6]=r,t[7]=l}else l=t[7];return l}function Xr(e){let t=(0,Mn.c)(26),{projectEnabled:n,deviceEnabled:r}=e,i,a,s,c,l,u,d,f,p;if(t[0]!==r||t[1]!==n){let e=[{key:`project`,label:`Project`,enabled:n,effective:!0},{key:`device`,label:`Device`,enabled:r,effective:!1}];a=mt,t[11]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(pt,{render:(0,$.jsx)(B,{size:`icon-micro`,variant:`ghost-muted`,"aria-label":`Overridden for this project. Show where this value comes from`})}),children:(0,$.jsx)(o,{className:`size-3 text-primary`})}),(0,$.jsx)(Ee,{side:`top`,children:`Overridden for this project`})]}),t[11]=p):p=t[11],i=dt,u=`end`,d=`md`,f=`none`,s=`list`,c=`px-3 py-2.5 text-sm`,l=e.map(Zr),t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=s,t[5]=c,t[6]=l,t[7]=u,t[8]=d,t[9]=f,t[10]=p}else i=t[2],a=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10];let m;t[12]!==s||t[13]!==c||t[14]!==l?(m=(0,$.jsx)(`ol`,{role:s,className:c,children:l}),t[12]=s,t[13]=c,t[14]=l,t[15]=m):m=t[15];let h;t[16]!==i||t[17]!==u||t[18]!==d||t[19]!==f||t[20]!==m?(h=(0,$.jsx)(i,{align:u,width:d,padding:f,children:m}),t[16]=i,t[17]=u,t[18]=d,t[19]=f,t[20]=m,t[21]=h):h=t[21];let g;return t[22]!==a||t[23]!==p||t[24]!==h?(g=(0,$.jsxs)(a,{children:[p,h]}),t[22]=a,t[23]=p,t[24]=h,t[25]=g):g=t[25],g}function Zr(e){return(0,$.jsxs)(`li`,{className:ae(`grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-3 rounded-md px-2 py-1`,e.effective&&`bg-foreground/[0.06]`),children:[(0,$.jsx)(`span`,{className:ae(`min-w-0 truncate`,e.effective?`font-medium text-foreground`:`text-muted-foreground`),children:e.label}),(0,$.jsxs)(`span`,{className:ae(`flex items-center gap-1.5`,e.effective?`text-foreground`:`text-muted-foreground`),children:[e.enabled?`On`:`Off`,e.effective?(0,$.jsx)(I,{"aria-hidden":!0,className:`size-3.5 shrink-0 text-primary`}):(0,$.jsx)(`span`,{"aria-hidden":!0,className:`size-3.5 shrink-0`})]})]},e.key)}var Qr=[];function $r(e){let t=(0,Mn.c)(245),{instanceId:n,instance:r,driverOption:a,liveProvider:o,mode:s,selected:l,onSelect:u,readOnly:d,canWriteSettings:p,onUpdate:m,onDelete:h,headerAction:g,setup:_,runtime:v,hiddenModels:y,favoriteModels:x,modelOrder:T,onHiddenModelsChange:E,onFavoriteModelsChange:D,onToggleFavorite:A,onModelOrderChange:j,onRunUpdate:M,onInstallRecommended:ee,isUpdating:te,onAcceptUrlAuth:P,environmentId:F,acpProjects:I,projectOverride:L}=e,R=l!==void 0&&l,z=d!==void 0&&d,ne=p===void 0||p,re=te!==void 0&&te,ie=I===void 0?Qr:I,V=L?.effectiveEnabled??b(r),oe=V?o?.compatibilityAdvisory:void 0,H=V?o?.status??`warning`:`disabled`,se=xn[H],ce=V?Tn(o&&{...o,enabled:!0}):{headline:`Disabled`,detail:null},le;t[0]===o?.auth.email?le=t[1]:(le=o?.auth.email?.trim(),t[0]=o?.auth.email,t[1]=le);let W=le,ue=V&&o?.auth.status===`authenticated`,de=V&&o?.auth.status===`authenticated`?o.auth.label??o.auth.type??null:null,fe=o?.version,G;t[2]===fe?G=t[3]:(G=Sn(fe),t[2]=fe,t[3]=G);let pe=G,me=On(o?.versionAdvisory,o?.compatibilityAdvisory,V),he=me?.updateCommand??null,K=o?.updateState,q=re?(K?.status===`queued`||K?.status===`running`?K.message:null)??`Starting update`:null,ge=!re&&(K?.status===`failed`||K?.status===`unchanged`)?K.message:null,_e=oe!==void 0&&oe.status!==`supported`&&oe.status!==`unknown`,ve=_e?S:k,J=z?void 0:me?.targetVersion?ee:M,be=o?.auth.action,xe;t[4]!==a?.label||t[5]!==r.displayName||t[6]!==r.driver?(xe=r.displayName?.trim()||a?.label||String(r.driver),t[4]=a?.label,t[5]=r.displayName,t[6]=r.driver,t[7]=xe):xe=t[7];let Y=xe,we;t[8]===r.accentColor?we=t[9]:(we=O(r.accentColor),t[8]=r.accentColor,t[9]=we);let Te=we,Oe;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(Oe={onCopy:ri,onError:ni},t[10]=Oe):Oe=t[10];let{copyToClipboard:ke}=Se(Oe),X=N(r.driver)?r.driver:null,Ae,je;t[11]!==r.config||t[12]!==r.driver||t[13]!==o?.models?(Ae=r.driver===`antigravity`?[]:Br(r.config),je=Ur({liveModels:o?.models,customModels:Ae}),t[11]=r.config,t[12]=r.driver,t[13]=o?.models,t[14]=Ae,t[15]=je):(Ae=t[14],je=t[15]);let Me=je,Ne;t[16]!==r||t[17]!==m?(Ne=e=>{let t=e.trim(),{displayName:n,...i}=r;m(t.length>0?{...i,displayName:t}:i)},t[16]=r,t[17]=m,t[18]=Ne):Ne=t[18];let Pe=Ne,Z;t[19]!==r||t[20]!==m||t[21]!==L?(Z=e=>{if(L){L.onChange(e);return}m({...r,enabled:e})},t[19]=r,t[20]=m,t[21]=L,t[22]=Z):Z=t[22];let Fe=Z,Ie;t[23]!==r||t[24]!==m?(Ie=e=>{let t=O(e),{accentColor:n,...i}=r;m(t?{...i,accentColor:t}:i)},t[23]=r,t[24]=m,t[25]=Ie):Ie=t[25];let Le=Ie,Re;t[26]!==r||t[27]!==m?(Re=e=>{let{config:t,...n}=r;m(e===void 0?n:{...n,config:e})},t[26]=r,t[27]=m,t[28]=Re):Re=t[28];let ze=Re,Be;t[29]!==r||t[30]!==m?(Be=e=>{let t=Hr(r.config,`customModels`,e.map(c)),{config:n,...i}=r;m({...i,config:t})},t[29]=r,t[30]=m,t[31]=Be):Be=t[31];let Ve=Be,He;t[32]!==r||t[33]!==m?(He=e=>{let t=e.filter(ti),{environment:n,...i}=r;m(t.length>0?{...i,environment:t}:i)},t[32]=r,t[33]=m,t[34]=He):He=t[34];let Ue=He,We,Ge,Ke;t[35]!==a?.environmentFields||t[36]!==r.environment?(Ge=a?.environmentFields??[],We=new Set(Ge.map(ei)),Ke=Kr(r.environment,We),t[35]=a?.environmentFields,t[36]=r.environment,t[37]=We,t[38]=Ge,t[39]=Ke):(We=t[37],Ge=t[38],Ke=t[39]);let qe=Ke,Je;t[40]!==We||t[41]!==r.environment||t[42]!==Ue?(Je=e=>{let t=(r.environment??[]).filter(e=>We.has(e.name));Ue([...t,...e])},t[40]=We,t[41]=r.environment,t[42]=Ue,t[43]=Je):Je=t[43];let Ye=Je,Xe;t[44]!==r.environment||t[45]!==Ue?(Xe=(e,t)=>{Ue(qr(r.environment,e,t))},t[44]=r.environment,t[45]=Ue,t[46]=Xe):Xe=t[46];let Ze=Xe,Qe;t[47]!==r.environment||t[48]!==Ue?(Qe=e=>{Ue(Kr(r.environment,new Set([e.name])))},t[47]=r.environment,t[48]=Ue,t[49]=Qe):Qe=t[49];let $e=Qe,et=X??r.driver,tt;t[50]===r.config?tt=t[51]:(tt=Vr(r.config,`source`)===`local`?void 0:Vr(r.config,`agentId`)??void 0,t[50]=r.config,t[51]=tt);let nt;t[52]===r.config?nt=t[53]:(nt=Vr(r.config,`source`)===`local`?void 0:Vr(r.config,`registryIconUrl`)??void 0,t[52]=r.config,t[53]=nt);let rt=!!Te,it;t[54]!==Te||t[55]!==Y||t[56]!==et||t[57]!==tt||t[58]!==nt||t[59]!==rt?(it=(0,$.jsx)(Et,{driverKind:et,displayName:Y,accentColor:Te,acpRegistryAgentId:tt,acpRegistryIconUrl:nt,showBadge:rt,className:`size-5`,iconClassName:`size-4 text-foreground/80`,badgeClassName:`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 px-0.5 text-5xs`}),t[54]=Te,t[55]=Y,t[56]=et,t[57]=tt,t[58]=nt,t[59]=rt,t[60]=it):it=t[60];let at=it,ot;t[61]===g?ot=t[62]:(ot=g?(0,$.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center`,children:g}):null,t[61]=g,t[62]=ot);let st=ot,ct;t[63]===pe?ct=t[64]:(ct=pe?(0,$.jsx)(`code`,{className:`text-xs text-muted-foreground`,children:pe}):null,t[63]=pe,t[64]=ct);let lt=ct,ut;t[65]!==H||t[66]!==se?(ut=H===`warning`||H===`error`?(0,$.jsx)(`span`,{className:ae(`size-1.5 shrink-0 rounded-full`,se.dot),"aria-hidden":!0}):null,t[65]=H,t[66]=se,t[67]=ut):ut=t[67];let ft=ut,ht=H===`warning`||H===`error`,gt=_e&&ht?ce.detail:null,_t=_e?oe?.status===`broken`?`Incompatible`:oe?.status===`unsupported`?`Unsupported`:`Limited support`:ce.detail,vt=ue&&W?(0,$.jsxs)($.Fragment,{children:[ht?ft:null,(0,$.jsx)(`span`,{children:`Authenticated as`}),(0,$.jsx)(Wr,{email:W}),de?(0,$.jsxs)(`span`,{children:[`· `,de]}):null,_t?(0,$.jsxs)(`span`,{className:`min-w-0 [overflow-wrap:anywhere]`,children:[`· `,_t]}):null]}):(0,$.jsxs)($.Fragment,{children:[ft,(0,$.jsx)(`span`,{children:ce.headline}),_t?(0,$.jsxs)(`span`,{className:`min-w-0 [overflow-wrap:anywhere]`,children:[`· `,_t]}):null]}),yt=me?(0,$.jsxs)(mt,{children:[(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(pt,{render:(0,$.jsx)(B,{type:`button`,size:s===`list`?`icon-micro`:`icon-xs`,variant:`ghost-muted`,className:s===`list`?`pointer-events-auto relative shrink-0`:void 0,"aria-label":`${q?`Updating`:me.title} — view details`,children:q?(0,$.jsx)(ye,{tone:`muted`,...s===`list`?{size:`sm`}:{}}):(0,$.jsx)(ve,{className:ae(s===`list`&&`size-3.5`,_e&&`text-warning`)})})})}),(0,$.jsx)(Ee,{side:`top`,children:q?`Updating`:me.title})]}),(0,$.jsx)(dt,{side:`bottom`,align:`end`,width:`md`,"aria-label":me.title,children:(0,$.jsxs)(`div`,{className:`grid min-w-0 gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,$.jsx)(`p`,{className:`text-sm font-semibold leading-tight text-foreground`,children:me.title}),(0,$.jsx)(`p`,{className:ae(`text-xs leading-snug`,me.emphasis===`strong`?`text-warning`:`text-muted-foreground`),children:me.detail})]}),J?(0,$.jsxs)(B,{type:`button`,size:`xs`,variant:`outline`,className:`w-full`,disabled:re,onClick:J,children:[re?(0,$.jsx)(ye,{}):(0,$.jsx)(C,{}),re?`Updating`:me.targetVersion?`Install ${Sn(me.targetVersion)}`:`Update now`]}):null,q||ge?(0,$.jsx)(`p`,{"aria-live":`polite`,className:ae(`text-xs leading-snug [overflow-wrap:anywhere]`,ge?`text-warning`:`text-muted-foreground`),children:q??ge}):null,J&&he?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-3xs font-medium uppercase tracking-wider text-muted-foreground`,children:[(0,$.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`}),`or, update manually using`,(0,$.jsx)(`span`,{"aria-hidden":!0,className:`h-px flex-1 bg-border`})]}):null,he?(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1 rounded-md border border-border/70 bg-muted/40 py-0.5 pr-0.5 pl-2`,children:[(0,$.jsx)(`code`,{className:`min-w-0 flex-1 truncate font-mono text-2xs text-foreground`,children:he}),(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{type:`button`,size:`icon-xs`,variant:`ghost-muted`,className:`shrink-0`,onClick:()=>ke(he,{providerName:Y}),"aria-label":`Copy update command`,children:(0,$.jsx)(U,{className:`size-3`})})}),(0,$.jsx)(Ee,{side:`top`,children:`Copy command`})]})]}):null]})})]}):null;if(s===`list`){let e=R?`bg-muted/45`:`hover:bg-muted/25`,n;t[68]===e?n=t[69]:(n=ae(`group flex min-h-18 items-center gap-3 px-3 py-3 transition-colors sm:px-4`,e),t[68]=e,t[69]=n);let i=!V&&!R&&`opacity-60 group-hover:opacity-100`,a;t[70]===i?a=t[71]:(a=ae(`pointer-events-none relative flex min-w-0 flex-1 items-start gap-3 rounded-md text-left transition-opacity`,i),t[70]=i,t[71]=a);let o=`Select ${Y}`,s;t[72]!==u||t[73]!==R||t[74]!==o?(s=(0,$.jsx)(`button`,{type:`button`,className:`pointer-events-auto absolute inset-0 cursor-pointer rounded-md outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,onClick:u,"aria-label":o,"aria-pressed":R}),t[72]=u,t[73]=R,t[74]=o,t[75]=s):s=t[75];let c;t[76]===Y?c=t[77]:(c=(0,$.jsx)(`span`,{className:`truncate text-sm font-medium text-foreground`,children:Y}),t[76]=Y,t[77]=c);let l;t[78]===pe?l=t[79]:(l=pe?(0,$.jsx)(`code`,{className:`max-w-24 shrink-0 truncate text-xs text-muted-foreground`,children:pe}):null,t[78]=pe,t[79]=l);let d;t[80]!==c||t[81]!==l||t[82]!==yt?(d=(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[c,l,yt]}),t[80]=c,t[81]=l,t[82]=yt,t[83]=d):d=t[83];let f;t[84]!==ft||t[85]!==q?(f=ft&&!q?(0,$.jsx)(`span`,{className:`flex h-[1.45em] shrink-0 items-center`,children:ft}):null,t[84]=ft,t[85]=q,t[86]=f):f=t[86];let p=gt?0:void 0,m;t[87]!==_t||t[88]!==ht||t[89]!==ce||t[90]!==q?(m=q?`Updating · ${q}`:(0,$.jsxs)($.Fragment,{children:[ce.headline,ht&&_t?` · ${_t}`:null]}),t[87]=_t,t[88]=ht,t[89]=ce,t[90]=q,t[91]=m):m=t[91];let h;t[92]!==p||t[93]!==m?(h=(0,$.jsx)(`span`,{tabIndex:p,"aria-live":`polite`,className:`pointer-events-auto line-clamp-2 [overflow-wrap:anywhere]`,children:m}),t[92]=p,t[93]=m,t[94]=h):h=t[94];let g;t[95]!==gt||t[96]!==h?(g=(0,$.jsx)(Fr,{detail:gt,children:h}),t[95]=gt,t[96]=h,t[97]=g):g=t[97];let _;t[98]!==f||t[99]!==g?(_=(0,$.jsxs)(`span`,{className:`mt-0.5 flex items-start gap-1.5 text-xs leading-normal text-muted-foreground/80`,children:[f,g]}),t[98]=f,t[99]=g,t[100]=_):_=t[100];let v;t[101]!==d||t[102]!==_?(v=(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[d,_]}),t[101]=d,t[102]=_,t[103]=v):v=t[103];let y;t[104]!==a||t[105]!==s||t[106]!==v||t[107]!==at?(y=(0,$.jsxs)(`div`,{className:a,children:[s,at,v]}),t[104]=a,t[105]=s,t[106]=v,t[107]=at,t[108]=y):y=t[108];let x;t[109]!==ne||t[110]!==Y||t[111]!==r||t[112]!==L||t[113]!==z?(x=L?.value===void 0?null:(0,$.jsxs)(`span`,{className:`flex items-center`,children:[(0,$.jsx)(Xr,{projectEnabled:L.value,deviceEnabled:b(r)}),(0,$.jsx)(Mt,{label:`${Y} enablement`,tooltip:`Reset to the device setting`,disabled:z||!ne,onClick:L.onReset})]}),t[109]=ne,t[110]=Y,t[111]=r,t[112]=L,t[113]=z,t[114]=x):x=t[114];let S=z||L!==void 0&&!ne,C;t[115]===Fe?C=t[116]:(C=e=>Fe(!!e),t[115]=Fe,t[116]=C);let w=`Enable ${Y}`,T;t[117]!==V||t[118]!==S||t[119]!==C||t[120]!==w?(T=(0,$.jsx)(Gt,{checked:V,disabled:S,onCheckedChange:C,"aria-label":w}),t[117]=V,t[118]=S,t[119]=C,t[120]=w,t[121]=T):T=t[121];let E;t[122]!==x||t[123]!==T?(E=(0,$.jsxs)(`span`,{className:`flex h-5 shrink-0 items-center gap-1`,children:[x,T]}),t[122]=x,t[123]=T,t[124]=E):E=t[124];let D;return t[125]!==n||t[126]!==y||t[127]!==E?(D=(0,$.jsxs)(`div`,{"data-slot":`settings-row`,className:n,children:[y,E]}),t[125]=n,t[126]=y,t[127]=E,t[128]=D):D=t[128],D}let bt;t[129]===a?bt=t[130]:(bt=a?.badgeLabel?(0,$.jsx)(w,{variant:`warning`,size:`sm`,className:`shrink-0`,children:a.badgeLabel}):null,t[129]=a,t[130]=bt);let xt=z||void 0,St=z&&`opacity-50`,Ct;t[131]===St?Ct=t[132]:(Ct=ae(`inline-flex items-center gap-1`,St),t[131]=St,t[132]=Ct);let wt;t[133]!==n||t[134]!==h||t[135]!==z?(wt=h?(0,$.jsx)(B,{type:`button`,size:`icon-xs`,variant:`ghost-destructive`,disabled:z,onClick:h,"aria-label":`Delete instance ${n}`,children:(0,$.jsx)(i,{})}):null,t[133]=n,t[134]=h,t[135]=z,t[136]=wt):wt=t[136];let Tt;t[137]!==z||t[138]!==xt||t[139]!==Ct||t[140]!==wt||t[141]!==st?(Tt=(0,$.jsxs)(`span`,{inert:z,"aria-disabled":xt,className:Ct,children:[st,wt]}),t[137]=z,t[138]=xt,t[139]=Ct,t[140]=wt,t[141]=st,t[142]=Tt):Tt=t[142];let Dt;t[143]!==bt||t[144]!==Tt||t[145]!==yt||t[146]!==lt?(Dt=(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[bt,lt,yt,Tt]}),t[143]=bt,t[144]=Tt,t[145]=yt,t[146]=lt,t[147]=Dt):Dt=t[147];let Ot=Dt,At;t[148]!==a||t[149]!==r.config||t[150]!==r.driver||t[151]!==n||t[152]!==ze?(At=a?(0,$.jsx)(jn,{definition:a,value:r.config,idPrefix:`provider-instance-${n}`,variant:`settings`,onChange:ze}):(0,$.jsx)(kt,{title:`Driver`,description:(0,$.jsxs)(`span`,{children:[`This instance uses `,(0,$.jsx)(`code`,{className:`text-foreground`,children:String(r.driver)}),`, which is not available in this build. Its configuration is preserved.`]})}),t[148]=a,t[149]=r.config,t[150]=r.driver,t[151]=n,t[152]=ze,t[153]=At):At=t[153];let jt=At,Pt=gt?0:void 0,Ft;t[154]!==vt||t[155]!==Pt?(Ft=(0,$.jsx)(`div`,{tabIndex:Pt,className:`flex min-w-0 flex-wrap items-baseline gap-x-1.5`,children:vt}),t[154]=vt,t[155]=Pt,t[156]=Ft):Ft=t[156];let It;t[157]!==gt||t[158]!==Ft?(It=(0,$.jsx)(Fr,{detail:gt,children:Ft}),t[157]=gt,t[158]=Ft,t[159]=It):It=t[159];let Lt;t[160]!==P||t[161]!==z||t[162]!==be?(Lt=be&&P?(0,$.jsxs)(`div`,{className:`grid max-w-xl gap-1.5 pt-1 text-xs`,children:[(0,$.jsx)(`p`,{children:be.message}),(0,$.jsx)(`code`,{className:`break-all text-2xs`,children:be.url}),(0,$.jsxs)(B,{render:(0,$.jsx)(`a`,{href:be.url,target:`_blank`,rel:`noopener noreferrer`,onClick:()=>P(be)}),size:`xs`,variant:`outline`,className:`w-fit`,disabled:z,children:[(0,$.jsx)(f,{}),`Continue authentication`]})]}):null,t[160]=P,t[161]=z,t[162]=be,t[163]=Lt):Lt=t[163];let Rt;t[164]!==It||t[165]!==Lt?(Rt=(0,$.jsxs)($.Fragment,{children:[It,Lt]}),t[164]=It,t[165]=Lt,t[166]=Rt):Rt=t[166];let zt=z||void 0,Bt=z&&`opacity-50 select-none`,Vt;t[167]===Bt?Vt=t[168]:(Vt=ae(`flex w-full min-w-0 items-center justify-end gap-2 @min-[32rem]/settings-row:w-auto`,Bt),t[167]=Bt,t[168]=Vt);let Ht;t[169]!==Te||t[170]!==Y||t[171]!==Le?(Ht=(0,$.jsx)(In,{layout:`inline`,displayName:Y,value:Te,onCommit:Le,commitDelayMs:120}),t[169]=Te,t[170]=Y,t[171]=Le,t[172]=Ht):Ht=t[172];let Ut=`provider-instance-${n}-display-name`,Wt=r.displayName??``,Kt=a?.label??`Instance label`,qt;t[173]!==Ut||t[174]!==Wt||t[175]!==Kt||t[176]!==Pe?(qt=(0,$.jsx)(pn,{id:Ut,size:`sm`,className:`min-w-0 flex-1 @min-[32rem]/settings-row:w-56`,value:Wt,onCommit:Pe,placeholder:Kt,spellCheck:!1}),t[173]=Ut,t[174]=Wt,t[175]=Kt,t[176]=Pe,t[177]=qt):qt=t[177];let Jt;t[178]!==z||t[179]!==zt||t[180]!==Vt||t[181]!==Ht||t[182]!==qt?(Jt=(0,$.jsxs)(`div`,{inert:z,"aria-disabled":zt,className:Vt,children:[Ht,qt]}),t[178]=z,t[179]=zt,t[180]=Vt,t[181]=Ht,t[182]=qt,t[183]=Jt):Jt=t[183];let Yt;t[184]!==Rt||t[185]!==Jt?(Yt=(0,$.jsx)(kt,{title:`Display name`,status:Rt,control:Jt}),t[184]=Rt,t[185]=Jt,t[186]=Yt):Yt=t[186];let Xt;t[187]!==Y||t[188]!==Ot||t[189]!==Yt||t[190]!==at?(Xt=(0,$.jsx)(Nt,{title:Y,icon:at,headerAction:Ot,children:Yt}),t[187]=Y,t[188]=Ot,t[189]=Yt,t[190]=at,t[191]=Xt):Xt=t[191];let Zt;t[192]!==Ge||t[193]!==r.environment||t[194]!==n||t[195]!==z||t[196]!==$e||t[197]!==_||t[198]!==Ze?(Zt=_||Ge.length>0?(0,$.jsxs)(Nt,{title:`Setup`,children:[_,(0,$.jsx)(`div`,{inert:z,"aria-disabled":z||void 0,className:z?`opacity-50 select-none`:void 0,children:Ge.length>0?(0,$.jsx)($.Fragment,{children:Ge.map(e=>(0,$.jsx)(Jr,{field:e,variable:Gr(r.environment,e.name),idPrefix:`provider-instance-${n}`,onCommit:Ze,onRemove:$e},e.name))}):null})]}):null,t[192]=Ge,t[193]=r.environment,t[194]=n,t[195]=z,t[196]=$e,t[197]=_,t[198]=Ze,t[199]=Zt):Zt=t[199];let Qt;t[200]!==a||t[201]!==r.config||t[202]!==r.driver||t[203]!==n||t[204]!==z||t[205]!==v||t[206]!==jt?(Qt=r.driver===`codex`&&kn(r.config)===`managed`?(0,$.jsx)(`div`,{inert:z,"aria-disabled":z||void 0,className:z?`opacity-50 select-none`:void 0,children:(0,$.jsx)(vn,{id:`provider-instance-${n}-runtime`,title:`Runtime`,headerPlacement:`outside`,children:v??jt},n)}):!a||An(a).length>0?(0,$.jsx)(Nt,{title:`Runtime`,inert:z,"aria-disabled":z||void 0,className:z?`opacity-50 select-none`:void 0,children:jt}):null,t[200]=a,t[201]=r.config,t[202]=r.driver,t[203]=n,t[204]=z,t[205]=v,t[206]=jt,t[207]=Qt):Qt=t[207];let $t=z||void 0,en=z?`opacity-50 select-none`:void 0,tn;t[208]!==qe||t[209]!==Ye?(tn=(0,$.jsx)(Yr,{environment:qe,onChange:Ye}),t[208]=qe,t[209]=Ye,t[210]=tn):tn=t[210];let nn;t[211]!==z||t[212]!==$t||t[213]!==en||t[214]!==tn?(nn=(0,$.jsx)(Nt,{title:`Environment`,inert:z,"aria-disabled":$t,className:en,children:tn}),t[211]=z,t[212]=$t,t[213]=en,t[214]=tn,t[215]=nn):nn=t[215];let rn;t[216]!==ie||t[217]!==F||t[218]!==n||t[219]!==o||t[220]!==z?(rn=F!==void 0&&o?.driver===`acpRegistry`?(0,$.jsx)(Nr,{environmentId:F,instanceId:n,provider:o,projects:ie,readOnly:z}):null,t[216]=ie,t[217]=F,t[218]=n,t[219]=o,t[220]=z,t[221]=rn):rn=t[221];let an;t[222]!==ne||t[223]!==Ae||t[224]!==X||t[225]!==a||t[226]!==x||t[227]!==y||t[228]!==n||t[229]!==T||t[230]!==Me||t[231]!==D||t[232]!==E||t[233]!==j||t[234]!==A||t[235]!==z||t[236]!==Ve?(an=a===void 0?null:(0,$.jsx)(Nt,{title:`Models`,children:(0,$.jsxs)(`div`,{className:`px-3 py-3 sm:px-4`,children:[(0,$.jsx)(`p`,{className:`mb-3 text-xs text-muted-foreground`,children:`Model preferences and custom models are saved on the selected environment and shared across connected devices.`}),(0,$.jsx)(Er,{canManageCustomModels:!z,canWritePreferences:ne,instanceId:n,driverKind:X,models:Me,customModels:Ae,hiddenModels:y,favoriteModels:x,modelOrder:T,onChange:Ve,onHiddenModelsChange:E,onFavoriteModelsChange:D,onToggleFavorite:A,onModelOrderChange:j})]})}),t[222]=ne,t[223]=Ae,t[224]=X,t[225]=a,t[226]=x,t[227]=y,t[228]=n,t[229]=T,t[230]=Me,t[231]=D,t[232]=E,t[233]=j,t[234]=A,t[235]=z,t[236]=Ve,t[237]=an):an=t[237];let on;return t[238]!==Xt||t[239]!==Zt||t[240]!==Qt||t[241]!==nn||t[242]!==rn||t[243]!==an?(on=(0,$.jsxs)($.Fragment,{children:[Xt,Zt,Qt,nn,rn,an]}),t[238]=Xt,t[239]=Zt,t[240]=Qt,t[241]=nn,t[242]=rn,t[243]=an,t[244]=on):on=t[244],on}function ei(e){return e.name}function ti(e){return e.name.trim().length>0}function ni(e,t){let{providerName:n}=t;be.add(Ue({type:`error`,title:`Could not copy ${n} update command`,description:e.message}))}function ri(e){let{providerName:t}=e;be.add({type:`success`,title:`${t} update command copied`,description:`Run it in a terminal when you are ready to update.`})}function ii(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``).slice(0,48)}function ai(e,t){let n=ii(t);return n?`${e}_${n}`:``}var oi=/^[a-zA-Z][a-zA-Z0-9_-]*$/,si=z.make(`codex`),ci=z.make(`acpRegistry`),li=Tt.definitions[0],ui={};function di(e,t){return e.length===0?`Instance ID is required.`:e.length>64?`Instance ID must be 64 characters or fewer.`:oi.test(e)?t.has(e)?`An instance named '${e}' already exists.`:null:`Instance ID must start with a letter and use only letters, digits, '-', or '_'.`}function fi(e){let t=(0,Mn.c)(130),{open:n,environmentId:r,environmentLabel:i,onOpenChange:a,onCreated:o}=e,s=ze(r),c=Ve(r),l=Me(r,te),[u,d]=(0,Q.useState)(0),[f,p]=(0,Q.useState)(!1),[m,g]=(0,Q.useState)(si),_;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(_={},t[0]=_):_=t[0];let[v,y]=(0,Q.useState)(_),[b,x]=(0,Q.useState)(null),S;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(S=[],t[1]=S):S=t[1];let[C,w]=(0,Q.useState)(S),[T,E]=(0,Q.useState)(!1),[D,k]=(0,Q.useState)(!1),[A,j]=(0,Q.useState)(!1),M;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(M={},t[2]=M):M=t[2];let[N,ee]=(0,Q.useState)(M),[P,F]=(0,Q.useState)(!1),[I,L]=(0,Q.useState)(!1),[R,ne]=(0,Q.useState)(null),re;t[3]===s.providerInstances?re=t[4]:(re=new Set([`codex`,`claudeAgent`,...Object.keys(s.providerInstances??{})]),t[3]=s.providerInstances,t[4]=re);let V=re,oe;t[5]===m?oe=t[6]:(oe=Tt.get(m)??li,t[5]=m,t[6]=oe);let H=oe,U=m===ci,se;t[7]===H.label?se=t[8]:(se={label:H.label,accentColor:``,instanceIdOverride:null},t[7]=H.label,t[8]=se);let le=se,{label:W,accentColor:ue,instanceIdOverride:de}=v[m]??le,fe;t[9]!==m||t[10]!==H.label||t[11]!==V||t[12]!==de||t[13]!==U||t[14]!==W?(fe=de??Gn(e=>!e.trim()||e===H.label?U?`${m}_custom`:m:ai(m,e),W,V),t[9]=m,t[10]=H.label,t[11]=V,t[12]=de,t[13]=U,t[14]=W,t[15]=fe):fe=t[15];let G=fe,pe;t[16]===H?pe=t[17]:(pe=An(H),t[16]=H,t[17]=pe);let me=pe,he;t[18]!==V||t[19]!==G?(he=di(G,V),t[18]=V,t[19]=G,t[20]=he):he=t[20];let K=he,q=P&&K!==null,ge;t[21]!==H.label||t[22]!==W?(ge=W.trim()||`${H.label} Workspace`,t[21]=H.label,t[22]=W,t[23]=ge):ge=t[23];let _e=ge,ve=N[m]??ui,J=U&&T&&ve.source===`local`,ye=typeof ve.commandPath==`string`?ve.commandPath.trim():``,xe;t[24]===ve.agentId?xe=t[25]:(xe=typeof ve.agentId==`string`?ve.agentId.trim():``,t[24]=ve.agentId,t[25]=xe);let Se=xe,Y=J?ye.length>0?null:`Executable is required.`:b!==null||T&&Se.length>0?null:`Select an ACP or configure one manually.`,Ce;t[26]!==H.label||t[27]!==U||t[28]!==J||t[29]!==Se||t[30]!==_e||t[31]!==b?.name?(Ce=U?[J?`Local ACP command`:b?.name??(Se||null),_e,null]:[H.label,_e,null],t[26]=H.label,t[27]=U,t[28]=J,t[29]=Se,t[30]=_e,t[31]=b?.name,t[32]=Ce):Ce=t[32];let we=Ce,Te;t[33]===m?Te=t[34]:(Te=e=>{ee(t=>{let n={...t};return e===void 0||Object.keys(e).length===0?delete n[m]:n[m]=e,n})},t[33]=m,t[34]=Te);let Ee=Te,De;t[35]!==le||t[36]!==m?(De=e=>{y(t=>({...t,[m]:{...t[m]??le,...e}}))},t[35]=le,t[36]=m,t[37]=De):De=t[37];let Oe=De,ke,X,Ae,je,Pe,Z;if(t[38]!==ue||t[39]!==Y||t[40]!==N||t[41]!==R||t[42]!==m||t[43]!==H.label||t[44]!==r||t[45]!==V||t[46]!==G||t[47]!==K||t[48]!==U||t[49]!==J||t[50]!==A||t[51]!==I||t[52]!==W||t[53]!==C||t[54]!==o||t[55]!==a||t[56]!==c||t[57]!==u){ke=e=>{if(!(I||A||R)){if(e.kind===`blocked`&&F(!0),U&&!J&&e.kind===`navigate`&&e.step===2){Pe();return}d(e.step)}},Z=e=>{ke(U?J?qn(u,e,Vn.length,{instanceIdError:K,prerequisite:{step:0,error:Y}}):Jn(u,e,{instanceIdError:K,selectionError:Y}):qn(u,e,zn.length,{instanceIdError:K}))};let e;t[64]===V?e=t[65]:(e=e=>{g(ci);let t=e.name,n=h(e.icon),r=Gn(bi,t,V);x(e),E(!1),y(e=>Wn(e,ci,{label:t,instanceIdOverride:r})),ee(t=>({...t,[ci]:{agentId:e.id,distribution:`auto`,...n?{registryIconUrl:n}:{}}})),F(!1),d(1)},t[64]=V,t[65]=e),X=e;let n;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(n=()=>{g(ci),x(null),E(!0),ee(yi),y(vi),F(!1)},t[66]=n):n=t[66],je=n;let i;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(i=()=>{g(ci),x(null),E(!0),ee(_i),y(gi),w([]),F(!1)},t[67]=i):i=t[67],Ae=i,Pe=async()=>{if(!Ne(r,`providers:manage`)||I||R||(F(!0),K!==null||U&&Y!==null))return;let e=m===`codex`?{...N[m],setupMode:`existing`}:N[m]??{},t=Object.keys(e).length>0,n=O(ue),i={driver:m,enabled:!0,...W.trim().length>0?{displayName:W.trim()}:{},...n?{accentColor:n}:{},...t?{config:e}:{},...J&&C.length>0?{environment:C}:{}},s=ie.make(G);L(!0);let l=await c({operation:`create`,instanceId:s,instance:i});if(l._tag===`Failure`){let e=ce(l);L(!1),be.add({type:`error`,title:`Could not add provider instance`,description:e instanceof Error?e.message:`The settings update failed.`});return}if(o?.(s),U&&!J){ne(s),L(!1),d(2);return}be.add({type:`success`,title:`Provider instance added`,description:`${H.label} instance '${G}' was added.`}),a(!1)},t[38]=ue,t[39]=Y,t[40]=N,t[41]=R,t[42]=m,t[43]=H.label,t[44]=r,t[45]=V,t[46]=G,t[47]=K,t[48]=U,t[49]=J,t[50]=A,t[51]=I,t[52]=W,t[53]=C,t[54]=o,t[55]=a,t[56]=c,t[57]=u,t[58]=ke,t[59]=X,t[60]=Ae,t[61]=je,t[62]=Pe,t[63]=Z}else ke=t[58],X=t[59],Ae=t[60],je=t[61],Pe=t[62],Z=t[63];if(f){let e;t[68]===a?e=t[69]:(e=()=>a(!1),t[68]=a,t[69]=e);let n;return t[70]!==r||t[71]!==e?(n=(0,$.jsx)(wn,{environmentId:r,onClose:e}),t[70]=r,t[71]=e,t[72]=n):n=t[72],n}let Fe;t[73]===i?Fe=t[74]:(Fe=(0,$.jsxs)($.Fragment,{children:[`Add an account or configure a provider on `,i,`.`]}),t[73]=i,t[74]=Fe);let Ie;t[75]!==Y||t[76]!==ke||t[77]!==R||t[78]!==K||t[79]!==U||t[80]!==J||t[81]!==A||t[82]!==I||t[83]!==u||t[84]!==we?(Ie=U?(0,$.jsx)(Yn,{currentStep:u,summaries:we,instanceIdError:K,steps:J?Vn:Bn,disabled:I||A||R!==null,identityStep:1,prerequisite:{step:0,error:Y},onNavigation:ke}):(0,$.jsx)(Yn,{currentStep:u,summaries:we,instanceIdError:K,disabled:I||A,onNavigation:ke}),t[75]=Y,t[76]=ke,t[77]=R,t[78]=K,t[79]=U,t[80]=J,t[81]=A,t[82]=I,t[83]=u,t[84]=we,t[85]=Ie):Ie=t[85];let Le;t[86]!==Fe||t[87]!==Ie?(Le=(0,$.jsx)(zt,{title:`Add provider`,description:Fe,children:Ie}),t[86]=Fe,t[87]=Ie,t[88]=Le):Le=t[88];let Re;t[89]!==ue||t[90]!==Y||t[91]!==l||t[92]!==ve||t[93]!==R||t[94]!==m||t[95]!==H||t[96]!==me||t[97]!==r||t[98]!==i||t[99]!==X||t[100]!==Ae||t[101]!==je||t[102]!==Pe||t[103]!==P||t[104]!==G||t[105]!==K||t[106]!==U||t[107]!==J||t[108]!==T||t[109]!==A||t[110]!==D||t[111]!==I||t[112]!==W||t[113]!==C||t[114]!==Z||t[115]!==a||t[116]!==b||t[117]!==Ee||t[118]!==Oe||t[119]!==s.providerInstances||t[120]!==q||t[121]!==u?(Re=R?(0,$.jsx)(tr,{environmentId:r,environmentLabel:i,instanceId:R,onFinish:()=>a(!1)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(on,{className:ae(U&&u===1&&`min-h-72`),holdHeight:u===0&&!T&&D,children:[(0,$.jsxs)(`div`,{className:ae(`grid gap-2`,u!==0&&`hidden`),children:[(0,$.jsx)(`div`,{id:`add-instance-driver-label`,className:`text-sm font-medium text-foreground`,children:`Provider`}),(0,$.jsx)(Ke,{disabled:A,value:m,onValueChange:e=>{g(z.make(e)),E(!1),F(!1)},"aria-labelledby":`add-instance-driver-label`,className:`grid grid-cols-1 sm:grid-cols-2`,children:Tt.definitions.filter(hi).map(mi)})]}),u===0?(0,$.jsxs)(`div`,{className:`space-y-4 pt-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-muted-foreground`,children:[(0,$.jsx)(`div`,{"aria-hidden":!0,className:`flex-1 border-t border-border/70`}),(0,$.jsx)(`span`,{children:`Or choose from ACP Registry`}),(0,$.jsx)(`div`,{"aria-hidden":!0,className:`flex-1 border-t border-border/70`})]}),U&&T?(0,$.jsxs)(`div`,{className:`grid gap-4`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h3`,{className:`text-sm font-medium text-foreground`,children:J?`Local ACP command`:`Enter manually`}),(0,$.jsx)(`p`,{className:`mt-0.5 text-xs text-muted-foreground`,children:J?`Run an installed ACP executable on ${i}.`:`Enter an official registry ID and any local executable or auth override.`})]}),(0,$.jsx)(B,{onClick:()=>{E(!1),F(!1)},size:`xs`,variant:`ghost`,children:`Search registry`})]}),(0,$.jsxs)(Ot,{variant:`plain`,children:[(0,$.jsx)(jn,{definition:H,value:ve,idPrefix:`add-provider-acpRegistry-manual`,variant:`settings`,onChange:Ee}),J?(0,$.jsx)(Yr,{environment:C,onChange:w}):null]}),U&&P&&Y?(0,$.jsx)(`p`,{className:`text-2xs text-destructive`,children:Y}):null]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Qn,{environmentId:r,providerInstances:s.providerInstances,onPrepared:X,onManualConfiguration:je,onLocalConfiguration:Ae,onLoadingChange:k,onPreparingChange:j}),U&&P&&Y?(0,$.jsx)(`p`,{className:`mt-2 text-2xs text-destructive`,children:Y}):null]})]}):null,U&&u===1&&b?(0,$.jsxs)(`div`,{className:`mb-4 flex items-start justify-between gap-3 border-b border-border/70 pb-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0`,children:[(0,$.jsx)(`p`,{className:`truncate text-sm font-medium text-foreground`,children:b.name}),(0,$.jsxs)(`p`,{className:`mt-0.5 text-xs text-muted-foreground`,children:[`v`,b.version,` · `,b.distribution]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 gap-2 text-2xs`,children:[b.website?(0,$.jsx)(`a`,{"aria-label":`Open documentation for ${b.name} (${b.id})`,className:`text-muted-foreground hover:text-foreground`,href:b.website,rel:`noreferrer`,target:`_blank`,children:`Docs`}):null,b.repository?(0,$.jsx)(`a`,{"aria-label":`Open source for ${b.name} (${b.id})`,className:`text-muted-foreground hover:text-foreground`,href:b.repository,rel:`noreferrer`,target:`_blank`,children:`Source`}):null]})]}):null,(0,$.jsxs)(Ot,{variant:`plain`,className:ae(u!==1&&`hidden`),children:[(0,$.jsx)(kt,{title:(0,$.jsx)(`label`,{htmlFor:`add-provider-label`,children:`Label`}),description:(0,$.jsx)(`span`,{id:`add-provider-label-description`,children:`Shown in the provider list.`}),control:(0,$.jsx)(Xe,{id:`add-provider-label`,"aria-describedby":`add-provider-label-description`,size:`sm`,className:`w-full @min-[32rem]/settings-row:w-56`,placeholder:`e.g. Work`,value:W,onChange:e=>Oe({label:e.target.value})})}),(0,$.jsx)(kt,{title:(0,$.jsx)(`label`,{htmlFor:`add-provider-instance-id`,children:`Instance ID`}),description:(0,$.jsx)(`span`,{id:`add-provider-instance-id-description`,children:`Letters, digits, '-', or '_'.`}),status:q?(0,$.jsx)(`span`,{id:`add-provider-instance-id-error`,role:`alert`,className:`text-destructive`,children:K}):void 0,control:(0,$.jsx)(Xe,{id:`add-provider-instance-id`,"aria-describedby":q?`add-provider-instance-id-description add-provider-instance-id-error`:`add-provider-instance-id-description`,size:`sm`,className:`w-full @min-[32rem]/settings-row:w-56`,placeholder:`${m}_work`,value:G,onChange:e=>{Oe({instanceIdOverride:e.target.value})},"aria-invalid":q})}),(0,$.jsx)(kt,{title:`Accent color`,description:`Optional marker shown in the picker.`,control:(0,$.jsx)(In,{displayName:W||H.label,value:ue||void 0,onCommit:e=>Oe({accentColor:e}),layout:`inline`})})]}),!U&&me.length>0?(0,$.jsx)(Ot,{variant:`plain`,className:ae(u!==2&&`hidden`),children:(0,$.jsx)(jn,{definition:H,value:ve,idPrefix:`add-provider-${m}`,variant:`settings`,onChange:Ee})}):!U&&u===2?(0,$.jsx)(`div`,{className:`grid gap-2`,children:(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This driver has no required configuration. You can add the instance now.`})}):null]}),(0,$.jsxs)(cn,{children:[(0,$.jsx)(B,{variant:u===0?`ghost-muted`:`outline`,size:`sm`,disabled:I||A,onClick:()=>{if(u===0){a(!1);return}d(pi)},children:u===0?`Cancel`:`Back`}),u===0&&m===`codex`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(B,{variant:`outline`,size:`sm`,onClick:()=>Z(1),children:`Configure manually`}),(0,$.jsx)(En,{size:`sm`,onClick:()=>p(!0)})]}):u<(U?1:2)?(0,$.jsx)(B,{size:`sm`,disabled:A,onClick:()=>Z(u+1),children:`Next`}):(0,$.jsx)(B,{size:`sm`,disabled:I||!l,onClick:()=>void Pe(),children:I?`Adding...`:U&&!J?`Continue to sign-in`:`Add instance`})]})]}),t[89]=ue,t[90]=Y,t[91]=l,t[92]=ve,t[93]=R,t[94]=m,t[95]=H,t[96]=me,t[97]=r,t[98]=i,t[99]=X,t[100]=Ae,t[101]=je,t[102]=Pe,t[103]=P,t[104]=G,t[105]=K,t[106]=U,t[107]=J,t[108]=T,t[109]=A,t[110]=D,t[111]=I,t[112]=W,t[113]=C,t[114]=Z,t[115]=a,t[116]=b,t[117]=Ee,t[118]=Oe,t[119]=s.providerInstances,t[120]=q,t[121]=u,t[122]=Re):Re=t[122];let Be;t[123]!==Le||t[124]!==Re?(Be=(0,$.jsxs)(qt,{size:`wide`,children:[Le,Re]}),t[123]=Le,t[124]=Re,t[125]=Be):Be=t[125];let He;return t[126]!==a||t[127]!==n||t[128]!==Be?(He=(0,$.jsx)(it,{open:n,onOpenChange:a,children:Be}),t[126]=a,t[127]=n,t[128]=Be,t[129]=He):He=t[129],He}function pi(e){return Math.max(0,e-1)}function mi(e){return(0,$.jsxs)(Ge,{value:e.driverKind,className:`relative flex cursor-pointer items-center gap-3 rounded-lg bg-card px-3 py-3 text-left text-muted-foreground outline-none ring-1 ring-black/5 hover:bg-muted focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring data-checked:bg-primary/8 data-checked:text-foreground data-checked:ring-2 data-checked:ring-inset data-checked:ring-primary data-checked:hover:bg-primary/8 dark:bg-white/3 dark:ring-white/5 dark:hover:bg-white/5 dark:data-checked:bg-primary/15 dark:data-checked:ring-primary dark:data-checked:hover:bg-primary/15`,children:[(0,$.jsx)(Et,{driverKind:e.driverKind,displayName:e.label,iconClassName:`size-4`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label}),(0,$.jsx)(qe,{className:`grid size-5 shrink-0 place-items-center rounded-full bg-primary text-primary-foreground`,"aria-hidden":!0,children:(0,$.jsx)(I,{className:`size-3.5 shrink-0`})}),e.badgeLabel?(0,$.jsx)(w,{variant:`warning`,size:`sm`,children:e.badgeLabel}):null]},e.driverKind)}function hi(e){return e.driverKind!==ci}function gi(e){return Wn(e,ci,{label:`Local ACP`,instanceIdOverride:null})}function _i(e){return{...e,[ci]:{source:`local`,commandArgs:[]}}}function vi(e){return Wn(e,ci,{label:``,instanceIdOverride:null})}function yi(e){let t={...e};return delete t[ci],t}function bi(e){return ai(ci,e)}function xi(e){let t=e;try{t=new URL(e).host}catch{}let n=t.toLowerCase().replace(/[^a-z0-9.-]+/g,`-`).replace(/^-+|-+$/g,``);return ne.make(`cliproxy-${n||`hub`}`)}function Si(e){let t=(0,Mn.c)(53),{open:n,onOpenChange:r,environmentId:i,environmentLabel:a}=e,o=Re(i),[s,c]=(0,Q.useState)(``),[l,u]=(0,Q.useState)(``),[d,f]=(0,Q.useState)(``),p;t[0]===l?p=t[1]:(p=l.trim(),t[0]=l,t[1]=p);let m=p,h;t[2]!==d||t[3]!==m.length?(h=m.length>0&&d.trim().length>0,t[2]=d,t[3]=m.length,t[4]=h):h=t[4];let g=h,_;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(_=()=>{c(``),u(``),f(``)},t[5]=_):_=t[5];let v=_,y;t[6]!==g||t[7]!==s||t[8]!==d||t[9]!==r||t[10]!==m||t[11]!==o?(y=()=>{if(!g)return;let e=xi(m);o({usageLimitSources:{[e]:{kind:`cliproxy`,...s.trim()?{label:s.trim()}:{},url:m,managementKey:d.trim(),enabled:!0}}}),v(),r(!1)},t[6]=g,t[7]=s,t[8]=d,t[9]=r,t[10]=m,t[11]=o,t[12]=y):y=t[12];let b=y,x;t[13]===r?x=t[14]:(x=e=>{e||v(),r(e)},t[13]=r,t[14]=x);let S;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,$.jsx)($e,{children:`Add a CLIProxyAPI hub`}),t[15]=S):S=t[15];let C;t[16]===a?C=t[17]:(C=(0,$.jsxs)(Qe,{children:[S,(0,$.jsxs)(nt,{children:[`Show the quota of every account the hub pools, next to the providers on`,` `,a,`. The key stays on that server.`]})]}),t[16]=a,t[17]=C);let w;t[18]===b?w=t[19]:(w=e=>{e.preventDefault(),b()},t[18]=b,t[19]=w);let T;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(Xt,{htmlFor:`usage-source-url`,children:`Hub URL`}),t[20]=T):T=t[20];let E;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>u(e.target.value),t[21]=E):E=t[21];let D;t[22]===l?D=t[23]:(D=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[T,(0,$.jsx)(Xe,{id:`usage-source-url`,placeholder:`https://hub.example.ts.net:8318`,value:l,onChange:E,autoFocus:!0})]}),t[22]=l,t[23]=D);let O;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(O=(0,$.jsx)(Xt,{htmlFor:`usage-source-key`,children:`Management key`}),t[24]=O):O=t[24];let k;t[25]===Symbol.for(`react.memo_cache_sentinel`)?(k=e=>f(e.target.value),t[25]=k):k=t[25];let A;t[26]===d?A=t[27]:(A=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[O,(0,$.jsx)(bn,{id:`usage-source-key`,value:d,onChange:k})]}),t[26]=d,t[27]=A);let j;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(Xt,{htmlFor:`usage-source-label`,children:`Label (optional)`}),t[28]=j):j=t[28];let M;t[29]===Symbol.for(`react.memo_cache_sentinel`)?(M=e=>c(e.target.value),t[29]=M):M=t[29];let N;t[30]===s?N=t[31]:(N=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[j,(0,$.jsx)(Xe,{id:`usage-source-label`,placeholder:`Defaults to the hub's host name`,value:s,onChange:M})]}),t[30]=s,t[31]=N);let ee;t[32]!==D||t[33]!==A||t[34]!==N||t[35]!==w?(ee=(0,$.jsx)(tt,{children:(0,$.jsxs)(`form`,{className:`grid gap-4`,onSubmit:w,children:[D,A,N]})}),t[32]=D,t[33]=A,t[34]=N,t[35]=w,t[36]=ee):ee=t[36];let te;t[37]===r?te=t[38]:(te=(0,$.jsx)(B,{variant:`outline`,onClick:()=>{v(),r(!1)},children:`Cancel`}),t[37]=r,t[38]=te);let P=!g,F;t[39]!==b||t[40]!==P?(F=(0,$.jsx)(B,{onClick:b,disabled:P,children:`Add hub`}),t[39]=b,t[40]=P,t[41]=F):F=t[41];let I;t[42]!==te||t[43]!==F?(I=(0,$.jsxs)(et,{variant:`bare`,children:[te,F]}),t[42]=te,t[43]=F,t[44]=I):I=t[44];let L;t[45]!==ee||t[46]!==I||t[47]!==C?(L=(0,$.jsxs)(rt,{className:`max-w-md`,children:[C,ee,I]}),t[45]=ee,t[46]=I,t[47]=C,t[48]=L):L=t[48];let R;return t[49]!==n||t[50]!==L||t[51]!==x?(R=(0,$.jsx)(it,{open:n,onOpenChange:x,children:L}),t[49]=n,t[50]=L,t[51]=x,t[52]=R):R=t[52],R}function Ci({environmentId:e,environmentLabel:t,sources:n,cursorKeychainUsageEnabled:r,readOnly:i}){let a=Re(e),o=Z(X.updateSettings,{label:`update Cursor account usage`}),s=Z(X.refreshProviders,{reportFailure:!1}),c=D(X.configValueAtom(e))?.environment.platform,[l,u]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(!1),p=Object.entries(n),m=async t=>{f(!0);try{(await o({environmentId:e,input:{patch:{cursorKeychainUsageEnabled:t}}}))._tag===`Success`&&await s({environmentId:e,input:{}})}finally{f(!1)}};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(Nt,{...an(`usage-providers`),headerAction:i?null:(0,$.jsxs)(B,{size:`xs`,variant:`outline`,onClick:()=>u(!0),children:[(0,$.jsx)(g,{className:`size-3`,"aria-hidden":!0}),`Add hub`]}),children:[c?.os===`darwin`?(0,$.jsx)(kt,{id:`cursor-keychain-usage`,title:`Cursor account usage`,description:`Read your existing Cursor CLI login from macOS Keychain to show account history and monthly limits. macOS may ask you to allow access.`,control:(0,$.jsx)(Gt,{"aria-label":`Cursor account usage`,checked:r,disabled:i||d,onCheckedChange:e=>void m(e)})}):null,p.length===0?(0,$.jsx)(kt,{title:`No hubs configured.`}):p.map(([e,t])=>{let n=t.label?.trim()||t.url;return(0,$.jsx)(kt,{title:n,description:(0,$.jsxs)(`span`,{className:`break-all`,children:[`CLI Proxy`,t.enabled?``:` · Disabled`,n===t.url?``:` · ${t.url}`]}),control:i?null:(0,$.jsx)(wi,{label:n,onConfirm:()=>a({usageLimitSources:{[e]:null}})})},e)})]}),l&&!i?(0,$.jsx)(Si,{open:!0,onOpenChange:u,environmentId:e,environmentLabel:t}):null]})}function wi(e){let t=(0,Mn.c)(15),{label:n,onConfirm:r}=e,[i,a]=(0,Q.useState)(!1),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(B,{size:`xs`,variant:`ghost`,onClick:()=>a(!0),children:`Remove`}),t[0]=o):o=t[0];let s;t[1]===n?s=t[2]:(s=(0,$.jsxs)(Wt,{children:[`Remove `,n,`?`]}),t[1]=n,t[2]=s);let c;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,$.jsx)(Jt,{children:`The hub's management key is deleted from this server. Its accounts leave the Limits view; the hub itself is untouched. Add it again with the URL and key to bring them back.`}),t[3]=c):c=t[3];let l;t[4]===s?l=t[5]:(l=(0,$.jsxs)(Qt,{children:[s,c]}),t[4]=s,t[5]=l);let u;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(sn,{render:(0,$.jsx)(B,{variant:`outline`}),children:`Cancel`}),t[6]=u):u=t[6];let d;t[7]===r?d=t[8]:(d=(0,$.jsxs)(Zt,{children:[u,(0,$.jsx)(B,{variant:`destructive`,onClick:()=>{a(!1),r()},children:`Remove hub`})]}),t[7]=r,t[8]=d);let f;t[9]!==l||t[10]!==d?(f=(0,$.jsxs)(Ht,{children:[l,d]}),t[9]=l,t[10]=d,t[11]=f):f=t[11];let p;return t[12]!==i||t[13]!==f?(p=(0,$.jsxs)($.Fragment,{children:[o,(0,$.jsx)(Bt,{open:i,onOpenChange:a,children:f})]}),t[12]=i,t[13]=f,t[14]=p):p=t[14],p}function Ti(e){let t=typeof e==`object`&&e&&`authMethod`in e?e.authMethod:void 0;return E.find(e=>e.value===t)?.value??`oauth-personal`}function Ei(e){let t=(0,Mn.c)(21),n;t[0]===e.environmentLabel?n=t[1]:(n=(0,$.jsx)(`span`,{className:`text-muted-foreground [overflow-wrap:anywhere]`,children:e.environmentLabel}),t[0]=e.environmentLabel,t[1]=n);let r;t[2]!==e.enabled||t[3]!==e.onEnable||t[4]!==e.readOnly?(r=!e.enabled&&!e.readOnly?(0,$.jsx)(B,{size:`sm`,variant:`outline`,onClick:e.onEnable,children:`Enable Antigravity`}):null,t[2]=e.enabled,t[3]=e.onEnable,t[4]=e.readOnly,t[5]=r):r=t[5];let i;t[6]!==n||t[7]!==r?(i=(0,$.jsx)(kt,{className:`@max-lg/setup:[&>div:first-child]:flex @max-lg/setup:[&>div:first-child]:items-stretch @max-lg/setup:[&>div:first-child]:gap-3`,title:`Environment`,description:`Device that runs this provider.`,control:(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2 sm:items-end`,children:[n,r]})}),t[6]=n,t[7]=r,t[8]=i):i=t[8];let a;t[9]!==e.authMethod||t[10]!==e.binaryPath||t[11]!==e.enabled||t[12]!==e.environmentId||t[13]!==e.environmentLabel||t[14]!==e.instanceId||t[15]!==e.provider||t[16]!==e.readOnly?(a=e.readOnly?(0,$.jsx)(kt,{title:`Setup unavailable`,description:`Provider setup is read-only.`}):e.provider?.setup===void 0?(0,$.jsx)(kt,{title:`Update required`,description:`Update this environment to manage Antigravity.`}):(0,$.jsx)(Di,{environmentId:e.environmentId,environmentLabel:e.environmentLabel,instanceId:e.instanceId,provider:e.provider,binaryPath:e.binaryPath,authMethod:e.authMethod??`oauth-personal`,enabled:e.enabled},`${e.environmentId}:${e.instanceId}`),t[9]=e.authMethod,t[10]=e.binaryPath,t[11]=e.enabled,t[12]=e.environmentId,t[13]=e.environmentLabel,t[14]=e.instanceId,t[15]=e.provider,t[16]=e.readOnly,t[17]=a):a=t[17];let o;return t[18]!==i||t[19]!==a?(o=(0,$.jsxs)(`section`,{"aria-label":`Antigravity setup`,className:`@container/setup divide-y divide-border/50 text-xs`,children:[i,a]}),t[18]=i,t[19]=a,t[20]=o):o=t[20],o}function Di({environmentId:e,environmentLabel:t,instanceId:n,provider:r,enabled:a,binaryPath:o}){let s={environmentId:e,input:{instanceId:n}},c=Pe(X.providerAuthState(s)),l=Pe(X.providerInstallState(s)),u=c.data,d=l.data,f={reportFailure:!1,reportDefect:!1},p=Z(X.startProviderInstall,f),m=Z(X.cancelProviderInstall,f),h=Z(X.removeProviderInstallation,f),[g,_]=(0,Q.useState)(null),v=(0,Q.useRef)(!1),[y,b]=(0,Q.useState)(null),x=u?.phase===`starting`||u?.phase===`waiting`||u?.phase===`verifying`,S=d?.phase===`downloading`||d?.phase===`extracting`||d?.phase===`verifying`,C=!!o?.trim(),w=r.installed||!C&&d?.installedVersion!=null,T=c.error??l.error,E=g!==null||T!==null,D=d?.phase===`downloading`?`Downloading ${(d.downloadedBytes/1e6).toFixed(1)} MB${d.totalBytes===null?``:` of ${(d.totalBytes/1e6).toFixed(1)} MB`}.`:d?.phase===`extracting`?`Extracting Antigravity.`:d?.phase===`verifying`?`Checking the downloaded runtime.`:w?`Installed.`:C?a?`The configured Antigravity runtime is unavailable.`:`The configured Antigravity runtime has not been checked.`:d?.totalBytes?`${Math.ceil(d.totalBytes/1e6)} MB download.`:`Not installed.`;async function O(e,t){if(v.current)return!1;v.current=!0,_(e),b(null);try{let e=await t();if(e._tag===`Failure`){if(!se(e)){let t=ce(e);b(t instanceof Error?t.message:`Provider setup failed.`)}return!1}return!0}catch{return b(`Provider setup failed. Try again.`),!1}finally{v.current=!1,_(null)}}async function k(){await Ie().dialogs.confirm(`Remove the downloaded Antigravity runtime from ${t}? Google sign-in and thread history are kept.`)&&await O(`Removing runtime`,()=>h(s))}return(0,$.jsxs)(`div`,{className:`divide-y divide-border/50`,children:[(0,$.jsx)(kt,{title:`Runtime`,className:`@max-lg/setup:[&>div:first-child]:flex @max-lg/setup:[&>div:first-child]:items-stretch @max-lg/setup:[&>div:first-child]:gap-3`,description:`Install and manage Antigravity.`,status:(0,$.jsxs)(`div`,{className:`space-y-2`,children:[C?(0,$.jsx)(`p`,{className:`text-muted-foreground`,children:`Uses the custom binary path below. Installation keeps that path.`}):null,!w&&!r.setup?.canInstall?(0,$.jsx)(`p`,{className:`text-muted-foreground`,children:`Automatic installation unavailable. Set a binary path or use another environment.`}):null]}),control:(0,$.jsxs)(`div`,{className:`flex w-full min-w-0 flex-col gap-2 @min-[32rem]/settings-row:w-56 @min-[32rem]/settings-row:text-right`,children:[(0,$.jsx)(`p`,{role:`status`,className:`min-h-4 text-muted-foreground tabular-nums`,children:D}),(0,$.jsx)(`div`,{className:`h-1`,children:d?.phase===`downloading`&&d.totalBytes!==null&&d.totalBytes>0?(0,$.jsx)(`progress`,{"aria-label":`Antigravity download`,className:`block h-1 w-full accent-foreground`,value:d.downloadedBytes,max:d.totalBytes}):null}),!S&&d?.message&&d.message!==D?(0,$.jsx)(`p`,{className:`text-muted-foreground [overflow-wrap:anywhere]`,children:d.message}):null,(0,$.jsxs)(`div`,{className:`grid min-h-7 grid-cols-[1.75rem_minmax(0,1fr)] gap-2`,children:[(0,$.jsx)(`div`,{className:`col-start-2 row-start-1 grid`,children:S&&d.operationId?(0,$.jsx)(B,{size:`sm`,variant:`outline`,disabled:E,onClick:()=>{let t=d.operationId;t&&O(`Cancelling installation`,()=>m({environmentId:e,input:{instanceId:n,operationId:t}}))},children:`Cancel installation`}):!S&&r.setup?.canInstall?(0,$.jsx)(B,{size:`sm`,variant:`outline`,disabled:E||d===null||x,onClick:()=>void O(`Starting installation`,()=>p(s)),children:d?.installedVersion?d.version&&d.version!==d.installedVersion?`Update Antigravity`:`Reinstall Antigravity`:d?.phase===`failed`||d?.phase===`cancelled`?`Retry installation`:w?`Install managed runtime`:`Install Antigravity`}):null}),d?.canRemove&&!S?(0,$.jsx)(B,{size:`icon-sm`,variant:`ghost`,className:`col-start-1 row-start-1`,"aria-label":`Remove downloaded runtime`,disabled:E||x,onClick:()=>void k(),children:(0,$.jsx)(i,{className:`size-3.5`})}):null]})]})}),(0,$.jsx)(er,{environmentId:e,environmentLabel:t,instanceId:n,provider:r,readOnly:!1}),(0,$.jsx)(`p`,{className:`sr-only`,role:`status`,children:g?`${g}.`:null}),y||T?(0,$.jsxs)(`div`,{className:`grid gap-2 px-3 py-3 sm:px-4`,children:[(0,$.jsx)(`p`,{role:`alert`,className:`text-destructive [overflow-wrap:anywhere]`,children:y??T}),T?(0,$.jsx)(B,{size:`sm`,variant:`outline`,className:`w-fit`,onClick:()=>{c.refresh(),l.refresh()},children:`Retry setup status`}):null]}):null]})}function Oi(e,t){let n=new Set(e),r=new Set(t.map(e=>e.trim()).filter(Boolean));return[...new Set([...n,...r])].filter(e=>n.has(e)!==r.has(e)).map(e=>({model:e,selected:r.has(e)}))}function ki(e,t){if(typeof e!=`object`||!e)return null;let n=e[t];return typeof n==`string`&&n.trim().length>0?n.trim():null}var Ai=Tt.definitions.map(e=>({provider:e.driverKind,hasDefaultInstance:e.hasDefaultInstance!==!1}));function ji(e){return typeof e!=`object`||!e||!(`binaryPath`in e)?``:typeof e.binaryPath==`string`?e.binaryPath.trim():``}function Mi(e){let t=(0,Mn.c)(6),{lastCheckedAt:n}=e;Ft();let r;t[0]===n?r=t[1]:(r=We(n),t[0]=n,t[1]=r);let i=r;if(i.status===`missing`)return null;if(i.status===`invalid`){let e;return t[2]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(`span`,{children:`Checked unavailable`}),t[2]=e):e=t[2],e}let a;return t[3]!==i.suffix||t[4]!==i.value?(a=(0,$.jsx)(`span`,{children:i.suffix?(0,$.jsxs)($.Fragment,{children:[`Checked `,(0,$.jsx)(`span`,{className:`font-mono tabular-nums`,children:i.value}),` `,i.suffix]}):(0,$.jsxs)($.Fragment,{children:[`Checked `,i.value]})}),t[3]=i.suffix,t[4]=i.value,t[5]=a):a=t[5],a}function Ni(e){return e.entry.target._tag===`PrimaryConnectionTarget`?`Primary device`:e.relayManaged?`P4 Connect`:e.entry.target._tag===`SshConnectionTarget`?`SSH`:de(e.entry.target)?`Local device`:e.displayUrl??`Remote device`}var Pi=`@min-[48rem]/providers:h-[min(44rem,calc(100dvh-11rem))] @min-[48rem]/providers:min-h-[32rem]`;function Fi(e){let t=(0,Mn.c)(22),{deviceTabs:n,icon:r,title:i,description:a,children:o}=e,s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=an(`providers`),t[0]=s):s=t[0];let c;t[1]===n?c=t[2]:(c=n?(0,$.jsx)(`div`,{className:`flex min-h-11 min-w-0 items-center px-3 sm:px-4`,children:n}):null,t[1]=n,t[2]=c);let l;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(l=ae(Pi,`scrollbar-gutter-both flex overflow-x-hidden overflow-y-auto`),t[3]=l):l=t[3];let u;t[4]===r?u=t[5]:(u=(0,$.jsx)(at,{variant:`icon`,children:r}),t[4]=r,t[5]=u);let d;t[6]===i?d=t[7]:(d=(0,$.jsx)(ct,{children:i}),t[6]=i,t[7]=d);let f;t[8]===a?f=t[9]:(f=(0,$.jsx)(lt,{children:a}),t[8]=a,t[9]=f);let p;t[10]!==d||t[11]!==f?(p=(0,$.jsxs)(ot,{children:[d,f]}),t[10]=d,t[11]=f,t[12]=p):p=t[12];let m;t[13]===o?m=t[14]:(m=o?(0,$.jsx)(st,{className:`max-w-xl`,children:o}):null,t[13]=o,t[14]=m);let h;t[15]!==u||t[16]!==p||t[17]!==m?(h=(0,$.jsx)(Ot,{divided:!1,className:l,children:(0,$.jsxs)(ut,{children:[u,p,m]})}),t[15]=u,t[16]=p,t[17]=m,t[18]=h):h=t[18];let g;return t[19]!==c||t[20]!==h?(g=(0,$.jsxs)(Nt,{...s,variant:`plain`,children:[c,h]}),t[19]=c,t[20]=h,t[21]=g):g=t[21],g}function Ii(e){let t=(0,Mn.c)(18),{environment:n,access:r,deviceTabs:i}=e,a=r.kind===`loading`,o=a?`Loading provider settings`:r.kind===`error`?`Could not connect to this device`:`Provider settings are unavailable`,s;t[0]!==r.reason||t[1]!==n.connection||t[2]!==n.label||t[3]!==a?(s=a?r.reason===`permissions`?`Checking what this session is allowed to change.`:`Waiting for ${n.label}'s configuration.`:fe(n.connection),t[0]=r.reason,t[1]=n.connection,t[2]=n.label,t[3]=a,t[4]=s):s=t[4];let c=s,l=a?null:n.connection.error,u;t[5]===n.serverConfig?u=t[6]:(u=H(n.serverConfig),t[5]=n.serverConfig,t[6]=u);let d;t[7]===u?d=t[8]:(d=(0,$.jsx)(St,{kind:u}),t[7]=u,t[8]=d);let f;t[9]!==n.environmentId||t[10]!==l?(f=l?(0,$.jsx)(yn,{text:l,className:`w-full text-left font-mono text-xs leading-relaxed text-muted-foreground`},n.environmentId):null,t[9]=n.environmentId,t[10]=l,t[11]=f):f=t[11];let p;return t[12]!==c||t[13]!==i||t[14]!==d||t[15]!==f||t[16]!==o?(p=(0,$.jsx)(Fi,{deviceTabs:i,icon:d,title:o,description:c,children:f}),t[12]=c,t[13]=i,t[14]=d,t[15]=f,t[16]=o,t[17]=p):p=t[17],p}function Li(e){let t=(0,Mn.c)(3),n=`${e.environmentId??``}:${e.instanceId??``}`,r;return t[0]!==n||t[1]!==e?(r=(0,$.jsx)(jt,{className:`@container/providers gap-8`,children:(0,$.jsx)(Ri,{...e},n)}),t[0]=n,t[1]=e,t[2]=r):r=t[2],r}function Ri(e){let t=(0,Mn.c)(59),{environments:n,isReady:r}=Oe(),i=ke(),a=At(),o;t[0]!==n||t[1]!==i||t[2]!==e.environmentIds?(o=fn(n,i,e.environmentIds),t[0]=n,t[1]=i,t[2]=e.environmentIds,t[3]=o):o=t[3];let s=o,[c,l]=(0,Q.useState)(e.environmentId??i),u;t[4]!==s||t[5]!==c||t[6]!==e.environmentId?(u=e.environmentId!==void 0&&c===e.environmentId&&!s.some(t=>t.environmentId===e.environmentId),t[4]=s,t[5]=c,t[6]=e.environmentId,t[7]=u):u=t[7];let d=u,f;t[8]!==s||t[9]!==i||t[10]!==c||t[11]!==e.environmentId||t[12]!==e.scoped||t[13]!==d?(f=e.scoped||d?e.environmentId:nn(s,c,i),t[8]=s,t[9]=i,t[10]=c,t[11]=e.environmentId,t[12]=e.scoped,t[13]=d,t[14]=f):f=t[14];let p=f,m,h;t[15]!==p||t[16]!==s?(m=s.find(e=>e.environmentId===p)??null,h=m!==null&&Ut({connectionPhase:m.connection.phase,hasServerConfig:m.serverConfig!==null}),t[15]=p,t[16]=s,t[17]=m,t[18]=h):(m=t[17],h=t[18]);let g=h,_;t[19]===s?_=t[20]:(_=s.find(Vi)?.environmentId,t[19]=s,t[20]=_);let v=_,y;t[21]===s?y=t[22]:(y=s.find(Bi)?.environmentId,t[21]=s,t[22]=y);let b=y,x;t[23]!==a||t[24]!==b||t[25]!==v||t[26]!==m?.serverConfig?.environment||t[27]!==g||t[28]!==e.scoped?(x=()=>{if(!e.scoped&&a===an(`cursor-keychain-usage`).id&&(!g||m?.serverConfig?.environment.platform.os!==`darwin`)&&b!==void 0){l(b);return}!e.scoped&&(a===an(`provider-health-check-interval`).id||a===an(`usage-providers`).id)&&!g&&v!==void 0&&l(v)},t[23]=a,t[24]=b,t[25]=v,t[26]=m?.serverConfig?.environment,t[27]=g,t[28]=e.scoped,t[29]=x):x=t[29];let S;t[30]!==a||t[31]!==b||t[32]!==v||t[33]!==m||t[34]!==g||t[35]!==e.scoped?(S=[a,b,v,m,g,e.scoped],t[30]=a,t[31]=b,t[32]=v,t[33]=m,t[34]=g,t[35]=e.scoped,t[36]=S):S=t[36],(0,Q.useEffect)(x,S);let C=s.length===1&&s[0]?.entry.target._tag===`PrimaryConnectionTarget`,w;t[37]!==p||t[38]!==C||t[39]!==s||t[40]!==e.scoped?(w=!e.scoped&&!C&&s.length>0?(0,$.jsx)(Ze,{radius:`none`,hideScrollbars:!0,scrollFade:!0,className:`h-11 min-w-0 flex-1`,children:(0,$.jsx)(Je,{"aria-label":`Devices`,variant:`segmented`,className:`my-2`,value:p?[p]:[],onValueChange:e=>{let t=s.find(t=>t.environmentId===e[0]);t&&l(t.environmentId)},children:s.map(zi)})}):null,t[37]=p,t[38]=C,t[39]=s,t[40]=e.scoped,t[41]=w):w=t[41];let T=w,E;t[42]!==T||t[43]!==d?(E=d?(0,$.jsx)(Fi,{deviceTabs:T,icon:(0,$.jsx)(St,{kind:H(null)}),title:`Device unavailable`,description:`Reconnect this device to set up its provider, or select another device.`}):null,t[42]=T,t[43]=d,t[44]=E):E=t[44];let D;t[45]!==r||t[46]!==s.length||t[47]!==d?(D=s.length===0&&!d?(0,$.jsx)(Fi,{icon:(0,$.jsx)(St,{kind:H(null)}),title:r?`No connected devices`:`Loading devices`,description:r?`Connect an execution environment before configuring providers.`:`Reading connected execution environments.`}):null,t[45]=r,t[46]=s.length,t[47]=d,t[48]=D):D=t[48];let O;t[49]!==T||t[50]!==m||t[51]!==e.environmentId||t[52]!==e.instanceId||t[53]!==e.projectIds?(O=m?(0,$.jsx)(Hi,{environment:m,deviceTabs:T,targetInstanceId:e.environmentId===void 0||m.environmentId===e.environmentId?e.instanceId:void 0,projectIds:e.projectIds??[]},m.environmentId):null,t[49]=T,t[50]=m,t[51]=e.environmentId,t[52]=e.instanceId,t[53]=e.projectIds,t[54]=O):O=t[54];let k;return t[55]!==D||t[56]!==O||t[57]!==E?(k=(0,$.jsxs)($.Fragment,{children:[E,D,O]}),t[55]=D,t[56]=O,t[57]=E,t[58]=k):k=t[58],k}function zi(e){let t=H(e.serverConfig),n=Ni(e),r=fe(e.connection);return(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsxs)(Ye,{value:e.environmentId,children:[(0,$.jsx)(St,{kind:t,className:`size-3.5 shrink-0`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:`max-w-40 truncate`,children:e.label}),e.connection.phase===`connected`?null:(0,$.jsx)(Rt,{dotClassName:It(e.connection.phase),pingClassName:Lt(e.connection.phase)}),(0,$.jsxs)(`span`,{className:`sr-only`,children:[n,`, `,r]})]})}),(0,$.jsxs)(Ee,{side:`top`,children:[n,` · `,r]})]},e.environmentId)}function Bi(e){return e.serverConfig?.environment.platform.os===`darwin`&&Ut({connectionPhase:e.connection.phase,hasServerConfig:!0})}function Vi(e){return Ut({connectionPhase:e.connection.phase,hasServerConfig:e.serverConfig!==null})}function Hi(e){let t=(0,Mn.c)(5),{environment:n,deviceTabs:r,targetInstanceId:i,projectIds:a}=e,o;return t[0]!==r||t[1]!==n||t[2]!==a||t[3]!==i?(o=(0,$.jsx)(Ui,{environment:n,deviceTabs:r,targetInstanceId:i,projectIds:a}),t[0]=r,t[1]=n,t[2]=a,t[3]=i,t[4]=o):o=t[4],o}function Ui(e){let t=(0,Mn.c)(10),{environment:n,deviceTabs:r,targetInstanceId:i,projectIds:a}=e,o=je(n.environmentId),s;t[0]!==o.data||t[1]!==o.hasError||t[2]!==o.isPending?(s=en({session:o.data,isPending:o.isPending,hasError:o.hasError}),t[0]=o.data,t[1]=o.hasError,t[2]=o.isPending,t[3]=s):s=t[3];let c=s,l;return t[4]!==r||t[5]!==n||t[6]!==c||t[7]!==a||t[8]!==i?(l=(0,$.jsx)(Wi,{environment:n,operateAccess:c,deviceTabs:r,targetInstanceId:i,projectIds:a}),t[4]=r,t[5]=n,t[6]=c,t[7]=a,t[8]=i,t[9]=l):l=t[9],l}function Wi(e){let t=(0,Mn.c)(15),{environment:n,operateAccess:r,deviceTabs:i,targetInstanceId:a,projectIds:o}=e,s=n.serverConfig!==null,c;t[0]!==n.connection.phase||t[1]!==r||t[2]!==s?(c=tn({connectionPhase:n.connection.phase,hasServerConfig:s,operateAccess:r}),t[0]=n.connection.phase,t[1]=r,t[2]=s,t[3]=c):c=t[3];let l=c;if(l.kind!==`editable`&&l.kind!==`read-only`){let e;return t[4]!==l||t[5]!==i||t[6]!==n?(e=(0,$.jsx)(Ii,{environment:n,access:l,deviceTabs:i}),t[4]=l,t[5]=i,t[6]=n,t[7]=e):e=t[7],e}let u=l.kind===`read-only`,d;return t[8]!==i||t[9]!==n.environmentId||t[10]!==n.label||t[11]!==o||t[12]!==u||t[13]!==a?(d=(0,$.jsx)(Gi,{environmentId:n.environmentId,environmentLabel:n.label,readOnly:u,deviceTabs:i,targetInstanceId:a,projectIds:o}),t[8]=i,t[9]=n.environmentId,t[10]=n.label,t[11]=o,t[12]=u,t[13]=a,t[14]=d):d=t[14],d}function Gi(e){let t=(0,Mn.c)(179),{environmentId:n,environmentLabel:i,readOnly:a,deviceTabs:o,targetInstanceId:c,projectIds:u}=e,d=a!==void 0&&a,f;t[0]===u?f=t[1]:(f=u===void 0?[]:u,t[0]=u,t[1]=f);let p=f,m=ze(n),h=Me(n,r),_=Me(n,V),v=Re(n),x=He(n),S=Le(n),C=Ve(n),w=D(X.providersValueAtom(n))??Ae,T=W(),E;if(t[2]!==n||t[3]!==T){let e;t[5]===n?e=t[6]:(e=e=>e.environmentId===n,t[5]=n,t[6]=e),E=T.filter(e),t[2]=n,t[3]=T,t[4]=E}else E=t[4];let O=E,k=ue().get(n)?.environment.capabilities.projectProviderInstanceOverrides===!0,A;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(A={reportFailure:!1},t[7]=A):A=t[7];let M=Z(X.refreshProviders,A),N;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(N={reportFailure:!1},t[8]=N):N=t[8];let te=Z(X.updateProvider,N),I;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(I={reportFailure:!1},t[9]=I):I=t[9];let R=Z(X.uninstallAcpRegistryManagedBinary,I),ne;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(ne={reportFailure:!1},t[10]=ne):ne=t[10];let re=Z(X.acceptAcpRegistryUrlAuth,ne),[ie,H]=(0,Q.useState)(!1),[U,de]=(0,Q.useState)(!1),[fe,q]=(0,Q.useState)(c??null),[ge,_e]=(0,Q.useState)($i),ve=(0,Q.useRef)(!1),J;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(J=new Set,t[11]=J):J=t[11];let ye=(0,Q.useRef)(J),xe;t[12]!==re||t[13]!==n?(xe=(e,t)=>{re({environmentId:n,input:{instanceId:e,elicitationId:t.elicitationId}}).then(Qi)},t[12]=re,t[13]=n,t[14]=xe):xe=t[14];let Se=xe,Y;t[15]===w?Y=t[16]:(Y=new Map(w.filter(Kt).map(Zi)),t[15]=w,t[16]=Y);let we=Y,Te,Oe,ke,je,Pe,Ie,We,Ge,Ke,qe,Je,Ye,Xe,Qe,$e,et;if(t[17]!==Se||t[18]!==_||t[19]!==h||t[20]!==o||t[21]!==n||t[22]!==i||t[23]!==ie||t[24]!==C||t[25]!==p||t[26]!==O||t[27]!==we||t[28]!==d||t[29]!==M||t[30]!==fe||t[31]!==w||t[32]!==m||t[33]!==k||t[34]!==c||t[35]!==S||t[36]!==R||t[37]!==x||t[38]!==te||t[39]!==v||t[40]!==ge){let e;t[57]===w?e=t[58]:(e=e=>e.provider!==`cursor`||w.some(Xi),t[57]=w,t[58]=e);let r=Ai.filter(e),a;t[59]!==w||t[60]!==m?(a=s(m,w),t[59]=w,t[60]=m,t[61]=a):a=t[61];let u=a.instanceId,f;if(t[62]!==m){Pe=Be(m);let e=Fe(Pe.profile).providerHealthRefreshInterval;je=mn(Pe.providerHealthRefreshInterval),f=mn(e),t[62]=m,t[63]=je,t[64]=Pe,t[65]=f}else je=t[63],Pe=t[64],f=t[65];ke=f;let T;t[66]===w?T=t[67]:(T=w.length>0?w.reduce(Yi,w[0].checkedAt):null,t[66]=w,t[67]=T);let E=T,D;t[68]!==n||t[69]!==M?(D=()=>{!ve.current&&Ne(n,`orchestration:read`)&&(ve.current=!0,H(!0),(async()=>{let e=await M({environmentId:n,input:{refreshModels:!0}});ve.current=!1,H(!1),e._tag===`Failure`&&!se(e)&&console.warn(`Failed to refresh providers`,{operation:`refresh-providers`,environmentId:n,...le(ce(e))})})())},t[68]=n,t[69]=M,t[70]=D):D=t[70];let A=D,j;t[71]!==n||t[72]!==te?(j=async(e,t)=>{if(!Ne(n,`providers:manage`)||ye.current.has(e.instanceId))return;ye.current.add(e.instanceId),_e(t=>new Set(t).add(e.instanceId));let r=await te({environmentId:n,input:{provider:e.driver,instanceId:e.instanceId,...t?{targetVersion:t}:{}}});if(r._tag===`Failure`&&!se(r)){let t=ce(r);be.add(Ue({type:`error`,title:`Could not update ${l[e.driver]??e.driver}`,description:t instanceof Error?t.message:`The provider update command could not be started.`}))}ye.current.delete(e.instanceId),_e(t=>{if(!t.has(e.instanceId))return t;let n=new Set(t);return n.delete(e.instanceId),n})},t[71]=n,t[72]=te,t[73]=j):j=t[73];let N=j,I=new Map;for(let[e,t]of Object.entries(m.providerInstances??{})){let n=t.driver,r=I.get(n)??[];r.push([e,t]),I.set(n,r)}let ne=new Set(r.map(Ji)),re=[],V=new Set(r.map(qi));for(let e of r){let t=e.provider,n=L(t),r=m.providerInstances?.[n],i=r??{driver:t},a=r!==void 0;(e.hasDefaultInstance||r!==void 0)&&(t===`codex`||t===`claudeAgent`||a||b(i)||n===c)&&re.push({instanceId:n,instance:i,driver:t,isDefault:!0,isDirty:a});for(let[t,r]of I.get(e.provider)??[])t!==n&&re.push({instanceId:t,instance:r,driver:r.driver,isDefault:!1})}for(let[e,t]of I)if(!V.has(e))for(let[e,n]of t)re.push({instanceId:e,instance:n,driver:n.driver,isDefault:ne.has(String(e))});let U=c!==void 0&&fe===c&&!re.some(e=>e.instanceId===c),W=re.find(e=>e.instanceId===fe)??(U?null:re[0]??null),ue;t[74]!==C||t[75]!==m?(ue=async(e,t,n)=>{let{providerInstances:r,...i}=gn({settings:m,instanceId:e.instanceId,instance:t,textGenerationModelSelection:n?.textGenerationModelSelection}),a=await C({operation:`upsert`,instanceId:e.instanceId,instance:t},i);if(a._tag===`Failure`&&!se(a)){let e=ce(a);be.add({type:`error`,title:`Could not update provider instance`,description:e instanceof Error?e.message:`The settings update failed.`})}},t[74]=C,t[75]=m,t[76]=ue):ue=t[76];let G=ue,pe;t[77]!==n||t[78]!==C||t[79]!==R?(pe=async e=>{let t=await C({operation:`remove`,instanceId:e.instanceId});if(t._tag===`Failure`){let e=ce(t);be.add({type:`error`,title:`Could not delete provider instance`,description:e instanceof Error?e.message:`The settings update failed.`});return}if(e.driver!==z.make(`acpRegistry`)||ki(e.instance.config,`source`)===`local`)return;let r=ki(e.instance.config,`agentId`);if(r===null)return;let i=await R({environmentId:n,input:{agentId:r}});if(i._tag===`Failure`&&!se(i)){let e=ce(i);be.add({type:`warning`,title:`Provider deleted, but managed files remain`,description:e instanceof Error?e.message:`Managed binary cleanup failed.`})}},t[77]=n,t[78]=C,t[79]=R,t[80]=pe):pe=t[80];let me=pe,he;t[81]===C?he=t[82]:(he=async e=>{let t=await C({operation:`remove`,instanceId:L(e)});if(t._tag===`Failure`&&!se(t)){let e=ce(t);be.add({type:`error`,title:`Could not reset provider instance`,description:e instanceof Error?e.message:`The settings update failed.`})}},t[81]=C,t[82]=he);let K=he,J=(e,t)=>{let r=Tt.get(e.driver),a=w.find(t=>t.instanceId===e.instanceId),o=we.get(e.instanceId),s=ge.has(e.instanceId)||a!==void 0&&$t(a),c=o!==void 0,l=o!==void 0&&!s,f=m.providerModelPreferences?.[e.instanceId]??{hiddenModels:[],modelOrder:[]},g=P(m.favorites??[],t=>t.provider===e.instanceId?y(t.model):ee),_=r?.label??String(e.driver),C=p[0],T=t=>{v({projectSettingsOverrides:Vt(m,p,e.instanceId,t)})},E=C===void 0||!k?void 0:{value:m.projectSettingsOverrides[C]?.providerInstances?.[e.instanceId]?.enabled,effectiveEnabled:oe(m,C,e.instanceId),onChange:e=>T(e),onReset:()=>T(void 0)};return(0,$.jsx)($r,{environmentId:n,acpProjects:O,projectOverride:E,onAcceptUrlAuth:d?void 0:t=>Se(e.instanceId,t),instanceId:e.instanceId,instance:e.instance,driverOption:r,liveProvider:a,mode:t,selected:t===`list`&&W?.instanceId===e.instanceId,onSelect:t===`list`?()=>q(e.instanceId):void 0,readOnly:d,runtime:t===`editor`&&e.driver===`codex`&&kn(e.instance.config)===`managed`?(0,$.jsx)(Dn,{environmentId:n,instanceId:e.instanceId,provider:a}):void 0,canWriteSettings:h,setup:t===`editor`&&e.driver===`antigravity`?(0,$.jsx)(Ei,{environmentId:n,environmentLabel:i,instanceId:e.instanceId,provider:a,binaryPath:ji(e.instance.config),authMethod:Ti(e.instance.config),enabled:b(e.instance),readOnly:d,onEnable:()=>G(e,{...e.instance,enabled:!0})}):t===`editor`&&e.driver===`codex`&&kn(e.instance.config)===`managed`?(0,$.jsx)(Cn,{environmentId:n,instanceId:e.instanceId,provider:a,mode:kn(e.instance.config),enabled:b(e.instance),readOnly:d,onModeChange:t=>G(e,{...e.instance,enabled:!0,config:{...e.instance.config!==null&&typeof e.instance.config==`object`?e.instance.config:{},enabled:!0,setupMode:t}})}):t===`editor`&&!d&&a&&(a.setup?.canAuthenticate||a.driver===`acpRegistry`&&a.installed)?(0,$.jsx)(er,{environmentId:n,environmentLabel:i,instanceId:e.instanceId,provider:a,readOnly:d},`${n}:${e.instanceId}`):t===`editor`&&!d&&e.driver===`cursor`&&a?.setup?.canAuthenticate===!1?(0,$.jsx)(kt,{title:`Cursor account`,description:`Using CURSOR_API_KEY. Remove it from this provider's environment to use browser sign-in.`}):null,onUpdate:t=>{let r=b(e.instance),i=t.enabled===!1&&r&&u===e.instanceId&&Ne(n,`settings:write`);G(e,t,i?{textGenerationModelSelection:F.textGenerationModelSelection}:void 0)},onDelete:t===`editor`&&!e.isDefault?()=>me(e):void 0,headerAction:t===`editor`&&e.isDefault&&e.isDirty?(0,$.jsx)(Mt,{label:`${_} provider settings`,onClick:()=>K(e.driver)}):null,hiddenModels:f.hiddenModels,favoriteModels:g,modelOrder:f.modelOrder,onHiddenModelsChange:(t,n)=>{let r=new Set(t),i=n??Oi(f.hiddenModels,t).map(Ki);x({setModelsHidden:i.map(t=>({provider:e.instanceId,model:t,hidden:r.has(t)}))})},onToggleFavorite:t=>{S(e.instanceId,t)},onFavoriteModelsChange:t=>{x({setModelFavorites:Oi(g,t).map(t=>{let{model:n,selected:r}=t;return{provider:e.instanceId,model:n,favorite:r}})})},onModelOrderChange:t=>{x({setProviderModelOrder:{provider:e.instanceId,modelOrder:t}})},onInstallRecommended:!d&&a?.compatibilityAdvisory?.message&&a.compatibilityAdvisory.recommendedVersion&&a.versionAdvisory?.canInstallVersion?()=>{N(a,a.compatibilityAdvisory?.recommendedVersion??void 0)}:void 0,onRunUpdate:!d&&c&&o?()=>{l&&N(o)}:void 0,isUpdating:s},e.instanceId)};Oe=Nt,t[83]===Symbol.for(`react.memo_cache_sentinel`)?(Je=an(`providers`),t[83]=Je):Je=t[83],Ye=`plain`,t[84]===d?Xe=t[85]:(Xe=d?null:(0,$.jsxs)(De,{children:[(0,$.jsx)(Ce,{render:(0,$.jsx)(B,{size:`icon-xs`,variant:`ghost-muted`,onClick:()=>de(!0),"aria-label":`Add provider`,children:(0,$.jsx)(g,{})})}),(0,$.jsx)(Ee,{side:`top`,children:`Add provider`})]}),t[84]=d,t[85]=Xe);let xe;t[86]===Symbol.for(`react.memo_cache_sentinel`)?(xe=(0,$.jsx)(dn,{}),t[86]=xe):xe=t[86];let Y=ie||!_,X;t[87]===A?X=t[88]:(X=()=>void A(),t[87]=A,t[88]=X);let Ae;t[89]===ie?Ae=t[90]:(Ae=(0,$.jsx)(ln,{refreshing:ie}),t[89]=ie,t[90]=Ae);let Me;t[91]===Symbol.for(`react.memo_cache_sentinel`)?(Me=(0,$.jsx)(`span`,{className:`sr-only`,children:`Refresh provider status`}),t[91]=Me):Me=t[91];let Z;t[92]!==ie||t[93]!==E?(Z=ie?`Refreshing providers`:(0,$.jsx)(Mi,{lastCheckedAt:E}),t[92]=ie,t[93]=E,t[94]=Z):Z=t[94];let Le;t[95]===Z?Le=t[96]:(Le=(0,$.jsx)(`span`,{className:`hidden min-w-0 truncate sm:inline`,children:Z}),t[95]=Z,t[96]=Le);let Re;t[97]!==ie||t[98]!==Y||t[99]!==X||t[100]!==Ae||t[101]!==Le?(Re=(0,$.jsx)(Ce,{render:(0,$.jsxs)(B,{size:`xs`,variant:`ghost-muted`,disabled:Y,"aria-busy":ie,onClick:X,children:[Ae,Me,Le]})}),t[97]=ie,t[98]=Y,t[99]=X,t[100]=Ae,t[101]=Le,t[102]=Re):Re=t[102];let ze;t[103]===Symbol.for(`react.memo_cache_sentinel`)?(ze=(0,$.jsx)(Ee,{side:`top`,children:`Refresh provider status`}),t[103]=ze):ze=t[103],t[104]===Re?Qe=t[105]:(Qe=(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[xe,(0,$.jsxs)(De,{children:[Re,ze]})]}),t[104]=Re,t[105]=Qe),t[106]===o?$e=t[107]:($e=o?(0,$.jsx)(`div`,{className:`flex min-h-11 min-w-0 items-center gap-2 px-3 sm:px-4`,children:o}):null,t[106]=o,t[107]=$e),t[108]!==i||t[109]!==d?(et=d?(0,$.jsx)(Ot,{divided:!1,className:`overflow-hidden`,children:(0,$.jsx)(kt,{title:`Limited permissions`,description:`This session can view ${i}'s providers but can't change their settings.`})}):null,t[108]=i,t[109]=d,t[110]=et):et=t[110],Te=Ot,Ge=!1,t[111]===Symbol.for(`react.memo_cache_sentinel`)?(Ke=ae(Pi,`overflow-hidden @min-[48rem]/providers:grid @min-[48rem]/providers:grid-cols-[17rem_minmax(0,1fr)]`),t[111]=Ke):Ke=t[111];let Ve;t[112]===d?Ve=t[113]:(Ve=d?null:(0,$.jsxs)(`button`,{type:`button`,className:`flex w-full cursor-pointer items-center gap-3 px-3 py-3 text-left text-sm text-muted-foreground transition-colors outline-none hover:bg-muted/25 hover:text-foreground focus-visible:bg-muted/25 focus-visible:text-foreground sm:px-4`,onClick:()=>de(!0),children:[(0,$.jsx)(g,{className:`size-4 shrink-0`}),`Add provider`]}),t[112]=d,t[113]=Ve);let He=(0,$.jsxs)(`div`,{className:`divide-y divide-border/50`,children:[re.map(e=>J(e,`list`)),Ve]});t[114]===He?qe=t[115]:(qe=(0,$.jsx)(`div`,{className:`border-b border-border/60 bg-muted/10 @min-[48rem]/providers:flex @min-[48rem]/providers:min-h-0 @min-[48rem]/providers:flex-col @min-[48rem]/providers:border-r @min-[48rem]/providers:border-b-0`,children:(0,$.jsx)(Ze,{scrollFade:!0,chainVerticalScroll:!0,className:`@min-[48rem]/providers:min-h-0 @min-[48rem]/providers:flex-1`,children:He})}),t[114]=He,t[115]=qe),Ie=`min-w-0 @min-[48rem]/providers:min-h-0`,We=W?(0,$.jsx)(Ze,{scrollFade:!0,chainVerticalScroll:!0,className:`@min-[48rem]/providers:h-full`,children:(0,$.jsx)(`div`,{className:`space-y-6 p-4`,children:J(W,`editor`)})}):(0,$.jsx)(`div`,{className:`p-6 text-sm text-muted-foreground`,children:U?`This provider instance is no longer available on this device.`:`No providers configured.`}),t[17]=Se,t[18]=_,t[19]=h,t[20]=o,t[21]=n,t[22]=i,t[23]=ie,t[24]=C,t[25]=p,t[26]=O,t[27]=we,t[28]=d,t[29]=M,t[30]=fe,t[31]=w,t[32]=m,t[33]=k,t[34]=c,t[35]=S,t[36]=R,t[37]=x,t[38]=te,t[39]=v,t[40]=ge,t[41]=Te,t[42]=Oe,t[43]=ke,t[44]=je,t[45]=Pe,t[46]=Ie,t[47]=We,t[48]=Ge,t[49]=Ke,t[50]=qe,t[51]=Je,t[52]=Ye,t[53]=Xe,t[54]=Qe,t[55]=$e,t[56]=et}else Te=t[41],Oe=t[42],ke=t[43],je=t[44],Pe=t[45],Ie=t[46],We=t[47],Ge=t[48],Ke=t[49],qe=t[50],Je=t[51],Ye=t[52],Xe=t[53],Qe=t[54],$e=t[55],et=t[56];let tt;t[116]!==Ie||t[117]!==We?(tt=(0,$.jsx)(`div`,{className:Ie,children:We}),t[116]=Ie,t[117]=We,t[118]=tt):tt=t[118];let nt;t[119]!==Te||t[120]!==Ge||t[121]!==Ke||t[122]!==qe||t[123]!==tt?(nt=(0,$.jsxs)(Te,{divided:Ge,className:Ke,children:[qe,tt]}),t[119]=Te,t[120]=Ge,t[121]=Ke,t[122]=qe,t[123]=tt,t[124]=nt):nt=t[124];let rt;t[125]!==Oe||t[126]!==Je||t[127]!==Ye||t[128]!==Xe||t[129]!==Qe||t[130]!==$e||t[131]!==et||t[132]!==nt?(rt=(0,$.jsxs)(Oe,{...Je,variant:Ye,titleAction:Xe,headerAction:Qe,children:[$e,et,nt]}),t[125]=Oe,t[126]=Je,t[127]=Ye,t[128]=Xe,t[129]=Qe,t[130]=$e,t[131]=et,t[132]=nt,t[133]=rt):rt=t[133];let it;t[134]!==n||t[135]!==i||t[136]!==d||t[137]!==m.cursorKeychainUsageEnabled||t[138]!==m.usageLimitSources?(it=(0,$.jsx)(Ci,{environmentId:n,environmentLabel:i,sources:m.usageLimitSources,cursorKeychainUsageEnabled:m.cursorKeychainUsageEnabled,readOnly:d},n),t[134]=n,t[135]=i,t[136]=d,t[137]=m.cursorKeychainUsageEnabled,t[138]=m.usageLimitSources,t[139]=it):it=t[139];let at;t[140]===Symbol.for(`react.memo_cache_sentinel`)?(at=an(`provider-health-check-interval`),t[140]=at):at=t[140];let ot=at.id,st;t[141]===Symbol.for(`react.memo_cache_sentinel`)?(st=an(`provider-health-check-interval`),t[141]=st):st=t[141];let ct;t[142]===Symbol.for(`react.memo_cache_sentinel`)?(ct=(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[st.title,(0,$.jsx)(Pt,{children:`This interval is configured here, then the shared Background activity policy decides whether provider probes may run when the timer fires. Custom intervals appear as Advanced in General settings.`})]}),t[142]=ct):ct=t[142];let lt;t[143]!==h||t[144]!==ke||t[145]!==je||t[146]!==Pe||t[147]!==m.backgroundActivity||t[148]!==v?(lt=je===ke?null:(0,$.jsx)(`span`,{inert:!h,className:h?void 0:`opacity-50`,children:(0,$.jsx)(Mt,{label:`provider health check interval`,onClick:()=>v(_n(m.backgroundActivity,Pe,{providerHealthRefreshInterval:void 0}))})}),t[143]=h,t[144]=ke,t[145]=je,t[146]=Pe,t[147]=m.backgroundActivity,t[148]=v,t[149]=lt):lt=t[149];let ut=!h,dt=!h||void 0,ft=!h&&`opacity-50 select-none`,pt;t[150]===ft?pt=t[151]:(pt=ae(`flex shrink-0 items-center gap-2`,ft),t[150]=ft,t[151]=pt);let mt;t[152]!==Pe||t[153]!==m.backgroundActivity||t[154]!==v?(mt=e=>v(_n(m.backgroundActivity,Pe,{providerHealthRefreshInterval:j(hn(e))})),t[152]=Pe,t[153]=m.backgroundActivity,t[154]=v,t[155]=mt):mt=t[155];let ht;t[156]===Symbol.for(`react.memo_cache_sentinel`)?(ht=(0,$.jsxs)(he,{children:[(0,$.jsx)(me,{"aria-label":`Decrease provider health check interval`}),(0,$.jsx)(G,{"aria-label":`Provider health check interval in seconds`}),(0,$.jsx)(pe,{"aria-label":`Increase provider health check interval`})]}),t[156]=ht):ht=t[156];let gt;t[157]!==je||t[158]!==mt?(gt=(0,$.jsx)(K,{value:je,min:0,step:30,size:`sm`,className:`w-32`,onValueChange:mt,children:ht}),t[157]=je,t[158]=mt,t[159]=gt):gt=t[159];let _t;t[160]===Symbol.for(`react.memo_cache_sentinel`)?(_t=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`seconds`}),t[160]=_t):_t=t[160];let vt;t[161]!==ut||t[162]!==dt||t[163]!==pt||t[164]!==gt?(vt=(0,$.jsxs)(`div`,{inert:ut,"aria-disabled":dt,className:pt,children:[gt,_t]}),t[161]=ut,t[162]=dt,t[163]=pt,t[164]=gt,t[165]=vt):vt=t[165];let yt;t[166]!==lt||t[167]!==vt?(yt=(0,$.jsx)(Nt,{title:`Advanced`,children:(0,$.jsx)(kt,{id:ot,title:ct,description:`Refresh provider status, versions, and models in the background. Set to 0 to disable.`,resetAction:lt,control:vt})}),t[166]=lt,t[167]=vt,t[168]=yt):yt=t[168];let bt;t[169]!==n||t[170]!==i||t[171]!==U||t[172]!==d?(bt=U&&!d?(0,$.jsx)(fi,{open:!0,environmentId:n,environmentLabel:i,onOpenChange:de,onCreated:q}):null,t[169]=n,t[170]=i,t[171]=U,t[172]=d,t[173]=bt):bt=t[173];let xt;return t[174]!==rt||t[175]!==it||t[176]!==yt||t[177]!==bt?(xt=(0,$.jsxs)($.Fragment,{children:[rt,it,yt,bt]}),t[174]=rt,t[175]=it,t[176]=yt,t[177]=bt,t[178]=xt):xt=t[178],xt}function Ki(e){return e.model}function qi(e){return e.provider}function Ji(e){return String(L(e.provider))}function Yi(e,t){return t.checkedAt>e?t.checkedAt:e}function Xi(e){return e.instanceId===L(z.make(`cursor`))}function Zi(e){return[e.instanceId,e]}function Qi(e){if(e._tag===`Success`&&!e.value.accepted){be.add({type:`warning`,title:`Authentication request expired`,description:`Refresh the provider and start the authentication flow again.`});return}if(e._tag===`Failure`&&!se(e)){let t=ce(e);be.add({type:`error`,title:`Could not continue authentication`,description:t instanceof Error?t.message:`The authentication request expired.`})}}function $i(){return new Set}function ea(){let e=(0,Mn.c)(12),t=un.useSearch(),{environment:n,scope:r}=Dt();if(!n){let t=r.kind===`environment`?`Reconnect ${r.label} to set up its providers.`:`Connect an environment to set up its providers.`,n;return e[0]===t?n=e[1]:(n=(0,$.jsx)(`p`,{className:`p-8 text-sm text-muted-foreground`,children:t}),e[0]=t,e[1]=n),n}let i;e[2]===t.instanceId?i=e[3]:(i=t.instanceId?{instanceId:t.instanceId}:{},e[2]=t.instanceId,e[3]=i);let a;e[4]!==n.environmentId||e[5]!==r.kind||e[6]!==r.members?(a=r.kind===`project`||r.kind===`checkout`?r.members.filter(e=>e.environmentId===n.environmentId).map(ta):[],e[4]=n.environmentId,e[5]=r.kind,e[6]=r.members,e[7]=a):a=e[7];let o;return e[8]!==n.environmentId||e[9]!==i||e[10]!==a?(o=(0,$.jsx)(Li,{environmentId:n.environmentId,...i,projectIds:a,scoped:!0}),e[8]=n.environmentId,e[9]=i,e[10]=a,e[11]=o):o=e[11],o}function ta(e){return e.id}export{ea as component};
3
+ //# sourceMappingURL=settings.providers-CS55UrI1.js.map