ryco-cli 0.1.25 → 0.1.26

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 (299) hide show
  1. package/dist/{GrokDriver-CduUwiOH.mjs → AcpAdapter-BemMQNbj.mjs} +102 -604
  2. package/dist/{GrokDriver-D0jraOC_.cjs → AcpAdapter-CadxcdZV.cjs} +129 -612
  3. package/dist/AcpNativeLogging-BsbZRRD7.mjs +312 -0
  4. package/dist/AcpNativeLogging-DZPZNoju.cjs +383 -0
  5. package/dist/AcpRegistryDriver-BfCPf8FX.cjs +222 -0
  6. package/dist/AcpRegistryDriver-BpXCjh9I.mjs +221 -0
  7. package/dist/{AzureDevOpsSourceControlProvider-COmd21c-.cjs → AzureDevOpsSourceControlProvider-B9N_8NJg.cjs} +14 -14
  8. package/dist/{AzureDevOpsSourceControlProvider-B_E0XXfD.mjs → AzureDevOpsSourceControlProvider-BcQO_CyW.mjs} +3 -3
  9. package/dist/{BitbucketSourceControlProvider-pUKsNXcg.mjs → BitbucketSourceControlProvider-BTUY2ZT8.mjs} +3 -3
  10. package/dist/{BitbucketSourceControlProvider-CD8IvXQK.cjs → BitbucketSourceControlProvider-C9WuwvY2.cjs} +14 -14
  11. package/dist/{BunPTY-TbHbSc8S.mjs → BunPTY-DdnqQAdw.mjs} +1 -1
  12. package/dist/{ClaudeDriver-Dry5uJfX.cjs → ClaudeDriver-BSTxNNGO.cjs} +162 -126
  13. package/dist/{ClaudeDriver-CGifBixr.mjs → ClaudeDriver-Csnp78qR.mjs} +129 -93
  14. package/dist/{CodexDriver-BzR8gA8w.cjs → CodexDriver-BK4HVNV4.cjs} +145 -60
  15. package/dist/{CodexDriver-V4CL9APE.mjs → CodexDriver-fwcV84hX.mjs} +99 -14
  16. package/dist/{CodexTextGeneration-DTrSzY-I.cjs → CodexTextGeneration-Y2GSS7f1.cjs} +145 -99
  17. package/dist/{CodexTextGeneration-DoCidwvI.mjs → CodexTextGeneration-_4aT5BHa.mjs} +141 -95
  18. package/dist/{CopilotDriver-Dt13X60f.mjs → CopilotDriver-B12ZJ-L_.mjs} +69 -7
  19. package/dist/{CopilotDriver-rLcA8PSN.cjs → CopilotDriver-C7IyIwVW.cjs} +98 -36
  20. package/dist/{CursorDriver-C3s-8s9F.cjs → CursorDriver-BWmCfJ-w.cjs} +38 -32
  21. package/dist/{CursorDriver-HIPUs7cz.mjs → CursorDriver-C_p0v-ul.mjs} +12 -6
  22. package/dist/{ForgejoSourceControlProvider-JgiyrMqp.cjs → ForgejoSourceControlProvider-DTRrllIH.cjs} +14 -14
  23. package/dist/{ForgejoSourceControlProvider-CmvOAzEG.mjs → ForgejoSourceControlProvider-DmOGJEaJ.mjs} +3 -3
  24. package/dist/{GitHubSourceControlProvider-CItCpOcC.cjs → GitHubSourceControlProvider-D-YV8WP6.cjs} +16 -17
  25. package/dist/{GitHubSourceControlProvider-BYuvbcBf.mjs → GitHubSourceControlProvider-sQGcwnr3.mjs} +6 -7
  26. package/dist/{GitLabSourceControlProvider-CMce22nU.cjs → GitLabSourceControlProvider-kKYYnpER.cjs} +14 -14
  27. package/dist/{GitLabSourceControlProvider-DZzEaVSi.mjs → GitLabSourceControlProvider-mIl-K-4F.mjs} +3 -3
  28. package/dist/GrokDriver-BFOniP_K.cjs +567 -0
  29. package/dist/GrokDriver-CDcWkiAi.mjs +552 -0
  30. package/dist/{Metrics-a1h4iBQi.mjs → Metrics-C-3MahDy.mjs} +1 -107
  31. package/dist/{Metrics-Bcb9vCAe.cjs → Metrics-DCKbdeoH.cjs} +0 -168
  32. package/dist/{NodePTY-B_p5tLYO.mjs → NodePTY-DArvQ9bX.mjs} +1 -1
  33. package/dist/{OpenCodeDriver-DxGpgtDS.cjs → OpenCodeDriver-CckbFEQJ.cjs} +459 -141
  34. package/dist/{OpenCodeDriver-Bz_uJdMA.mjs → OpenCodeDriver-CnWJHyDJ.mjs} +430 -112
  35. package/dist/SideQuestionIsolation-5eGFRW0t.mjs +26 -0
  36. package/dist/SideQuestionIsolation-DvVKZWxi.cjs +37 -0
  37. package/dist/{SourceControlProviderDiscoveryCatalog-ZtwPWoxE.mjs → SourceControlProviderDiscoveryCatalog-BVvq7liJ.mjs} +2 -1
  38. package/dist/{SourceControlProviderDiscoveryCatalog-Dm_lhrhv.cjs → SourceControlProviderDiscoveryCatalog-CyUhKJLD.cjs} +6 -5
  39. package/dist/bin.cjs +12537 -3029
  40. package/dist/bin.mjs +10444 -965
  41. package/dist/client/assets/AccountSettings-DLbcE2w-.js +1 -0
  42. package/dist/client/assets/Adobe-CNS1-UCS2-fO900upv.bcmap +0 -0
  43. package/dist/client/assets/Adobe-GB1-UCS2-BA083yIo.bcmap +0 -0
  44. package/dist/client/assets/Adobe-Japan1-UCS2-BL-4M2vS.bcmap +0 -0
  45. package/dist/client/assets/Adobe-Korea1-UCS2-BEQZuOdo.bcmap +0 -0
  46. package/dist/client/assets/AiFocusSettings-FKvdkl4P.js +1 -0
  47. package/dist/client/assets/{AnimatedHeight-DPqb09B0.js → AnimatedHeight-CbIEyMLg.js} +1 -1
  48. package/dist/client/assets/AppearanceSettings-B2LsGKmL.js +1 -0
  49. package/dist/client/assets/{BranchToolbar.logic-CHRK3hDt.js → BranchToolbar.logic-BqkvYNPk.js} +1 -1
  50. package/dist/client/assets/{BrowserPanel-2Xu08il5.js → BrowserPanel-C_C4zjrh.js} +1 -1
  51. package/dist/client/assets/ChatRightPanel-ibiQ79jI.js +195 -0
  52. package/dist/client/assets/{ChatThreadRouteView-CNww3i2J.js → ChatThreadRouteView-c7AXmbSk.js} +1 -1
  53. package/dist/client/assets/CommandPaletteDialog-DdPKN6rv.js +1 -0
  54. package/dist/client/assets/CompositeRoot-DKwS-ADi.js +1 -0
  55. package/dist/client/assets/{ComputerUseSettings-BJs7jqR0.js → ComputerUseSettings-DM17BYP5.js} +1 -1
  56. package/dist/client/assets/ConnectionsSettings-D6wysIC8.js +7 -0
  57. package/dist/client/assets/ContextHandoffEndpointLabel-CsF_maM_.js +4 -0
  58. package/dist/client/assets/{DiagnosticsSettings-BmrqOKMe.js → DiagnosticsSettings-Bq2l-C4J.js} +2 -2
  59. package/dist/client/assets/{DialogHandle-pelzaaiH.js → DialogHandle-DuKTleCw.js} +1 -1
  60. package/dist/client/assets/{DialogPopup-BLM0vN4N.js → DialogPopup-Dt7DzTWv.js} +1 -1
  61. package/dist/client/assets/DialogRoot-DRyawL6l.js +1 -0
  62. package/dist/client/assets/{DialogTitle-BvIjMtMm.js → DialogTitle-BaxfPC6e.js} +1 -1
  63. package/dist/client/assets/DialogTrigger-D0PJ8bRT.js +1 -0
  64. package/dist/client/assets/{DialogViewport-Cz0OadGI.js → DialogViewport-C3B2JZWQ.js} +1 -1
  65. package/dist/client/assets/DraftChatThreadRouteView-B8YiD5NP.js +1 -0
  66. package/dist/client/assets/ETHK-B5-H-1MLb5v9x.bcmap +0 -0
  67. package/dist/client/assets/{ExternalIdentityWeb.logic-3rlDV7lT.js → ExternalIdentityWeb.logic-CrcNfdHK.js} +1 -1
  68. package/dist/client/assets/FoxitDingbats-BaQLufoW.pfb +0 -0
  69. package/dist/client/assets/FoxitFixed-Dyd5Nipw.pfb +0 -0
  70. package/dist/client/assets/FoxitFixedBold-D5TuYRwj.pfb +0 -0
  71. package/dist/client/assets/FoxitFixedBoldItalic-BqlXQ_Yv.pfb +0 -0
  72. package/dist/client/assets/FoxitFixedItalic-DqjQkmbS.pfb +0 -0
  73. package/dist/client/assets/FoxitSerif-qbgiDIe-.pfb +0 -0
  74. package/dist/client/assets/FoxitSerifBold-DZZ4CclT.pfb +0 -0
  75. package/dist/client/assets/FoxitSerifBoldItalic-DSQtwd_X.pfb +0 -0
  76. package/dist/client/assets/FoxitSerifItalic-CQs5lx9Y.pfb +0 -0
  77. package/dist/client/assets/FoxitSymbol-BVtbc20u.pfb +0 -0
  78. package/dist/client/assets/GBK-EUC-H-CAORqCkf.bcmap +0 -0
  79. package/dist/client/assets/GBK2K-H-Cv55KPk8.bcmap +0 -0
  80. package/dist/client/assets/GBKp-EUC-H-CElrnV5g.bcmap +0 -0
  81. package/dist/client/assets/GBT-EUC-H-BTsQIL1M.bcmap +0 -0
  82. package/dist/client/assets/GBT-H-DL9h-WkS.bcmap +0 -0
  83. package/dist/client/assets/GBTpc-EUC-H-DnIh5WJ3.bcmap +0 -0
  84. package/dist/client/assets/{GlassSurface-CEVIdyfP.js → GlassSurface-CBIEgwt1.js} +1 -1
  85. package/dist/client/assets/HKscs-B5-H-CXbBbq6g.bcmap +0 -0
  86. package/dist/client/assets/{HostedConnectionControls-r9cyZPyF.js → HostedConnectionControls-DOpTlXzE.js} +1 -1
  87. package/dist/client/assets/{HostedHubRoot-BkfafJ5x.js → HostedHubRoot-C1jq8cM6.js} +2 -2
  88. package/dist/client/assets/{HostedNativeAuthorizationRoute-CqHuW853.js → HostedNativeAuthorizationRoute-Clw1DHQW.js} +2 -2
  89. package/dist/client/assets/{HostedNodeRenameDialog-C7m-nvTj.js → HostedNodeRenameDialog-Bd_Qu_ek.js} +1 -1
  90. package/dist/client/assets/{HostedRelayTrustNotice-DNZQyAX0.js → HostedRelayTrustNotice-CGcBpT9m.js} +1 -1
  91. package/dist/client/assets/{IntegrationsSettingsPanel-hul3ysgL.js → IntegrationsSettingsPanel-J0qODRW-.js} +2 -2
  92. package/dist/client/assets/KSC-Johab-H-CGtV3MPT.bcmap +0 -0
  93. package/dist/client/assets/{KeybindingsSettings-Cme6omBM.js → KeybindingsSettings-CwxIHsFy.js} +1 -1
  94. package/dist/client/assets/{LazyBrowserPanel-COJFwNK7.js → LazyBrowserPanel-VNAn6AUL.js} +2 -2
  95. package/dist/client/assets/LiberationSans-Bold-BPt4bU5Z.ttf +0 -0
  96. package/dist/client/assets/LiberationSans-BoldItalic-Bj53-jFw.ttf +0 -0
  97. package/dist/client/assets/LiberationSans-Italic-5QhGB3P9.ttf +0 -0
  98. package/dist/client/assets/LiberationSans-Regular-cbskN6YR.ttf +0 -0
  99. package/dist/client/assets/McpServersSettings-1pkIeutq.js +6 -0
  100. package/dist/client/assets/MobileSheet-DddfN8c2.js +1 -0
  101. package/dist/client/assets/{NodeSecuritySettings-CwT5nEW9.js → NodeSecuritySettings-BOIZeFZo.js} +1 -1
  102. package/dist/client/assets/OpinionatedPluginsSettings-oTIrPtIb.js +1 -0
  103. package/dist/client/assets/PdfAttachmentPreview-BCMO9OHD.js +54 -0
  104. package/dist/client/assets/{PhoneGetAppInterstitial-BBnGXVkR.js → PhoneGetAppInterstitial-0EOj-PbW.js} +1 -1
  105. package/dist/client/assets/PhoneHome-Cg7l3b1T.js +1 -0
  106. package/dist/client/assets/{PhoneSettingsSurface-DdVCndyt.js → PhoneSettingsSurface-BXAUtZ9M.js} +2 -2
  107. package/dist/client/assets/ProvidersSettingsPanel-BaJgypXu.js +1 -0
  108. package/dist/client/assets/{QuitShortcutFeedback-mF7X0WMD.js → QuitShortcutFeedback-DgJFEd6b.js} +1 -1
  109. package/dist/client/assets/{RedactedSensitiveText-DovqFcmM.js → RedactedSensitiveText-D1VC2xa7.js} +1 -1
  110. package/dist/client/assets/RootAppShell-D2RjZ9jQ.js +7 -0
  111. package/dist/client/assets/Separator-CeMncdkm.js +1 -0
  112. package/dist/client/assets/SettingsDialog-B2hEb6u8.js +2 -0
  113. package/dist/client/assets/SettingsPanels-DtWLQDne.js +3 -0
  114. package/dist/client/assets/{SettingsPanels.editor-d-rVlbeN.js → SettingsPanels.editor-DJRckD71.js} +1 -1
  115. package/dist/client/assets/SourceControlSettings-IpoZrjt5.js +1 -0
  116. package/dist/client/assets/StatisticsPage-CUpE_5Gr.js +1 -0
  117. package/dist/client/assets/StatisticsPanel-CHrAY5AP.js +1 -0
  118. package/dist/client/assets/StatisticsSettingsLink-bGWuxNG3.js +1 -0
  119. package/dist/client/assets/{ThreadTerminalDrawer-DaLrSTn9.js → ThreadTerminalDrawer-BEv83xrk.js} +3 -3
  120. package/dist/client/assets/ThreadWorkspacePanel-BdMdJVHJ.js +2073 -0
  121. package/dist/client/assets/UniCNS-UCS2-H-DWzv8UhH.bcmap +0 -0
  122. package/dist/client/assets/UniCNS-UTF16-H-Bw0JKgCq.bcmap +0 -0
  123. package/dist/client/assets/UniCNS-UTF32-H-IE_GrH2i.bcmap +0 -0
  124. package/dist/client/assets/UniCNS-UTF8-H-BbLcFh6Q.bcmap +0 -0
  125. package/dist/client/assets/UniGB-UCS2-H-D7xzRvZN.bcmap +0 -0
  126. package/dist/client/assets/UniGB-UTF16-H-DKjbEwc0.bcmap +0 -0
  127. package/dist/client/assets/UniGB-UTF32-H-Behfouj5.bcmap +0 -0
  128. package/dist/client/assets/UniGB-UTF8-H-EROft1ro.bcmap +0 -0
  129. package/dist/client/assets/UniJIS-UCS2-H-2DbZ0MaQ.bcmap +0 -0
  130. package/dist/client/assets/UniJIS-UTF16-H-BlDDPdCK.bcmap +0 -0
  131. package/dist/client/assets/UniJIS-UTF32-H-BIQPWkjv.bcmap +0 -0
  132. package/dist/client/assets/UniJIS-UTF8-H-CGusholx.bcmap +0 -0
  133. package/dist/client/assets/UniJIS2004-UTF16-H-KXixH-HI.bcmap +0 -0
  134. package/dist/client/assets/UniJIS2004-UTF32-H-CXrD-9YE.bcmap +0 -0
  135. package/dist/client/assets/UniJIS2004-UTF8-H-BkOctZjn.bcmap +0 -0
  136. package/dist/client/assets/UniJISX0213-UTF32-H-BavAhZjb.bcmap +0 -0
  137. package/dist/client/assets/UniJISX02132004-UTF32-H-DAH-AgUq.bcmap +0 -0
  138. package/dist/client/assets/UniKS-UCS2-H-YeUc7k1L.bcmap +0 -0
  139. package/dist/client/assets/UniKS-UTF16-H-B0dvB-Td.bcmap +0 -0
  140. package/dist/client/assets/UniKS-UTF32-H-olR_LtmR.bcmap +0 -0
  141. package/dist/client/assets/UniKS-UTF8-H-CbpebD-y.bcmap +0 -0
  142. package/dist/client/assets/{activity-bn_fBQGf.js → activity-BmRcsTyL.js} +1 -1
  143. package/dist/client/assets/{alert-BmLJh6DH.js → alert-C5UiA2xk.js} +1 -1
  144. package/dist/client/assets/{appChrome-Dy57Ve9N.js → appChrome-CsZ2ylc1.js} +1 -1
  145. package/dist/client/assets/{arrow-left-pzj1cbX3.js → arrow-left-CSz-z20j.js} +1 -1
  146. package/dist/client/assets/{arrow-right-BW5jU-vo.js → arrow-right-DEi91hao.js} +1 -1
  147. package/dist/client/assets/{arrow-up-right-AfC5AaSO.js → arrow-up-right-D7SpcTV9.js} +1 -1
  148. package/dist/client/assets/authorization-B1YXfej3.js +1 -0
  149. package/dist/client/assets/badge-BjvTY7-E.js +1 -0
  150. package/dist/client/assets/{bot-CsKkSRlb.js → bot-SC4UGZyw.js} +1 -1
  151. package/dist/client/assets/{capabilities-DskyVNd2.js → capabilities-BCkDNe83.js} +1 -1
  152. package/dist/client/assets/{chart-column-DhvWXIiH.js → chart-column-C08MuLgY.js} +1 -1
  153. package/dist/client/assets/chevron-right-DgB53U1_.js +1 -0
  154. package/dist/client/assets/{clipboard-copy-fJnfdl4H.js → clipboard-copy-D74Wvnon.js} +1 -1
  155. package/dist/client/assets/{data-list-_E-Al1sf.js → data-list-CZ4Utnfl.js} +1 -1
  156. package/dist/client/assets/{desktopWorkspace-DycXKuMm.js → desktopWorkspace-DVfn9ZT_.js} +1 -1
  157. package/dist/client/assets/{download-CLQzE1di.js → download-Dio40wIJ.js} +1 -1
  158. package/dist/client/assets/editorPreferences-2dG4uloq.js +1 -0
  159. package/dist/client/assets/{empty-YXFtCUDN.js → empty-6LExKYgQ.js} +1 -1
  160. package/dist/client/assets/{group-DOCkUmuY.js → group-D_mu0Kiq.js} +1 -1
  161. package/dist/client/assets/{hostedConnectionCoordinator-JZ1dLx4v.js → hostedConnectionCoordinator-YkDLnATK.js} +1 -1
  162. package/dist/client/assets/{hubRoutes-C2S5of9_.js → hubRoutes-D3quWvU7.js} +1 -1
  163. package/dist/client/assets/{index-CvRFRkBK.js → index-7MTgf8YI.js} +2 -2
  164. package/dist/client/assets/{input-C2xv8mMt.js → input-CfVJycb1.js} +1 -1
  165. package/dist/client/assets/jbig2-CNFLgX9F.wasm +0 -0
  166. package/dist/client/assets/kbd-uFa_tY-L.js +1 -0
  167. package/dist/client/assets/{key-round-CYcb9lAa.js → key-round-C-oUSjpF.js} +1 -1
  168. package/dist/client/assets/{layers-CGlOWYxu.js → layers-Co2a5C1k.js} +1 -1
  169. package/dist/client/assets/{log-out-CZW2EpNJ.js → log-out-pWFhbvwr.js} +1 -1
  170. package/dist/client/assets/{logging-BpmZOfmu.js → logging-JMrwaeZh.js} +1 -1
  171. package/dist/client/assets/main-BNPtp9Z0.css +2 -0
  172. package/dist/client/assets/main-CGeD6yVE.js +9 -0
  173. package/dist/client/assets/openjpeg-MeY6OQBn.wasm +0 -0
  174. package/dist/client/assets/{palette-CQOuNfSO.js → palette-B_6C4fD6.js} +1 -1
  175. package/dist/client/assets/pdf.worker.min-Dswkl-cV.mjs +29 -0
  176. package/dist/client/assets/{play-CPVy9wwV.js → play-DFtc9zBy.js} +1 -1
  177. package/dist/client/assets/primary-CNUdEGcv.js +2 -0
  178. package/dist/client/assets/providerDriverMeta-Cg_XLUfo.js +1 -0
  179. package/dist/client/assets/{ProviderModelPicker-DoYEUZrn.js → providerInstances-JaDrOWPZ.js} +1 -1
  180. package/dist/client/assets/providerModels-5uOq3qPC.js +1 -0
  181. package/dist/client/assets/qcms_bg-3PJi_GXR.wasm +0 -0
  182. package/dist/client/assets/{qr-code-BPqDlVMn.js → qr-code-BU354aLS.js} +1 -1
  183. package/dist/client/assets/{qr-code-C6BVTc4V.js → qr-code-DaHWf7Oq.js} +1 -1
  184. package/dist/client/assets/quickjs-eval-zJSp5SB4.wasm +0 -0
  185. package/dist/client/assets/radio-group-DKaA1eey.js +2 -0
  186. package/dist/client/assets/{refresh-cw-B5Cz1z3e.js → refresh-cw-CY5BeUEr.js} +1 -1
  187. package/dist/client/assets/runtime-BKneT96Q.js +17 -0
  188. package/dist/client/assets/{save-C7zM6ey6.js → save-DIHMjHXd.js} +1 -1
  189. package/dist/client/assets/{scroll-area-5OU_pvTW.js → scroll-area-Cq4SX9P8.js} +1 -1
  190. package/dist/client/assets/{scrollEdges-qnEXfIOg.js → scrollEdges-BaWRjrac.js} +1 -1
  191. package/dist/client/assets/{separator-B5HfRiaO.js → separator-BN705fC0.js} +1 -1
  192. package/dist/client/assets/{settingsLayout-CfKq88KD.js → settingsLayout-DQERzSce.js} +1 -1
  193. package/dist/client/assets/{sheet-B9gQDy_I.js → sheet-CFvRY7T6.js} +1 -1
  194. package/dist/client/assets/{shield-rdjnBE2Q.js → shield-Zn2kFj5M.js} +1 -1
  195. package/dist/client/assets/{shield-alert-7yBlEyOs.js → shield-alert-DMB5gKiC.js} +1 -1
  196. package/dist/client/assets/{shield-check-CnKgVJ0F.js → shield-check-DyNf6Bky.js} +1 -1
  197. package/dist/client/assets/{sidebar-BdvL1Pbj.js → sidebar-Bsh64sLK.js} +1 -1
  198. package/dist/client/assets/sidebarProjectFolders-CQbpO9ZI.js +4 -0
  199. package/dist/client/assets/{sidebarStatusText-CZKsUFBD.js → sidebarStatusText-DCo-whyK.js} +1 -1
  200. package/dist/client/assets/{skeleton-CoyLqyaB.js → skeleton-DEuowfjY.js} +1 -1
  201. package/dist/client/assets/{smartphone-CBgpMHXR.js → smartphone-BLWJ7C9-.js} +1 -1
  202. package/dist/client/assets/{sparkles-w-UZXQx1.js → sparkles-DAXDXp_s.js} +1 -1
  203. package/dist/client/assets/src-DPpEXU6w.js +14 -0
  204. package/dist/client/assets/{star-BZ-RtSFD.js → star-CjQxHYbD.js} +1 -1
  205. package/dist/client/assets/switch-LahPAvrd.js +48 -0
  206. package/dist/client/assets/{toggle-DVGrNHjq.js → toggle-45lsrmyi.js} +1 -1
  207. package/dist/client/assets/{toggle-group-CNDOfNhH.js → toggle-group-D5pl24ED.js} +1 -1
  208. package/dist/client/assets/{tokenModePresentation-CQNdC9CW.js → tokenModePresentation-CPUsUGY4.js} +1 -1
  209. package/dist/client/assets/tooltip-B8-izeMo.js +1 -0
  210. package/dist/client/assets/{unplug-CRUwFNFw.js → unplug-Bjpxv8i0.js} +1 -1
  211. package/dist/client/assets/usage-8vQUo0mr.js +1 -0
  212. package/dist/client/assets/useAppSidebarCollapsed-uwz9Hlgc.js +1 -0
  213. package/dist/client/assets/useBaseUiId-BtuL7q77.js +1 -0
  214. package/dist/client/assets/useLabelableId-N_LsKNbf.js +1 -0
  215. package/dist/client/assets/useNavigate-DADLi29i.js +1 -0
  216. package/dist/client/assets/usePhoneThreadActions-B9_HK7tn.js +1 -0
  217. package/dist/client/assets/usePopupViewport-w8BEny9j.js +1 -0
  218. package/dist/client/assets/useScrollLock-bCmUzTgK.js +1 -0
  219. package/dist/client/assets/useStatistics-DJtONxT0.js +55 -0
  220. package/dist/client/assets/useTriggerFocusGuards-C7JWO2LT.js +1 -0
  221. package/dist/client/assets/useValueChanged-DkoUO9bY.js +1 -0
  222. package/dist/client/assets/{user-round-DStbWN3z.js → user-round-DEWIPpNs.js} +1 -1
  223. package/dist/client/assets/{vscode-icons-BihBo3tb.js → vscode-icons-DTH-Vj-_.js} +1 -1
  224. package/dist/client/assets/workspaceMetadataProjection-BnpxBe8S.js +1 -0
  225. package/dist/client/assets/{wrench-BBIgGxy9.js → wrench-36WYdK_a.js} +1 -1
  226. package/dist/client/index.html +1 -1
  227. package/dist/collectUint8StreamText-BAUF-vzz.mjs +37 -0
  228. package/dist/collectUint8StreamText-vagpNUMJ.cjs +42 -0
  229. package/dist/deviceHostWorker-C-BSnmkn.mjs +167 -0
  230. package/dist/deviceHostWorker-CYnrwfrv.cjs +169 -0
  231. package/dist/git-C4iJMbBu.mjs +132 -0
  232. package/dist/git-irmB8_k7.cjs +218 -0
  233. package/dist/{makeManagedServerProvider-CwYhl_P-.mjs → makeManagedServerProvider-BINne1KE.mjs} +3 -38
  234. package/dist/{makeManagedServerProvider-Dy2Ny9tk.cjs → makeManagedServerProvider-DGbd8BhM.cjs} +1 -60
  235. package/dist/resource-monitor/ryco-resource-monitor +0 -0
  236. package/dist/resource-monitor/ryco-resource-monitor.exe +0 -0
  237. package/dist/resource-monitor/win32-arm64/ryco-resource-monitor.exe +0 -0
  238. package/dist/resource-monitor/win32-x64/ryco-resource-monitor.exe +0 -0
  239. package/dist/runtimeSession-Bj0OUcNJ.cjs +63 -0
  240. package/dist/runtimeSession-CA6cLWg0.mjs +40 -0
  241. package/dist/schemaJson-CaG1bOvo.mjs +49 -0
  242. package/dist/schemaJson-CuhFxa8p.cjs +66 -0
  243. package/dist/{collectUint8StreamText-whblCEfg.cjs → src-BlzIcnVG.cjs} +522 -116
  244. package/dist/{collectUint8StreamText-CE1Re5Ij.mjs → src-DtEOcXdl.mjs} +350 -94
  245. package/package.json +1 -1
  246. package/dist/AcpNativeLogging-CA6XYzIS.cjs +0 -5130
  247. package/dist/AcpNativeLogging-D4-VoHrq.mjs +0 -5015
  248. package/dist/client/assets/AccountSettings-Bv57-JYy.js +0 -1
  249. package/dist/client/assets/AiFocusSettings-DCPHmJpA.js +0 -1
  250. package/dist/client/assets/AppearanceSettings-EmTrtb_U.js +0 -1
  251. package/dist/client/assets/ChatRightPanel-C1VD6GCV.js +0 -194
  252. package/dist/client/assets/CommandPaletteDialog-B_f3fKp7.js +0 -1
  253. package/dist/client/assets/CompositeRoot-B40iitmH.js +0 -1
  254. package/dist/client/assets/ConnectionsSettings-B9nfvgLG.js +0 -7
  255. package/dist/client/assets/ContextHandoffEndpointLabel-BSQOArMR.js +0 -4
  256. package/dist/client/assets/DialogRoot-CY6ZzEUS.js +0 -1
  257. package/dist/client/assets/DialogTrigger-CIeVAA-a.js +0 -1
  258. package/dist/client/assets/DraftChatThreadRouteView-DMIGMESb.js +0 -1
  259. package/dist/client/assets/McpServersSettings-CPeNF8_u.js +0 -6
  260. package/dist/client/assets/MobileSheet-BZo-RAfm.js +0 -1
  261. package/dist/client/assets/OpinionatedPluginsSettings-D8A1CbMG.js +0 -1
  262. package/dist/client/assets/PhoneHome-BTKOPVjw.js +0 -1
  263. package/dist/client/assets/ProvidersSettingsPanel-ldDCPVIY.js +0 -1
  264. package/dist/client/assets/RootAppShell-CzmEWO9w.js +0 -7
  265. package/dist/client/assets/Separator-BhAVTIOc.js +0 -1
  266. package/dist/client/assets/SettingsDialog-ByXgBN0U.js +0 -2
  267. package/dist/client/assets/SettingsPanels-Bgf4vkrJ.js +0 -3
  268. package/dist/client/assets/SourceControlSettings-dKw0FaN1.js +0 -1
  269. package/dist/client/assets/StatisticsPage-C2RuqDIK.js +0 -1
  270. package/dist/client/assets/StatisticsPanel-DqoXnrhQ.js +0 -1
  271. package/dist/client/assets/StatisticsSettingsLink-C_f31sb4.js +0 -1
  272. package/dist/client/assets/ThreadWorkspacePanel-BvRZIxZQ.js +0 -2073
  273. package/dist/client/assets/authorization-7xVVtCBu.js +0 -1
  274. package/dist/client/assets/badge-DnBuGHGL.js +0 -1
  275. package/dist/client/assets/chevron-right-CITtTwME.js +0 -1
  276. package/dist/client/assets/editorPreferences-Bg624RVT.js +0 -1
  277. package/dist/client/assets/kbd-4-4mGdIa.js +0 -1
  278. package/dist/client/assets/main-CC-U8LrA.css +0 -2
  279. package/dist/client/assets/main-CzDOnLFw.js +0 -9
  280. package/dist/client/assets/primary-CjhRI8fe.js +0 -2
  281. package/dist/client/assets/providerDriverMeta-BVHpFupf.js +0 -1
  282. package/dist/client/assets/providerModels-BsybzP4P.js +0 -1
  283. package/dist/client/assets/radio-group-C8qudOQH.js +0 -2
  284. package/dist/client/assets/runtime-Bxg7k81u.js +0 -17
  285. package/dist/client/assets/sidebarProjectFolders-BH8XBqNe.js +0 -4
  286. package/dist/client/assets/src-Bi-5Nw9C.js +0 -14
  287. package/dist/client/assets/switch-CEJEmLe7.js +0 -48
  288. package/dist/client/assets/tooltip-B7Z4qomY.js +0 -1
  289. package/dist/client/assets/useAppSidebarCollapsed-wq6czkNJ.js +0 -1
  290. package/dist/client/assets/useBaseUiId-OYaGjnkh.js +0 -1
  291. package/dist/client/assets/useLabelableId-VMc-yITe.js +0 -1
  292. package/dist/client/assets/useNavigate-DVi0rBlf.js +0 -1
  293. package/dist/client/assets/usePhoneThreadActions-CwwHikjB.js +0 -1
  294. package/dist/client/assets/usePopupViewport-BcSIK_ph.js +0 -1
  295. package/dist/client/assets/useScrollLock-BQf9VYJT.js +0 -1
  296. package/dist/client/assets/useStatistics-DczKdEfy.js +0 -55
  297. package/dist/client/assets/useTriggerFocusGuards-DjP-D0_a.js +0 -1
  298. package/dist/client/assets/useValueChanged-CRwCkFdy.js +0 -1
  299. package/dist/client/assets/workspaceMetadataProjection-j3BGlVOB.js +0 -1
@@ -1,6 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import{m as n,p as r}from"./src-Bi-5Nw9C.js";import{$n as i,Na as a,Nr as o,Oa as s,Vr as c,_l as l,ea as u,gl as d,ja as f,or as ee,wa as p,zr as m}from"./runtime-Bxg7k81u.js";import{Ft as h,It as g,Mt as _,Nt as v,Pt as y,Qn as b,Xn as x,jt as S,kt as C,st as w,t as T}from"./switch-CEJEmLe7.js";import{t as E}from"./compiler-runtime-qmuS0Svy.js";import{i as te,n as ne,t as re}from"./tooltip-B7Z4qomY.js";import{a as D,c as O,n as k,o as A,s as j,t as M}from"./badge-DnBuGHGL.js";import{K as ie,Y as N}from"./ContextHandoffEndpointLabel-BSQOArMR.js";import{t as P}from"./refresh-cw-B5Cz1z3e.js";import{t as F}from"./save-C7zM6ey6.js";import{t as I}from"./wrench-BBIgGxy9.js";import{t as L}from"./toastHelpers-CSQRKo4F.js";import{t as R}from"./input-C2xv8mMt.js";import"./providerModels-BsybzP4P.js";import{r as z}from"./providerDriverMeta-BVHpFupf.js";import{Bt as B}from"./main-CzDOnLFw.js";var V={name:`earth`,size:24,node:[[`path`,{d:`M21.54 15H17a2 2 0 0 0-2 2v4.54`,key:`1djwo0`}],[`path`,{d:`M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17`,key:`1tzkfa`}],[`path`,{d:`M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05`,key:`14pb5j`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]],aliases:[`globe-2`]};V.node;var ae=a(V),H={name:`log-in`,size:24,node:[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]};H.node;var oe=a(H),U=e(t(),1),W=E(),G=/^[a-zA-Z][a-zA-Z0-9_-]*$/;function K(){return{name:``,transport:`stdio`,command:``,argsText:``,cwd:``,url:``,bearerTokenEnvVar:``,envText:``,envVarsText:``,httpHeadersText:``,envHttpHeadersText:``,enabled:!0,required:!1,startupTimeoutSec:``,toolTimeoutSec:``,enabledToolsText:``,disabledToolsText:``,oauthScopesText:``,secretFields:[],clearedSecretFields:[]}}function q(e){return e.join(`
2
- `)}function J(e){return Object.entries(e).map(([e,t])=>`${e}=${t}`).join(`
3
- `)}function se(e){let t=e.config;return{name:e.name,transport:t.transport===`http`?`http`:`stdio`,command:t.command??``,argsText:q(t.args),cwd:t.cwd??``,url:t.url??``,bearerTokenEnvVar:t.bearerTokenEnvVar??``,envText:J(t.env),envVarsText:q(t.envVars),httpHeadersText:J(t.httpHeaders),envHttpHeadersText:J(t.envHttpHeaders),enabled:t.enabled,required:t.required??!1,startupTimeoutSec:t.startupTimeoutSec?.toString()??``,toolTimeoutSec:t.toolTimeoutSec?.toString()??``,enabledToolsText:q(t.enabledTools),disabledToolsText:q(t.disabledTools),oauthScopesText:q(t.oauthScopes),secretFields:Object.entries(t.secretFields??{}).filter(([,e])=>e===`present`).map(([e])=>e).toSorted(),clearedSecretFields:[]}}function Y(e){return e.split(/\r?\n/).map(e=>e.trim()).filter(e=>e.length>0)}function ce(e){let t={};for(let n of Y(e)){let e=n.indexOf(`=`);if(e<=0)continue;let r=n.slice(0,e).trim(),i=n.slice(e+1).trim();r.length>0&&(t[r]=i)}return t}function le(e){let t=e.trim();if(!t)return;let n=Number(t);return Number.isFinite(n)&&n>0?n:NaN}function ue(e){let t=e.name.trim();if(!G.test(t))return`Server name must start with a letter and use only letters, numbers, dashes, and underscores.`;if(e.transport===`stdio`&&e.command.trim().length===0)return`Stdio servers need a command.`;if(e.transport===`http`&&e.url.trim().length===0)return`HTTP servers need a URL.`;for(let[t,n]of[[`Startup timeout`,e.startupTimeoutSec],[`Tool timeout`,e.toolTimeoutSec]]){let e=le(n);if(Number.isNaN(e))return`${t} must be a positive number.`}return null}function de(e){let t=le(e.startupTimeoutSec),n=le(e.toolTimeoutSec);return{transport:e.transport,command:e.command.trim(),args:Y(e.argsText),cwd:e.cwd.trim()||null,url:e.url.trim(),bearerTokenEnvVar:e.bearerTokenEnvVar.trim()||null,env:ce(e.envText),envVars:Y(e.envVarsText),httpHeaders:ce(e.httpHeadersText),envHttpHeaders:ce(e.envHttpHeadersText),enabled:e.enabled,required:e.required,...t===void 0||Number.isNaN(t)?{}:{startupTimeoutSec:t},...n===void 0||Number.isNaN(n)?{}:{toolTimeoutSec:n},enabledTools:Y(e.enabledToolsText),disabledTools:Y(e.disabledToolsText),oauthScopes:Y(e.oauthScopesText)}}function fe(e){return Object.fromEntries(e.secretFields.map(t=>[t,e.clearedSecretFields.includes(t)?{action:`clear`}:{action:`retain`}]))}function pe(e){let t=e.config;return t.transport===`http`?t.url||`HTTP`:t.transport===`stdio`?[t.command,...t.args].filter(Boolean).join(` `)||`stdio`:`Configured outside the known MCP schema`}var X=l(),me=[],he=[];function Z(e){if(!e)throw Error(`MCP settings are unavailable before a backend is paired.`);return e}function Q(e,t){o.add(L({type:`error`,title:e,description:t instanceof Error?t.message:`An error occurred.`}))}function ge(e){switch(e){case`user`:return`User config`;case`project`:return`Project`;case`system`:return`System`;case`managed`:return`Managed`;case`mixed`:return`Mixed`;case`unknown`:return`Unknown`}}function _e(e){return e.startupStatus===`failed`?`error`:e.startupStatus===`disabled`?`outline`:e.authStatus===`notLoggedIn`?`warning`:e.startupStatus===`ready`?`success`:`outline`}function ve(e){return e.startupStatus===`disabled`?`Disabled`:e.startupStatus===`failed`?`Failed`:e.authStatus===`notLoggedIn`?`Login needed`:e.startupStatus===`ready`?`Ready`:`Unknown`}function ye(e){return e.enabled?e.status===`managed`?`success`:e.status===`external`?`warning`:`outline`:`outline`}function be(e){if(!e.enabled)return`Disabled`;switch(e.status){case`managed`:return`Managed`;case`external`:return`External config`;case`unsupported`:return`Not wired`}}function xe(e){return e.displayName??z(e.driver)?.label??u(e.driver)}function Se(e){return e?e.providerDisplayName??z(e.driver)?.label??u(e.driver):`the provider`}function $(e){let t=(0,W.c)(5),n;t[0]===e.label?n=t[1]:(n=(0,X.jsx)(`span`,{children:e.label}),t[0]=e.label,t[1]=n);let r;return t[2]!==e.children||t[3]!==n?(r=(0,X.jsxs)(`label`,{className:`grid gap-1.5 text-xs font-medium text-foreground/80`,children:[n,e.children]}),t[2]=e.children,t[3]=n,t[4]=r):r=t[4],r}function Ce(e){let t=(0,W.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,X.jsx)(`p`,{className:`text-[11px] leading-relaxed text-muted-foreground/70`,children:n}),t[0]=n,t[1]=r),r}function we(e){let t=(0,W.c)(5),{value:n,onChange:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={value:`stdio`,label:`Stdio`,icon:x},t[0]=i):i=t[0];let a;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=[i,{value:`http`,label:`HTTP`,icon:ae}],t[1]=a):a=t[1];let o;return t[2]!==r||t[3]!==n?(o=(0,X.jsx)(`div`,{className:`grid grid-cols-2 rounded-lg border bg-muted/30 p-1`,children:a.map(e=>{let t=e.icon,i=n===e.value;return(0,X.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),className:c(`flex h-8 items-center justify-center gap-2 rounded-md text-xs font-medium transition-colors`,i?`bg-background text-foreground shadow-xs`:`text-muted-foreground`),children:[(0,X.jsx)(t,{className:`size-3.5`}),e.label]},e.value)})}),t[2]=r,t[3]=n,t[4]=o):o=t[4],o}function Te({open:e,server:t,providerName:n,onOpenChange:r,onSubmit:i}){let[a,o]=(0,U.useState)(()=>K()),[s,c]=(0,U.useState)(null),[l,u]=(0,U.useState)(!1),d=t!==null;(0,U.useEffect)(()=>{e&&(o(t?se(t):K()),c(null))},[e,t]);let f=(e,t)=>{o(n=>({...n,[e]:t}))},ee=async()=>{let e=ue(a);if(e){c(e);return}u(!0);try{await i(a),r(!1)}catch(e){Q(`Failed to save MCP server`,e)}finally{u(!1)}};return(0,X.jsx)(C,{open:e,onOpenChange:r,children:(0,X.jsxs)(h,{className:`max-w-2xl`,bottomStickOnMobile:!1,children:[(0,X.jsxs)(v,{children:[(0,X.jsx)(g,{children:d?`Edit MCP server`:`Add MCP server`}),(0,X.jsxs)(S,{children:[`Configuration is written through `,n,`'s native MCP management surface. Existing secret values are never loaded into this form and are retained unless you enter replacements with the same keys.`]})]}),(0,X.jsxs)(y,{className:`space-y-5`,children:[(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-[1fr_12rem]`,children:[(0,X.jsx)($,{label:`Server name`,children:(0,X.jsx)(R,{value:a.name,disabled:d,onChange:e=>f(`name`,e.target.value),placeholder:`github`,spellCheck:!1})}),(0,X.jsx)($,{label:`Transport`,children:(0,X.jsx)(we,{value:a.transport,onChange:e=>f(`transport`,e)})})]}),a.transport===`stdio`?(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[(0,X.jsx)($,{label:`Command`,children:(0,X.jsx)(R,{value:a.command,onChange:e=>f(`command`,e.target.value),placeholder:`npx`,spellCheck:!1})}),(0,X.jsxs)($,{label:`Arguments`,children:[(0,X.jsx)(w,{value:a.argsText,onChange:e=>f(`argsText`,e.target.value),placeholder:`-y
4
- @modelcontextprotocol/server-filesystem
5
- /tmp/project`,spellCheck:!1}),(0,X.jsx)(Ce,{children:`One argument per line.`})]}),(0,X.jsx)($,{label:`Working directory`,children:(0,X.jsx)(R,{value:a.cwd,onChange:e=>f(`cwd`,e.target.value),placeholder:`/path/to/project`,spellCheck:!1})})]}):(0,X.jsxs)(`div`,{className:`grid gap-4`,children:[(0,X.jsx)($,{label:`URL`,children:(0,X.jsx)(R,{value:a.url,onChange:e=>f(`url`,e.target.value),placeholder:`https://mcp.example.com/mcp`,spellCheck:!1})}),(0,X.jsx)($,{label:`Bearer token env var`,children:(0,X.jsx)(R,{value:a.bearerTokenEnvVar,onChange:e=>f(`bearerTokenEnvVar`,e.target.value),placeholder:`MCP_TOKEN`,spellCheck:!1})}),(0,X.jsxs)($,{label:`HTTP headers`,children:[(0,X.jsx)(w,{value:a.httpHeadersText,onChange:e=>f(`httpHeadersText`,e.target.value),placeholder:`X-Client=ryco`,spellCheck:!1}),(0,X.jsx)(Ce,{children:`Static headers as KEY=VALUE lines.`})]}),(0,X.jsxs)($,{label:`Env-backed HTTP headers`,children:[(0,X.jsx)(w,{value:a.envHttpHeadersText,onChange:e=>f(`envHttpHeadersText`,e.target.value),placeholder:`Authorization=GITHUB_TOKEN`,spellCheck:!1}),(0,X.jsx)(Ce,{children:`Header name to environment variable name, one per line.`})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,X.jsxs)($,{label:`Environment values`,children:[(0,X.jsx)(w,{value:a.envText,onChange:e=>f(`envText`,e.target.value),placeholder:`API_BASE=https://example.com`,spellCheck:!1}),(0,X.jsx)(Ce,{children:`KEY=VALUE lines stored by the selected provider.`})]}),(0,X.jsxs)($,{label:`Environment allow-list`,children:[(0,X.jsx)(w,{value:a.envVarsText,onChange:e=>f(`envVarsText`,e.target.value),placeholder:`GITHUB_TOKEN
6
- SENTRY_AUTH_TOKEN`,spellCheck:!1}),(0,X.jsx)(Ce,{children:`One env var name per line.`})]})]}),(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,X.jsx)($,{label:`Startup timeout seconds`,children:(0,X.jsx)(R,{value:a.startupTimeoutSec,onChange:e=>f(`startupTimeoutSec`,e.target.value),inputMode:`decimal`,placeholder:`10`})}),(0,X.jsx)($,{label:`Tool timeout seconds`,children:(0,X.jsx)(R,{value:a.toolTimeoutSec,onChange:e=>f(`toolTimeoutSec`,e.target.value),inputMode:`decimal`,placeholder:`60`})})]}),(0,X.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-3`,children:[(0,X.jsx)($,{label:`Enabled tools`,children:(0,X.jsx)(w,{value:a.enabledToolsText,onChange:e=>f(`enabledToolsText`,e.target.value),spellCheck:!1})}),(0,X.jsx)($,{label:`Disabled tools`,children:(0,X.jsx)(w,{value:a.disabledToolsText,onChange:e=>f(`disabledToolsText`,e.target.value),spellCheck:!1})}),(0,X.jsx)($,{label:`OAuth scopes`,children:(0,X.jsx)(w,{value:a.oauthScopesText,onChange:e=>f(`oauthScopesText`,e.target.value),spellCheck:!1})})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-5 border-t pt-4`,children:[(0,X.jsxs)(`label`,{className:`flex items-center gap-2 text-xs font-medium text-foreground/80`,children:[(0,X.jsx)(T,{checked:a.enabled,onCheckedChange:e=>f(`enabled`,!!e)}),`Enabled`]}),(0,X.jsxs)(`label`,{className:`flex items-center gap-2 text-xs font-medium text-foreground/80`,children:[(0,X.jsx)(T,{checked:a.required,onCheckedChange:e=>f(`required`,!!e)}),`Required`]})]}),a.secretFields.length>0?(0,X.jsxs)(`fieldset`,{className:`grid gap-2 border-t pt-4`,children:[(0,X.jsx)(`legend`,{className:`text-xs font-medium`,children:`Stored secret fields`}),(0,X.jsx)(`p`,{className:`text-[11px] leading-relaxed text-muted-foreground/70`,children:`Values remain inside the provider configuration and are never loaded by this page. Select a field only when you want it removed on save.`}),a.secretFields.map(e=>(0,X.jsxs)(`label`,{className:`flex items-center gap-2 text-xs`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:a.clearedSecretFields.includes(e),onChange:t=>f(`clearedSecretFields`,t.target.checked?[...a.clearedSecretFields,e]:a.clearedSecretFields.filter(t=>t!==e))}),`Clear `,(0,X.jsx)(`code`,{className:`font-mono`,children:e})]},e))]}):null,s?(0,X.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-destructive/30 bg-destructive/6 px-3 py-2 text-xs text-destructive-foreground`,children:[(0,X.jsx)(p,{className:`mt-0.5 size-3.5`}),(0,X.jsx)(`span`,{children:s})]}):null]}),(0,X.jsxs)(_,{children:[(0,X.jsx)(m,{variant:`outline`,onClick:()=>r(!1),disabled:l,children:`Cancel`}),(0,X.jsxs)(m,{onClick:()=>void ee(),disabled:l,children:[l?(0,X.jsx)(N,{className:`animate-spin`}):(0,X.jsx)(F,{}),`Save`]})]})]})})}function Ee(e){let t=(0,W.c)(18),{workspaces:n,selectedWorkspaceId:r,onChange:i}=e;if(n.length<=1||!r)return null;let a;if(t[0]!==r||t[1]!==n){let e;t[3]===r?e=t[4]:(e=e=>e.id===r,t[3]=r,t[4]=e),a=n.find(e),t[0]=r,t[1]=n,t[2]=a}else a=t[2];let o=a,s;t[5]===i?s=t[6]:(s=e=>{e&&i(e)},t[5]=i,t[6]=s);let c=o?.displayPath??`Select workspace`,l;t[7]===c?l=t[8]:(l=(0,X.jsx)(j,{className:`w-full sm:w-72`,"aria-label":`MCP workspace`,children:(0,X.jsx)(O,{children:c})}),t[7]=c,t[8]=l);let u;t[9]===n?u=t[10]:(u=n.map(De),t[9]=n,t[10]=u);let d;t[11]===u?d=t[12]:(d=(0,X.jsx)(A,{align:`end`,alignItemWithTrigger:!1,children:u}),t[11]=u,t[12]=d);let f;return t[13]!==r||t[14]!==s||t[15]!==l||t[16]!==d?(f=(0,X.jsxs)(k,{value:r,onValueChange:s,children:[l,d]}),t[13]=r,t[14]=s,t[15]=l,t[16]=d,t[17]=f):f=t[17],f}function De(e){return(0,X.jsx)(D,{hideIndicator:!0,value:e.id,children:(0,X.jsx)(`span`,{className:`truncate`,children:e.displayPath})},e.id)}function Oe(e){let t=(0,W.c)(10),{providers:n,selectedWorkspaceId:r,onSelectWorkspace:i}=e;if(n.length===0)return null;let a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,X.jsx)(`div`,{className:`border-b px-4 py-3`,children:(0,X.jsx)(`h3`,{className:`text-sm font-semibold`,children:`Provider MCP support`})}),t[0]=a):a=t[0];let o;if(t[1]!==i||t[2]!==n||t[3]!==r){let e;t[5]!==i||t[6]!==r?(e=e=>{let t=z(e.driver),n=t?.icon??b,a=e.workspaceId!==void 0&&e.workspaceId===r,o=e.workspaceId!==void 0&&!a;return(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 px-4 py-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,X.jsxs)(`div`,{className:`relative mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg border bg-background`,children:[(0,X.jsx)(n,{className:`size-4 text-muted-foreground`}),e.accentColor?(0,X.jsx)(`span`,{className:`absolute -right-0.5 -bottom-0.5 size-2.5 rounded-full border border-background`,style:{backgroundColor:e.accentColor}}):null]}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,X.jsx)(`span`,{className:`text-sm font-medium`,children:xe(e)}),(0,X.jsx)(`span`,{className:`font-mono text-[11px] text-muted-foreground/70`,children:e.instanceId})]}),(0,X.jsx)(`p`,{className:`mt-1 max-w-2xl text-xs leading-relaxed text-muted-foreground/80`,children:e.message})]})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2 sm:justify-end`,children:[(0,X.jsx)(M,{variant:ye(e),children:be(e)}),e.workspaceId?(0,X.jsxs)(m,{size:`xs`,variant:a?`secondary`:`outline`,disabled:!o,onClick:()=>{e.workspaceId&&i(e.workspaceId)},children:[t?.label??u(e.driver),` `,`workspace`]}):null]})]},e.instanceId)},t[5]=i,t[6]=r,t[7]=e):e=t[7],o=n.map(e),t[1]=i,t[2]=n,t[3]=r,t[4]=o}else o=t[4];let s;return t[8]===o?s=t[9]:(s=(0,X.jsxs)(`section`,{className:`overflow-hidden rounded-lg border bg-card text-card-foreground shadow-sm/4`,children:[a,(0,X.jsx)(`div`,{className:`divide-y`,children:o})]}),t[8]=o,t[9]=s),s}function ke(e){let t=(0,W.c)(20),{server:n}=e;if(n.tools.length===0&&n.resources.length===0&&n.resourceTemplates.length===0){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,X.jsx)(`p`,{className:`text-xs text-muted-foreground/70`,children:`No tools or resources reported.`}),t[0]=e):e=t[0],e}let r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,X.jsx)(`h4`,{className:`mb-1.5 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground`,children:`Tools`}),t[1]=r):r=t[1];let i;t[2]===n.tools?i=t[3]:(i=n.tools.slice(0,12).map(Me),t[2]=n.tools,t[3]=i);let a;t[4]===i?a=t[5]:(a=(0,X.jsxs)(`div`,{children:[r,(0,X.jsx)(`div`,{className:`space-y-1`,children:i})]}),t[4]=i,t[5]=a);let o;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,X.jsx)(`h4`,{className:`mb-1.5 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground`,children:`Resources`}),t[6]=o):o=t[6];let s;t[7]===n.resources?s=t[8]:(s=n.resources.slice(0,10).map(je),t[7]=n.resources,t[8]=s);let c;t[9]===s?c=t[10]:(c=(0,X.jsxs)(`div`,{children:[o,(0,X.jsx)(`div`,{className:`space-y-1`,children:s})]}),t[9]=s,t[10]=c);let l;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,X.jsx)(`h4`,{className:`mb-1.5 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground`,children:`Templates`}),t[11]=l):l=t[11];let u;t[12]===n.resourceTemplates?u=t[13]:(u=n.resourceTemplates.slice(0,10).map(Ae),t[12]=n.resourceTemplates,t[13]=u);let d;t[14]===u?d=t[15]:(d=(0,X.jsxs)(`div`,{children:[l,(0,X.jsx)(`div`,{className:`space-y-1`,children:u})]}),t[14]=u,t[15]=d);let f;return t[16]!==a||t[17]!==c||t[18]!==d?(f=(0,X.jsxs)(`div`,{className:`grid gap-4 md:grid-cols-3`,children:[a,c,d]}),t[16]=a,t[17]=c,t[18]=d,t[19]=f):f=t[19],f}function Ae(e){return(0,X.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,X.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),(0,X.jsx)(`div`,{className:`truncate text-[11px] text-muted-foreground/75`,children:e.uriTemplate})]},e.uriTemplate)}function je(e){return(0,X.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,X.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),(0,X.jsx)(`div`,{className:`truncate text-[11px] text-muted-foreground/75`,children:e.uri})]},e.uri)}function Me(e){return(0,X.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,X.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),e.description?(0,X.jsx)(`div`,{className:`line-clamp-2 text-[11px] text-muted-foreground/75`,children:e.description}):null]},e.name)}function Ne(e){let t=(0,W.c)(88),{server:n,capabilities:r,writable:i,mutating:a,onToggleEnabled:o,onEdit:s,onRemove:l,onOauthLogin:u}=e,[d,ee]=(0,U.useState)(!1),p;t[0]===n?p=t[1]:(p=pe(n),t[0]=n,t[1]=p);let h=p,g=r.inventory===`available`,_=g?`${n.tools.length} tools · ${n.resources.length+n.resourceTemplates.length} resources`:`Inventory not available`,v;t[2]===n.config.transport?v=t[3]:(v=n.config.transport===`http`?(0,X.jsx)(ae,{className:`size-4 text-muted-foreground`}):(0,X.jsx)(x,{className:`size-4 text-muted-foreground`}),t[2]=n.config.transport,t[3]=v);let y;t[4]===n.name?y=t[5]:(y=(0,X.jsx)(`h3`,{className:`truncate text-sm font-semibold`,children:n.name}),t[4]=n.name,t[5]=y);let b;t[6]!==v||t[7]!==y?(b=(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[v,y]}),t[6]=v,t[7]=y,t[8]=b):b=t[8];let S;t[9]===n?S=t[10]:(S=_e(n),t[9]=n,t[10]=S);let C;t[11]===n?C=t[12]:(C=ve(n),t[11]=n,t[12]=C);let w;t[13]!==S||t[14]!==C?(w=(0,X.jsx)(M,{variant:S,children:C}),t[13]=S,t[14]=C,t[15]=w):w=t[15];let E;t[16]===n.source?E=t[17]:(E=ge(n.source),t[16]=n.source,t[17]=E);let D;t[18]===E?D=t[19]:(D=(0,X.jsx)(M,{variant:`outline`,children:E}),t[18]=E,t[19]=D);let O;t[20]!==b||t[21]!==w||t[22]!==D?(O=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[b,w,D]}),t[20]=b,t[21]=w,t[22]=D,t[23]=O):O=t[23];let k;t[24]===h?k=t[25]:(k=(0,X.jsx)(`p`,{className:`mt-1 truncate font-mono text-[11px] text-muted-foreground/80`,children:h}),t[24]=h,t[25]=k);let A;t[26]===n.config.transport?A=t[27]:(A=n.config.transport.toUpperCase(),t[26]=n.config.transport,t[27]=A);let j;t[28]===A?j=t[29]:(j=(0,X.jsx)(`span`,{children:A}),t[28]=A,t[29]=j);let N;t[30]===_?N=t[31]:(N=(0,X.jsx)(`span`,{children:_}),t[30]=_,t[31]=N);let P;t[32]===n.authStatus?P=t[33]:(P=(0,X.jsxs)(`span`,{children:[`Auth: `,n.authStatus]}),t[32]=n.authStatus,t[33]=P);let F;t[34]!==j||t[35]!==N||t[36]!==P?(F=(0,X.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2 text-[11px] text-muted-foreground`,children:[j,N,P]}),t[34]=j,t[35]=N,t[36]=P,t[37]=F):F=t[37];let I;t[38]===n.error?I=t[39]:(I=n.error?(0,X.jsx)(`p`,{className:`mt-2 text-xs text-destructive`,children:n.error}):null,t[38]=n.error,t[39]=I);let L;t[40]!==O||t[41]!==k||t[42]!==F||t[43]!==I?(L=(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[O,k,F,I]}),t[40]=O,t[41]=k,t[42]=F,t[43]=I,t[44]=L):L=t[44];let R;t[45]!==r.oauth||t[46]!==a||t[47]!==u||t[48]!==n?(R=r.oauth===`available`&&n.authStatus===`notLoggedIn`?(0,X.jsxs)(re,{children:[(0,X.jsx)(te,{render:(0,X.jsx)(m,{size:`icon-sm`,variant:`outline`,disabled:a,onClick:()=>u(n),"aria-label":`Log in to ${n.name}`,children:(0,X.jsx)(oe,{})})}),(0,X.jsx)(ne,{children:`Start OAuth login`})]}):null,t[45]=r.oauth,t[46]=a,t[47]=u,t[48]=n,t[49]=R):R=t[49];let z;t[50]!==r.upsert||t[51]!==a||t[52]!==s||t[53]!==n||t[54]!==i?(z=i&&r.upsert===`available`?(0,X.jsx)(m,{size:`sm`,variant:`outline`,onClick:()=>s(n),disabled:a,children:`Edit`}):null,t[50]=r.upsert,t[51]=a,t[52]=s,t[53]=n,t[54]=i,t[55]=z):z=t[55];let B;t[56]!==r.remove||t[57]!==a||t[58]!==l||t[59]!==n||t[60]!==i?(B=i&&r.remove===`available`?(0,X.jsxs)(re,{children:[(0,X.jsx)(te,{render:(0,X.jsx)(m,{size:`icon-sm`,variant:`destructive-outline`,disabled:a,onClick:()=>l(n),"aria-label":`Remove ${n.name}`,children:(0,X.jsx)(ie,{})})}),(0,X.jsx)(ne,{children:`Remove server`})]}):null,t[56]=r.remove,t[57]=a,t[58]=l,t[59]=n,t[60]=i,t[61]=B):B=t[61];let V;t[62]!==r.enableDisable||t[63]!==a||t[64]!==o||t[65]!==n||t[66]!==i?(V=i&&r.enableDisable===`available`?(0,X.jsx)(T,{checked:n.config.enabled,disabled:a,onCheckedChange:e=>o(n,!!e),"aria-label":`Enable ${n.name}`}):null,t[62]=r.enableDisable,t[63]=a,t[64]=o,t[65]=n,t[66]=i,t[67]=V):V=t[67];let H;t[68]!==d||t[69]!==g||t[70]!==n.name?(H=g?(0,X.jsx)(m,{size:`icon-sm`,variant:`ghost`,onClick:()=>ee(Pe),"aria-label":`Toggle ${n.name} inventory`,children:(0,X.jsx)(f,{className:c(`transition-transform`,d&&`rotate-180`)})}):null,t[68]=d,t[69]=g,t[70]=n.name,t[71]=H):H=t[71];let G;t[72]!==R||t[73]!==z||t[74]!==B||t[75]!==V||t[76]!==H?(G=(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[R,z,B,V,H]}),t[72]=R,t[73]=z,t[74]=B,t[75]=V,t[76]=H,t[77]=G):G=t[77];let K;t[78]!==L||t[79]!==G?(K=(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 p-4 sm:flex-row sm:items-start sm:justify-between`,children:[L,G]}),t[78]=L,t[79]=G,t[80]=K):K=t[80];let q;t[81]!==d||t[82]!==g||t[83]!==n?(q=d&&g?(0,X.jsx)(`div`,{className:`border-t bg-muted/20 p-4`,children:(0,X.jsx)(ke,{server:n})}):null,t[81]=d,t[82]=g,t[83]=n,t[84]=q):q=t[84];let J;return t[85]!==K||t[86]!==q?(J=(0,X.jsxs)(`article`,{className:`rounded-lg border bg-card text-card-foreground shadow-sm/4`,children:[K,q]}),t[85]=K,t[86]=q,t[87]=J):J=t[87],J}function Pe(e){return!e}function Fe(){let e=d(),t=(0,U.useMemo)(()=>e?i(e.environmentId)?.mcp:ee().mcp,[e]),[a,l]=(0,U.useState)(null),[u,f]=(0,U.useState)(null),[h,g]=(0,U.useState)(null),[_,v]=(0,U.useState)(!0),[y,x]=(0,U.useState)(!1),[S,C]=(0,U.useState)(null),[w,T]=(0,U.useState)(!1),[E,D]=(0,U.useState)(null),[O,k]=(0,U.useState)(null),A=a?.workspaces??me,j=a?.providers??he,M=(0,U.useMemo)(()=>A.find(e=>e.id===u)??null,[u,A]),ie=M?.capabilities,F=Se(M),R=(0,U.useCallback)(async(e,r)=>{r?.quiet||x(!0),k(null);try{let r=await Z(t).listServers({workspaceId:n.make(e),detail:`full`});g(r)}catch(e){k(e instanceof Error?e.message:`Failed to load MCP servers.`),Q(`Failed to load MCP servers`,e)}finally{x(!1)}},[t]),z=(0,U.useCallback)(async()=>{v(!0),k(null);try{let e=await Z(t).listWorkspaces();l(e);let n=e.workspaces.find(e=>e.id===u)?.id??e.workspaces[0]?.id??null;f(n),n?await R(n,{quiet:!0}):g(null)}catch(e){k(e instanceof Error?e.message:`Failed to load MCP workspaces.`),Q(`Failed to load MCP workspaces`,e)}finally{v(!1)}},[R,t,u]);(0,U.useEffect)(()=>{z()},[z]);let V=async()=>{if(!u){await z();return}await R(u)},ae=async()=>{if(u){x(!0);try{let e=await Z(t).reloadServers({workspaceId:n.make(u)});g(e),o.add(L({type:`success`,title:`MCP servers reloaded`}))}catch(e){Q(`Failed to reload MCP servers`,e)}finally{x(!1)}}},H=async e=>{if(!u)return;let i=await Z(t).upsertServer({workspaceId:n.make(u),name:r.make(e.name.trim()),config:de(e),secretMutations:fe(e)});g(i),o.add(L({type:`success`,title:`MCP server saved`}))},oe=async(e,r)=>{if(u){C(e.name);try{let i=await Z(t).setServerEnabled({workspaceId:n.make(u),name:e.name,enabled:r});g(i)}catch(e){Q(`Failed to update MCP server`,e)}finally{C(null)}}},W=async e=>{if(u&&await ee().dialogs.confirm(`Remove MCP server "${e.name}"?`)){C(e.name);try{let r=await Z(t).removeServer({workspaceId:n.make(u),name:e.name});g(r),o.add(L({type:`success`,title:`MCP server removed`}))}catch(e){Q(`Failed to remove MCP server`,e)}finally{C(null)}}},G=async e=>{if(u){C(e.name);try{let r=await Z(t).startOauthLogin({workspaceId:n.make(u),serverName:e.name,scopes:e.config.oauthScopes});await ee().shell.openExternal(r.authorizationUrl),o.add(L({type:`success`,title:`OAuth login opened`}))}catch(e){Q(`Failed to start OAuth login`,e)}finally{C(null)}}},K=()=>{D(null),T(!0)},q=e=>{D(e),T(!0)};return(0,X.jsxs)(`div`,{className:`flex-1 p-6 sm:p-8`,children:[(0,X.jsxs)(`div`,{className:`mx-auto flex w-full max-w-4xl flex-col gap-6`,children:[(0,X.jsxs)(`header`,{className:`flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground`,children:[(0,X.jsx)(b,{className:`size-3.5`}),`Provider MCP`]}),(0,X.jsx)(`h2`,{className:`mt-1 text-lg font-semibold tracking-[-0.01em]`,children:`MCP Servers`}),(0,X.jsx)(`p`,{className:`mt-1 max-w-2xl text-sm leading-relaxed text-muted-foreground/80`,children:`Manage MCP servers through each provider's native configuration surface. Controls appear only when that provider exposes a reliable operation.`})]}),(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(Ee,{workspaces:A,selectedWorkspaceId:u,onChange:e=>{f(e),R(e)}}),(0,X.jsxs)(re,{children:[(0,X.jsx)(te,{render:(0,X.jsx)(m,{size:`icon`,variant:`outline`,onClick:()=>void V(),disabled:_||y,"aria-label":`Refresh MCP servers`,children:(0,X.jsx)(P,{className:c((_||y)&&`animate-spin`)})})}),(0,X.jsx)(ne,{children:`Refresh`})]}),ie?.reload===`available`?(0,X.jsxs)(m,{variant:`outline`,disabled:!u||y,onClick:()=>void ae(),children:[(0,X.jsx)(I,{}),`Reload`]}):null,ie?.upsert===`available`?(0,X.jsxs)(m,{disabled:!u,onClick:K,children:[(0,X.jsx)(B,{}),`Add server`]}):null]})]}),(0,X.jsx)(Oe,{providers:j,selectedWorkspaceId:u,onSelectWorkspace:e=>{f(e),R(e)}}),M?(0,X.jsxs)(`div`,{className:`rounded-lg border bg-muted/20 px-4 py-3 text-xs text-muted-foreground`,children:[(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1`,children:[(0,X.jsx)(`span`,{className:`min-w-0 break-all font-mono`,children:M.displayPath}),(0,X.jsxs)(`span`,{children:[M.nativeScope,` scope · `,M.formatGeneration]}),(0,X.jsxs)(`span`,{children:[`Used by`,` `,M.providerInstances.map(e=>e.displayName??e.instanceId).join(`, `)]})]}),h?.configPath?(0,X.jsx)(`div`,{className:`mt-1 break-all font-mono text-[11px] text-muted-foreground/70`,children:h.configPath}):null]}):null,a?.issues.length?(0,X.jsx)(`div`,{className:`space-y-2 rounded-lg border border-warning/30 bg-warning/6 p-3`,children:a.issues.map(e=>(0,X.jsxs)(`div`,{className:`flex gap-2 text-xs`,children:[(0,X.jsx)(p,{className:`mt-0.5 size-3.5 text-warning-foreground`}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`span`,{className:`font-medium`,children:e.instanceId}),`: `,e.message]})]},`${e.instanceId}:${e.message}`))}):null,O?(0,X.jsx)(`div`,{className:`rounded-lg border border-destructive/30 bg-destructive/6 p-3 text-sm text-destructive-foreground`,children:O}):null,M?(0,X.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1 text-xs text-muted-foreground`,children:[M.capabilities.health===`available`?null:(0,X.jsxs)(`span`,{children:[`Live health is not reported by `,F,`.`]}),M.capabilities.inventory===`available`?null:(0,X.jsx)(`span`,{children:`Tool and resource inventory is unavailable.`}),M.capabilities.enableDisable===`available`?null:(0,X.jsx)(`span`,{children:`Individual enable/disable is not supported.`})]}):null,_?(0,X.jsx)(`div`,{className:`flex min-h-48 items-center justify-center rounded-lg border border-dashed`,children:(0,X.jsx)(N,{className:`size-5 animate-spin text-muted-foreground`})}):A.length===0?(0,X.jsxs)(`div`,{className:`rounded-lg border border-dashed p-8 text-center`,children:[(0,X.jsx)(b,{className:`mx-auto size-7 text-muted-foreground/60`}),(0,X.jsx)(`h3`,{className:`mt-3 text-sm font-semibold`,children:`No MCP provider profiles`}),(0,X.jsx)(`p`,{className:`mx-auto mt-1 max-w-md text-sm text-muted-foreground/80`,children:`Add or enable a provider instance with a supported MCP configuration surface.`})]}):h?.servers.length===0?(0,X.jsxs)(`div`,{className:`rounded-lg border border-dashed p-8 text-center`,children:[(0,X.jsx)(s,{className:`mx-auto size-7 text-muted-foreground/60`}),(0,X.jsx)(`h3`,{className:`mt-3 text-sm font-semibold`,children:`No MCP servers configured`}),(0,X.jsxs)(`p`,{className:`mx-auto mt-1 max-w-md text-sm text-muted-foreground/80`,children:[`Add a stdio or HTTP server to make its tools available to `,F,`sessions.`]}),ie?.upsert===`available`?(0,X.jsxs)(m,{className:`mt-4`,onClick:K,children:[(0,X.jsx)(B,{}),`Add server`]}):null]}):(0,X.jsx)(`div`,{className:`grid gap-3`,children:h?.servers.map(e=>(0,X.jsx)(Ne,{server:e,capabilities:ie??{readConfiguration:`unavailable`,upsert:`unavailable`,remove:`unavailable`,enableDisable:`unavailable`,reload:`unavailable`,health:`unavailable`,inventory:`unavailable`,oauth:`unavailable`,externalAgentControl:`unavailable`,automaticAgentControl:`unavailable`,scopes:[]},writable:e.source===`user`||e.source===`project`&&M?.nativeScope===`project`,mutating:S===e.name,onToggleEnabled:(e,t)=>void oe(e,t),onEdit:q,onRemove:e=>void W(e),onOauthLogin:e=>void G(e)},e.name))})]}),(0,X.jsx)(Te,{open:w,server:E,providerName:F,onOpenChange:T,onSubmit:H})]})}export{Fe as McpServersSettings};
@@ -1 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import{Ac as n,Ca as r,Kc as i,Mc as a,Qc as o,Rc as s,Vr as c,Wc as l,Wo as u,Zc as d,_c as f,_l as p,as as m,ec as h,es as g,hs as _,jc as v,ko as y,ms as b,nl as x,ns as S,os as C,rs as w,ts as ee,uc as T,us as E,vc as D,wc as O,wo as k,yc as A,zc as j,zr as M}from"./runtime-Bxg7k81u.js";import{t as N}from"./compiler-runtime-qmuS0Svy.js";import{f as P}from"./usePopupViewport-BcSIK_ph.js";import{p as F,s as I}from"./useScrollLock-BQf9VYJT.js";import{i as L,n as R,o as z,s as B,t as te}from"./DialogViewport-Cz0OadGI.js";import{n as V,r as H,t as ne}from"./DialogTitle-BvIjMtMm.js";import{t as re}from"./useControlled-DQwgzrEC.js";import{t as ie}from"./GlassSurface-CEVIdyfP.js";var U=e(t(),1),W=N(),G=120;function K(e){let t=e.replace(/\s+/gu,` `).trim();return t.length<=G?t:`${t.slice(0,119)}…`}var q=p();function J(e){let t=(0,W.c)(37),{label:n,icon:r,secondaryText:i,trailing:a,disabled:o,disabledReason:s,destructive:l,selected:u,onClick:d,className:f}=e,p=o!==void 0&&o,m=l!==void 0&&l,h=(0,U.useId)(),g;t[0]!==p||t[1]!==s?(g=p&&s?K(s):null,t[0]=p,t[1]=s,t[2]=g):g=t[2];let _=g,v=`${h}-label`,y=`${h}-secondary`,b=`${h}-trailing`,x=`${h}-reason`,S=i?y:null,C=a?b:null,w;t[3]!==v||t[4]!==S||t[5]!==C?(w=[v,S,C].filter(Y),t[3]=v,t[4]=S,t[5]=C,t[6]=w):w=t[6];let ee=w.join(` `),T=_?ee:void 0,E=_?x:void 0,D=m&&!p&&`text-destructive`,O=u&&`bg-accent/60 font-medium`,k;t[7]!==f||t[8]!==O||t[9]!==D?(k=c(`flex min-h-11 w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:text-muted-foreground/60`,D,O,f),t[7]=f,t[8]=O,t[9]=D,t[10]=k):k=t[10];let A;t[11]!==n||t[12]!==v?(A=(0,q.jsx)(`span`,{id:v,className:`truncate`,children:n}),t[11]=n,t[12]=v,t[13]=A):A=t[13];let j;t[14]!==y||t[15]!==i?(j=i?(0,q.jsx)(`span`,{id:y,className:`truncate text-xs text-muted-foreground`,children:i}):null,t[14]=y,t[15]=i,t[16]=j):j=t[16];let M;t[17]!==_||t[18]!==x?(M=_?(0,q.jsx)(`span`,{id:x,className:`truncate text-xs text-muted-foreground/80`,children:_}):null,t[17]=_,t[18]=x,t[19]=M):M=t[19];let N;t[20]!==A||t[21]!==j||t[22]!==M?(N=(0,q.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[A,j,M]}),t[20]=A,t[21]=j,t[22]=M,t[23]=N):N=t[23];let P;t[24]!==a||t[25]!==b?(P=a?(0,q.jsx)(`span`,{id:b,className:`flex shrink-0 items-center gap-2`,children:a}):null,t[24]=a,t[25]=b,t[26]=P):P=t[26];let F;return t[27]!==p||t[28]!==r||t[29]!==d||t[30]!==u||t[31]!==k||t[32]!==N||t[33]!==P||t[34]!==T||t[35]!==E?(F=(0,q.jsxs)(`button`,{type:`button`,disabled:p,"aria-labelledby":T,"aria-describedby":E,"aria-pressed":u,className:k,"data-slot":`mobile-list-row`,onClick:d,children:[r,N,P]}),t[27]=p,t[28]=r,t[29]=d,t[30]=u,t[31]=k,t[32]=N,t[33]=P,t[34]=T,t[35]=E,t[36]=F):F=t[36],F}function Y(e){return e!==null}var ae=`--nested-drawers`,oe=`--drawer-height`,se=`--drawer-frontmost-height`,ce=`--drawer-swipe-movement-x`,le=`--drawer-swipe-movement-y`,X=`--drawer-snap-point-offset`,ue=`--drawer-swipe-strength`,de=`--drawer-swipe-progress`,fe=U.forwardRef(function(e,t){let{render:n,className:r,style:i,forceRender:a=!1,...o}=e,s=B(),c=s.useState(`open`),l=s.useState(`nested`),u=s.useState(`mounted`),d={open:c,transitionStatus:s.useState(`transitionStatus`)};return b(`div`,e,{state:d,ref:[s.context.backdropRef,t],stateAttributesMapping:h,props:[{role:`presentation`,hidden:!u,style:{pointerEvents:c?void 0:`none`,userSelect:`none`,WebkitUserSelect:`none`,[de]:`0`,[ue]:`1`}},o],enabled:a||!l})}),pe=H,me=`data-drawer-content`,he=U.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e;return B(),b(`div`,e,{ref:t,props:[{[me]:``},a]})}),ge=V,_e=U.createContext(void 0);function ve(){return U.useContext(_e)}var ye=`data-expanded`,be=`data-nested-drawer-open`,Z=`data-nested-drawer-swiping`,xe=`data-swipe-dismiss`,Se=`data-swipe-direction`,Ce=`data-swiping`,we=U.createContext(void 0);function Te(e){let t=U.useContext(we);if(e!==!0&&t===void 0)throw Error(d(90));return t}function Ee(e,t){let n=e+t;return n>=0?t:-Math.sqrt(-n)-e}function Q(e,t,n){if(!Number.isFinite(t)||t<=0)return null;if(typeof e==`number`)return Number.isFinite(e)?e<=1?m(e,0,1)*t:e:null;let r=e.trim();if(r.endsWith(`px`)){let e=Number.parseFloat(r);return Number.isFinite(e)?e:null}if(r.endsWith(`rem`)){let e=Number.parseFloat(r);return Number.isFinite(e)?e*n:null}return null}function De(e,t){let n=-1,r=1/0;for(let i=0;i<e.length;i+=1){let a=Math.abs(e[i]-t);a<r&&(r=a,n=i)}return n}function Oe(){let e=B(),{snapPoints:t,activeSnapPoint:n,setActiveSnapPoint:r,popupHeight:s}=Te(),c=e.useState(`viewportElement`),[l,u]=U.useState(0),[d,f]=U.useState(16),p=i(()=>{let e=a(c).documentElement;u(c?c.offsetHeight:e.clientHeight);let t=parseFloat(getComputedStyle(e).fontSize);Number.isFinite(t)&&f(t)});o(()=>{if(p(),!c||typeof ResizeObserver!=`function`)return;let e=new ResizeObserver(p);return e.observe(c),()=>{e.disconnect()}},[p,c]);let h=U.useMemo(()=>{if(!t||t.length===0||l<=0||s<=0)return[];let e=Math.min(s,l),n=t.map(t=>{let n=Q(t,l,d);if(n===null)return null;let r=m(n,0,e);return{value:t,height:r,offset:Math.max(0,s-r)}}).filter(e=>!!e);if(n.length<=1)return n;let r=[],i=[];for(let e=n.length-1;e>=0;--e){let t=n[e];i.some(e=>Math.abs(e-t.height)<=1)||(i.push(t.height),r.push(t))}return r.reverse(),r},[s,d,t,l]);return{snapPoints:t,activeSnapPoint:n,setActiveSnapPoint:r,popupHeight:s,viewportHeight:l,resolvedSnapPoints:h,activeSnapPointOffset:U.useMemo(()=>{if(n===null)return;let e=h.find(e=>Object.is(e.value,n));if(e)return e;let t=Math.min(s,l),r=Q(n,l,d);if(r===null)return;let i=m(r,0,t);return h[De(h.map(e=>e.height),i)]},[n,s,h,d,l])?.offset??null}}var ke=U.createContext(null);function Ae(){return U.useContext(ke)}var je=!1;function Me(){je||=(typeof CSS<`u`&&`registerProperty`in CSS&&([ce,le,X].forEach(e=>{try{CSS.registerProperty({name:e,syntax:`<length>`,inherits:!1,initialValue:`0px`})}catch{}}),[{name:de,initialValue:`0`},{name:ue,initialValue:`1`}].forEach(({name:e,initialValue:t})=>{try{CSS.registerProperty({name:e,syntax:`<number>`,inherits:!1,initialValue:t})}catch{}})),!0)}var Ne={...h,expanded(e){return e?{[ye]:``}:null},nestedDrawerOpen(e){return e?{[be]:``}:null},nestedDrawerSwiping(e){return e?{[Z]:``}:null},swipeDirection(e){return{[Se]:e}},swiping(e){return e?{[Ce]:``}:null}},$=U.forwardRef(function(e,t){let{render:n,className:r,style:a,finalFocus:s,initialFocus:c,...l}=e,u=B(),d=u.context.popupRef,{swipeDirection:f,frontmostHeight:p,hasNestedDrawer:m,nestedSwiping:h,nestedSwipeProgressStore:g,onPopupHeightChange:_,notifyParentFrontmostHeight:v,notifyParentHasNestedDrawer:y}=Te(),S=u.useState(`descriptionElementId`),C=u.useState(`disablePointerDismissal`),w=u.useState(`floatingRootContext`),ee=u.useState(`popupProps`),T=u.useState(`modal`),D=u.useState(`mounted`),O=u.useState(`nested`),k=u.useState(`nestedOpenDrawerCount`),A=u.useState(`transitionStatus`),j=u.useState(`open`),M=u.useState(`openMethod`),N=u.useState(`titleElementId`),L=u.useState(`role`),R=w.useState(`floatingId`),te=l.id??R,V=Ae();z();let{snapPoints:H,activeSnapPoint:ne,activeSnapPointOffset:re}=Oe(),ie=k>0,W=V?.swiping??!1,G=V?.swipeStrength??null,[K,J]=U.useState(0),Y=U.useRef(0),ce=i(()=>{let e=d.current;if(!e)return;let t=e.offsetHeight;if(Y.current>0&&p>Y.current&&t>Y.current)return;if(Y.current>0&&m){let e=Y.current;J(e),_(e);return}let n=t;n!==Y.current&&(Y.current=n,J(n),_(n))});o(()=>{if(!D){Y.current=0,J(0),_(0);return}let e=d.current;if(!e||(Me(),ce(),typeof ResizeObserver!=`function`))return;let t=new ResizeObserver(ce);return t.observe(e),()=>{t.disconnect()}},[ce,D,ie,_,d]),o(()=>{let e=()=>{let e=d.current;if(!e)return;let t=g.getSnapshot();t>0?e.style.setProperty(de,`${t}`):e.style.setProperty(de,`0`)};e();let t=g.subscribe(e),n=d.current;return()=>{t(),n&&n.style.setProperty(de,`0`)}},[g,d]),o(()=>{if(j)return v?.(p),()=>{v?.(0)}},[p,j,v]),o(()=>{if(y)return y(j||A===`ending`),()=>{y(!1)}},[y,j,A]),E({open:j,ref:d,onComplete(){j&&u.context.onOpenChangeComplete?.(!0)}});let fe=c===void 0?d:c,pe=u.useStateSetter(`popupElement`),me={open:j,nested:O,transitionStatus:A,expanded:ne===1,nestedDrawerOpen:ie,nestedDrawerSwiping:h,swipeDirection:f,swiping:W},he;K&&(m||A===`ending`)&&(he=`${K}px`);let ge=H&&H.length>0&&(f===`down`||f===`up`),_e=null;ge&&re!==null&&(_e=f===`up`?-re:re);let ve=V?V.getDragStyles():x;if(ge&&f===`down`){let e=re??0,t=Number.parseFloat(String(ve[le]));ve=W&&Number.isFinite(t)?{...ve,transform:void 0,[le]:`${Ee(e,t)}px`}:{...ve,transform:void 0}}let ye=b(`div`,e,{state:me,props:[ee,{id:te,"aria-labelledby":N,"aria-describedby":S,role:L,...P,hidden:!D,onKeyDown(e){I.has(e.key)&&e.stopPropagation()},style:{...ve,[de]:`0`,[ae]:k,[oe]:he,[X]:typeof _e==`number`?`${_e}px`:`0px`,[se]:p?`${p}px`:void 0,[ue]:typeof G==`number`&&Number.isFinite(G)&&G>0?`${G}`:`1`}},l],ref:[t,d,pe],stateAttributesMapping:Ne});return(0,q.jsx)(F,{context:w,openInteractionType:M,disabled:!D,closeOnFocusOut:!C,initialFocus:fe,returnFocus:s,modal:T!==!1,restoreFocus:`popup`,children:ye})}),Pe=L,Fe,Ie;function Le(e){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:a,onOpenChangeComplete:o,disablePointerDismissal:s=!1,modal:c=!0,actionsRef:l,handle:u,triggerId:d,defaultTriggerId:f=null,swipeDirection:p=`down`,snapToSequentialPoints:m=!1,snapPoints:h,snapPoint:g,defaultSnapPoint:_,onSnapPointChange:v}=e,y=Te(!0),b=y?.onNestedSwipeProgressChange,x=y?.onNestedFrontmostHeightChange,S=y?.onNestedSwipingChange,C=y?.onNestedDrawerPresenceChange,[w,ee]=U.useState(0),[T,E]=U.useState(0),[D,O]=U.useState(!1),[A,j]=U.useState(!1),[M]=U.useState(Re),N=_===void 0?h?.[0]??null:_,P=g!==void 0,[F,I]=re({controlled:g,default:N,name:`Drawer`,state:`snapPoint`}),L=U.useRef(!1),z=U.useRef(!1),B=i((e,t)=>{let n=t??k(`none`);v?.(e,n),!n.isCanceled&&I(e)}),te=U.useMemo(()=>P||!h||h.length===0?F:F===null||!h.some(e=>Object.is(e,F))?N:F,[F,P,N,h]),V=i(e=>{ee(e),!L.current&&e>0&&E(e)}),H=i(e=>{if(e>0){L.current=!0,E(e);return}L.current=!1,w>0&&E(w)}),ne=i(e=>{O(e)}),ie=i(e=>{M.set(e),b?.(e)}),W=i(e=>{j(e),S?.(e)}),G=i((e,t)=>{a?.(e,t),!t.isCanceled&&!e&&h&&h.length>0&&B(N,k(t.reason,t.event,t.trigger))}),K=U.useMemo(()=>({swipeDirection:p,swipeAreaActiveRef:z,snapToSequentialPoints:m,snapPoints:h,activeSnapPoint:te,setActiveSnapPoint:B,frontmostHeight:T,popupHeight:w,hasNestedDrawer:D,nestedSwiping:A,nestedSwipeProgressStore:M,onNestedDrawerPresenceChange:ne,onPopupHeightChange:V,onNestedFrontmostHeightChange:H,onNestedSwipingChange:W,onNestedSwipeProgressChange:ie,notifyParentFrontmostHeight:x,notifyParentSwipingChange:S,notifyParentSwipeProgressChange:b,notifyParentHasNestedDrawer:C}),[te,T,D,A,M,C,b,S,x,ne,H,ie,W,V,w,B,h,m,z,p]),J=typeof t==`function`?e=>(0,q.jsxs)(U.Fragment,{children:[Fe||=(0,q.jsx)(ze,{}),t(e)]}):(0,q.jsxs)(U.Fragment,{children:[Ie||=(0,q.jsx)(ze,{}),t]}),Y=R(`drawer`,{open:n,defaultOpen:r,onOpenChange:G,onOpenChangeComplete:o,disablePointerDismissal:s,modal:c,actionsRef:l,handle:u,triggerId:d,defaultTriggerId:f,children:J});return(0,q.jsx)(we.Provider,{value:K,children:Y})}function Re(){let e=0,t=new Set;return{getSnapshot:()=>e,set(n){let r=Number.isFinite(n)?n:0;r!==e&&(e=r,t.forEach(e=>{e()}))},subscribe(e){return t.add(e),()=>{t.delete(e)}}}}function ze(){let e=ve(),t=B(!1),n=e?.setDrawerOpen,r=e?.removeDrawer,i=t.useState(`open`),a=t.useState(`nestedOpenDialogCount`),c=t.useState(`popupElement`),l=a===0;return o(()=>{if(r)return()=>{r(t)}},[r,t]),o(()=>{n?.(t,i)},[i,n,t]),U.useEffect(()=>{if(!i||!l||!O)return;let e=s(c).CloseWatcher;if(!e)return;function n(e){t.select(`open`)&&t.setOpen(!1,k(y,e))}let r=new e,a=v(r,`close`,n);return()=>{a(),r.destroy()}},[t,l,i,c]),null}var Be=ne,Ve=e(l(),1),He=`data-nested-dialog-open`,Ue=U.createContext(void 0);function We(){return U.useContext(Ue)}var Ge=10,Ke=.5,qe=.5,Je=300,Ye=4,Xe=.2,Ze=4,Qe=80,$e=360,et=.1,tt=6,nt=2,rt=`[${me}]`,it=U.forwardRef(function(e,t){let{render:r,className:s,style:c,children:l,...d}=e,f=B(),p=f.context.popupRef,h=f.context.backdropRef,{swipeDirection:y,notifyParentSwipingChange:b,notifyParentSwipeProgressChange:x,frontmostHeight:C,snapToSequentialPoints:E,swipeAreaActiveRef:O}=Te(),M=ve(),{snapPoints:N,resolvedSnapPoints:P,activeSnapPoint:F,activeSnapPointOffset:I,setActiveSnapPoint:L,popupHeight:R}=Oe(),z=f.useState(`open`),V=f.useState(`mounted`),H=f.useState(`nested`),ne=f.useState(`nestedOpenDrawerCount`),re=f.useState(`viewportElement`),ie=f.useState(`popupElement`),W=M?.visualStateStore,G=ne>0,K=y===`left`||y===`right`?`horizontal`:`vertical`,J=K===`vertical`,Y=J?`horizontal`:`vertical`,[ae,se]=U.useState(null),X=U.useRef(void 0),ue=U.useRef(null),fe=n(),pe=U.useRef(!1),me=U.useRef(!1),he=U.useRef(``),ge=U.useRef(!1),_e=U.useRef(!1),ye=U.useRef(null),be=We(),Z=U.useMemo(()=>{if(!N||N.length<2||P.length<2||y!==`down`&&y!==`up`)return null;let e=P.map(e=>e.offset).sort((e,t)=>e-t),t=e[0];return{minOffset:t,range:e[1]-t}},[P,N,y]),Se=U.useMemo(()=>!Z||I===null?null:m((I-Z.minOffset)/Z.range,0,1),[I,Z]),Ce=U.useMemo(()=>N&&N.length>0&&(y===`down`||y===`up`)?y===`down`?[`down`,`up`]:[`up`,`down`]:[y],[N,y]),we=i(e=>{p.current?.toggleAttribute(xe,e),h.current?.toggleAttribute(xe,e)}),Q=i(()=>{we(!1),p.current?.removeAttribute(T),se(null)}),Ae=i(()=>{me.current&&(me.current=!1,b?.(!1))}),je=i((e,t,n)=>{let r=z&&!H&&t,i=r?e:0,a=z&&t?e:0;n&&x&&(x(a),a<=0&&Ae()),W?.set({swipeProgress:i,frontmostHeight:i>0?C:0});let o=h.current;if(!o)return;let s=r&&i>0;o.style.setProperty(de,s?`${i}`:`0`),s&&C>0?o.style.setProperty(oe,`${C}px`):o.style.removeProperty(oe)});function Me(e,t,n,r,i,a,o,s){let c=ct(e,t);if(c<=0)return null;let l=((t===`down`||t===`up`)&&N&&N.length>0?I??0:0)+g(t,n,r),u=Math.max(0,c-l);if(u<=0)return null;let d=g(t,o,s),f=Math.abs(d)>0?d:g(t,i,a);if(f<=Xe)return null;let p=m(f,Xe,Ze);return et+(m(u/p,Qe,$e)-Qe)/280*.9}function Ne(e){if(me.current||!e)return;let t=e.direction??y,n=g(t,e.deltaX,e.deltaY);Math.abs(n)<Ge||(me.current=!0,b?.(!0))}let $=ee({enabled:V&&!G,directions:Ce,elementRef:f.context.popupRef,ignoreSelectorWhenTouch:!1,ignoreScrollableAncestors:!0,movementCssVars:{x:ce,y:le},onSwipeStart(e){if(`touches`in e||e.pointerType===`touch`)return;let t=p.current,n=a(t).getSelection?.();if(!n||n.isCollapsed)return;let r=j(n.anchorNode)?n.anchorNode:n.anchorNode?.parentElement,i=j(n.focusNode)?n.focusNode:n.focusNode?.parentElement;(D(t,r)||D(t,i))&&n.removeAllRanges()},onSwipingChange(e){pe.current=e,at(f.context.backdropRef.current,e),!e&&!x&&Ae()},swipeThreshold({element:e,direction:t}){return lt(e,t)},canStart(e,t){let n=f.context.popupRef.current;if(!n)return!1;let r=n.ownerDocument,i=S(n.getRootNode(),e.x,e.y);if(!i||!D(n,i))return!1;let a=t.nativeEvent;return!((`touches`in a||a.pointerType===`touch`)&&pt(r,n))},onProgress(e,t){let n=pe.current;n&&Ne(t);let r=!!(N&&N.length>0);if(n&&y===`down`&&r&&t){let e=f.context.popupRef.current;e&&(e.style.removeProperty(`transform`),e.style.setProperty(le,`${Ee(I??0,t.deltaY)}px`))}let i=e;if(Z&&R>0){let e=I??Z.minOffset;n&&t&&Number.isFinite(t.deltaY)?i=(e=>m((e-Z.minOffset)/Z.range,0,1))(m(e+t.deltaY,0,R)):Se!==null&&(i=Se)}n||(x?.(0),Ae()),je(i,!0,n)},onRelease({event:e,deltaX:t,deltaY:n,direction:r,velocityX:i,velocityY:a,releaseVelocityX:o,releaseVelocityY:s}){let c=f.context.popupRef.current;if(!c){Q();return}let l=c;function d(e){Ae(),we(!0),l.style.removeProperty(`transition`),l.setAttribute(T,``),Ve.flushSync(()=>{se(Me(l,e,t,n,i,a,o,s))})}if(!N||N.length===0){if(!r){Q();return}let e=g(r,t,n);if(e<=0)return Q(),!1;if(g(r,i,a)>=Ke)return d(r),!0;let o=e>lt(l,r);return o?d(r):Q(),o}if(y!==`down`&&y!==`up`){Q();return}if(!R)return Q(),!1;if(P.length===0){Q();return}let p=y===`down`?n:-n,h=Math.sign(p),_=y===`down`?s:-s,v=y===`down`?a:-a,b=_;if(h!==0&&Math.abs(p)>=Ge){let e=Math.sign(b);e!==0&&e!==h&&(b=v)}let x=I??0,S=m(x+p,0,R),C=Math.abs(b)>=qe?m(b,-4,Ye)*Je:0,w=E?S:m(S+C,0,R),ee=k(u,e),D=()=>(je(0,!0,!0),Q(),!1),O=e=>(L(e.value,ee),D()),A=e=>r?(L(null,ee),ee.isCanceled?D():(X.current=F,d(y),!0)):O(e);if(E){let e=[...P].sort((e,t)=>e.offset-t.offset),t=e.map(e=>e.offset),n=De(t,x),r=e[De(t,w)],i=Math.sign(b),a=h!==0&&i!==0&&i===h&&Math.abs(b)>=qe,o=w;if(a){let t=m(n+h,0,e.length-1);if(t!==n){let n=e[t];(h>0?w<n.offset:w>n.offset)&&(r=n,o=n.offset)}else if(h>0)return A(r)}return Math.abs(o-R)<Math.abs(o-r.offset)?A(r):O(r)}let j=P[De(P.map(e=>e.offset),w)];return b>=Ke&&p>0||Math.abs(w-R)<Math.abs(w-j.offset)?A(j):O(j)},onDismiss(e){W?.set({swipeProgress:0,frontmostHeight:0});let t=f.context.backdropRef.current;t&&(t.style.setProperty(de,`0`),t.style.removeProperty(oe));let n=k(u,e);if(f.setOpen(!1,n),n.isCanceled){let t=X.current;t!==void 0&&L(t,k(u,e)),X.current=void 0,ue.current?.(),Q();return}if(f.select(`open`)){let t=e;fe.request(()=>{if(f.select(`open`)){let e=X.current;e!==void 0&&L(e,k(u,t)),X.current=void 0,Q(),ue.current?.()}else X.current=void 0});return}X.current=void 0,we(!0)}}),Pe=$.getPointerProps(),Fe=$.getTouchProps(),{moveNative:Ie,reset:Le}=$;ue.current=Le,U.useEffect(()=>{let e=re??ie;if(!e)return;let t=e,n=a(t);function r(e,r,i){let a=J?i.clientY-r.lastY:i.clientX-r.lastX;if(e.touches.length===2||pt(n,t)||!z||!V||G||_t(r,e,i,J))return;let o=r.scrollTarget;if(!o||o===n.documentElement||o===n.body){e.cancelable&&e.preventDefault(),e.stopPropagation(),Ie(e,t);return}if(!vt(o,K)){e.cancelable&&e.preventDefault(),e.stopPropagation();return}if(a!==0){let t=xt(o,K,y,a);r.allowSwipe?e.cancelable&&e.preventDefault():e.cancelable&&t?(r.allowSwipe=!0,e.preventDefault()):r.allowSwipe=!1}r.allowSwipe===!0&&(e.stopPropagation(),Ie(e,t))}function i(e){if(be?.onTouchMove(e),_e.current)return;let t=ye.current,n=e.touches[0];n&&t&&(r(e,t,n),gt(t,n))}return v(n,`touchmove`,i,{passive:!1,capture:!0})},[V,G,z,ie,J,K,y,Ie,re,be]),o(()=>{Z&&!$.swiping&&je(!z||H?0:Se??0,!0,!1)},[je,C,H,x,z,Se,Z,$.swiping,f,W]),o(()=>{if(x)return z||x(0),()=>{x(0)}},[x,z]),o(()=>{z&&(O.current||Le(),Q())},[Q,z,Le,O]),o(()=>{let e=h.current;return()=>{W?.set({swipeProgress:0,frontmostHeight:0}),at(e,!1);let t=h.current;t!==e&&at(t,!1),Ae()}},[h,Ae,W]);let Re=U.useMemo(()=>({swiping:$.swiping,getDragStyles:$.getDragStyles,swipeStrength:ae??null,setSwipeDismissed:we}),[we,$.getDragStyles,$.swiping,ae]);function ze(e){_e.current=e,ye.current=null}function Be(){ze(!1),he.current=``,ge.current=!1}function Ue(e){return he.current=``,e.pointerType!==`touch`}return(0,q.jsx)(te,{ref:t,className:s,style:c,render:r,..._(d,{onPointerDown(e){if(he.current=e.pointerType,ge.current=e.pointerType===`pen`,!z||!V||G)return;let t=S(e.currentTarget.getRootNode(),e.clientX,e.clientY);ot(t)||st(t)||e.pointerType!==`touch`&&Pe.onPointerDown?.(e)},onPointerMove(e){e.pointerType!==`touch`&&Pe.onPointerMove?.(e)},onPointerUp(e){Ue(e)&&Pe.onPointerUp?.(e)},onPointerCancel(e){Ue(e)&&Pe.onPointerCancel?.(e)},onTouchStart(e){if(he.current===`pen`&&ge.current){ge.current=!1,ze(!1);return}if(!z||!V||G){ze(!1);return}let t=e.touches[0];if(!t)return;if(ht(e)){ze(!1);return}let n=e.currentTarget,r=S(n.getRootNode(),t.clientX,t.clientY),i=A(e.nativeEvent),a=j(i)?i:n;if(!D(n,a)){ze(!0);return}if(be?.onTouchStart(e),ot(r)){ze(!0);return}_e.current=!1;let o=w(a,n,K),s=w(a,n,Y)!=null,c=null;o&&(c=bt(o,K,y)?null:!1),ye.current={startX:t.clientX,startY:t.clientY,lastX:t.clientX,lastY:t.clientY,scrollTarget:o,hasCrossAxisScrollableContent:s,allowSwipe:c,preserveNativeCrossAxisScroll:!1,drawerAxisAttributed:!1},Fe.onTouchStart?.(e)},onTouchEnd(e){be?.onTouchEnd(e),Be(),Fe.onTouchEnd?.(e)},onTouchCancel(e){be?.onTouchCancel(),Be(),Fe.onTouchCancel?.(e)},[He]:void 0}),children:(0,q.jsx)(ke.Provider,{value:Re,children:l})})});function at(e,t){e?.toggleAttribute(Ce,t)}function ot(e){return!!e?.closest(C)}function st(e){return!!e?.closest(rt)}function ct(e,t){return t===`left`||t===`right`?e.offsetWidth:e.offsetHeight}function lt(e,t){return Math.max(ct(e,t)*.5,Ge)}function ut(e,t){return e instanceof t.HTMLInputElement&&e.type===`range`}function dt(e){return e.tagName===`INPUT`||e.tagName===`TEXTAREA`}function ft(e,t){let n=j(e.anchorNode)?e.anchorNode:e.anchorNode?.parentElement,r=j(e.focusNode)?e.focusNode:e.focusNode?.parentElement;return e.containsNode(t,!0)||D(t,n)||D(t,r)}function pt(e,t){let n=f(e);if(n&&D(t,n)&&dt(n)){let{selectionStart:e,selectionEnd:t}=n;if(e!=null&&t!=null&&e<t)return!0}let r=e.getSelection?.();return!r||r.isCollapsed?!1:ft(r,t)}function mt(e,t){return e.composedPath().some(e=>ut(e,t))}function ht(e){return mt(e.nativeEvent,s(e.currentTarget))}function gt(e,t){e.lastX=t.clientX,e.lastY=t.clientY}function _t(e,t,n,r){if(e.preserveNativeCrossAxisScroll)return!0;if(e.drawerAxisAttributed||e.allowSwipe===!0||!e.hasCrossAxisScrollableContent)return!1;if(!t.cancelable)return e.preserveNativeCrossAxisScroll=!0,!0;let i=r?n.clientY-e.startY:n.clientX-e.startX,a=r?n.clientX-e.startX:n.clientY-e.startY,o=Math.abs(i),s=Math.abs(a);return s>=tt&&s>o+nt?(e.preserveNativeCrossAxisScroll=!0,!0):o>=tt?(e.drawerAxisAttributed=!0,!1):!0}function vt(e,t){return yt(e,t).max>0}function yt(e,t){if(t===`vertical`){let t=Math.max(0,e.scrollHeight-e.clientHeight);return{offset:e.scrollTop,max:t}}let n=Math.max(0,e.scrollWidth-e.clientWidth);return{offset:e.scrollLeft,max:n}}function bt(e,t,n){let r=St(n,t),{offset:i,max:a}=yt(e,t);return r?i<=0:i>=a}function xt(e,t,n,r){return(St(n,t)?r>0:r<0)&&bt(e,t,n)}function St(e,t){return t===`vertical`?e===`down`:e===`right`}var Ct=.5,wt=1,Tt=[Ct,wt];function Et(e){return e===`medium`?Ct:wt}function Dt(e){return e==null?null:e===Ct?`medium`:`large`}function Ot(e){let t=(0,W.c)(23),{open:n,onOpenChange:i,label:a,detent:o,onDetentChange:s,activeDetent:l,className:u,children:d}=e,f=o===void 0?`large`:o,p;t[0]===f?p=t[1]:(p=Et(f),t[0]=f,t[1]=p);let m;t[2]===l?m=t[3]:(m=l===void 0?{}:{snapPoint:l===null?null:Et(l)},t[2]=l,t[3]=m);let h;t[4]===s?h=t[5]:(h=e=>s?.(Dt(e)),t[4]=s,t[5]=h);let g;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,q.jsx)(fe,{className:c(`app-sheet-backdrop fixed inset-0 z-50 backdrop-blur-sm`,`transition-opacity duration-[var(--app-motion-duration-sheet)] ease-[var(--app-motion-ease)] data-ending-style:opacity-0 data-starting-style:opacity-0 motion-reduce:transition-none`),"data-slot":`mobile-sheet-backdrop`}),t[6]=g):g=t[6];let _;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(_=c(`pointer-events-auto fixed inset-0 z-50 flex flex-col justify-end pt-12`,`pb-[var(--app-keyboard-inset,0px)]`),t[7]=_):_=t[7];let v;t[8]===u?v=t[9]:(v=c(ie(`sheet`),`pointer-events-auto flex max-h-full min-h-0 w-full min-w-0 flex-col rounded-t-2xl border-t not-dark:bg-clip-padding text-popover-foreground shadow-lg/5`,`pb-safe pl-safe pr-safe`,`translate-y-[calc(var(--drawer-snap-point-offset,0px)+var(--drawer-swipe-movement-y,0px))] data-ending-style:translate-y-full data-starting-style:translate-y-full`,`transition-[translate,scale] duration-[var(--app-motion-duration-sheet)] ease-[var(--app-motion-ease)] will-change-transform motion-reduce:transition-none`,`data-nested-drawer-open:scale-96`,u),t[8]=u,t[9]=v);let y;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,q.jsx)(`span`,{"aria-hidden":!0,className:`mx-auto mt-2 mb-1 h-1 w-9 shrink-0 rounded-full bg-muted-foreground/32`,"data-slot":`mobile-sheet-grabber`}),t[10]=y):y=t[10];let b;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,q.jsx)(pe,{"aria-label":`Close`,className:`absolute end-2 top-2 z-20`,"data-slot":`mobile-sheet-close`,render:(0,q.jsx)(M,{size:`icon`,variant:`ghost`}),children:(0,q.jsx)(r,{})}),t[11]=b):b=t[11];let x;t[12]!==d||t[13]!==a||t[14]!==v?(x=(0,q.jsxs)(Pe,{children:[g,(0,q.jsx)(it,{className:_,"data-slot":`mobile-sheet-viewport`,children:(0,q.jsxs)($,{"aria-label":a,className:v,"data-slot":`sheet-popup`,"data-mobile-sheet":``,onKeyDown:kt,children:[y,d,b]})})]}),t[12]=d,t[13]=a,t[14]=v,t[15]=x):x=t[15];let S;return t[16]!==i||t[17]!==n||t[18]!==x||t[19]!==p||t[20]!==m||t[21]!==h?(S=(0,q.jsx)(Le,{open:n,onOpenChange:i,swipeDirection:`down`,snapPoints:Tt,defaultSnapPoint:p,...m,onSnapPointChange:h,children:x}),t[16]=i,t[17]=n,t[18]=x,t[19]=p,t[20]=m,t[21]=h,t[22]=S):S=t[22],S}function kt(e){e.stopPropagation()}function At(e){let t=(0,W.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=c(`flex shrink-0 flex-col gap-1 px-4 pt-2 pe-11 pb-3`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,q.jsx)(`div`,{className:i,"data-slot":`mobile-sheet-header`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function jt(e){let t=(0,W.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=c(`truncate font-heading font-semibold text-base leading-tight`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,q.jsx)(Be,{className:i,"data-slot":`mobile-sheet-title`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Mt(e){let t=(0,W.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=c(`text-muted-foreground text-sm`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,q.jsx)(ge,{className:i,"data-slot":`mobile-sheet-description`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Nt(e){let t=(0,W.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=c(`min-h-0 flex-1 overflow-y-auto overscroll-contain px-4 pb-2`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,q.jsx)(he,{className:i,"data-slot":`mobile-sheet-panel`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function Pt(e){let t=(0,W.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=c(`flex shrink-0 flex-col-reverse gap-2 px-4 pt-3 pb-2 sm:flex-row`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,q.jsx)(`div`,{className:i,"data-slot":`mobile-sheet-footer`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}export{Nt as a,K as c,At as i,Mt as n,jt as o,Pt as r,J as s,Ot as t};
@@ -1 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import"./src-Bi-5Nw9C.js";import{$n as n,Nr as r,Oa as i,Or as a,Vr as o,_l as s,gl as c,ka as l,kr as u,or as d,zr as ee}from"./runtime-Bxg7k81u.js";import{gr as f,xr as p}from"./switch-CEJEmLe7.js";import{t as m}from"./compiler-runtime-qmuS0Svy.js";import{i as h,n as g,t as _}from"./tooltip-B7Z4qomY.js";import{a as v,c as te,n as ne,o as re,s as ie,t as y}from"./badge-DnBuGHGL.js";import{Y as ae}from"./ContextHandoffEndpointLabel-BSQOArMR.js";import{n as oe,t as se}from"./tokenModePresentation-CQNdC9CW.js";import{t as b}from"./download-CLQzE1di.js";import{t as ce}from"./refresh-cw-B5Cz1z3e.js";import{t as x}from"./toastHelpers-CSQRKo4F.js";import{i as le,n as ue,r as de}from"./settingsLayout-CfKq88KD.js";var fe=m(),S=e(t(),1),C=s();function w(e){return`${e.pluginId}:${e.targetKind}:${e.providerInstanceId??`global`}`}function pe(e){switch(e.state){case`installed`:return`Installed`;case`not-installed`:return`Not installed`;case`unsupported`:return`Unsupported`;case`error`:return`Error`}}function T(e){switch(e.state){case`installed`:return`success`;case`not-installed`:return`outline`;case`unsupported`:return`warning`;case`error`:return`error`}}function E(e){switch(e.state){case`installed`:return(0,C.jsx)(i,{className:`size-3.5 text-success-foreground`});case`not-installed`:return(0,C.jsx)(p,{className:`size-3.5 text-muted-foreground`});case`unsupported`:case`error`:return(0,C.jsx)(l,{className:`size-3.5 text-warning-foreground`})}}function me(e){return e.targetKind===`global`?`System`:e.providerDisplayName??String(e.providerInstanceId??`Provider`)}function he(e){return e.impact===`tool-output`?`Tool output`:`Assistant output`}function ge(e){return e.scope===`global`?`Global`:`Provider`}function D(e){switch(e){case`rtk`:return 0;case`caveman`:return 1;case`token-optimizer`:return 2;case`token-savior`:return 3;case`lean-ctx`:return 4}}function O(e){return`${e.targetKind===`global`?`0`:`1`}:${me(e).toLowerCase()}`}function _e(e){let t=(0,fe.c)(36),{status:n,isInstalling:r,onInstall:i}=e,a=n.canInstall&&n.state!==`installed`,o;t[0]===n?o=t[1]:(o=E(n),t[0]=n,t[1]=o);let s;t[2]===n?s=t[3]:(s=me(n),t[2]=n,t[3]=s);let c;t[4]===s?c=t[5]:(c=(0,C.jsx)(`span`,{className:`truncate text-[13px] font-medium text-foreground`,children:s}),t[4]=s,t[5]=c);let l;t[6]===n?l=t[7]:(l=T(n),t[6]=n,t[7]=l);let u;t[8]===n?u=t[9]:(u=pe(n),t[8]=n,t[9]=u);let d;t[10]!==l||t[11]!==u?(d=(0,C.jsx)(y,{variant:l,size:`sm`,children:u}),t[10]=l,t[11]=u,t[12]=d):d=t[12];let f;t[13]===n.version?f=t[14]:(f=n.version?(0,C.jsx)(`span`,{className:`font-mono text-[11px] text-muted-foreground/70`,children:n.version}):null,t[13]=n.version,t[14]=f);let p;t[15]!==o||t[16]!==c||t[17]!==d||t[18]!==f?(p=(0,C.jsxs)(`div`,{className:`flex min-h-5 flex-wrap items-center gap-2`,children:[o,c,d,f]}),t[15]=o,t[16]=c,t[17]=d,t[18]=f,t[19]=p):p=t[19];let m;t[20]===n.detail?m=t[21]:(m=n.detail?(0,C.jsx)(`p`,{className:`max-w-2xl text-xs leading-relaxed text-muted-foreground/80`,children:n.detail}):null,t[20]=n.detail,t[21]=m);let h;t[22]===n.manualSteps?h=t[23]:(h=n.manualSteps.length>0?(0,C.jsx)(`div`,{className:`space-y-1 pt-1`,children:n.manualSteps.map(k)}):null,t[22]=n.manualSteps,t[23]=h);let g;t[24]!==h||t[25]!==p||t[26]!==m?(g=(0,C.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[p,m,h]}),t[24]=h,t[25]=p,t[26]=m,t[27]=g):g=t[27];let _;t[28]!==a||t[29]!==r||t[30]!==i||t[31]!==n?(_=a?(0,C.jsxs)(ee,{size:`xs`,variant:`outline`,disabled:r,className:`self-start sm:self-auto`,onClick:()=>i(n),children:[r?(0,C.jsx)(ae,{className:`size-3.5 animate-spin`}):(0,C.jsx)(b,{className:`size-3.5`}),`Install`]}):null,t[28]=a,t[29]=r,t[30]=i,t[31]=n,t[32]=_):_=t[32];let v;return t[33]!==g||t[34]!==_?(v=(0,C.jsxs)(`div`,{className:`flex flex-col gap-3 border-t border-border/50 px-4 py-3 first:border-t-0 sm:flex-row sm:items-center sm:justify-between sm:px-5`,children:[g,_]}),t[33]=g,t[34]=_,t[35]=v):v=t[35],v}function k(e){return(0,C.jsx)(`p`,{className:`font-mono text-[11px] leading-relaxed text-muted-foreground`,children:e},e)}function A(){let e=(0,fe.c)(56),t=a(),{updateSettings:i}=u(),s=c(),l=t.defaultAgentTokenMode??`balanced`,p=oe[l],m=p.icon,v;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],e[0]=v):v=e[0];let[b,pe]=(0,S.useState)(v),T;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(T=[],e[1]=T):T=e[1];let[E,D]=(0,S.useState)(T),[O,k]=(0,S.useState)(!1),[A,Ce]=(0,S.useState)(null),j=(0,S.useRef)(!1),M;e[2]===s?M=e[3]:(M=()=>{if(j.current)return;j.current=!0,k(!0);let e=s?n(s.environmentId)?.server:d().server;if(!e){k(!1),j.current=!1;return}Promise.all([e.listOpinionatedPlugins(),e.checkOpinionatedPlugins()]).then(e=>{let[t,n]=e;pe(t.plugins.toSorted(Ee)),D(n.statuses)}).catch(Te).finally(()=>{j.current=!1,k(!1)})},e[2]=s,e[3]=M);let N=M,P,F;e[4]===N?(P=e[5],F=e[6]):(P=()=>{N()},F=[N],e[4]=N,e[5]=P,e[6]=F),(0,S.useEffect)(P,F);let I;if(e[7]!==E){let t=new Map;for(let e of E){let n=t.get(e.pluginId)??[];n.push(e),t.set(e.pluginId,n)}I=new Map;for(let[e,n]of t)I.set(e,n.toSorted(we));e[7]=E,e[8]=I}else I=e[8];let L=I,De=Se,R;e[9]!==N||e[10]!==s?(R=e=>{let t=d(),i=s?n(s.environmentId)?.server:t.server;if(!i){r.add(x({type:`error`,title:`Plugin install unavailable`,description:`Node ${s?.nodeLabel??`server`} is not connected.`}));return}let a=me(e);t.dialogs.confirm(`Install ${e.pluginId===`rtk`?`RTK`:`Caveman`} for ${a}?\n\nThis may run networked CLI installation commands on this machine.`).then(t=>{if(!t)return;let n=w(e);return Ce(n),i.installOpinionatedPlugin({pluginId:e.pluginId,...e.providerInstanceId?{providerInstanceId:e.providerInstanceId}:{}}).then(t=>{D(e=>[...e.filter(e=>w(e)!==n),t.status]),r.add({type:`success`,title:`${e.pluginId===`rtk`?`RTK`:`Caveman`} installed`,description:t.commands.length>0?t.commands[t.commands.length-1]:a}),N()}).catch(xe).finally(()=>Ce(null))}).catch(be)},e[9]=N,e[10]=s,e[11]=R):R=e[11];let z=R,B;e[12]===i?B=e[13]:(B=e=>i({defaultAgentTokenMode:e}),e[12]=i,e[13]=B);let V;e[14]===m?V=e[15]:(V=(0,C.jsx)(m,{className:`size-4 shrink-0 text-muted-foreground`}),e[14]=m,e[15]=V);let H;e[16]===p.triggerLabel?H=e[17]:(H=(0,C.jsx)(te,{children:p.triggerLabel}),e[16]=p.triggerLabel,e[17]=H);let U;e[18]!==V||e[19]!==H?(U=(0,C.jsx)(ie,{className:`w-full sm:w-52`,"aria-label":`Default token mode`,children:(0,C.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[V,H]})}),e[18]=V,e[19]=H,e[20]=U):U=e[20];let W;e[21]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,C.jsx)(re,{align:`end`,alignItemWithTrigger:!1,className:`w-60`,children:se.map(ye)}),e[21]=W):W=e[21];let G;e[22]!==l||e[23]!==B||e[24]!==U?(G=(0,C.jsx)(le,{title:`Token mode`,children:(0,C.jsx)(de,{title:`Default token mode`,description:`Applied to new threads and draft sessions. Existing threads keep their own mode.`,control:(0,C.jsxs)(ne,{value:l,onValueChange:B,children:[U,W]})})}),e[22]=l,e[23]=B,e[24]=U,e[25]=G):G=e[25];let K;e[26]===N?K=e[27]:(K=()=>N(),e[26]=N,e[27]=K);let q;e[28]===O?q=e[29]:(q=O?(0,C.jsx)(ae,{className:`size-3 animate-spin`}):(0,C.jsx)(ce,{className:`size-3`}),e[28]=O,e[29]=q);let J;e[30]!==O||e[31]!==K||e[32]!==q?(J=(0,C.jsx)(h,{render:(0,C.jsx)(ee,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:O,onClick:K,"aria-label":`Refresh plugin status`,children:q})}),e[30]=O,e[31]=K,e[32]=q,e[33]=J):J=e[33];let Y;e[34]===Symbol.for(`react.memo_cache_sentinel`)?(Y=(0,C.jsx)(g,{side:`top`,children:`Refresh plugin status`}),e[34]=Y):Y=e[34];let X;e[35]===J?X=e[36]:(X=(0,C.jsxs)(_,{children:[J,Y]}),e[35]=J,e[36]=X);let Z;e[37]!==O||e[38]!==b.length?(Z=b.length===0&&O?(0,C.jsxs)(`div`,{className:`flex items-center gap-2 px-5 py-4 text-xs text-muted-foreground`,children:[(0,C.jsx)(ae,{className:`size-3.5 animate-spin`}),`Loading plugin status`]}):null,e[37]=O,e[38]=b.length,e[39]=Z):Z=e[39];let Q;if(e[40]!==z||e[41]!==A||e[42]!==b||e[43]!==L){let t;e[45]!==z||e[46]!==A||e[47]!==L?(t=e=>{let t=L.get(e.id)??[],n=t.filter(ve).length;return(0,C.jsx)(de,{title:(0,C.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,C.jsx)(`span`,{className:`truncate`,children:e.name}),(0,C.jsx)(y,{variant:n>0?`success`:`outline`,size:`sm`,children:n>0?`${n} installed`:`Available`})]}),description:e.summary,status:(0,C.jsxs)(`span`,{className:`flex flex-wrap gap-1.5`,children:[(0,C.jsx)(y,{variant:`info`,size:`sm`,children:he(e)}),(0,C.jsx)(y,{variant:`outline`,size:`sm`,children:ge(e)})]}),control:(0,C.jsxs)(ee,{size:`xs`,variant:`ghost`,onClick:()=>De(e),children:[(0,C.jsx)(f,{className:`size-3.5`}),`Docs`]}),children:(0,C.jsx)(`div`,{className:o(`mt-4 border-t border-border/60`,t.length===0?`px-5 py-4`:``),children:t.length===0?(0,C.jsx)(`p`,{className:`text-xs text-muted-foreground/80`,children:`No compatible provider instances detected.`}):t.map(e=>(0,C.jsx)(_e,{status:e,isInstalling:A===w(e),onInstall:z},w(e)))})},e.id)},e[45]=z,e[46]=A,e[47]=L,e[48]=t):t=e[48],Q=b.map(t),e[40]=z,e[41]=A,e[42]=b,e[43]=L,e[44]=Q}else Q=e[44];let $;e[49]!==X||e[50]!==Z||e[51]!==Q?($=(0,C.jsxs)(le,{title:`Opinionated plugins`,headerAction:X,children:[Z,Q]}),e[49]=X,e[50]=Z,e[51]=Q,e[52]=$):$=e[52];let Oe;return e[53]!==G||e[54]!==$?(Oe=(0,C.jsxs)(ue,{children:[G,$]}),e[53]=G,e[54]=$,e[55]=Oe):Oe=e[55],Oe}function ve(e){return e.state===`installed`}function ye(e){let t=oe[e],n=t.icon;return(0,C.jsx)(v,{hideIndicator:!0,value:e,children:(0,C.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,C.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,C.jsx)(n,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,C.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:t.description})]})},e)}function be(e){r.add(x({type:`error`,title:`Install confirmation failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function xe(e){r.add(x({type:`error`,title:`Plugin install failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function Se(e){let t=e.docsUrl??e.homepageUrl;d().shell.openExternal(t).catch(Ce)}function Ce(e){r.add(x({type:`error`,title:`Failed to open plugin docs`,description:e instanceof Error?e.message:`An error occurred.`}))}function we(e,t){return O(e).localeCompare(O(t))}function Te(e){r.add(x({type:`error`,title:`Failed to load plugins`,description:e instanceof Error?e.message:`An error occurred.`}))}function Ee(e,t){return D(e.id)-D(t.id)}export{A as OpinionatedPluginsSettingsPanel};
@@ -1 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import{Bt as n,Ht as r,Rt as i,Vt as a,a as o,zt as s}from"./primary-CjhRI8fe.js";import{C as c,Ct as l,Dn as u,K as d,Na as f,Nn as p,Or as m,Sn as h,V as g,Vr as _,Zr as v,_l as y,ar as ee,bn as b,ir as te,ja as ne,kr as x,wn as re}from"./runtime-Bxg7k81u.js";import{$n as ie,Bt as S,On as C,Vt as ae,Zn as w,dr as oe,f as se,ur as T,zt as E}from"./switch-CEJEmLe7.js";import{t as D}from"./compiler-runtime-qmuS0Svy.js";import{n as ce}from"./HostedConnectionControls-r9cyZPyF.js";import{t as le}from"./chevron-right-CITtTwME.js";import{C as ue,S as O,a as de,b as k,c as A,d as fe,f as j,i as pe,l as M,n as me,o as he,r as ge,s as N,t as _e,u as P,x as ve,z as F}from"./sidebarProjectFolders-BH8XBqNe.js";import{o as ye}from"./sidebar-BdvL1Pbj.js";import{a as be,i as xe,n as I,o as L,s as R,t as Se}from"./MobileSheet-BZo-RAfm.js";import{t as z}from"./GlassSurface-CEVIdyfP.js";import{t as B}from"./useLongPress-DG1W7YqV.js";import{i as Ce,o as we,r as Te,t as Ee}from"./empty-YXFtCUDN.js";import{n as V,r as H,t as De}from"./usePhoneThreadActions-CwwHikjB.js";import{Bt as Oe,Ft as ke,Mt as Ae,Nt as U,ht as je,it as Me,vt as Ne}from"./main-CzDOnLFw.js";var W={name:`ellipsis-vertical`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]],aliases:[`more-vertical`]};W.node;var Pe=f(W),G=e(t(),1),Fe=D(),K=y();function Ie(e){let t=(0,Fe.c)(14),{label:n,actions:r,children:i,className:a}=e,o;t[0]===a?o=t[1]:(o=_(`pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center px-3 pb-[var(--app-dock-inset)] pl-safe pr-safe`,a),t[0]=a,t[1]=o);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=_(z(`dock`),`pointer-events-auto flex min-w-0 max-w-full flex-col gap-2 rounded-[22px] border border-border/60 p-[var(--app-dock-padding)] text-foreground shadow-lg/10`),t[2]=s):s=t[2];let c;t[3]===r?c=t[4]:(c=r.map(q),t[3]=r,t[4]=c);let l;t[5]!==n||t[6]!==c?(l=(0,K.jsx)(`div`,{role:`group`,"aria-label":n,className:`flex min-w-0 items-center gap-1 overflow-x-auto overscroll-x-contain [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,"data-slot":`mobile-dock-actions`,children:c}),t[5]=n,t[6]=c,t[7]=l):l=t[7];let u;t[8]!==i||t[9]!==l?(u=(0,K.jsxs)(`div`,{className:s,"data-slot":`mobile-dock`,children:[i,l]}),t[8]=i,t[9]=l,t[10]=u):u=t[10];let d;return t[11]!==o||t[12]!==u?(d=(0,K.jsx)(`div`,{className:o,"data-slot":`mobile-dock-layer`,children:u}),t[11]=o,t[12]=u,t[13]=d):d=t[13],d}function q(e){return(0,K.jsxs)(`button`,{type:`button`,"aria-label":e.label,"aria-pressed":e.pressed,disabled:e.disabled??!1,className:_(`flex min-h-[var(--app-dock-control-size)] min-w-[var(--app-dock-control-size)] shrink-0 items-center justify-center gap-1 rounded-full px-2 text-[11px] font-medium`,`transition-colors duration-[var(--app-motion-duration-chip)] ease-[var(--app-motion-ease)] motion-reduce:transition-none`,`hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,`disabled:pointer-events-none disabled:text-muted-foreground/60`,e.pressed===!0&&`bg-accent`),"data-slot":`mobile-dock-action`,onClick:e.onSelect,children:[e.icon,(0,K.jsx)(`span`,{className:`truncate`,children:e.shortLabel??e.label})]},e.id)}var J=new Map;function Le(){let e=(0,Fe.c)(74),t=p(ke(b)),n=p(ke(h)),r=g($e),i=g(Qe),u=g(Ze),f=g(Xe),_=g(Ye),v=m(Je),y=m(qe),x=m(Ke),re=o(),S=te(Ge),C=ee(We),ae=d(Ue),se=l(He),{handleNewThread:T}=Me(),[E,D]=(0,G.useState)(!1),ue;e[0]!==r||e[1]!==t?(ue=je({items:t,preferredIds:r,getId:c}),e[0]=r,e[1]=t,e[2]=ue):ue=e[2];let O=ue,de;e[3]!==O||e[4]!==x?(de=me({projects:O,settings:x}),e[3]=O,e[4]=x,e[5]=de):de=e[5];let k=de,A;e[6]!==S||e[7]!==C?(A=e=>{let t=C[e],n=S[e];return t?.descriptor?.label??n?.label??null},e[6]=S,e[7]=C,e[8]=A):A=e[8];let fe;e[9]!==O||e[10]!==re||e[11]!==x||e[12]!==A?(fe=ge({projects:O,settings:x,primaryEnvironmentId:re,resolveEnvironmentLabel:A}),e[9]=O,e[10]=re,e[11]=x,e[12]=A,e[13]=fe):fe=e[13];let j=fe,pe;e[14]===j?pe=e[15]:(pe=new Map(j.map(Ve)),e[14]=j,e[15]=pe);let M=pe,he;if(e[16]!==k||e[17]!==M||e[18]!==v||e[19]!==j||e[20]!==n){let t=j.map(Be),r;e[22]===k?r=e[23]:(r=e=>{let t=a(s(e.environmentId,e.projectId));return Object.assign({},e,{projectId:k.get(t)??t})},e[22]=k,e[23]=r);let i=n.filter(ze).map(r),o;e[24]===M?o=e[25]:(o=e=>{let t=M.get(e.id);return t?[t]:[]},e[24]=M,e[25]=o),he=Ae(t,i,v).flatMap(o),e[16]=k,e[17]=M,e[18]=v,e[19]=j,e[20]=n,e[21]=he}else he=e[21];let N=he,P;e[26]!==u||e[27]!==i||e[28]!==f||e[29]!==v||e[30]!==N?(P=_e({projects:N,projectFoldersById:i,projectFolderOrder:u,projectTreeOrder:f,projectSortOrder:v}),e[26]=u,e[27]=i,e[28]=f,e[29]=v,e[30]=N,e[31]=P):P=e[31];let ve=P,F;e[32]!==y||e[33]!==T?(F=e=>{let t=e.memberProjects[0];t&&(D(!1),T(s(t.environmentId,t.id),{envMode:Ne({defaultEnvMode:y})}))},e[32]=y,e[33]=T,e[34]=F):F=e[34];let z=F,B;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,K.jsxs)(`header`,{className:`flex items-center gap-1.5 border-b border-border pr-[calc(env(safe-area-inset-right)+0.5rem)] pb-2 pl-[calc(env(safe-area-inset-left)+0.75rem)] pt-[calc(env(safe-area-inset-top)+0.5rem)]`,children:[(0,K.jsx)(`h1`,{className:`min-w-0 flex-1 truncate text-base font-semibold`,children:`Threads`}),(0,K.jsx)(ce,{})]}),e[35]=B):B=e[35];let V;e[36]!==ve||e[37]!==_?(V=ve.length===0?(0,K.jsx)(Ee,{className:`flex-1`,children:(0,K.jsxs)(Ce,{children:[(0,K.jsx)(we,{className:`text-base`,children:`No projects yet`}),(0,K.jsx)(Te,{className:`mt-1 text-sm`,children:`Projects opened on this node appear here with their threads.`})]})}):ve.map(e=>e.kind===`project`?(0,K.jsx)(et,{project:e.project},e.itemId):(0,K.jsxs)(`section`,{"aria-label":e.folder.name,children:[(0,K.jsxs)(`button`,{type:`button`,className:`flex min-h-11 w-full items-center gap-2 px-3 text-left text-sm font-medium text-muted-foreground hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,"aria-expanded":e.folder.expanded,onClick:()=>_(e.folder.id,!e.folder.expanded),children:[e.folder.expanded?(0,K.jsx)(ne,{"aria-hidden":!0,className:`size-4 shrink-0`}):(0,K.jsx)(le,{"aria-hidden":!0,className:`size-4 shrink-0`}),(0,K.jsx)(oe,{"aria-hidden":!0,className:`size-4 shrink-0`}),(0,K.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e.folder.name})]}),e.folder.expanded?e.projects.map(Re):null]},e.itemId)),e[36]=ve,e[37]=_,e[38]=V):V=e[38];let H;e[39]===V?H=e[40]:(H=(0,K.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden`,children:[B,(0,K.jsx)(`div`,{"data-testid":`phone-home-list`,className:`app-dock-scroll-clearance flex min-h-0 flex-1 flex-col overflow-y-auto`,children:V})]}),e[39]=V,e[40]=H);let De;e[41]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,K.jsx)(ie,{"aria-hidden":!0,className:`size-4 shrink-0`}),e[41]=De):De=e[41];let U;e[42]===se?U=e[43]:(U={id:`search`,label:`Search threads`,shortLabel:`Search`,icon:De,onSelect:()=>se(!0)},e[42]=se,e[43]=U);let W;e[44]===Symbol.for(`react.memo_cache_sentinel`)?(W=(0,K.jsx)(Oe,{"aria-hidden":!0,className:`size-4 shrink-0`}),e[44]=W):W=e[44];let Pe=N.length===0,q;e[45]!==N[0]||e[46]!==N.length||e[47]!==z?(q=()=>{if(N.length===1&&N[0]){z(N[0]);return}D(!0)},e[45]=N[0],e[46]=N.length,e[47]=z,e[48]=q):q=e[48];let J;e[49]!==Pe||e[50]!==q?(J={id:`new-thread`,label:`New thread`,icon:W,disabled:Pe,onSelect:q},e[49]=Pe,e[50]=q,e[51]=J):J=e[51];let Le;e[52]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,K.jsx)(w,{"aria-hidden":!0,className:`size-4 shrink-0`}),e[52]=Le):Le=e[52];let Y;e[53]===ae?Y=e[54]:(Y={id:`settings`,label:`Open settings`,shortLabel:`Settings`,icon:Le,onSelect:()=>ae()},e[53]=ae,e[54]=Y);let X;e[55]!==U||e[56]!==J||e[57]!==Y?(X=(0,K.jsx)(Ie,{label:`Home actions`,actions:[U,J,Y]}),e[55]=U,e[56]=J,e[57]=Y,e[58]=X):X=e[58];let tt;e[59]===Symbol.for(`react.memo_cache_sentinel`)?(tt=(0,K.jsxs)(xe,{children:[(0,K.jsx)(L,{children:`New thread`}),(0,K.jsx)(I,{children:`Choose a project for the new thread.`})]}),e[59]=tt):tt=e[59];let Z;if(e[60]!==N||e[61]!==z){let t;e[63]===z?t=e[64]:(t=e=>(0,K.jsx)(R,{label:e.displayName,onClick:()=>z(e)},e.projectKey),e[63]=z,e[64]=t),Z=N.map(t),e[60]=N,e[61]=z,e[62]=Z}else Z=e[62];let Q;e[65]===Z?Q=e[66]:(Q=(0,K.jsx)(be,{children:(0,K.jsx)(`div`,{role:`group`,"aria-label":`Projects`,className:`space-y-0.5`,children:Z})}),e[65]=Z,e[66]=Q);let $;e[67]!==E||e[68]!==Q?($=(0,K.jsxs)(Se,{open:E,onOpenChange:D,label:`New thread`,children:[tt,Q]}),e[67]=E,e[68]=Q,e[69]=$):$=e[69];let nt;return e[70]!==H||e[71]!==X||e[72]!==$?(nt=(0,K.jsxs)(ye,{className:`h-dvh min-h-0 overflow-hidden overscroll-y-none bg-background text-foreground`,children:[H,X,$]}),e[70]=H,e[71]=X,e[72]=$,e[73]=nt):nt=e[73],nt}function Re(e){return(0,K.jsx)(et,{project:e,nested:!0},e.projectKey)}function ze(e){return e.archivedAt===null}function Be(e){return Object.assign({},e,{id:e.projectKey})}function Ve(e){return[e.projectKey,e]}function He(e){return e.setOpen}function Ue(e){return e.openSettings}function We(e){return e.byId}function Ge(e){return e.byId}function Ke(e){return{sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides}}function qe(e){return e.defaultThreadEnvMode}function Je(e){return e.sidebarProjectSortOrder}function Ye(e){return e.setProjectFolderExpanded}function Xe(e){return e.projectTreeOrder}function Ze(e){return e.projectFolderOrder}function Qe(e){return e.projectFoldersById}function $e(e){return e.projectOrder}function et({project:e,nested:t=!1}){let o=p(ke((0,G.useMemo)(()=>t=>re(t,e.memberProjectRefs),[e.memberProjectRefs]))),c=v((0,G.useMemo)(()=>O(e),[e])),l=m(e=>e.sidebarThreadSortOrder),d=g(e=>e.pinnedThreadKeys),f=g(t=>t.projectExpandedById[e.projectKey]??!0),h=g(e=>e.toggleProject),y=(0,G.useMemo)(()=>new Set(Object.entries(d).flatMap(([e,t])=>t?[e]:[])),[d]),ee=(0,G.useMemo)(()=>ue(o,c).filter(e=>e.archivedAt===null),[c,o]),b=(0,G.useMemo)(()=>U({threads:ee,sortOrder:l,pinnedThreadKeys:y,getThreadKey:e=>r(n(e.environmentId,e.id))}),[y,l,ee]),te=(0,G.useMemo)(()=>new Map(b.map(e=>[r(n(e.environmentId,e.id)),e])),[b]),ie=(0,G.useRef)(te);ie.current=te;let S=(0,G.useMemo)(()=>new Map(e.memberProjects.map(e=>[a(s(e.environmentId,e.id)),e])),[e.memberProjects]),C=De({sidebarThreadByKeyRef:ie,memberProjectByScopedKey:S,projectCwd:e.cwd??null}),[w,oe]=(0,G.useState)(null),T=w?te.get(w)??null:null,E=C.renamingThreadKey?te.get(C.renamingThreadKey)??null:null,D=p(ke((0,G.useMemo)(()=>t=>u(t,e.memberProjectRefs),[e.memberProjectRefs]))),ce=(0,G.useMemo)(()=>ve({project:e,threads:b,worktrees:D}),[e,b,D]),me=k({projects:[ce.project],threads:ce.threads,worktrees:ce.worktrees}).projects[0]??null,ge=me&&me.isGitRepo&&me.worktrees.length>1?me.worktrees:null,{updateSettings:_e}=x(),F=m(e=>({sidebarProjectGroupingMode:e.sidebarProjectGroupingMode,sidebarProjectGroupingOverrides:e.sidebarProjectGroupingOverrides})),{copyPathToClipboard:ye}=se(),[be,xe]=(0,G.useState)(!1),I=pe(),L=de(),R=he({projectGroupingSettings:F,updateSettings:_e}),Se=(0,G.useMemo)(()=>{let t=new Map(e.memberProjects.map(e=>[e.physicalProjectKey,0]));for(let e of o){let n=S.get(a(s(e.environmentId,e.projectId)));n&&t.set(n.physicalProjectKey,(t.get(n.physicalProjectKey)??0)+1)}return t},[S,e.memberProjects,o]),{openProjectRemoteLink:z,openProjectJiraLink:Ce,handleRemoveProject:we}=j({memberThreadCountByPhysicalKey:Se,jiraProjectOpenUrlByProjectKey:J}),Te=(0,G.useRef)(!1),Ee=(0,G.useCallback)(()=>{xe(!0)},[]),{openProjectMenu:Oe}=fe({project:e,jiraProjectOpenUrlByProjectKey:J,suppressProjectClickForContextMenuRef:Te,onOpenOverview:Ee,openProjectSettingsDialog:I.openProjectSettingsDialog,openProjectRemoteLink:z,openProjectJiraLink:Ce,openProjectRenameDialog:L.openProjectRenameDialog,openProjectGroupingDialog:R.openProjectGroupingDialog,copyPathToClipboard:ye,handleRemoveProject:we}),Ae=B(e=>Oe(e)),je=e=>{let t=r(n(e.environmentId,e.id));return(0,K.jsx)(tt,{thread:e,pinned:y.has(t),onOpen:()=>{let t=n(e.environmentId,e.id);if(e.draftId){C.navigateToDraft(e.draftId,t);return}C.navigateToThread(t)},onMenu:()=>oe(t)},t)};return(0,K.jsxs)(`section`,{"aria-label":e.displayName,className:_(t&&`pl-3`),children:[(0,K.jsxs)(`div`,{className:`flex items-stretch`,children:[(0,K.jsxs)(`button`,{type:`button`,className:`flex min-h-11 min-w-0 flex-1 items-center gap-2 px-3 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring hover:bg-accent/40`,"aria-expanded":f,onClick:()=>h(e.projectKey),...Ae,children:[f?(0,K.jsx)(ne,{"aria-hidden":!0,className:`size-4 shrink-0 text-muted-foreground`}):(0,K.jsx)(le,{"aria-hidden":!0,className:`size-4 shrink-0 text-muted-foreground`}),(0,K.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium`,children:e.displayName}),(0,K.jsx)(`span`,{className:`shrink-0 text-xs text-muted-foreground`,children:b.length})]}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Project actions for ${e.displayName}`,className:`flex w-11 shrink-0 items-center justify-center text-muted-foreground hover:bg-accent/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,onClick:e=>Oe({x:e.clientX,y:e.clientY}),children:(0,K.jsx)(Pe,{"aria-hidden":!0,className:`size-4`})})]}),f?ge?(0,K.jsx)(`div`,{className:`pl-3`,children:ge.map(e=>(0,K.jsx)(Y,{worktreeNode:e,renderThreadRow:je},e.worktree.worktreeId))}):(0,K.jsx)(`div`,{role:`list`,"aria-label":`Threads in ${e.displayName}`,children:b.length===0?(0,K.jsx)(`p`,{className:`px-3 pb-3 text-sm text-muted-foreground`,children:`No threads yet.`}):b.map(e=>je(e))}):null,(0,K.jsx)(V,{open:T!==null,onOpenChange:e=>{e||oe(null)},title:T?.title??`Thread`,items:w?C.listThreadMenuActions(w):[],leadingSections:T?(0,K.jsx)(ae,{thread:T}):void 0,onAction:e=>{let t=w?i(w):null;oe(null),t&&C.performThreadMenuAction(t,e)}}),(0,K.jsx)(H,{renamingThreadKey:C.renamingThreadKey,originalTitle:E?.title??``,renamingTitle:C.renamingTitle,setRenamingTitle:C.setRenamingTitle,commitRename:C.commitRename,cancelRename:C.cancelRename}),(0,K.jsx)(P,{open:be,projectName:e.displayName,memberProjects:e.memberProjects,initialTab:`overview`,onOpenChange:xe}),(0,K.jsx)(M,{open:I.projectSettingsOpen,target:I.projectSettingsTarget,title:I.projectSettingsTitle,customAvatarContentHash:I.projectSettingsCustomAvatarContentHash,projectAvatarUploadUnavailableReason:I.projectAvatarUploadUnavailableReason,preferredRemoteName:I.projectSettingsPreferredRemoteName,workspaceRoot:I.projectSettingsWorkspaceRoot,customSystemPrompt:I.projectSettingsCustomSystemPrompt,defaultModelSelection:I.projectSettingsDefaultModelSelection,saving:I.projectSettingsSaving,onClose:I.closeProjectSettingsDialog,onSave:()=>void I.submitProjectSettings(),onTitleChange:I.setProjectSettingsTitle,onWorkspaceRootChange:I.setProjectSettingsWorkspaceRoot,onCustomSystemPromptChange:I.setProjectSettingsCustomSystemPrompt,onDefaultModelSelectionChange:I.setProjectSettingsDefaultModelSelection,onPreferredRemoteChange:I.setProjectSettingsPreferredRemoteName,onPickWorkspaceRoot:()=>void I.pickProjectSettingsWorkspaceRoot(),onOpenRemote:I.openProjectRemoteByName,onUploadAvatar:I.uploadProjectAvatar,onRemoveAvatar:I.removeProjectAvatar}),(0,K.jsx)(N,{target:L.projectRenameTarget,title:L.projectRenameTitle,onTitleChange:L.setProjectRenameTitle,onClose:L.closeProjectRenameDialog,onSubmit:()=>void L.submitProjectRename()}),(0,K.jsx)(A,{target:R.projectGroupingTarget,selection:R.projectGroupingSelection,globalGroupingMode:F.sidebarProjectGroupingMode,onSelectionChange:R.setProjectGroupingSelection,onClose:R.closeProjectGroupingDialog,onSave:R.saveProjectGroupingPreference})]})}function Y(e){let t=(0,Fe.c)(23),{worktreeNode:n,renderThreadRow:r}=e,[i,a]=(0,G.useState)(!0),o=n.worktree.title??n.worktree.branch,s=!i,c,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(c=()=>a(X),l=e=>{if(e.key===`ArrowLeft`){e.preventDefault(),a(!0);return}e.key===`ArrowRight`&&(e.preventDefault(),a(!1))},t[0]=c,t[1]=l):(c=t[0],l=t[1]);let u;t[2]===i?u=t[3]:(u=i?(0,K.jsx)(le,{"aria-hidden":!0,className:`size-4 shrink-0`}):(0,K.jsx)(ne,{"aria-hidden":!0,className:`size-4 shrink-0`}),t[2]=i,t[3]=u);let d;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,K.jsx)(T,{"aria-hidden":!0,className:`size-3.5 shrink-0`}),t[4]=d):d=t[4];let f;t[5]===o?f=t[6]:(f=(0,K.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:o}),t[5]=o,t[6]=f);let p;t[7]===n.sessions.length?p=t[8]:(p=(0,K.jsx)(`span`,{className:`shrink-0 text-xs`,children:n.sessions.length}),t[7]=n.sessions.length,t[8]=p);let m;t[9]!==s||t[10]!==u||t[11]!==f||t[12]!==p?(m=(0,K.jsxs)(`button`,{type:`button`,"aria-expanded":s,className:`flex min-h-11 w-full items-center gap-2 px-3 text-left text-sm text-muted-foreground hover:bg-accent/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,onClick:c,onKeyDown:l,children:[u,d,f,p]}),t[9]=s,t[10]=u,t[11]=f,t[12]=p,t[13]=m):m=t[13];let h;t[14]!==i||t[15]!==r||t[16]!==o||t[17]!==n.sessions?(h=i?null:(0,K.jsx)(`div`,{role:`list`,"aria-label":`Sessions in ${o}`,children:n.sessions.length===0?(0,K.jsx)(`p`,{className:`px-3 pb-3 text-sm text-muted-foreground`,children:`No sessions yet.`}):n.sessions.map(e=>r(e))}),t[14]=i,t[15]=r,t[16]=o,t[17]=n.sessions,t[18]=h):h=t[18];let g;return t[19]!==m||t[20]!==h||t[21]!==o?(g=(0,K.jsxs)(`section`,{"aria-label":o,children:[m,h]}),t[19]=m,t[20]=h,t[21]=o,t[22]=g):g=t[22],g}function X(e){return!e}function tt(e){let t=(0,Fe.c)(28),{thread:n,pinned:r,onOpen:i,onMenu:a}=e,o=n.latestTurn?.completedAt??n.latestUserMessageAt??n.createdAt,s;t[0]===a?s=t[1]:(s=()=>a(),t[0]=a,t[1]=s);let c=B(s),l;t[2]===r?l=t[3]:(l=r?(0,K.jsx)(F,{"aria-label":`Pinned`,role:`img`,className:`size-3 shrink-0 text-muted-foreground`}):null,t[2]=r,t[3]=l);let u;t[4]===n.title?u=t[5]:(u=(0,K.jsx)(`span`,{className:`min-w-0 truncate`,children:n.title}),t[4]=n.title,t[5]=u);let d;t[6]!==l||t[7]!==u?(d=(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-sm`,children:[l,u]}),t[6]=l,t[7]=u,t[8]=d):d=t[8];let f;t[9]===n?f=t[10]:(f=(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(E,{thread:n,alwaysShowStatusLabel:!0}),(0,K.jsx)(S,{thread:n})]}),t[9]=n,t[10]=f);let p;t[11]!==d||t[12]!==f?(p=(0,K.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[d,f]}),t[11]=d,t[12]=f,t[13]=p):p=t[13];let m;t[14]===o?m=t[15]:(m=o?(0,K.jsx)(`span`,{className:`shrink-0 pr-1 text-[10px] text-muted-foreground`,children:C(o)}):null,t[14]=o,t[15]=m);let h;t[16]!==c||t[17]!==i||t[18]!==p||t[19]!==m?(h=(0,K.jsxs)(`button`,{type:`button`,className:`flex min-h-11 min-w-0 flex-1 items-center gap-2 py-1 pl-3 text-left hover:bg-accent/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,onClick:i,...c,children:[p,m]}),t[16]=c,t[17]=i,t[18]=p,t[19]=m,t[20]=h):h=t[20];let g=`Thread actions for ${n.title}`,_;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,K.jsx)(Pe,{"aria-hidden":!0,className:`size-4`}),t[21]=_):_=t[21];let v;t[22]!==a||t[23]!==g?(v=(0,K.jsx)(`button`,{type:`button`,"aria-label":g,className:`flex w-11 shrink-0 items-center justify-center text-muted-foreground hover:bg-accent/50 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring`,onClick:a,children:_}),t[22]=a,t[23]=g,t[24]=v):v=t[24];let y;return t[25]!==v||t[26]!==h?(y=(0,K.jsxs)(`div`,{role:`listitem`,className:`flex items-stretch`,children:[h,v]}),t[25]=v,t[26]=h,t[27]=y):y=t[27],y}export{Le as PhoneHome};
@@ -1 +0,0 @@
1
- import{i as e,t}from"./react-SIfiwpqq.js";import{rt as n}from"./primary-CjhRI8fe.js";import{Ea as r,S as i,Ta as a,Vl as o,at as s,ct as c,fa as l,ot as u,st as d,t as f}from"./src-Bi-5Nw9C.js";import{$i as p,$n as m,Ca as h,Da as g,Ea as _,Ji as v,Ki as y,Ma as b,Na as x,Nr as S,Ol as C,Or as w,Rr as T,Vr as E,Wi as D,Xi as O,Zi as ee,_l as k,ar as A,bl as te,gl as j,kr as ne,or as re,ul as M,zr as N}from"./runtime-Bxg7k81u.js";import{A as P,Cr as ie,Dn as F,F as I,Ft as L,I as R,It as z,M as B,Mt as V,N as ae,Nt as oe,P as se,Sr as ce,Zt as H,an as U,dt as W,hn as G,hr as le,j as ue,jt as K,kt as de,lt as fe,st as pe,t as me,ut as he}from"./switch-CEJEmLe7.js";import{t as ge}from"./compiler-runtime-qmuS0Svy.js";import{i as _e,n as ve,t as ye}from"./tooltip-B7Z4qomY.js";import{t as be}from"./badge-DnBuGHGL.js";import{a as xe}from"./SettingsPanels-Bgf4vkrJ.js";import{a as Se,i as Ce,o as we}from"./RootAppShell-CzmEWO9w.js";import{K as Te,Y as Ee,r as De}from"./ContextHandoffEndpointLabel-BSQOArMR.js";import{t as Oe}from"./download-CLQzE1di.js";import{t as ke}from"./refresh-cw-B5Cz1z3e.js";import{t as q}from"./star-BZ-RtSFD.js";import{t as Ae}from"./toastHelpers-CSQRKo4F.js";import{c as je,d as J,i as Me,l as Ne,n as Y,t as Pe,u as Fe}from"./radio-group-C8qudOQH.js";import{t as X}from"./input-C2xv8mMt.js";import{t as Ie}from"./capabilities-DskyVNd2.js";import{a as Le,i as Re,n as ze,r as Be,t as Ve}from"./settingsLayout-CfKq88KD.js";import{t as He}from"./ProviderModelPicker-DoYEUZrn.js";import{t as Ue}from"./AnimatedHeight-DPqb09B0.js";import{n as We,r as Ge,t as Z}from"./providerDriverMeta-BVHpFupf.js";import{t as Ke}from"./RedactedSensitiveText-DovqFcmM.js";import{Bt as qe}from"./main-CzDOnLFw.js";var Je={name:`circle-arrow-up`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 12-4-4-4 4`,key:`177agl`}],[`path`,{d:`M12 16V8`,key:`1sbj14`}]],aliases:[`arrow-up-circle`]};Je.node;var Ye=x(Je),Xe={name:`eye-off`,size:24,node:[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]};Xe.node;var Ze=x(Xe),Q=e(t(),1),Qe=ge(),$=k();function $e(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1 $2`).replace(/[-_]+/g,` `).replace(/^./,e=>e.toUpperCase())}function et(e){return r(e)??a(e)}function tt(e,t){let n=et(e)?.[t];return typeof n==`string`?n:void 0}function nt(e){return et(e)?.providerSettingsForm??{}}function rt(e){return a(e.settingsSchema)?.providerSettingsFormSchema??{}}function it(e){try{let t=l(e)(void 0);return typeof t==`boolean`?t:void 0}catch{return}}function at(e){let t=rt(e),n=new Map((t.order??[]).map((e,t)=>[e,t])),r=n.size;return Object.keys(e.settingsSchema.fields).map((e,t)=>({key:e,index:t})).toSorted((e,t)=>(n.get(e.key)??r+e.index)-(n.get(t.key)??r+t.index)).flatMap(({key:t})=>{let n=e.settingsSchema.fields[t],r=nt(n);if(r.hidden)return[];let i=tt(n,`title`),a=tt(n,`description`);return[{key:t,control:r.control??`text`,label:i??$e(t),...a===void 0?{}:{description:a},...r.placeholder===void 0?{}:{placeholder:r.placeholder},clearWhenEmpty:r.clearWhenEmpty??`omit`,...r.control===`switch`?{defaultBooleanValue:it(n)}:{}}]})}function ot(e,t){if(typeof e!=`object`||!e)return``;let n=e[t];return typeof n==`string`?n:``}function st(e,t,n=!1){if(typeof e!=`object`||!e)return n;let r=e[t];return typeof r==`boolean`?r:n}function ct(e,t,n){let r=typeof e==`object`&&e?{...e}:{};if(typeof n==`boolean`){let e=t.defaultBooleanValue??!1;return t.clearWhenEmpty===`omit`&&n===e?delete r[t.key]:r[t.key]=n,Object.keys(r).length>0?r:void 0}let i=n.trim();return t.clearWhenEmpty===`omit`&&i.length===0?delete r[t.key]:r[t.key]=n,Object.keys(r).length>0?r:void 0}function lt(e){let t=(0,Qe.c)(4);if(e.variant===`card`){let n;return t[0]===e.children?n=t[1]:(n=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:e.children}),t[0]=e.children,t[1]=n),n}let n;return t[2]===e.children?n=t[3]:(n=(0,$.jsx)(`div`,{className:`grid gap-1.5`,children:e.children}),t[2]=e.children,t[3]=n),n}function ut(e){let t=(0,Qe.c)(70),{field:n,value:r,idPrefix:i,variant:a,onChange:o}=e,s=`${i}-${n.key}`,c=a===`card`?`mt-1 block text-xs text-muted-foreground`:`text-[11px] text-muted-foreground`,l;t[0]===n.label?l=t[1]:(l=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:n.label}),t[0]=n.label,t[1]=l);let u=l,d;t[2]!==c||t[3]!==n.description?(d=n.description?(0,$.jsx)(`span`,{className:c,children:n.description}):null,t[2]=c,t[3]=n.description,t[4]=d):d=t[4];let f=d;if(n.control===`switch`){let e;t[5]!==f||t[6]!==u?(e=(0,$.jsxs)(`div`,{className:`min-w-0`,children:[u,f]}),t[5]=f,t[6]=u,t[7]=e):e=t[7];let i;t[8]!==n.defaultBooleanValue||t[9]!==n.key||t[10]!==r?(i=st(r,n.key,n.defaultBooleanValue),t[8]=n.defaultBooleanValue,t[9]=n.key,t[10]=r,t[11]=i):i=t[11];let s;t[12]!==n||t[13]!==o||t[14]!==r?(s=e=>o(ct(r,n,!!e)),t[12]=n,t[13]=o,t[14]=r,t[15]=s):s=t[15];let c;t[16]!==n.label||t[17]!==i||t[18]!==s?(c=(0,$.jsx)(me,{checked:i,onCheckedChange:s,"aria-label":n.label}),t[16]=n.label,t[17]=i,t[18]=s,t[19]=c):c=t[19];let l;t[20]!==e||t[21]!==c?(l=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[e,c]}),t[20]=e,t[21]=c,t[22]=l):l=t[22];let d;return t[23]!==l||t[24]!==a?(d=(0,$.jsx)(lt,{variant:a,children:l}),t[23]=l,t[24]=a,t[25]=d):d=t[25],d}if(n.control===`textarea`){let e=a===`card`&&`block`,i;t[26]===e?i=t[27]:(i=E(e),t[26]=e,t[27]=i);let c=a===`card`&&`mt-1.5`,l;t[28]===c?l=t[29]:(l=E(c),t[28]=c,t[29]=l);let d;t[30]!==n.key||t[31]!==r?(d=ot(r,n.key),t[30]=n.key,t[31]=r,t[32]=d):d=t[32];let p;t[33]!==n||t[34]!==o||t[35]!==r?(p=e=>o(ct(r,n,e.target.value)),t[33]=n,t[34]=o,t[35]=r,t[36]=p):p=t[36];let m;t[37]!==n.placeholder||t[38]!==s||t[39]!==l||t[40]!==d||t[41]!==p?(m=(0,$.jsx)(pe,{id:s,className:l,value:d,onChange:p,placeholder:n.placeholder,spellCheck:!1}),t[37]=n.placeholder,t[38]=s,t[39]=l,t[40]=d,t[41]=p,t[42]=m):m=t[42];let h;t[43]!==f||t[44]!==s||t[45]!==u||t[46]!==i||t[47]!==m?(h=(0,$.jsxs)(`label`,{htmlFor:s,className:i,children:[u,m,f]}),t[43]=f,t[44]=s,t[45]=u,t[46]=i,t[47]=m,t[48]=h):h=t[48];let g;return t[49]!==h||t[50]!==a?(g=(0,$.jsx)(lt,{variant:a,children:h}),t[49]=h,t[50]=a,t[51]=g):g=t[51],g}let p=n.control===`password`?`password`:void 0,m=a===`card`&&`block`,h;t[52]===m?h=t[53]:(h=E(m),t[52]=m,t[53]=h);let g;t[54]!==n||t[55]!==s||t[56]!==o||t[57]!==p||t[58]!==r||t[59]!==a?(g=a===`card`?(0,$.jsx)(xe,{id:s,className:`mt-1.5`,type:p,autoComplete:n.control===`password`?`off`:void 0,value:ot(r,n.key),onCommit:e=>o(ct(r,n,e)),placeholder:n.placeholder,spellCheck:!1}):(0,$.jsx)(X,{id:s,className:`bg-background`,type:p,autoComplete:n.control===`password`?`off`:void 0,value:ot(r,n.key),onChange:e=>o(ct(r,n,e.target.value)),placeholder:n.placeholder,spellCheck:!1}),t[54]=n,t[55]=s,t[56]=o,t[57]=p,t[58]=r,t[59]=a,t[60]=g):g=t[60];let _;t[61]!==f||t[62]!==s||t[63]!==u||t[64]!==h||t[65]!==g?(_=(0,$.jsxs)(`label`,{htmlFor:s,className:h,children:[u,g,f]}),t[61]=f,t[62]=s,t[63]=u,t[64]=h,t[65]=g,t[66]=_):_=t[66];let v;return t[67]!==_||t[68]!==a?(v=(0,$.jsx)(lt,{variant:a,children:_}),t[67]=_,t[68]=a,t[69]=v):v=t[69],v}function dt(e){let t=(0,Qe.c)(15),{definition:n,value:r,idPrefix:i,variant:a,onChange:o}=e,s;t[0]===n?s=t[1]:(s=at(n),t[0]=n,t[1]=s);let c=s;if(c.length===0)return null;let l;if(t[2]!==c||t[3]!==i||t[4]!==o||t[5]!==r||t[6]!==a){let e;t[8]!==i||t[9]!==o||t[10]!==r||t[11]!==a?(e=e=>(0,$.jsx)(ut,{field:e,value:r,idPrefix:i,variant:a,onChange:o},e.key),t[8]=i,t[9]=o,t[10]=r,t[11]=a,t[12]=e):e=t[12],l=c.map(e),t[2]=c,t[3]=i,t[4]=o,t[5]=r,t[6]=a,t[7]=l}else l=t[7];let u;return t[13]===l?u=t[14]:(u=(0,$.jsx)($.Fragment,{children:l}),t[13]=l,t[14]=u),u}var ft=[`#2563eb`,`#16a34a`,`#ea580c`,`#dc2626`,`#7c3aed`,`#0891b2`];function pt(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``).slice(0,48)}function mt(e,t){let n=pt(t);return n?`${e}_${n}`:``}var ht=/^[a-zA-Z][a-zA-Z0-9_-]*$/,gt=s.make(`codex`),_t=Z[0],vt={},yt=[{value:s.make(`gemini`),label:`Gemini`,icon:U},{value:s.make(`acpRegistry`),label:`ACP Registry`,icon:H},{value:s.make(`piAgent`),label:`Pi Agent`,icon:G}];function bt(e,t){return e.length===0?`Instance ID is required.`:e.length>64?`Instance ID must be 64 characters or fewer.`:ht.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 xt({open:e,onOpenChange:t,onCreated:n}){let r=w(),{updateSettings:i}=ne(),[a,o]=(0,Q.useState)(0),[c,l]=(0,Q.useState)(gt),[d,f]=(0,Q.useState)(``),[p,m]=(0,Q.useState)(``),[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(!1),[y,x]=(0,Q.useState)({}),[C,T]=(0,Q.useState)(!1),D=(0,Q.useMemo)(()=>new Set(Object.keys(r.providerInstances??{})),[r.providerInstances]);(0,Q.useEffect)(()=>{e&&(l(gt),f(``),m(``),g(``),o(0),v(!1),x({}),T(!1))},[e]),(0,Q.useEffect)(()=>{_||g(mt(c,d))},[c,d,_]);let O=We[c]??_t,k=(0,Q.useMemo)(()=>at(O),[O]),A=bt(h,D),te=C&&A!==null,j=d.trim()||`${O.label} Workspace`,re=[`Driver`,`Identity`,`Config`],M=[O.label,j,null],P=y[c]??vt,ie=(0,Q.useCallback)(e=>{x(t=>{let n={...t};return e===void 0||Object.keys(e).length===0?delete n[c]:n[c]=e,n})},[c]),F=(0,Q.useCallback)(()=>{if(T(!0),A!==null)return;let e=y[c]??{},a=Object.keys(e).length>0,o=ee(p),s={driver:c,enabled:!0,...d.trim().length>0?{displayName:d.trim()}:{},...o?{accentColor:o}:{},...a?{config:e}:{}},l=u.make(h),f={...r.providerInstances,[l]:s};try{i({providerInstances:f}),n?.(l),S.add({type:`success`,title:`Provider instance added`,description:`${O.label} instance '${h}' was added.`}),t(!1)}catch(e){S.add({type:`error`,title:`Could not add provider instance`,description:e instanceof Error?e.message:`Update failed.`})}},[c,O,y,h,A,d,p,t,n,r.providerInstances,i]);return(0,$.jsx)(de,{open:e,onOpenChange:t,children:(0,$.jsx)(L,{className:`max-w-xl overflow-hidden`,children:(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-col overflow-hidden border-foreground/10 bg-background shadow-2xl`,children:[(0,$.jsxs)(oe,{className:`border-b border-border/70 bg-background`,children:[(0,$.jsx)(z,{children:`Add provider instance`}),(0,$.jsx)(K,{children:`Configure an additional provider instance — for example, a second Codex install pointed at a different workspace.`}),(0,$.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:re.map((e,t)=>(0,$.jsxs)(`button`,{type:`button`,className:E(`grid min-w-0 grid-cols-[1rem_minmax(0,1fr)] gap-x-2 rounded-lg border px-3 py-2 text-left`,t===a?`border-primary bg-primary/10 ring-1 ring-primary/25`:t<a?`border-border bg-background`:`border-border bg-muted/40`),onClick:()=>o(t),children:[(0,$.jsx)(`span`,{className:E(`row-span-2 mt-0.5 grid size-4 place-items-center rounded-full border`,t<a?`border-primary bg-primary text-primary-foreground`:t===a?`border-primary bg-background`:`border-muted-foreground/35 bg-background`),"aria-hidden":!0,children:t<a?(0,$.jsx)(b,{className:`size-3`}):null}),(0,$.jsxs)(`span`,{className:`text-[10px] font-medium uppercase text-muted-foreground`,children:[`Step `,t+1]}),(0,$.jsxs)(`span`,{className:`truncate text-xs font-semibold text-foreground`,children:[e,t<a&&M[t]?`: ${M[t]}`:``]})]},e))})]}),(0,$.jsx)(`div`,{"data-slot":`dialog-panel`,className:`space-y-4 border-b border-border/70 bg-muted/20 px-6 py-5`,children:(0,$.jsxs)(Ue,{children:[(0,$.jsxs)(`div`,{className:E(`grid gap-2`,a!==0&&`hidden`),children:[(0,$.jsx)(`span`,{id:`add-instance-driver-label`,className:`text-xs font-medium text-foreground`,children:`Driver`}),(0,$.jsxs)(Pe,{value:c,onValueChange:e=>l(s.make(e)),"aria-labelledby":`add-instance-driver-label`,className:`grid grid-cols-2 gap-2.5`,children:[Z.map(e=>{let t=e.icon,n=e.value===c;return(0,$.jsxs)(Y,{value:e.value,className:E(`relative flex cursor-pointer items-center gap-3 rounded-lg border px-3 py-3 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,n?`border-primary bg-background shadow-sm ring-2 ring-primary/35`:`border-border bg-background hover:border-foreground/20 hover:bg-muted/50`),children:[(0,$.jsx)(t,{className:`size-5 shrink-0`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label}),e.badgeLabel?(0,$.jsx)(be,{variant:`warning`,size:`sm`,children:e.badgeLabel}):null]},e.value)}),yt.map(e=>{let t=e.icon;return(0,$.jsxs)(Y,{value:e.value,disabled:!0,className:E(`relative flex cursor-not-allowed items-center gap-3 rounded-lg border border-border bg-background px-3 py-3 text-left opacity-55 outline-none`),children:[(0,$.jsx)(t,{className:`size-5 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-sm font-medium text-foreground`,children:e.label}),(0,$.jsx)(be,{variant:`warning`,size:`sm`,children:`Coming Soon`})]},e.value)})]})]}),(0,$.jsxs)(`label`,{className:E(`grid gap-2`,a!==1&&`hidden`),children:[(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Label`}),(0,$.jsx)(X,{className:`bg-background`,placeholder:`e.g. Work`,value:d,onChange:e=>f(e.target.value)}),(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Shown in the provider list. Optional.`})]}),(0,$.jsxs)(`label`,{className:E(`grid gap-2`,a!==1&&`hidden`),children:[(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Instance ID`}),(0,$.jsx)(X,{className:`bg-background`,placeholder:`${c}_work`,value:h,onChange:e=>{v(!0),g(e.target.value)},"aria-invalid":te}),te?(0,$.jsx)(`span`,{className:`text-[11px] text-destructive`,children:A}):(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Routing key used by threads and sessions. Letters, digits, '-', or '_'.`})]}),(0,$.jsxs)(`div`,{className:E(`grid gap-2`,a!==1&&`hidden`),children:[(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Accent color`}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,$.jsx)(`input`,{type:`color`,value:ee(p)??ft[0],onChange:e=>m(e.target.value),"aria-label":`Provider instance accent color`,className:`h-8 w-10 cursor-pointer rounded-xl border border-input bg-background p-0.5`}),(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:ft.map(e=>{let t=p.toLowerCase()===e;return(0,$.jsx)(`button`,{type:`button`,className:E(`size-6 cursor-pointer rounded-full border transition`,t?`scale-110 border-foreground ring-2 ring-ring ring-offset-1 ring-offset-background`:`border-black/10 hover:scale-105 dark:border-white/20`),style:{backgroundColor:e},onClick:()=>m(e),"aria-label":`Use ${e} accent`},e)})}),p?(0,$.jsx)(N,{type:`button`,size:`sm`,variant:`ghost`,className:`h-7 px-2 text-xs text-muted-foreground`,onClick:()=>m(``),children:`Clear`}):null]}),(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Optional marker shown in the picker.`})]}),k.length>0?(0,$.jsx)(`div`,{className:E(`grid gap-4`,a!==2&&`hidden`),children:(0,$.jsx)(dt,{definition:O,value:P,idPrefix:`add-provider-${c}`,variant:`dialog`,onChange:ie})}):a===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)(V,{className:`border-t bg-background`,children:[(0,$.jsx)(N,{variant:`outline`,size:`sm`,onClick:()=>{if(a===0){t(!1);return}o(e=>Math.max(0,e-1))},children:a===0?`Cancel`:`Back`}),a<re.length-1?(0,$.jsx)(N,{size:`sm`,onClick:()=>o(e=>Math.min(2,e+1)),children:`Next`}):(0,$.jsx)(N,{size:`sm`,onClick:F,children:`Add instance`})]})]})})})}var St={[s.make(`codex`)]:`gpt-6.7-codex-ultra-preview`,[s.make(`claudeAgent`)]:`claude-sonnet-5-0`,[s.make(`cursor`)]:`claude-sonnet-4-6`,[s.make(`grok`)]:`grok-build`,[s.make(`opencode`)]:`openai/gpt-5`};function Ct(e){let t=(0,Qe.c)(70),{instanceId:n,driverKind:r,models:i,customModels:a,hiddenModels:o,favoriteModels:s,modelOrder:c,onChange:l,onHiddenModelsChange:u,onFavoriteModelsChange:d,onModelOrderChange:f}=e,[p,m]=(0,Q.useState)(``),[g,y]=(0,Q.useState)(null),b=(0,Q.useRef)(null),x;t[0]===o?x=t[1]:(x=new Set(o),t[0]=o,t[1]=x);let S=x,w;t[2]===s?w=t[3]:(w=new Set(s),t[2]=s,t[3]=w);let T=w,D;t[4]!==T||t[5]!==c||t[6]!==i?(D=v(i,{favoriteModels:T,groupFavorites:!0,modelOrder:c}),t[4]=T,t[5]=c,t[6]=i,t[7]=D):D=t[7];let O=D,ee;t[8]!==a||t[9]!==r||t[10]!==p||t[11]!==i||t[12]!==l?(ee=()=>{let e=r?C(p,r):p.trim()||null;if(!e){y(`Enter a model slug.`);return}if(i.some(t=>!t.isCustom&&t.slug===e)){y(`That model is already built in.`);return}if(e.length>256){y(`Model slugs must be 256 characters or less.`);return}if(a.includes(e)){y(`That custom model is already saved.`);return}l([...a,e]),m(``),y(null);let t=b.current;if(!t)return;let n=()=>t.scrollTo({top:t.scrollHeight,behavior:`smooth`});requestAnimationFrame(n);let o=new MutationObserver(()=>{n(),o.disconnect()});o.observe(t,{childList:!0,subtree:!0}),setTimeout(()=>o.disconnect(),2e3)},t[8]=a,t[9]=r,t[10]=p,t[11]=i,t[12]=l,t[13]=ee):ee=t[13];let k=ee,A;t[14]!==a||t[15]!==s||t[16]!==c||t[17]!==l||t[18]!==d||t[19]!==f?(A=e=>{l(a.filter(t=>t!==e)),f(c.filter(t=>t!==e)),d(s.filter(t=>t!==e)),y(null)},t[14]=a,t[15]=s,t[16]=c,t[17]=l,t[18]=d,t[19]=f,t[20]=A):A=t[20];let te=A,j;t[21]!==S||t[22]!==o||t[23]!==u?(j=e=>{if(S.has(e)){u(o.filter(t=>t!==e));return}u([...o,e])},t[21]=S,t[22]=o,t[23]=u,t[24]=j):j=t[24];let ne=j,re;t[25]!==T||t[26]!==s||t[27]!==d?(re=e=>{if(T.has(e)){d(s.filter(t=>t!==e));return}d([...s,e])},t[25]=T,t[26]=s,t[27]=d,t[28]=re):re=t[28];let M=re,P;t[29]!==f||t[30]!==O?(P=(e,t)=>{let n=O.map(Ot),r=n.indexOf(e),i=r+t;if(r<0||i<0||i>=n.length)return;let a=[...n],[o,s]=[a[i],a[r]];a[r]=o,a[i]=s,f(a)},t[29]=f,t[30]=O,t[31]=P):P=t[31];let F=P,I;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(I=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Models`}),t[32]=I):I=t[32];let L=i.length===1?``:`s`,R;t[33]!==i.length||t[34]!==L?(R=(0,$.jsxs)(`div`,{className:`mt-1 text-xs text-muted-foreground`,children:[i.length,` model`,L,` available.`]}),t[33]=i.length,t[34]=L,t[35]=R):R=t[35];let z;t[36]!==T||t[37]!==F||t[38]!==te||t[39]!==M||t[40]!==ne||t[41]!==S||t[42]!==n||t[43]!==O?(z=O.map((e,t)=>{let r=e.capabilities,i=[],a=!e.isCustom&&S.has(e.slug),o=T.has(e.slug),s=O[t-1],c=O[t+1],l=s!==void 0&&T.has(s.slug)===o,u=c!==void 0&&T.has(c.slug)===o,d=r?.optionDescriptors??[];d.some(Dt)&&i.push(`Fast mode`),d.some(Et)&&i.push(`Thinking`),d.some(Tt)&&i.push(`Reasoning`);let f=i.length>0||e.name!==e.slug;return(0,$.jsxs)(`div`,{className:E(`grid min-h-7 grid-cols-[minmax(0,1fr)_auto] items-center gap-2 py-1`,a&&`text-muted-foreground`),children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,$.jsx)(`span`,{className:E(`min-w-0 truncate text-xs`,a?`text-muted-foreground line-through`:`text-foreground/90`),children:e.name}),f?(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground/60 hover:text-muted-foreground`,"aria-label":`Details for ${e.name}`}),children:(0,$.jsx)(_,{className:`size-3`})}),(0,$.jsx)(ve,{side:`top`,className:`max-w-56`,children:(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`code`,{className:`block text-[11px] text-foreground`,children:e.slug}),i.length>0?(0,$.jsx)(`div`,{className:`flex flex-wrap gap-x-2 gap-y-0.5`,children:i.map(wt)}):null]})})]}):null,a?(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`hidden`}):null,e.isCustom?(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:`custom`}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5`,children:[(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:E(`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,o&&`text-yellow-500 hover:text-yellow-600`),onClick:()=>M(e.slug),"aria-label":`${o?`Remove`:`Add`} ${e.name} ${o?`from`:`to`} favorites`}),children:(0,$.jsx)(q,{className:E(`size-3`,o&&`fill-current`)})}),(0,$.jsx)(ve,{side:`top`,children:o?`Remove from favorites`:`Add to favorites`})]}),(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:!l,onClick:()=>F(e.slug,-1),"aria-label":`Move ${e.name} up`}),children:(0,$.jsx)(ce,{className:`size-3`})}),(0,$.jsx)(ve,{side:`top`,children:`Move up`})]}),(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:!u,onClick:()=>F(e.slug,1),"aria-label":`Move ${e.name} down`}),children:(0,$.jsx)(ie,{className:`size-3`})}),(0,$.jsx)(ve,{side:`top`,children:`Move down`})]}),e.isCustom?null:(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:()=>ne(e.slug),"aria-label":`${a?`Show`:`Hide`} ${e.name}`}),children:a?(0,$.jsx)(le,{className:`size-3`}):(0,$.jsx)(Ze,{className:`size-3`})}),(0,$.jsx)(ve,{side:`top`,children:a?`Show in picker`:`Hide from picker`})]}),e.isCustom?(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,"aria-label":`Remove ${e.slug}`,onClick:()=>te(e.slug)}),children:(0,$.jsx)(h,{className:`size-3`})}),(0,$.jsx)(ve,{side:`top`,children:`Remove custom model`})]}):null]})]},`${n}:${e.slug}`)}),t[36]=T,t[37]=F,t[38]=te,t[39]=M,t[40]=ne,t[41]=S,t[42]=n,t[43]=O,t[44]=z):z=t[44];let B;t[45]===z?B=t[46]:(B=(0,$.jsx)(`div`,{ref:b,className:`mt-2 max-h-40 overflow-y-auto pb-1`,children:z}),t[45]=z,t[46]=B);let V=`provider-instance-${n}-custom-model`,ae;t[47]===g?ae=t[48]:(ae=e=>{m(e.target.value),g&&y(null)},t[47]=g,t[48]=ae);let oe;t[49]===k?oe=t[50]:(oe=e=>{e.key===`Enter`&&(e.preventDefault(),k())},t[49]=k,t[50]=oe);let se=r?St[r]:`model-slug`,H;t[51]!==p||t[52]!==V||t[53]!==ae||t[54]!==oe||t[55]!==se?(H=(0,$.jsx)(X,{id:V,value:p,onChange:ae,onKeyDown:oe,placeholder:se,spellCheck:!1}),t[51]=p,t[52]=V,t[53]=ae,t[54]=oe,t[55]=se,t[56]=H):H=t[56];let U;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(qe,{className:`size-3.5`}),t[57]=U):U=t[57];let W;t[58]===k?W=t[59]:(W=(0,$.jsxs)(N,{className:`shrink-0`,variant:`outline`,onClick:k,children:[U,`Add`]}),t[58]=k,t[59]=W);let G;t[60]!==H||t[61]!==W?(G=(0,$.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2 sm:flex-row`,children:[H,W]}),t[60]=H,t[61]=W,t[62]=G):G=t[62];let ue;t[63]===g?ue=t[64]:(ue=g?(0,$.jsx)(`p`,{className:`mt-2 text-xs text-destructive`,children:g}):null,t[63]=g,t[64]=ue);let K;return t[65]!==R||t[66]!==B||t[67]!==G||t[68]!==ue?(K=(0,$.jsxs)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:[I,R,B,G,ue]}),t[65]=R,t[66]=B,t[67]=G,t[68]=ue,t[69]=K):K=t[69],K}function wt(e){return(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:e},e)}function Tt(e){return e.type===`select`&&(e.id===`reasoningEffort`||e.id===`effort`||e.id===`reasoning`||e.id===`variant`)}function Et(e){return e.id===`thinking`}function Dt(e){return e.id===`fastMode`}function Ot(e){return e.slug}var kt={disabled:{dot:`bg-amber-400`},error:{dot:`bg-destructive`},ready:{dot:`bg-success`},warning:{dot:`bg-warning`}};function At(e){if(!e)return{headline:`Checking provider status`,detail:`Waiting for the server to report installation and authentication details.`};if(!e.enabled)return{headline:`Disabled`,detail:e.message??`This provider is installed but disabled for new sessions in Ryco.`};if(!e.installed)return{headline:`Not found`,detail:e.message??`CLI not detected on PATH.`};if(e.auth.status===`authenticated`){let t=e.auth.label??e.auth.type;return{headline:t?`Authenticated · ${t}`:`Authenticated`,detail:e.message??null}}return e.auth.status===`unauthenticated`?{headline:`Not authenticated`,detail:e.message??null}:e.status===`warning`?{headline:`Needs attention`,detail:e.message??`The provider is installed, but the server could not fully verify it.`}:e.status===`error`?{headline:`Unavailable`,detail:e.message??`The provider failed its startup checks.`}:{headline:`Available`,detail:e.message??`Installed and ready, but authentication could not be verified.`}}function jt(e){return e?e.startsWith(`v`)?e:`v${e}`:null}function Mt(e){if(!e||e.status===`current`||e.status===`unknown`)return null;let t=`Update available`,n=e.latestVersion,r=jt(n);return{detail:e.message??(r?`${t}: install ${r}.`:`${t}: install the latest provider version.`),updateCommand:e.updateCommand,emphasis:`normal`}}function Nt(e){let t=e.instance.enabled??!0;return{enabled:t,statusKey:e.liveProvider?.status??(t?`warning`:`disabled`),displayName:e.instance.displayName?.trim()||e.driverOption?.label||String(e.instance.driver),driverKind:c(e.instance.driver)?e.instance.driver:null,accentColor:ee(e.instance.accentColor),summary:At(e.liveProvider)}}var Pt=[`#2563eb`,`#16a34a`,`#ea580c`,`#dc2626`,`#7c3aed`,`#0891b2`],Ft=/^[a-zA-Z_][a-zA-Z0-9_]*$/,It=0,Lt=()=>`provider-env-${It++}`;function Rt(e,t){return{id:`${t}:${e.name}`,name:e.name,value:e.value,sensitive:e.sensitive,...e.valueRedacted===void 0?{}:{valueRedacted:e.valueRedacted}}}function zt(e,t){if(typeof e!=`object`||!e)return[];let n=e[t];return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}function Bt(e,t,n){let r=typeof e==`object`&&e?{...e}:{};return r[t]=n,r}function Vt(e){let t=new Map((e.liveModels??[]).filter(e=>e.isCustom).map(e=>[e.slug,e])),n=e.liveModels?.filter(e=>!e.isCustom)??[],r=e.customModels.map(e=>t.get(e)??{slug:e,name:e,isCustom:!0,capabilities:null});return[...n,...r]}function Ht(e){let t=(0,Qe.c)(12),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;t[2]===e.separator?i=t[3]:(i=e.separator?(0,$.jsx)(`span`,{"aria-hidden":!0,children:`·`}):null,t[2]=e.separator,t[3]=i);let a;t[4]===e.prefix?a=t[5]:(a=e.prefix?(0,$.jsx)(`span`,{className:`text-muted-foreground/80`,children:e.prefix}):null,t[4]=e.prefix,t[5]=a);let o;t[6]===r?o=t[7]:(o=(0,$.jsx)(Ke,{value:r,ariaLabel:`Toggle account email visibility`,revealTooltip:`Click to reveal email`,hideTooltip:`Click to hide email`}),t[6]=r,t[7]=o);let s;return t[8]!==i||t[9]!==a||t[10]!==o?(s=(0,$.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5`,children:[i,a,o]}),t[8]=i,t[9]=a,t[10]=o,t[11]=s):s=t[11],s}function Ut(e){let t=(0,Qe.c)(34),[n,r]=(0,Q.useState)(e.value??``),[i,a]=(0,Q.useState)(!1),o;t[0]===n?o=t[1]:(o=ee(n),t[0]=n,t[1]=o);let s=o,c,l;t[2]!==i||t[3]!==e.value?(c=()=>{i||r(e.value??``)},l=[i,e.value],t[2]=i,t[3]=e.value,t[4]=c,t[5]=l):(c=t[4],l=t[5]),(0,Q.useEffect)(c,l);let u;t[6]!==s||t[7]!==e?(u=()=>{a(!1),e.onCommit(s??``)},t[6]=s,t[7]=e,t[8]=u):u=t[8];let d=u,f;t[9]===e?f=t[10]:(f=t=>{a(!1),r(t),e.onCommit(t)},t[9]=e,t[10]=f);let p=f,m;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Accent color`}),t[11]=m):m=t[11];let h=s??Pt[0],g,_,v;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>a(!0),_=e=>{a(!0),r(e.currentTarget.value)},v=e=>{a(!0),r(e.currentTarget.value)},t[12]=g,t[13]=_,t[14]=v):(g=t[12],_=t[13],v=t[14]);let y=`Accent color for ${e.displayName}`,b;t[15]!==d||t[16]!==y||t[17]!==h?(b=(0,$.jsx)(`input`,{type:`color`,value:h,onFocus:g,onInput:_,onChange:v,onBlur:d,"aria-label":y,className:`h-8 w-10 cursor-pointer rounded border border-input bg-background p-0.5`}),t[15]=d,t[16]=y,t[17]=h,t[18]=b):b=t[18];let x;t[19]!==p||t[20]!==s?(x=Pt.map(e=>{let t=s?.toLowerCase()===e;return(0,$.jsx)(`button`,{type:`button`,className:E(`size-6 cursor-pointer rounded-full border transition`,t?`border-foreground ring-2 ring-ring ring-offset-1 ring-offset-background`:`border-black/10 hover:scale-105 dark:border-white/20`),style:{backgroundColor:e},onClick:()=>p(e),"aria-label":`Use ${e} accent`},e)}),t[19]=p,t[20]=s,t[21]=x):x=t[21];let S;t[22]===x?S=t[23]:(S=(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:x}),t[22]=x,t[23]=S);let C;t[24]!==s||t[25]!==e?(C=s?(0,$.jsx)(N,{type:`button`,size:`sm`,variant:`ghost`,className:`h-7 px-2 text-xs text-muted-foreground`,onClick:()=>{a(!1),r(``),e.onCommit(``)},children:`Clear`}):null,t[24]=s,t[25]=e,t[26]=C):C=t[26];let w;t[27]!==b||t[28]!==S||t[29]!==C?(w=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[b,S,C]}),t[27]=b,t[28]=S,t[29]=C,t[30]=w):w=t[30];let T;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(T=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Used to distinguish this instance in picker rails and model lists.`}),t[31]=T):T=t[31];let D;return t[32]===w?D=t[33]:(D=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[m,w,T]}),t[32]=w,t[33]=D),D}function Wt(e){let t=(0,Qe.c)(35),n;t[0]===e.window?n=t[1]:(n=Fe(e.window),t[0]=e.window,t[1]=n);let r=n,i=e.window.windowDurationMins===void 0?e.fallbackLabel:r.label,a=Ne(e.window.usedPercent),o;t[2]===e.window.usedPercent?o=t[3]:(o=je(e.window.usedPercent),t[2]=e.window.usedPercent,t[3]=o);let s=o,c;t[4]===e.window.resetsAt?c=t[5]:(c=J(e.window.resetsAt),t[4]=e.window.resetsAt,t[5]=c);let l=c,u=a>=75,d=u?`${a}% used`:`${s}% available`,f=u?`${s}% available`:`${a}% used`,p;t[6]===i?p=t[7]:(p=(0,$.jsx)(`span`,{className:`font-medium text-foreground`,children:i}),t[6]=i,t[7]=p);let m;t[8]===d?m=t[9]:(m=(0,$.jsx)(`span`,{className:`text-muted-foreground`,children:d}),t[8]=d,t[9]=m);let h;t[10]!==p||t[11]!==m?(h=(0,$.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2 text-xs`,children:[p,m]}),t[10]=p,t[11]=m,t[12]=h):h=t[12];let g=`${i} window usage`,_=u?`bg-warning`:`bg-foreground/70`,v;t[13]===_?v=t[14]:(v=E(`h-full rounded-full transition-[width]`,_),t[13]=_,t[14]=v);let y=`${a}%`,b;t[15]===y?b=t[16]:(b={width:y},t[15]=y,t[16]=b);let x;t[17]!==b||t[18]!==v?(x=(0,$.jsx)(`div`,{className:v,style:b}),t[17]=b,t[18]=v,t[19]=x):x=t[19];let S;t[20]!==x||t[21]!==g||t[22]!==a?(S=(0,$.jsx)(`div`,{className:`h-1.5 overflow-hidden rounded-full bg-muted`,role:`progressbar`,"aria-label":g,"aria-valuenow":a,"aria-valuemin":0,"aria-valuemax":100,children:x}),t[20]=x,t[21]=g,t[22]=a,t[23]=S):S=t[23];let C;t[24]===f?C=t[25]:(C=(0,$.jsx)(`span`,{children:f}),t[24]=f,t[25]=C);let w;t[26]===l?w=t[27]:(w=l?(0,$.jsx)(`span`,{className:`first-letter:uppercase`,children:l}):null,t[26]=l,t[27]=w);let T;t[28]!==C||t[29]!==w?(T=(0,$.jsxs)(`div`,{className:`flex items-baseline justify-between gap-2 text-[11px] text-muted-foreground`,children:[C,w]}),t[28]=C,t[29]=w,t[30]=T):T=t[30];let D;return t[31]!==S||t[32]!==T||t[33]!==h?(D=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[h,S,T]}),t[31]=S,t[32]=T,t[33]=h,t[34]=D):D=t[34],D}function Gt(e){let t=(0,Qe.c)(11),{primary:n,secondary:r,tertiary:i}=e.rateLimits;if(!n&&!r&&!i)return null;let a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Usage limits`}),t[0]=a):a=t[0];let o;t[1]===n?o=t[2]:(o=n?(0,$.jsx)(Wt,{window:n,fallbackLabel:`Short window`}):null,t[1]=n,t[2]=o);let s;t[3]===r?s=t[4]:(s=r?(0,$.jsx)(Wt,{window:r,fallbackLabel:`Weekly`}):null,t[3]=r,t[4]=s);let c;t[5]===i?c=t[6]:(c=i?(0,$.jsx)(Wt,{window:i,fallbackLabel:`Monthly`}):null,t[5]=i,t[6]=c);let l;return t[7]!==o||t[8]!==s||t[9]!==c?(l=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`div`,{className:`grid gap-2.5`,children:[a,(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[o,s,c]})]})}),t[7]=o,t[8]=s,t[9]=c,t[10]=l):l=t[10],l}function Kt(e){let t=(0,Qe.c)(27),n;t[0]===e.environment?n=t[1]:(n=()=>e.environment.map(Rt),t[0]=e.environment,t[1]=n);let[r,i]=(0,Q.useState)(n),a,o;t[2]===e.environment?(a=t[3],o=t[4]):(a=()=>{i(e.environment.map(Rt))},o=[e.environment],t[2]=e.environment,t[3]=a,t[4]=o),(0,Q.useEffect)(a,o);let s;t[5]===e?s=t[6]:(s=t=>{let n=[];for(let e of t){let t=e.name.trim();if(!Ft.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})}e.onChange(n)},t[5]=e,t[6]=s);let c=s,l;t[7]!==c||t[8]!==r?(l=(e,t)=>{let n=r.map(n=>n.id===e?{...n,...t,...t.value===void 0?{}:{valueRedacted:!1}}:n);i(n),c(n)},t[7]=c,t[8]=r,t[9]=l):l=t[9];let u=l,d;t[10]!==c||t[11]!==r?(d=e=>{let t=r.filter(t=>t.id!==e);i(t),c(t)},t[10]=c,t[11]=r,t[12]=d):d=t[12];let f=d,p;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Environment variables`}),t[13]=p):p=t[13];let m;t[14]===r?m=t[15]:(m=()=>i([...r,{id:Lt(),name:``,value:``,sensitive:!0}]),t[14]=r,t[15]=m);let g;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,$.jsx)(qe,{className:`size-3`}),t[16]=g):g=t[16];let _;t[17]===m?_=t[18]:(_=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[p,(0,$.jsxs)(N,{type:`button`,size:`sm`,variant:`outline`,className:`h-7 gap-1.5 px-2 text-xs`,onClick:m,children:[g,`Add`]})]}),t[17]=m,t[18]=_);let v;t[19]!==f||t[20]!==r||t[21]!==u?(v=r.length===0?(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Add variables to pass API keys, base URLs, or other per-instance CLI settings.`}):(0,$.jsx)(`div`,{className:`grid gap-2`,children:r.map((e,t)=>(0,$.jsxs)(`div`,{className:`grid gap-2 rounded-md border border-border/70 bg-muted/20 p-2 sm:grid-cols-[minmax(0,1fr)_minmax(0,1.4fr)_auto_auto] sm:items-center`,children:[(0,$.jsx)(xe,{value:e.name,onCommit:t=>u(e.id,{name:t.trim()}),placeholder:`VARIABLE_NAME`,spellCheck:!1,"aria-label":`Environment variable name ${t+1}`}),(0,$.jsx)(xe,{value:e.valueRedacted?``:e.value,onCommit:t=>u(e.id,{value:t}),type:e.sensitive?`password`:void 0,autoComplete:`off`,placeholder:e.valueRedacted?`Stored secret - enter a new value to replace`:`Value`,spellCheck:!1,"aria-label":`Environment variable value ${t+1}`}),(0,$.jsxs)(`label`,{className:`inline-flex h-8 items-center gap-2 text-xs text-muted-foreground`,children:[(0,$.jsx)(`input`,{type:`checkbox`,className:`size-3.5`,checked:e.sensitive,onChange:t=>{let n=t.currentTarget.checked;u(e.id,{sensitive:n,...n&&e.valueRedacted===void 0?{}:{valueRedacted:n?e.valueRedacted:!1}})}}),`Sensitive`]}),(0,$.jsx)(N,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-8 justify-self-start text-muted-foreground hover:text-destructive sm:justify-self-end`,onClick:()=>f(e.id),"aria-label":`Remove environment variable ${e.name||t+1}`,children:(0,$.jsx)(h,{className:`size-3.5`})})]},e.id))}),t[19]=f,t[20]=r,t[21]=u,t[22]=v):v=t[22];let y;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:`Sensitive values are stored separately and are not returned to the app after saving.`}),t[23]=y):y=t[23];let b;return t[24]!==v||t[25]!==_?(b=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[_,v,y]}),t[24]=v,t[25]=_,t[26]=b):b=t[26],b}function qt(e){let t=(0,Qe.c)(147),{instanceId:n,instance:r,driverOption:i,liveProvider:a,isDefault:o,onUpdate:s,onDelete:c,headerAction:l,hiddenModels:u,favoriteModels:d,modelOrder:f,onHiddenModelsChange:p,onFavoriteModelsChange:m,onModelOrderChange:h,onRunUpdate:_,isUpdating:v}=e,y=v!==void 0&&v,b;t[0]!==i||t[1]!==r||t[2]!==a?(b=Nt({instance:r,driverOption:i,liveProvider:a}),t[0]=i,t[1]=r,t[2]=a,t[3]=b):b=t[3];let{enabled:x,displayName:S,driverKind:C,accentColor:w,summary:D,statusKey:O}=b,k=kt[O],A=a?.auth.email,te;t[4]!==A||t[5]!==a?.auth.status?(te=a?.auth.status===`authenticated`&&!!A?.trim(),t[4]=A,t[5]=a?.auth.status,t[6]=te):te=t[6];let j=te,ne=j?a?.auth.label??a?.auth.type??null:null,re=a?.version,M;t[7]===re?M=t[8]:(M=jt(re),t[7]=re,t[8]=M);let P=M,ie=a?.versionAdvisory,F;t[9]===ie?F=t[10]:(F=Mt(ie),t[9]=ie,t[10]=F);let I=F,L=I?.updateCommand??null,R=i?.icon,z;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(z={onCopy:Xt,onError:Yt},t[11]=z):z=t[11];let{copyToClipboard:B}=T(z),V,ae;t[12]!==r.config||t[13]!==a?.models?(V=zt(r.config,`customModels`),ae=Vt({liveModels:a?.models,customModels:V}),t[12]=r.config,t[13]=a?.models,t[14]=V,t[15]=ae):(V=t[14],ae=t[15]);let oe=ae,se;t[16]!==r||t[17]!==s?(se=e=>{let t=e.trim(),{displayName:n,...i}=r;s(t.length>0?{...i,displayName:t}:i)},t[16]=r,t[17]=s,t[18]=se):se=t[18];let ce=se,H;t[19]!==r||t[20]!==s?(H=e=>{s({...r,enabled:e})},t[19]=r,t[20]=s,t[21]=H):H=t[21];let U=H,G;t[22]!==r||t[23]!==s?(G=e=>{let t=ee(e),{accentColor:n,...i}=r;s(t?{...i,accentColor:t}:i)},t[22]=r,t[23]=s,t[24]=G):G=t[24];let le=G,ue;t[25]!==r||t[26]!==s?(ue=e=>{let{config:t,...n}=r;s(e===void 0?n:{...n,config:e})},t[25]=r,t[26]=s,t[27]=ue):ue=t[27];let K=ue,de;t[28]!==r||t[29]!==s?(de=e=>{let t=Bt(r.config,`customModels`,[...e]),{config:n,...i}=r;s({...i,config:t})},t[28]=r,t[29]=s,t[30]=de):de=t[30];let pe=de,ge;t[31]!==r||t[32]!==s?(ge=e=>{let t=e.filter(Jt),{environment:n,...i}=r;s(t.length>0?{...i,environment:t}:i)},t[31]=r,t[32]=s,t[33]=ge):ge=t[33];let Se=ge,Ce;t[34]!==R||t[35]!==w||t[36]!==S||t[37]!==C||t[38]!==k.dot?(Ce=C?(0,$.jsx)(De,{driverKind:C,displayName:S,accentColor:w,showBadge:!!w,statusDotClassName:k.dot,className:`size-5`,iconClassName:`size-4 text-foreground/80`,badgeClassName:`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 text-[7px]`}):R?(0,$.jsxs)(`span`,{className:`relative inline-flex size-5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(R,{className:`size-4 text-foreground/80`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:E(`pointer-events-none absolute -left-0.5 -top-0.5 size-2 rounded-full ring-2 ring-background`,k.dot),"aria-hidden":!0})]}):(0,$.jsx)(`span`,{className:E(`size-2 shrink-0 rounded-full`,k.dot)}),t[34]=R,t[35]=w,t[36]=S,t[37]=C,t[38]=k.dot,t[39]=Ce):Ce=t[39];let we=Ce,ke;t[40]===S?ke=t[41]:(ke=(0,$.jsx)(`h3`,{className:`truncate text-[13px] font-semibold tracking-[-0.01em] text-foreground`,children:S}),t[40]=S,t[41]=ke);let q;t[42]!==r.driver||t[43]!==n?(q=String(n)===String(r.driver)?null:(0,$.jsx)(`code`,{className:`truncate rounded bg-muted/60 px-1 py-0.5 text-[10px] text-muted-foreground`,children:n}),t[42]=r.driver,t[43]=n,t[44]=q):q=t[44];let Ae=o?`Default`:`Custom`,je;t[45]===Ae?je=t[46]:(je=(0,$.jsx)(be,{variant:`outline`,size:`sm`,className:`shrink-0`,children:Ae}),t[45]=Ae,t[46]=je);let J;t[47]===i?J=t[48]:(J=i?.badgeLabel?(0,$.jsx)(be,{variant:`warning`,size:`sm`,className:`shrink-0`,children:i.badgeLabel}):null,t[47]=i,t[48]=J);let Me;t[49]!==ke||t[50]!==q||t[51]!==je||t[52]!==J||t[53]!==we?(Me=(0,$.jsxs)($.Fragment,{children:[we,ke,q,je,J]}),t[49]=ke,t[50]=q,t[51]=je,t[52]=J,t[53]=we,t[54]=Me):Me=t[54];let Ne=Me,Y;t[55]!==n||t[56]!==c?(Y=c?(0,$.jsxs)(N,{size:`xs`,variant:`ghost`,className:`h-7 gap-1.5 px-2 text-xs text-muted-foreground hover:text-destructive`,onClick:c,"aria-label":`Delete provider instance ${n}`,children:[(0,$.jsx)(Te,{className:`size-3`}),`Delete`]}):null,t[55]=n,t[56]=c,t[57]=Y):Y=t[57];let Pe;t[58]!==l||t[59]!==Y?(Pe=(0,$.jsxs)($.Fragment,{children:[l,Y]}),t[58]=l,t[59]=Y,t[60]=Pe):Pe=t[60];let Fe=Pe,X;t[61]!==A||t[62]!==ne||t[63]!==j||t[64]!==D.headline?(X=j?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`Authenticated as`}),(0,$.jsx)(Ht,{email:A}),ne?(0,$.jsxs)(`span`,{children:[`· `,ne]}):null]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:D.headline}),(0,$.jsx)(Ht,{email:A,separator:!0,prefix:`Email`})]}),t[61]=A,t[62]=ne,t[63]=j,t[64]=D.headline,t[65]=X):X=t[65];let Ie;t[66]===D.detail?Ie=t[67]:(Ie=D.detail?(0,$.jsxs)(`span`,{children:[`- `,D.detail]}):null,t[66]=D.detail,t[67]=Ie);let Le;t[68]!==X||t[69]!==Ie?(Le=(0,$.jsxs)(`p`,{className:`flex min-w-0 flex-wrap items-center gap-x-1 text-xs text-muted-foreground`,children:[X,Ie]}),t[68]=X,t[69]=Ie,t[70]=Le):Le=t[70];let Re=Le,ze;t[71]===P?ze=t[72]:(ze=P?(0,$.jsx)(`code`,{className:`text-xs text-muted-foreground`,children:P}):null,t[71]=P,t[72]=ze);let Be=ze,Ve;t[73]!==B||t[74]!==S||t[75]!==y||t[76]!==_||t[77]!==L||t[78]!==I?(Ve=I?(0,$.jsxs)(fe,{children:[(0,$.jsx)(W,{render:(0,$.jsx)(N,{type:`button`,size:`icon-xs`,variant:`ghost`,className:E(`size-5 rounded-sm p-0`,I.emphasis===`strong`?`text-warning hover:text-warning`:`text-primary hover:text-primary`),"aria-label":`Update available — view details`,children:(0,$.jsx)(Ye,{className:`size-3.5 [animation:bounce_2.4s_ease-in-out_infinite] motion-reduce:animate-none`})})}),(0,$.jsx)(he,{side:`bottom`,align:`start`,className:`w-84`,children:(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[(0,$.jsxs)(`div`,{className:`grid gap-0.5`,children:[(0,$.jsx)(`p`,{className:`text-[13px] font-semibold leading-tight text-foreground`,children:`Update available`}),(0,$.jsx)(`p`,{className:E(`text-xs leading-snug`,I.emphasis===`strong`?`text-warning`:`text-muted-foreground`),children:I.detail})]}),_?(0,$.jsxs)(N,{type:`button`,size:`xs`,variant:`default`,className:`w-full`,disabled:y,onClick:_,children:[y?(0,$.jsx)(Ee,{className:`animate-spin`}):(0,$.jsx)(Oe,{}),y?`Updating`:`Update now`]}):null,_&&L?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] 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,L?(0,$.jsxs)(`div`,{className:`flex 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 overflow-x-auto whitespace-nowrap font-mono text-[11px] text-foreground [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:L}),(0,$.jsxs)(ye,{children:[(0,$.jsx)(_e,{render:(0,$.jsx)(N,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`size-6 shrink-0 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:()=>B(L,{providerName:S}),"aria-label":`Copy update command`,children:(0,$.jsx)(g,{className:`size-3`})})}),(0,$.jsx)(ve,{side:`top`,children:`Copy command`})]})]}):null]})})]}):null,t[73]=B,t[74]=S,t[75]=y,t[76]=_,t[77]=L,t[78]=I,t[79]=Ve):Ve=t[79];let He;t[80]!==Ve||t[81]!==Ne||t[82]!==Fe||t[83]!==Be?(He=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[Ne,Be,Ve,Fe]}),t[80]=Ve,t[81]=Ne,t[82]=Fe,t[83]=Be,t[84]=He):He=t[84];let Ue;t[85]!==Re||t[86]!==He?(Ue=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[He,Re]}),t[85]=Re,t[86]=He,t[87]=Ue):Ue=t[87];let We;t[88]===U?We=t[89]:(We=e=>U(!!e),t[88]=U,t[89]=We);let Ge=`Enable ${S}`,Z;t[90]!==x||t[91]!==We||t[92]!==Ge?(Z=(0,$.jsx)(`div`,{className:`flex w-full shrink-0 items-center gap-2 sm:w-auto sm:justify-end`,children:(0,$.jsx)(me,{checked:x,onCheckedChange:We,"aria-label":Ge})}),t[90]=x,t[91]=We,t[92]=Ge,t[93]=Z):Z=t[93];let Ke;t[94]!==Ue||t[95]!==Z?(Ke=(0,$.jsx)(`div`,{className:`px-4 py-3.5 sm:px-5`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between`,children:[Ue,Z]})}),t[94]=Ue,t[95]=Z,t[96]=Ke):Ke=t[96];let qe;t[97]===a?qe=t[98]:(qe=a?.rateLimits?(0,$.jsx)(Gt,{rateLimits:a.rateLimits}):null,t[97]=a,t[98]=qe);let Je=`provider-instance-${n}-display-name`,Xe;t[99]===Symbol.for(`react.memo_cache_sentinel`)?(Xe=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Display name`}),t[99]=Xe):Xe=t[99];let Ze=`provider-instance-${n}-display-name`,Q=r.displayName??``,$e=i?.label??`Instance label`,et;t[100]!==Ze||t[101]!==Q||t[102]!==$e||t[103]!==ce?(et=(0,$.jsx)(xe,{id:Ze,className:`mt-1.5`,value:Q,onCommit:ce,placeholder:$e,spellCheck:!1}),t[100]=Ze,t[101]=Q,t[102]=$e,t[103]=ce,t[104]=et):et=t[104];let tt;t[105]===Symbol.for(`react.memo_cache_sentinel`)?(tt=(0,$.jsx)(`span`,{className:`mt-1 block text-xs text-muted-foreground`,children:`Optional label shown in the provider list.`}),t[105]=tt):tt=t[105];let nt;t[106]!==Je||t[107]!==et?(nt=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`label`,{htmlFor:Je,className:`block`,children:[Xe,et,tt]})}),t[106]=Je,t[107]=et,t[108]=nt):nt=t[108];let rt;t[109]!==w||t[110]!==S||t[111]!==le?(rt=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsx)(Ut,{displayName:S,value:w,onCommit:le})}),t[109]=w,t[110]=S,t[111]=le,t[112]=rt):rt=t[112];let it;t[113]===r.environment?it=t[114]:(it=r.environment??[],t[113]=r.environment,t[114]=it);let at;t[115]!==it||t[116]!==Se?(at=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsx)(Kt,{environment:it,onChange:Se})}),t[115]=it,t[116]=Se,t[117]=at):at=t[117];let ot;t[118]!==i||t[119]!==r.config||t[120]!==n||t[121]!==K?(ot=i?(0,$.jsx)(dt,{definition:i,value:r.config,idPrefix:`provider-instance-${n}`,variant:`card`,onChange:K}):null,t[118]=i,t[119]=r.config,t[120]=n,t[121]=K,t[122]=ot):ot=t[122];let st;t[123]!==V||t[124]!==C||t[125]!==i||t[126]!==d||t[127]!==u||t[128]!==r.driver||t[129]!==n||t[130]!==f||t[131]!==oe||t[132]!==m||t[133]!==p||t[134]!==h||t[135]!==pe?(st=i===void 0?(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`This instance uses a driver (`,(0,$.jsx)(`code`,{className:`text-foreground`,children:String(r.driver)}),`) that is not shipped with the current build. Configuration values are preserved but cannot be edited from this surface.`]})}):(0,$.jsx)(Ct,{instanceId:n,driverKind:C,models:oe,customModels:V,hiddenModels:u,favoriteModels:d,modelOrder:f,onChange:pe,onHiddenModelsChange:p,onFavoriteModelsChange:m,onModelOrderChange:h}),t[123]=V,t[124]=C,t[125]=i,t[126]=d,t[127]=u,t[128]=r.driver,t[129]=n,t[130]=f,t[131]=oe,t[132]=m,t[133]=p,t[134]=h,t[135]=pe,t[136]=st):st=t[136];let ct;t[137]!==qe||t[138]!==nt||t[139]!==rt||t[140]!==at||t[141]!==ot||t[142]!==st?(ct=(0,$.jsxs)(`div`,{className:`space-y-0`,children:[qe,nt,rt,at,ot,st]}),t[137]=qe,t[138]=nt,t[139]=rt,t[140]=at,t[141]=ot,t[142]=st,t[143]=ct):ct=t[143];let lt;return t[144]!==Ke||t[145]!==ct?(lt=(0,$.jsxs)(`div`,{children:[Ke,ct]}),t[144]=Ke,t[145]=ct,t[146]=lt):lt=t[146],lt}function Jt(e){return e.name.trim().length>0}function Yt(e,t){let{providerName:n}=t;S.add(Ae({type:`error`,title:`Could not copy ${n} update command`,description:e.message}))}function Xt(e){let{providerName:t}=e;S.add({type:`success`,title:`${t} update command copied`,description:`Run it in a terminal when you are ready to update.`})}function Zt(e){let t=(0,Qe.c)(38),n;t[0]===e?n=t[1]:(n=Nt(e),t[0]=e,t[1]=n);let r=n,i=kt[r.statusKey],a=e.driverOption?.icon,o=e.isDefault?`Default`:`Custom`,s=r.displayName,c=e.selected?`true`:void 0,l=e.editorId,u=r.displayName,d;t[2]===o?d=t[3]:(d=o.toLowerCase(),t[2]=o,t[3]=d);let f=`Edit ${u} ${d} provider instance`,p=e.selected?`border-foreground/20 bg-background shadow-sm`:`border-transparent hover:border-border/80 hover:bg-background/70`,m;t[4]===p?m=t[5]:(m=E(`group flex w-full min-w-0 cursor-pointer items-start gap-3 rounded-lg border px-3 py-2.5 text-left outline-none transition-[background-color,border-color,box-shadow]`,`focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background`,p),t[4]=p,t[5]=m);let h;t[6]!==a||t[7]!==r.accentColor||t[8]!==r.displayName||t[9]!==r.driverKind||t[10]!==i.dot?(h=r.driverKind?(0,$.jsx)(De,{driverKind:r.driverKind,displayName:r.displayName,accentColor:r.accentColor,showBadge:!!r.accentColor,statusDotClassName:i.dot,className:`mt-0.5 size-7`,iconClassName:`size-5 text-foreground/80`}):a?(0,$.jsxs)(`span`,{className:`relative mt-0.5 inline-flex size-7 shrink-0 items-center justify-center`,children:[(0,$.jsx)(a,{className:`size-5 text-foreground/80`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:E(`pointer-events-none absolute -left-0.5 -top-0.5 size-2 rounded-full ring-2 ring-background`,i.dot),"aria-hidden":!0})]}):(0,$.jsx)(`span`,{className:E(`mt-2 size-2 shrink-0 rounded-full`,i.dot)}),t[6]=a,t[7]=r.accentColor,t[8]=r.displayName,t[9]=r.driverKind,t[10]=i.dot,t[11]=h):h=t[11];let g;t[12]===r.displayName?g=t[13]:(g=(0,$.jsx)(`span`,{className:`truncate text-[13px] font-semibold tracking-[-0.01em] text-foreground`,children:r.displayName}),t[12]=r.displayName,t[13]=g);let _;t[14]===o?_=t[15]:(_=(0,$.jsx)(be,{variant:`outline`,size:`sm`,className:`shrink-0 bg-background/60`,children:o}),t[14]=o,t[15]=_);let v;t[16]!==g||t[17]!==_?(v=(0,$.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[g,_]}),t[16]=g,t[17]=_,t[18]=v):v=t[18];let y;t[19]===r.summary.headline?y=t[20]:(y=(0,$.jsx)(`span`,{className:`mt-0.5 block truncate text-[11px] text-muted-foreground`,children:r.summary.headline}),t[19]=r.summary.headline,t[20]=y);let b;t[21]!==e.instanceId||t[22]!==e.isDefault?(b=e.isDefault?null:(0,$.jsx)(`code`,{className:`mt-0.5 block truncate text-[10px] text-muted-foreground/70`,children:e.instanceId}),t[21]=e.instanceId,t[22]=e.isDefault,t[23]=b):b=t[23];let x;t[24]!==v||t[25]!==y||t[26]!==b?(x=(0,$.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[v,y,b]}),t[24]=v,t[25]=y,t[26]=b,t[27]=x):x=t[27];let S;return t[28]!==r.displayName||t[29]!==e.editorId||t[30]!==e.onKeyDown||t[31]!==e.onSelect||t[32]!==x||t[33]!==c||t[34]!==f||t[35]!==m||t[36]!==h?(S=(0,$.jsxs)(`button`,{type:`button`,"data-settings-section":s,"data-settings-action":!0,"data-provider-instance-row":!0,"aria-current":c,"aria-controls":l,"aria-label":f,className:m,onClick:e.onSelect,onKeyDown:e.onKeyDown,children:[h,x]}),t[28]=r.displayName,t[29]=e.editorId,t[30]=e.onKeyDown,t[31]=e.onSelect,t[32]=x,t[33]=c,t[34]=f,t[35]=m,t[36]=h,t[37]=S):S=t[37],S}function Qt(e,t){let n=e.providers,r=i.providers,a=d(t),s=e.providerInstances?.[a],c=n[t],l=r[t];return{instance:s??{driver:t,enabled:c.enabled,config:c},isDirty:s!==void 0||!o(c,l)}}function $t(e,t){let n=Z.map(e=>e.value).filter(e=>e!==`cursor`||t.some(t=>t.instanceId===d(e))),r=new Set(n),i=new Map;for(let[t,n]of Object.entries(e.providerInstances??{})){let e=i.get(n.driver)??[];e.push([t,n]),i.set(n.driver,e)}let a=[];for(let t of n){let n=d(t),r=Qt(e,t);a.push({instanceId:n,instance:r.instance,driver:t,isDefault:!0,isDirty:r.isDirty});for(let[e,r]of i.get(t)??[])e!==n&&a.push({instanceId:e,instance:r,driver:r.driver,isDefault:!1,isDirty:!0})}for(let[e,t]of i)if(!r.has(e))for(let[n,r]of t)a.push({instanceId:n,instance:r,driver:e,isDefault:n===d(e),isDirty:!0});return a}function en(e,t){return e.find(e=>e.instanceId===t)??e.at(0)??null}function tn(e,t,n){return n<=0||e<0||e>=n?null:t===`Home`?0:t===`End`?n-1:t===`ArrowDown`?(e+1)%n:(e-1+n)%n}function nn(e){let t=i.providers,n=e.isDefault?t[e.driver]:void 0;return{...n===void 0?{}:{providers:{...e.settings.providers,[e.driver]:n}},providerInstances:{...e.settings.providerInstances,[e.instanceId]:e.instance},...e.textGenerationModelSelection===void 0?{}:{textGenerationModelSelection:e.textGenerationModelSelection}}}var rn=s.make(`codex`);function an(e,t){let n={...e};return delete n[t],n}function on(e,t){return e.filter(e=>e.provider!==t)}function sn(e){let t=(0,Qe.c)(5),{lastCheckedAt:n}=e;Le();let r;t[0]===n?r=t[1]:(r=n?F(n):null,t[0]=n,t[1]=r);let i=r;if(!i)return null;let a;return t[2]!==i.suffix||t[3]!==i.value?(a=(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground/60`,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[2]=i.suffix,t[3]=i.value,t[4]=a):a=t[4],a}function cn(){let e=(0,Qe.c)(225),t=w(),{updateSettings:r}=ne(),a=j(),s=Ie(f.serverUpdateSettings),c=!s.allowed,l=s.reason,u=M(),[h,g]=(0,Q.useState)(!1),[_,v]=(0,Q.useState)(!1),[b,x]=(0,Q.useState)(null),[S,C]=(0,Q.useState)(null),T;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(T=new Set,e[0]=T):T=e[0];let[E,ee]=(0,Q.useState)(T),k=(0,Q.useRef)(!1),ie;e[1]===a?ie=e[2]:(ie=e=>{if(!a||a.primary){n({providers:e});return}let t=A.getState().byId[a.environmentId]?.serverConfig;t&&A.getState().patch(a.environmentId,{serverConfig:{...t,providers:e}})},e[1]=a,e[2]=ie);let F=ie,L;e[3]===a?L=e[4]:(L=()=>{if(!a)return re().server;let e=m(a.environmentId)?.server;if(!e)throw Error(`Provider settings are unavailable on ${a.nodeLabel}.`);return e},e[3]=a,e[4]=L);let z=L,V;e[5]!==F||e[6]!==z?(V=()=>{k.current||(k.current=!0,g(!0),z().refreshProviders().then(e=>F(e.providers)).catch(vn).finally(()=>{k.current=!1,g(!1)}))},e[5]=F,e[6]=z,e[7]=V):V=e[7];let oe=V,ce,H,U,W,G,le,K;if(e[8]!==u||e[9]!==t){let n=y(t,u);W=n.instanceId,G=n.model,le=n.options,ce=p(O(u)),U=ce.find(e=>e.instanceId===W),K=U?.driverKind??rn,H=D(t,u,W,G),e[8]=u,e[9]=t,e[10]=ce,e[11]=H,e[12]=U,e[13]=W,e[14]=G,e[15]=le,e[16]=K}else ce=e[10],H=e[11],U=e[12],W=e[13],G=e[14],le=e[15],K=e[16];let de=H,fe;e[17]===t.textGenerationModelSelection?fe=e[18]:(fe=o(t.textGenerationModelSelection??null,i.textGenerationModelSelection??null),e[17]=t.textGenerationModelSelection,e[18]=fe);let pe=!fe,me;e[19]===u?me=e[20]:(me=u.length>0?u.reduce(_n,u[0].checkedAt):null,e[19]=u,e[20]=me);let he=me,ge,be,xe,Te,De,Oe,q,Ae,je,J,Ne,Y,Pe,Fe,X,Le,Ue,We,Z,Ke,Je,Ye,Xe,Ze,$e,et;if(e[21]!==F||e[22]!==ce||e[23]!==de||e[24]!==pe||e[25]!==h||e[26]!==he||e[27]!==S||e[28]!==z||e[29]!==oe||e[30]!==b||e[31]!==u||e[32]!==t||e[33]!==c||e[34]!==l||e[35]!==U?.models||e[36]!==W||e[37]!==G||e[38]!==le||e[39]!==K||e[40]!==r||e[41]!==E){let n=$t(t,u);Y=en(n,b);let a=Y?.instanceId??null,o;e[68]!==t||e[69]!==r?(o=(e,n,i)=>{r(nn({settings:t,instanceId:e.instanceId,instance:n,driver:e.driver,isDefault:e.isDefault,textGenerationModelSelection:i?.textGenerationModelSelection}))},e[68]=t,e[69]=r,e[70]=o):o=e[70],$e=o;let s;e[71]!==t.favorites||e[72]!==t.providerInstances||e[73]!==t.providerModelPreferences||e[74]!==W||e[75]!==r?(s=e=>{r({providerInstances:an(t.providerInstances,e),providerModelPreferences:an(t.providerModelPreferences,e),favorites:on(t.favorites??[],e),...W===e?{textGenerationModelSelection:i.textGenerationModelSelection}:{}})},e[71]=t.favorites,e[72]=t.providerInstances,e[73]=t.providerModelPreferences,e[74]=W,e[75]=r,e[76]=s):s=e[76];let f=s,p;e[77]!==t.providerModelPreferences||e[78]!==r?(p=(e,n)=>{let i=[...new Set(n.hiddenModels.filter(gn))],a=[...new Set(n.modelOrder.filter(hn))],o=an(t.providerModelPreferences,e);r({providerModelPreferences:i.length===0&&a.length===0?o:{...o,[e]:{hiddenModels:i,modelOrder:a}}})},e[77]=t.providerModelPreferences,e[78]=r,e[79]=p):p=e[79],et=p;let m;e[80]!==t.favorites||e[81]!==r?(m=(e,n)=>{let i=[...new Set(n.map(mn).filter(pn))];r({favorites:[...on(t.favorites??[],e),...i.map(t=>({provider:e,model:t}))]})},e[80]=t.favorites,e[81]=r,e[82]=m):m=e[82],Ze=m;let g;e[83]!==F||e[84]!==z?(g=e=>{ee(t=>new Set(t).add(e.instanceId)),z().updateProvider({provider:e.driver,instanceId:e.instanceId}).then(e=>{F(e.providers)}).catch(fn).finally(()=>{ee(t=>{let n=new Set(t);return n.delete(e.instanceId),n})})},e[83]=F,e[84]=z,e[85]=g):g=e[85],Oe=g;let _;e[86]!==t.favorites||e[87]!==t.providerInstances||e[88]!==t.providerModelPreferences||e[89]!==t.providers||e[90]!==W||e[91]!==r?(_=e=>{let n=i.providers,a=d(e),o=n[e];o!==void 0&&r({providers:{...t.providers,[e]:o},providerInstances:an(t.providerInstances,a),providerModelPreferences:an(t.providerModelPreferences,a),favorites:on(t.favorites??[],a),...W===a?{textGenerationModelSelection:i.textGenerationModelSelection}:{}})},e[86]=t.favorites,e[87]=t.providerInstances,e[88]=t.providerModelPreferences,e[89]=t.providers,e[90]=W,e[91]=r,e[92]=_):_=e[92];let w=_,T=new Map(u.map(dn));Ae=Y?Ge(Y.driver):void 0,J=Y?T.get(Y.instanceId):void 0,q=Y?Y.instance.displayName?.trim()||Ae?.label||String(Y.driver):null,Pe=J&&we(J)?J:null,xe=Pe!==null&&Ce(Pe,u),De=!!(J&&Se(J))||(Y?E.has(Y.instanceId):!1),Ne=Y?t.providerModelPreferences?.[Y.instanceId]??{hiddenModels:[],modelOrder:[]}:{hiddenModels:[],modelOrder:[]},je=Y?(t.favorites??[]).filter(e=>e.provider===Y.instanceId).map(un):[];let D=(e,t)=>{let r=e.key;if(r!==`ArrowDown`&&r!==`ArrowUp`&&r!==`Home`&&r!==`End`)return;let i=tn(t,r,n.length);if(i===null)return;e.preventDefault();let a=n[i];a&&(x(a.instanceId),(e.currentTarget.closest(`[data-provider-instance-list]`)?.querySelectorAll(`[data-provider-instance-row]`))?.[i]?.focus())},O;e[93]!==f||e[94]!==S||e[95]!==w?(O=()=>{let e=S;if(e){if(C(null),e.kind===`delete`){f(e.instanceId);return}w(e.driver)}},e[93]=f,e[94]=S,e[95]=w,e[96]=O):O=e[96],Te=O,be=ze;let k;e[97]!==pe||e[98]!==r?(k=pe?(0,$.jsx)(Ve,{label:`text generation model`,onClick:()=>r({textGenerationModelSelection:i.textGenerationModelSelection})}):null,e[97]=pe,e[98]=r,e[99]=k):k=e[99];let A;e[100]===l?A=e[101]:(A=l?{disabledReason:l}:{},e[100]=l,e[101]=A);let j;e[102]!==u||e[103]!==t||e[104]!==r?(j=(e,n)=>{r({textGenerationModelSelection:y({...t,textGenerationModelSelection:te(e,n)},u)})},e[102]=u,e[103]=t,e[104]=r,e[105]=j):j=e[105];let ne;e[106]!==ce||e[107]!==de||e[108]!==c||e[109]!==A||e[110]!==j||e[111]!==W||e[112]!==G?(ne=(0,$.jsx)(He,{activeInstanceId:W,model:G,lockedProvider:null,instanceEntries:ce,modelOptionsByInstance:de,triggerVariant:`outline`,triggerClassName:`min-w-0 max-w-none shrink-0 text-foreground/90 hover:text-foreground`,disabled:c,...A,onInstanceModelChange:j}),e[106]=ce,e[107]=de,e[108]=c,e[109]=A,e[110]=j,e[111]=W,e[112]=G,e[113]=ne):ne=e[113];let re;e[114]===U?.models?re=e[115]:(re=U?.models??[],e[114]=U?.models,e[115]=re);let M;e[116]===l?M=e[117]:(M=l?{disabledReason:l}:{},e[116]=l,e[117]=M);let P;e[118]!==u||e[119]!==t||e[120]!==W||e[121]!==G||e[122]!==r?(P=e=>{r({textGenerationModelSelection:y({...t,textGenerationModelSelection:te(W,G,e)},u)})},e[118]=u,e[119]=t,e[120]=W,e[121]=G,e[122]=r,e[123]=P):P=e[123];let ie;e[124]!==c||e[125]!==re||e[126]!==M||e[127]!==P||e[128]!==G||e[129]!==le||e[130]!==K?(ie=(0,$.jsx)(Me,{provider:K,models:re,model:G,prompt:``,onPromptChange:ln,modelOptions:le,allowPromptInjectedEffort:!1,triggerVariant:`outline`,triggerClassName:`min-w-0 max-w-none shrink-0 text-foreground/90 hover:text-foreground`,disabled:c,...M,onModelOptionsChange:P}),e[124]=c,e[125]=re,e[126]=M,e[127]=P,e[128]=G,e[129]=le,e[130]=K,e[131]=ie):ie=e[131];let I;e[132]!==ne||e[133]!==ie?(I=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-1.5`,children:[ne,ie]}),e[132]=ne,e[133]=ie,e[134]=I):I=e[134],e[135]!==k||e[136]!==I?(Ke=(0,$.jsx)(Re,{title:`Text generation`,children:(0,$.jsx)(Be,{title:`Text generation model`,description:`Configure the model used for generated commit messages, PR titles, and similar Git text.`,resetAction:k,control:I})}),e[135]=k,e[136]=I,e[137]=Ke):Ke=e[137],ge=Re,We=`Providers`;let L;e[138]===he?L=e[139]:(L=(0,$.jsx)(sn,{lastCheckedAt:he}),e[138]=he,e[139]=L);let R;e[140]===oe?R=e[141]:(R=()=>void oe(),e[140]=oe,e[141]=R);let B;e[142]===h?B=e[143]:(B=h?(0,$.jsx)(Ee,{className:`size-3 animate-spin`}):(0,$.jsx)(ke,{className:`size-3`}),e[142]=h,e[143]=B);let V;e[144]!==h||e[145]!==R||e[146]!==B?(V=(0,$.jsx)(_e,{render:(0,$.jsx)(N,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:h,onClick:R,"aria-label":`Refresh provider status`,children:B})}),e[144]=h,e[145]=R,e[146]=B,e[147]=V):V=e[147];let ae;e[148]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(ve,{side:`top`,children:`Refresh provider status`}),e[148]=ae):ae=e[148];let se;e[149]===V?se=e[150]:(se=(0,$.jsxs)(ye,{children:[V,ae]}),e[149]=V,e[150]=se),e[151]!==L||e[152]!==se?(Z=(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[L,se]}),e[151]=L,e[152]=se,e[153]=Z):Z=e[153],Ue=`grid min-h-[34rem] md:grid-cols-[minmax(13.5rem,0.75fr)_minmax(0,1.55fr)]`,X=`app-muted-surface min-w-0 border-b border-border/70 md:border-r md:border-b-0`;let H;e[154]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,$.jsx)(`h3`,{className:`text-[13px] font-semibold tracking-[-0.01em] text-foreground`,children:`Instances`}),e[154]=H):H=e[154];let ue=(0,$.jsxs)(`div`,{className:`min-w-0`,children:[H,(0,$.jsxs)(`p`,{className:`text-[11px] text-muted-foreground`,children:[n.length,` configured`]})]}),fe;e[155]===Symbol.for(`react.memo_cache_sentinel`)?(fe=()=>v(!0),e[155]=fe):fe=e[155];let me;e[156]===Symbol.for(`react.memo_cache_sentinel`)?(me=(0,$.jsxs)(N,{size:`xs`,variant:`outline`,className:`h-7 shrink-0 gap-1.5 px-2 text-xs`,onClick:fe,"aria-label":`Add provider instance`,children:[(0,$.jsx)(qe,{className:`size-3`}),`Add`]}),e[156]=me):me=e[156],e[157]===ue?Le=e[158]:(Le=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-border/70 px-3 py-3`,children:[ue,me]}),e[157]=ue,e[158]=Le),Je=`Provider instances`,Ye=!0,Xe=`grid max-h-64 gap-1 overflow-y-auto p-2 md:max-h-[min(44rem,calc(100dvh-15rem))]`,Fe=n.map((e,t)=>(0,$.jsx)(Zt,{instanceId:e.instanceId,instance:e.instance,driverOption:Ge(e.driver),liveProvider:T.get(e.instanceId),isDefault:e.isDefault,selected:e.instanceId===a,editorId:`provider-instance-editor`,onSelect:()=>x(e.instanceId),onKeyDown:e=>D(e,t)},e.instanceId)),e[21]=F,e[22]=ce,e[23]=de,e[24]=pe,e[25]=h,e[26]=he,e[27]=S,e[28]=z,e[29]=oe,e[30]=b,e[31]=u,e[32]=t,e[33]=c,e[34]=l,e[35]=U?.models,e[36]=W,e[37]=G,e[38]=le,e[39]=K,e[40]=r,e[41]=E,e[42]=ge,e[43]=be,e[44]=xe,e[45]=Te,e[46]=De,e[47]=Oe,e[48]=q,e[49]=Ae,e[50]=je,e[51]=J,e[52]=Ne,e[53]=Y,e[54]=Pe,e[55]=Fe,e[56]=X,e[57]=Le,e[58]=Ue,e[59]=We,e[60]=Z,e[61]=Ke,e[62]=Je,e[63]=Ye,e[64]=Xe,e[65]=Ze,e[66]=$e,e[67]=et}else ge=e[42],be=e[43],xe=e[44],Te=e[45],De=e[46],Oe=e[47],q=e[48],Ae=e[49],je=e[50],J=e[51],Ne=e[52],Y=e[53],Pe=e[54],Fe=e[55],X=e[56],Le=e[57],Ue=e[58],We=e[59],Z=e[60],Ke=e[61],Je=e[62],Ye=e[63],Xe=e[64],Ze=e[65],$e=e[66],et=e[67];let tt;e[159]!==Fe||e[160]!==Je||e[161]!==Ye||e[162]!==Xe?(tt=(0,$.jsx)(`nav`,{"aria-label":Je,"data-provider-instance-list":Ye,className:Xe,children:Fe}),e[159]=Fe,e[160]=Je,e[161]=Ye,e[162]=Xe,e[163]=tt):tt=e[163];let nt;e[164]!==X||e[165]!==Le||e[166]!==tt?(nt=(0,$.jsxs)(`aside`,{className:X,children:[Le,tt]}),e[164]=X,e[165]=Le,e[166]=tt,e[167]=nt):nt=e[167];let rt=q?`Edit ${q}`:`Provider editor`,it;e[168]!==xe||e[169]!==De||e[170]!==Oe||e[171]!==q||e[172]!==Ae||e[173]!==je||e[174]!==J||e[175]!==Ne||e[176]!==Y||e[177]!==Pe||e[178]!==W||e[179]!==Ze||e[180]!==$e||e[181]!==et?(it=Y?(0,$.jsx)(qt,{instanceId:Y.instanceId,instance:Y.instance,driverOption:Ae,liveProvider:J,isDefault:Y.isDefault,onUpdate:e=>{let t=Y.instance.enabled??!0;e.enabled===!1&&t&&W===Y.instanceId?$e(Y,e,{textGenerationModelSelection:i.textGenerationModelSelection}):$e(Y,e)},onDelete:Y.isDefault?void 0:()=>C({kind:`delete`,instanceId:Y.instanceId,displayName:q??String(Y.instanceId)}),headerAction:Y.isDefault&&Y.isDirty?(0,$.jsx)(Ve,{label:`${q??String(Y.driver)} provider settings`,onClick:()=>C({kind:`reset`,driver:Y.driver,displayName:q??String(Y.driver)})}):null,hiddenModels:Ne.hiddenModels,favoriteModels:je,modelOrder:Ne.modelOrder,onHiddenModelsChange:e=>et(Y.instanceId,{...Ne,hiddenModels:e}),onFavoriteModelsChange:e=>Ze(Y.instanceId,e),onModelOrderChange:e=>et(Y.instanceId,{...Ne,modelOrder:e}),onRunUpdate:xe?()=>Oe(Pe):void 0,isUpdating:De},Y.instanceId):(0,$.jsx)(`div`,{className:`grid min-h-64 place-items-center px-6 py-12 text-center`,children:(0,$.jsxs)(`div`,{className:`max-w-xs space-y-1`,children:[(0,$.jsx)(`h3`,{className:`text-sm font-semibold text-foreground`,children:`No provider instances`}),(0,$.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Add an instance to configure a provider for this environment.`})]})}),e[168]=xe,e[169]=De,e[170]=Oe,e[171]=q,e[172]=Ae,e[173]=je,e[174]=J,e[175]=Ne,e[176]=Y,e[177]=Pe,e[178]=W,e[179]=Ze,e[180]=$e,e[181]=et,e[182]=it):it=e[182];let at;e[183]!==rt||e[184]!==it?(at=(0,$.jsx)(`section`,{id:`provider-instance-editor`,"aria-label":rt,className:`min-w-0 bg-card`,children:it}),e[183]=rt,e[184]=it,e[185]=at):at=e[185];let ot;e[186]!==Ue||e[187]!==nt||e[188]!==at?(ot=(0,$.jsxs)(`div`,{className:Ue,children:[nt,at]}),e[186]=Ue,e[187]=nt,e[188]=at,e[189]=ot):ot=e[189];let st;e[190]!==ge||e[191]!==We||e[192]!==Z||e[193]!==ot?(st=(0,$.jsx)(ge,{title:We,headerAction:Z,children:ot}),e[190]=ge,e[191]=We,e[192]=Z,e[193]=ot,e[194]=st):st=e[194];let ct;e[195]===_?ct=e[196]:(ct=(0,$.jsx)(xt,{open:_,onOpenChange:v,onCreated:x}),e[195]=_,e[196]=ct);let lt=S!==null,ut;e[197]===Symbol.for(`react.memo_cache_sentinel`)?(ut=e=>!e&&C(null),e[197]=ut):ut=e[197];let dt=S?.kind===`delete`?`Delete ${S.displayName}?`:`Reset ${S?.displayName??`provider`}?`,ft;e[198]===dt?ft=e[199]:(ft=(0,$.jsx)(R,{children:dt}),e[198]=dt,e[199]=ft);let pt=S?.kind===`delete`?`This removes the instance, its model preferences, and its favorites. Existing threads that reference it may no longer start; text generation returns to its default if needed.`:`This restores the built-in instance configuration, removes its model preferences and favorites, and resets text generation if it uses this instance.`,mt;e[200]===pt?mt=e[201]:(mt=(0,$.jsx)(B,{children:pt}),e[200]=pt,e[201]=mt);let ht;e[202]!==ft||e[203]!==mt?(ht=(0,$.jsxs)(se,{children:[ft,mt]}),e[202]=ft,e[203]=mt,e[204]=ht):ht=e[204];let gt;e[205]===S?gt=e[206]:(gt=S?.kind===`delete`?(0,$.jsx)(`div`,{className:`px-6 pb-4`,children:(0,$.jsx)(`code`,{className:`block rounded-md border border-border/70 bg-muted/40 px-3 py-2 text-xs text-foreground`,children:S.instanceId})}):null,e[205]=S,e[206]=gt);let _t;e[207]===Symbol.for(`react.memo_cache_sentinel`)?(_t=(0,$.jsx)(ue,{render:(0,$.jsx)(N,{variant:`outline`}),children:`Cancel`}),e[207]=_t):_t=e[207];let vt=S?.kind===`delete`?`destructive`:`default`,yt=S?.kind===`delete`?`Delete instance`:`Reset settings`,bt;e[208]!==Te||e[209]!==vt||e[210]!==yt?(bt=(0,$.jsxs)(ae,{children:[_t,(0,$.jsx)(N,{variant:vt,onClick:Te,children:yt})]}),e[208]=Te,e[209]=vt,e[210]=yt,e[211]=bt):bt=e[211];let St;e[212]!==ht||e[213]!==gt||e[214]!==bt?(St=(0,$.jsxs)(I,{children:[ht,gt,bt]}),e[212]=ht,e[213]=gt,e[214]=bt,e[215]=St):St=e[215];let Ct;e[216]!==lt||e[217]!==St?(Ct=(0,$.jsx)(P,{open:lt,onOpenChange:ut,children:St}),e[216]=lt,e[217]=St,e[218]=Ct):Ct=e[218];let wt;return e[219]!==be||e[220]!==Ke||e[221]!==st||e[222]!==ct||e[223]!==Ct?(wt=(0,$.jsxs)(be,{children:[Ke,st,ct,Ct]}),e[219]=be,e[220]=Ke,e[221]=st,e[222]=ct,e[223]=Ct,e[224]=wt):wt=e[224],wt}function ln(){}function un(e){return e.model}function dn(e){return[e.instanceId,e]}function fn(e){S.add(Ae({type:`error`,title:`Provider update failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function pn(e){return e.length>0}function mn(e){return e.trim()}function hn(e){return e.trim().length>0}function gn(e){return e.trim().length>0}function _n(e,t){return t.checkedAt>e?t.checkedAt:e}function vn(e){S.add(Ae({type:`error`,title:`Failed to refresh providers`,description:e instanceof Error?e.message:`An error occurred.`}))}export{cn as ProvidersSettingsPanel};