ryco-cli 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/README.md +50 -2
  2. package/dist/{AzureDevOpsSourceControlProvider-BEDcpXP2.cjs → AzureDevOpsSourceControlProvider-6holYS_D.cjs} +2 -2
  3. package/dist/{AzureDevOpsSourceControlProvider-CajSnvPV.mjs → AzureDevOpsSourceControlProvider-CC2_COxP.mjs} +3 -3
  4. package/dist/{BitbucketSourceControlProvider-Ryxef3zA.mjs → BitbucketSourceControlProvider-CYR_BD1d.mjs} +10 -3
  5. package/dist/{BitbucketSourceControlProvider-Ca-sxPgI.cjs → BitbucketSourceControlProvider-a0IsNFyG.cjs} +9 -2
  6. package/dist/{BunPTY-B_vjRZN4.mjs → BunPTY-BWhtEA50.mjs} +1 -1
  7. package/dist/{ClaudeDriver-CxOmXtj3.cjs → ClaudeDriver-C6tQNEWO.cjs} +12 -6
  8. package/dist/{ClaudeDriver-oGrpXzWa.mjs → ClaudeDriver-D3nsxwH9.mjs} +13 -7
  9. package/dist/{CodexDriver-DbICyzcH.mjs → CodexDriver-BILrJG8o.mjs} +14 -7
  10. package/dist/{CodexDriver-C1I8AGHl.cjs → CodexDriver-ms_YgFD7.cjs} +13 -6
  11. package/dist/{CodexTextGeneration-DV3LOkTX.mjs → CodexTextGeneration-BIKHl7E3.mjs} +4 -4
  12. package/dist/{CodexTextGeneration-Cr97QFv_.cjs → CodexTextGeneration-CHEgoANm.cjs} +3 -3
  13. package/dist/{CopilotDriver-GUpzG61v.cjs → CopilotDriver-B0--ZwIK.cjs} +14 -7
  14. package/dist/{CopilotDriver-Dt6azZQI.mjs → CopilotDriver-CmD3Ffyl.mjs} +15 -8
  15. package/dist/{CursorDriver-C3gFClL-.mjs → CursorDriver-CbeaIbdb.mjs} +5 -5
  16. package/dist/{CursorDriver-lhvplGt8.cjs → CursorDriver-DTVPXZ-R.cjs} +4 -4
  17. package/dist/{ForgejoSourceControlProvider-DTVWs_CM.mjs → ForgejoSourceControlProvider-DX6d9gvz.mjs} +3 -3
  18. package/dist/{ForgejoSourceControlProvider-2PTEgbVl.cjs → ForgejoSourceControlProvider-DwAog76b.cjs} +2 -2
  19. package/dist/{GitHubSourceControlProvider-Beu-58zB.cjs → GitHubSourceControlProvider-9lJFzjsu.cjs} +2 -2
  20. package/dist/{GitHubSourceControlProvider-BJmqP2K1.mjs → GitHubSourceControlProvider-C-LGwho3.mjs} +3 -3
  21. package/dist/{GitLabSourceControlProvider-CWnF37fR.mjs → GitLabSourceControlProvider-CkeT2aEx.mjs} +3 -3
  22. package/dist/{GitLabSourceControlProvider-CCHBNnen.cjs → GitLabSourceControlProvider-CvKA74lg.cjs} +2 -2
  23. package/dist/{Metrics-BCOc3Ml2.mjs → Metrics-6Xj17Se3.mjs} +94 -2
  24. package/dist/{Metrics-DNOriWhP.cjs → Metrics-CIW1QH7M.cjs} +128 -0
  25. package/dist/{NodePTY-_u3kQLvd.mjs → NodePTY-C_cR3Ayy.mjs} +1 -1
  26. package/dist/{OpenCodeDriver-i2DXhUaw.cjs → OpenCodeDriver-CXUsnl5o.cjs} +13 -7
  27. package/dist/{OpenCodeDriver-Cja8fkzJ.mjs → OpenCodeDriver-ClWtCk0j.mjs} +14 -8
  28. package/dist/{SourceControlProviderDiscoveryCatalog-DyPSXqm_.cjs → SourceControlProviderDiscoveryCatalog-_rg0mc1o.cjs} +99 -99
  29. package/dist/{SourceControlProviderDiscoveryCatalog-DoDSpZoa.mjs → SourceControlProviderDiscoveryCatalog-yMDer_Yh.mjs} +100 -100
  30. package/dist/bin.cjs +33888 -31768
  31. package/dist/bin.mjs +33869 -31750
  32. package/dist/client/assets/{AnimatedHeight-DCd3-Wey.js → AnimatedHeight-DgItDSis.js} +1 -1
  33. package/dist/client/assets/AppearanceSettings-BlsMFBvJ.js +1 -0
  34. package/dist/client/assets/BranchToolbar.logic-C_xHEt9C.js +1 -0
  35. package/dist/client/assets/ChatRightPanel-CThudBb1.js +188 -0
  36. package/dist/client/assets/ChatThreadRouteView-CV6ETYG5.js +1 -0
  37. package/dist/client/assets/CommandPaletteDialog-C_H7R8S5.js +1 -0
  38. package/dist/client/assets/CompositeRoot-DjnzUIwC.js +1 -0
  39. package/dist/client/assets/ConnectionsSettings-hArR4Oe3.js +1 -0
  40. package/dist/client/assets/DiagnosticsSettings-B340S_mq.js +1 -0
  41. package/dist/client/assets/DialogHandle-BJY7cHCV.js +1 -0
  42. package/dist/client/assets/{DialogRoot-BCS_qKVO.js → DialogRoot-Ej1FVk-_.js} +1 -1
  43. package/dist/client/assets/DialogTitle-H1yIMmA9.js +1 -0
  44. package/dist/client/assets/DialogTrigger-BHMq_K2G.js +1 -0
  45. package/dist/client/assets/DialogViewport-DvjAl76K.js +1 -0
  46. package/dist/client/assets/DraftChatThreadRouteView-pOkyeKPS.js +1 -0
  47. package/dist/client/assets/JetBrainsIcons-DTTF47I0.js +1 -0
  48. package/dist/client/assets/KeybindingsSettings-CW3RRi-7.js +7 -0
  49. package/dist/client/assets/McpServersSettings-dQ3BzOWY.js +6 -0
  50. package/dist/client/assets/NoActiveThreadState-DVHwrkCp.js +1 -0
  51. package/dist/client/assets/OpinionatedPluginsSettings-Cjj23Fs4.js +1 -0
  52. package/dist/client/assets/ProjectFavicon-TDP7HRfn.js +1 -0
  53. package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-Dqh8LlGG.js → ProviderUpdateLaunchNotification.logic-6TpFsmiI.js} +1 -1
  54. package/dist/client/assets/ProvidersSettingsPanel-D15EeWAq.js +1 -0
  55. package/dist/client/assets/{RedactedSensitiveText-Ddxd4ZX9.js → RedactedSensitiveText-BfoVjPsE.js} +1 -1
  56. package/dist/client/assets/RootAppShell-CWBPSA2w.js +12 -0
  57. package/dist/client/assets/SettingsDialog-oJCE5foT.js +2 -0
  58. package/dist/client/assets/SourceControlSettings-CPnlMxNm.js +1 -0
  59. package/dist/client/assets/ThreadStatusIndicators-B0leIJGD.js +1 -0
  60. package/dist/client/assets/{ThreadTerminalDrawer-BxuSy2xD.js → ThreadTerminalDrawer-COq2Fk17.js} +3 -3
  61. package/dist/client/assets/ThreadWorkspacePanel-qF9y6QT9.js +166 -0
  62. package/dist/client/assets/{alert-dialog-BwCq7-J2.js → alert-dialog-lMfKpG2t.js} +1 -1
  63. package/dist/client/assets/{chatThreadActions-DHwgLZQX.js → chatThreadActions-PPyTj_x0.js} +1 -1
  64. package/dist/client/assets/{clamp-Bj3CMoU0.js → clamp-JiD4IZ0Z.js} +1 -1
  65. package/dist/client/assets/clipboard-copy-CYBLSG2q.js +1 -0
  66. package/dist/client/assets/commandPaletteStore-uVfCD7zE.js +1 -0
  67. package/dist/client/assets/composerDraftStore-D12lUSfh.js +21 -0
  68. package/dist/client/assets/desktopUpdateAtoms-X6uM5SoD.js +2 -0
  69. package/dist/client/assets/{download-DchCbuiJ.js → download-DLBlpp4h.js} +1 -1
  70. package/dist/client/assets/{draft-input-Byd_iP54.js → draft-input-dLlVMl5P.js} +1 -1
  71. package/dist/client/assets/editorPreferences-BLeEBSD_.js +1 -0
  72. package/dist/client/assets/empty-DlLY-Hhj.js +1 -0
  73. package/dist/client/assets/{folder-open-CuS_UI1W.js → folder-open-DMjz0lpx.js} +1 -1
  74. package/dist/client/assets/{group-BlyMND_M.js → group-zDBPF7rR.js} +1 -1
  75. package/dist/client/assets/{index-R0mA-hZk.js → index-Dq8sT2lF.js} +2 -2
  76. package/dist/client/assets/{input-BQQgfZzY.js → input-B9-RWT56.js} +1 -1
  77. package/dist/client/assets/kbd-aeSsjiPI.js +1 -0
  78. package/dist/client/assets/{keybindings-BIa18Wmf.js → keybindings-Dx4Nc1vY.js} +1 -1
  79. package/dist/client/assets/{keyboard-BQYTddoX.js → keyboard-DDTWQkr0.js} +1 -1
  80. package/dist/client/assets/keyedQuery-Ds4OGhX2.js +0 -0
  81. package/dist/client/assets/main-C57RhHZ_.css +2 -0
  82. package/dist/client/assets/main-DxfpmoKJ.js +9 -0
  83. package/dist/client/assets/palette-BQcz-ZYV.js +1 -0
  84. package/dist/client/assets/play-QloDGe4R.js +1 -0
  85. package/dist/client/assets/plus-4Oy56d-3.js +1 -0
  86. package/dist/client/assets/projectAtoms-DUEBb7Zz.js +1 -0
  87. package/dist/client/assets/providerDriverMeta-Dwi6Zqgd.js +1 -0
  88. package/dist/client/assets/providerIconUtils-uhWb4bdg.js +47 -0
  89. package/dist/client/assets/radio-group-DHyQlLeX.js +1 -0
  90. package/dist/client/assets/{refresh-cw-DFCVsvMH.js → refresh-cw-DkBMGllm.js} +1 -1
  91. package/dist/client/assets/{resolveAriaLabelledBy-CdSYKkwq.js → resolveAriaLabelledBy-DDfIbj05.js} +1 -1
  92. package/dist/client/assets/rightPanelRouteSearch-DfuWVvXN.js +1 -0
  93. package/dist/client/assets/scale-BActunFu.js +1 -0
  94. package/dist/client/assets/scroll-area-D-YOUG02.js +1 -0
  95. package/dist/client/assets/separator-TInKeIDo.js +1 -0
  96. package/dist/client/assets/{server-B7ETA5io.js → server-BtEG3NAw.js} +1 -1
  97. package/dist/client/assets/session-logic-DNf1aXq_.js +4 -0
  98. package/dist/client/assets/settingsDialogStore-BINi7pdD.js +1 -0
  99. package/dist/client/assets/settingsLayout-D22Mm0u3.js +1 -0
  100. package/dist/client/assets/shallow-Dmd-gez1.js +1 -0
  101. package/dist/client/assets/{sidebar-VWf4R998.js → sidebar-DHwNQmWp.js} +1 -1
  102. package/dist/client/assets/skeleton-DWaac_qp.js +1 -0
  103. package/dist/client/assets/storeSelectors-Cx1IYPA4.js +1 -0
  104. package/dist/client/assets/threadSelectionStore-C0ig4405.js +1 -0
  105. package/dist/client/assets/toast-DE7a4wkW.js +1 -0
  106. package/dist/client/assets/toggle-BIW4AyPY.js +1 -0
  107. package/dist/client/assets/{toggle-group-D7mEwQCR.js → toggle-group-CnLjaHSL.js} +1 -1
  108. package/dist/client/assets/tokenModePresentation-BSYdIvBm.js +1 -0
  109. package/dist/client/assets/{trash-2-D0zhbiNO.js → trash-2-BI5xcbsm.js} +1 -1
  110. package/dist/client/assets/triangle-alert-DJef_Uvh.js +1 -0
  111. package/dist/client/assets/undo-2-DeZ2cMGS.js +1 -0
  112. package/dist/client/assets/useHandleNewThread-XB82O6SA.js +1 -0
  113. package/dist/client/assets/useLabelableId-DBAgv9qQ.js +1 -0
  114. package/dist/client/assets/useNavigate-B2tgshhW.js +1 -0
  115. package/dist/client/assets/useTheme-Dv42Z8uy.js +1 -0
  116. package/dist/client/assets/{vscode-icons-C1r6bNpj.js → vscode-icons-DM9qFoEr.js} +1 -1
  117. package/dist/client/assets/{wrench-DzrU49ry.js → wrench-je4QOyG-.js} +1 -1
  118. package/dist/client/assets/x-fI9snvD3.js +1 -0
  119. package/dist/client/index.html +1 -1
  120. package/dist/{collectUint8StreamText-Cgz3T1YG.mjs → collectUint8StreamText-C2z5Y8tF.mjs} +509 -135
  121. package/dist/{collectUint8StreamText-CgTEDbi7.cjs → collectUint8StreamText-TCG6xW_P.cjs} +514 -134
  122. package/dist/{makeManagedServerProvider-D43I_B9P.mjs → makeManagedServerProvider-BXO8QvzC.mjs} +2 -2
  123. package/dist/{makeManagedServerProvider-DRMA8nAp.cjs → makeManagedServerProvider-DPFw9gV_.cjs} +1 -1
  124. package/package.json +1 -1
  125. package/dist/client/assets/AppearanceSettings-pPltzbuu.js +0 -1
  126. package/dist/client/assets/BranchToolbar.logic-BUrYeNec.js +0 -1
  127. package/dist/client/assets/ChatRightPanel-Cy2c02Dt.js +0 -188
  128. package/dist/client/assets/ChatThreadRouteView-C93RPP7s.js +0 -1
  129. package/dist/client/assets/CommandPaletteDialog-D6t0Mkkl.js +0 -1
  130. package/dist/client/assets/CompositeRoot-C5GNdZws.js +0 -1
  131. package/dist/client/assets/ConnectionsSettings-qYzLbX7_.js +0 -1
  132. package/dist/client/assets/DialogHandle-C1Oxda1b.js +0 -1
  133. package/dist/client/assets/DialogTitle-R_4ZQbHx.js +0 -1
  134. package/dist/client/assets/DialogTrigger-ChuIKLi7.js +0 -1
  135. package/dist/client/assets/DialogViewport-Dq_9hdYC.js +0 -1
  136. package/dist/client/assets/DraftChatThreadRouteView-BwDNEWLP.js +0 -1
  137. package/dist/client/assets/JetBrainsIcons-CZi1rQn9.js +0 -1
  138. package/dist/client/assets/KeybindingsSettings-CEqFMcaP.js +0 -7
  139. package/dist/client/assets/McpServersSettings-Co1o7_0g.js +0 -6
  140. package/dist/client/assets/NoActiveThreadState-5VSVCJBv.js +0 -1
  141. package/dist/client/assets/OpinionatedPluginsSettings-BnDPa2E2.js +0 -1
  142. package/dist/client/assets/ProjectFavicon-CtqYuFQF.js +0 -1
  143. package/dist/client/assets/ProvidersSettingsPanel-BwDIEOF4.js +0 -1
  144. package/dist/client/assets/QueryClientProvider-B5z3RyQ9.js +0 -1
  145. package/dist/client/assets/RootAppShell-CThrOBqP.js +0 -12
  146. package/dist/client/assets/SettingsDialog-C-vm2P1q.js +0 -2
  147. package/dist/client/assets/SourceControlSettings-oK-xLUFA.js +0 -1
  148. package/dist/client/assets/ThreadStatusIndicators-6ASnD4_d.js +0 -1
  149. package/dist/client/assets/ThreadWorkspacePanel-C3S7Fjib.js +0 -166
  150. package/dist/client/assets/arrow-up-DUD3DBES.js +0 -1
  151. package/dist/client/assets/codexUsageLimits-Mjd2rHmE.js +0 -1
  152. package/dist/client/assets/commandPaletteStore-oFMPKPmp.js +0 -1
  153. package/dist/client/assets/composerDraftStore-DTMZbmmF.js +0 -21
  154. package/dist/client/assets/desktopUpdateReactQuery-DdRc1zr8.js +0 -2
  155. package/dist/client/assets/empty-CFWSIvUd.js +0 -1
  156. package/dist/client/assets/environmentApi-4U60qRO5.js +0 -1
  157. package/dist/client/assets/kbd-Dgp27U1W.js +0 -1
  158. package/dist/client/assets/main-Da7Z4Ig1.css +0 -2
  159. package/dist/client/assets/main-YXLWCEbb.js +0 -9
  160. package/dist/client/assets/mutation-B8SILYi_.js +0 -1
  161. package/dist/client/assets/plus-F__wNuW-.js +0 -1
  162. package/dist/client/assets/providerDriverMeta-BIPPb2w0.js +0 -1
  163. package/dist/client/assets/providerIconUtils-C54pAs0t.js +0 -46
  164. package/dist/client/assets/rightPanelRouteSearch-DweDTgju.js +0 -1
  165. package/dist/client/assets/scroll-area-CZPNMSSG.js +0 -1
  166. package/dist/client/assets/separator-ZLn_GZKy.js +0 -1
  167. package/dist/client/assets/session-logic-DOD1qizY.js +0 -4
  168. package/dist/client/assets/settingsDialogStore-DJNXaaZ-.js +0 -1
  169. package/dist/client/assets/settingsLayout-BaSDLd6v.js +0 -1
  170. package/dist/client/assets/skeleton-IoKKnfW9.js +0 -1
  171. package/dist/client/assets/storeSelectors-BL-4Ncd3.js +0 -1
  172. package/dist/client/assets/threadRoutes-a4QytG8s.js +0 -1
  173. package/dist/client/assets/threadSelectionStore-CgsIp6vR.js +0 -1
  174. package/dist/client/assets/toast-L2eWWYjv.js +0 -1
  175. package/dist/client/assets/toggle-oOk0T_MY.js +0 -1
  176. package/dist/client/assets/useHandleNewThread-DVTiX8Lz.js +0 -1
  177. package/dist/client/assets/useLabelableId-yw8wMwvn.js +0 -1
  178. package/dist/client/assets/useNavigate-CvKQXZa7.js +0 -1
  179. package/dist/client/assets/useTheme-C7Ji7x06.js +0 -1
  180. package/dist/client/assets/x-BQzUKGMv.js +0 -1
  181. package/dist/{NodeSqliteClient-BXy61fAd.mjs → NodeSqliteClient-A1TEgwj_.mjs} +1 -1
  182. package/dist/{NodeSqliteClient-homCO8-6.cjs → NodeSqliteClient-B5aDHbNc.cjs} +2 -2
@@ -0,0 +1,6 @@
1
+ import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{Jt as r}from"./projectAtoms-DUEBb7Zz.js";import{A as i,Jr as a,Li as o,M as s,Ni as c,Ri as l,Sr as u,Xr as d,Zr as f,br as p,k as ee}from"./composerDraftStore-D12lUSfh.js";import{a as te,i as m,m as ne}from"./toast-DE7a4wkW.js";import{At as h,D as re,Ft as g,G as _,H as v,It as y,Lt as b,Mt as x,Nt as S,Pt as C,Tt as w,U as T,W as E,_ as D,lr as O,nr as k,z as A}from"./providerIconUtils-uhWb4bdg.js";import{t as j}from"./plus-4Oy56d-3.js";import{t as M}from"./refresh-cw-DkBMGllm.js";import{t as N}from"./server-BtEG3NAw.js";import{t as ie}from"./trash-2-BI5xcbsm.js";import{t as P}from"./triangle-alert-DJef_Uvh.js";import{t as F}from"./wrench-je4QOyG-.js";import{t as I}from"./input-B9-RWT56.js";import{r as L}from"./providerDriverMeta-Dwi6Zqgd.js";var ae=d(`earth`,[[`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`}]]),oe=d(`log-in`,[[`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`}]]),R=d(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),z=e(t(),1),B=n(),se=/^[a-zA-Z][a-zA-Z0-9_-]*$/;function ce(){return{name:``,transport:`stdio`,command:``,argsText:``,cwd:``,url:``,bearerTokenEnvVar:``,envText:``,envVarsText:``,httpHeadersText:``,envHttpHeadersText:``,enabled:!0,required:!1,startupTimeoutSec:``,toolTimeoutSec:``,enabledToolsText:``,disabledToolsText:``,oauthScopesText:``}}function V(e){return e.join(`
2
+ `)}function H(e){return Object.entries(e).map(([e,t])=>`${e}=${t}`).join(`
3
+ `)}function U(e){let t=e.config;return{name:e.name,transport:t.transport===`http`?`http`:`stdio`,command:t.command??``,argsText:V(t.args),cwd:t.cwd??``,url:t.url??``,bearerTokenEnvVar:t.bearerTokenEnvVar??``,envText:H(t.env),envVarsText:V(t.envVars),httpHeadersText:H(t.httpHeaders),envHttpHeadersText:H(t.envHttpHeaders),enabled:t.enabled,required:t.required??!1,startupTimeoutSec:t.startupTimeoutSec?.toString()??``,toolTimeoutSec:t.toolTimeoutSec?.toString()??``,enabledToolsText:V(t.enabledTools),disabledToolsText:V(t.disabledTools),oauthScopesText:V(t.oauthScopes)}}function W(e){return e.split(/\r?\n/).map(e=>e.trim()).filter(e=>e.length>0)}function le(e){let t={};for(let n of W(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 G(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(!se.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=G(n);if(Number.isNaN(e))return`${t} must be a positive number.`}return null}function de(e){let t=G(e.startupTimeoutSec),n=G(e.toolTimeoutSec);return{transport:e.transport,command:e.command.trim(),args:W(e.argsText),cwd:e.cwd.trim()||null,url:e.url.trim(),bearerTokenEnvVar:e.bearerTokenEnvVar.trim()||null,env:le(e.envText),envVars:W(e.envVarsText),httpHeaders:le(e.httpHeadersText),envHttpHeaders:le(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:W(e.enabledToolsText),disabledTools:W(e.disabledToolsText),oauthScopes:W(e.oauthScopesText)}}function fe(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 K=c(),pe=[],q=[];function J(){let e=r().mcp;if(!e)throw Error(`MCP settings are unavailable before a backend is paired.`);return e}function Y(e,t){m.add(te({type:`error`,title:e,description:t instanceof Error?t.message:`An error occurred.`}))}function me(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 he(e){return e.startupStatus===`failed`?`error`:e.startupStatus===`disabled`?`outline`:e.authStatus===`notLoggedIn`?`warning`:e.startupStatus===`ready`?`success`:`outline`}function ge(e){return e.startupStatus===`disabled`?`Disabled`:e.startupStatus===`failed`?`Failed`:e.authStatus===`notLoggedIn`?`Login needed`:e.startupStatus===`ready`?`Ready`:`Unknown`}function X(e){return e.enabled?e.status===`managed`?`success`:e.status===`external`?`warning`:`outline`:`outline`}function Z(e){if(!e.enabled)return`Disabled`;switch(e.status){case`managed`:return`Managed`;case`external`:return`External config`;case`unsupported`:return`Not wired`}}function Q(e){return e.displayName??L(e.driver)?.label??f(e.driver)}function $(e){let t=(0,B.c)(5),n;t[0]===e.label?n=t[1]:(n=(0,K.jsx)(`span`,{children:e.label}),t[0]=e.label,t[1]=n);let r;return t[2]!==e.children||t[3]!==n?(r=(0,K.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 _e(e){let t=(0,B.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,K.jsx)(`p`,{className:`text-[11px] leading-relaxed text-muted-foreground/70`,children:n}),t[0]=n,t[1]=r),r}function ve(e){let t=(0,B.c)(5),{value:n,onChange:r}=e,i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={value:`stdio`,label:`Stdio`,icon:k},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,K.jsx)(`div`,{className:`grid grid-cols-2 rounded-lg border bg-muted/30 p-1`,children:a.map(e=>{let t=e.icon;return(0,K.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),className:u(`flex h-8 items-center justify-center gap-2 rounded-md text-xs font-medium transition-colors`,n===e.value?`bg-background text-foreground shadow-xs`:`text-muted-foreground`),children:[(0,K.jsx)(t,{className:`size-3.5`}),e.label]},e.value)})}),t[2]=r,t[3]=n,t[4]=o):o=t[4],o}function ye({open:e,server:t,onOpenChange:n,onSubmit:r}){let[i,a]=(0,z.useState)(()=>ce()),[o,s]=(0,z.useState)(null),[c,l]=(0,z.useState)(!1),u=t!==null;(0,z.useEffect)(()=>{e&&(a(t?U(t):ce()),s(null))},[e,t]);let d=(e,t)=>{a(n=>({...n,[e]:t}))},f=async()=>{let e=ue(i);if(e){s(e);return}l(!0);try{await r(i),n(!1)}catch(e){Y(`Failed to save MCP server`,e)}finally{l(!1)}};return(0,K.jsx)(h,{open:e,onOpenChange:n,children:(0,K.jsxs)(y,{className:`max-w-2xl`,bottomStickOnMobile:!1,children:[(0,K.jsxs)(C,{children:[(0,K.jsx)(b,{children:u?`Edit MCP server`:`Add MCP server`}),(0,K.jsx)(x,{children:`Configuration is written to the selected Codex config and reloaded after save.`})]}),(0,K.jsxs)(g,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-[1fr_12rem]`,children:[(0,K.jsx)($,{label:`Server name`,children:(0,K.jsx)(I,{value:i.name,disabled:u,onChange:e=>d(`name`,e.target.value),placeholder:`github`,spellCheck:!1})}),(0,K.jsx)($,{label:`Transport`,children:(0,K.jsx)(ve,{value:i.transport,onChange:e=>d(`transport`,e)})})]}),i.transport===`stdio`?(0,K.jsxs)(`div`,{className:`grid gap-4`,children:[(0,K.jsx)($,{label:`Command`,children:(0,K.jsx)(I,{value:i.command,onChange:e=>d(`command`,e.target.value),placeholder:`npx`,spellCheck:!1})}),(0,K.jsxs)($,{label:`Arguments`,children:[(0,K.jsx)(w,{value:i.argsText,onChange:e=>d(`argsText`,e.target.value),placeholder:`-y
4
+ @modelcontextprotocol/server-filesystem
5
+ /tmp/project`,spellCheck:!1}),(0,K.jsx)(_e,{children:`One argument per line.`})]}),(0,K.jsx)($,{label:`Working directory`,children:(0,K.jsx)(I,{value:i.cwd,onChange:e=>d(`cwd`,e.target.value),placeholder:`/path/to/project`,spellCheck:!1})})]}):(0,K.jsxs)(`div`,{className:`grid gap-4`,children:[(0,K.jsx)($,{label:`URL`,children:(0,K.jsx)(I,{value:i.url,onChange:e=>d(`url`,e.target.value),placeholder:`https://mcp.example.com/mcp`,spellCheck:!1})}),(0,K.jsx)($,{label:`Bearer token env var`,children:(0,K.jsx)(I,{value:i.bearerTokenEnvVar,onChange:e=>d(`bearerTokenEnvVar`,e.target.value),placeholder:`MCP_TOKEN`,spellCheck:!1})}),(0,K.jsxs)($,{label:`HTTP headers`,children:[(0,K.jsx)(w,{value:i.httpHeadersText,onChange:e=>d(`httpHeadersText`,e.target.value),placeholder:`X-Client=ryco`,spellCheck:!1}),(0,K.jsx)(_e,{children:`Static headers as KEY=VALUE lines.`})]}),(0,K.jsxs)($,{label:`Env-backed HTTP headers`,children:[(0,K.jsx)(w,{value:i.envHttpHeadersText,onChange:e=>d(`envHttpHeadersText`,e.target.value),placeholder:`Authorization=GITHUB_TOKEN`,spellCheck:!1}),(0,K.jsx)(_e,{children:`Header name to environment variable name, one per line.`})]})]}),(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,K.jsxs)($,{label:`Environment values`,children:[(0,K.jsx)(w,{value:i.envText,onChange:e=>d(`envText`,e.target.value),placeholder:`API_BASE=https://example.com`,spellCheck:!1}),(0,K.jsx)(_e,{children:`KEY=VALUE lines stored in Codex config.`})]}),(0,K.jsxs)($,{label:`Environment allow-list`,children:[(0,K.jsx)(w,{value:i.envVarsText,onChange:e=>d(`envVarsText`,e.target.value),placeholder:`GITHUB_TOKEN
6
+ SENTRY_AUTH_TOKEN`,spellCheck:!1}),(0,K.jsx)(_e,{children:`One env var name per line.`})]})]}),(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[(0,K.jsx)($,{label:`Startup timeout seconds`,children:(0,K.jsx)(I,{value:i.startupTimeoutSec,onChange:e=>d(`startupTimeoutSec`,e.target.value),inputMode:`decimal`,placeholder:`10`})}),(0,K.jsx)($,{label:`Tool timeout seconds`,children:(0,K.jsx)(I,{value:i.toolTimeoutSec,onChange:e=>d(`toolTimeoutSec`,e.target.value),inputMode:`decimal`,placeholder:`60`})})]}),(0,K.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-3`,children:[(0,K.jsx)($,{label:`Enabled tools`,children:(0,K.jsx)(w,{value:i.enabledToolsText,onChange:e=>d(`enabledToolsText`,e.target.value),spellCheck:!1})}),(0,K.jsx)($,{label:`Disabled tools`,children:(0,K.jsx)(w,{value:i.disabledToolsText,onChange:e=>d(`disabledToolsText`,e.target.value),spellCheck:!1})}),(0,K.jsx)($,{label:`OAuth scopes`,children:(0,K.jsx)(w,{value:i.oauthScopesText,onChange:e=>d(`oauthScopesText`,e.target.value),spellCheck:!1})})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-5 border-t pt-4`,children:[(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs font-medium text-foreground/80`,children:[(0,K.jsx)(re,{checked:i.enabled,onCheckedChange:e=>d(`enabled`,!!e)}),`Enabled`]}),(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs font-medium text-foreground/80`,children:[(0,K.jsx)(re,{checked:i.required,onCheckedChange:e=>d(`required`,!!e)}),`Required`]})]}),o?(0,K.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,K.jsx)(P,{className:`mt-0.5 size-3.5`}),(0,K.jsx)(`span`,{children:o})]}):null]}),(0,K.jsxs)(S,{children:[(0,K.jsx)(p,{variant:`outline`,onClick:()=>n(!1),disabled:c,children:`Cancel`}),(0,K.jsxs)(p,{onClick:()=>void f(),disabled:c,children:[c?(0,K.jsx)(O,{className:`animate-spin`}):(0,K.jsx)(R,{}),`Save`]})]})]})})}function be(e){let t=(0,B.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,K.jsx)(E,{className:`w-full sm:w-72`,"aria-label":`MCP workspace`,children:(0,K.jsx)(_,{children:c})}),t[7]=c,t[8]=l);let u;t[9]===n?u=t[10]:(u=n.map(xe),t[9]=n,t[10]=u);let d;t[11]===u?d=t[12]:(d=(0,K.jsx)(T,{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,K.jsxs)(A,{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 xe(e){return(0,K.jsx)(v,{hideIndicator:!0,value:e.id,children:(0,K.jsx)(`span`,{className:`truncate`,children:e.displayPath})},e.id)}function Se(e){let t=(0,B.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,K.jsx)(`div`,{className:`border-b px-4 py-3`,children:(0,K.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=L(e.driver)?.icon??N,n=e.workspaceId!==void 0&&e.workspaceId===r,a=e.workspaceId!==void 0&&!n;return(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 px-4 py-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,K.jsxs)(`div`,{className:`relative mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg border bg-background`,children:[(0,K.jsx)(t,{className:`size-4 text-muted-foreground`}),e.accentColor?(0,K.jsx)(`span`,{className:`absolute -right-0.5 -bottom-0.5 size-2.5 rounded-full border border-background`,style:{backgroundColor:e.accentColor}}):null]}),(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:Q(e)}),(0,K.jsx)(`span`,{className:`font-mono text-[11px] text-muted-foreground/70`,children:e.instanceId})]}),(0,K.jsx)(`p`,{className:`mt-1 max-w-2xl text-xs leading-relaxed text-muted-foreground/80`,children:e.message})]})]}),(0,K.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2 sm:justify-end`,children:[(0,K.jsx)(D,{variant:X(e),children:Z(e)}),e.workspaceId?(0,K.jsx)(p,{size:`xs`,variant:n?`secondary`:`outline`,disabled:!a,onClick:()=>{e.workspaceId&&i(e.workspaceId)},children:`Codex 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,K.jsxs)(`section`,{className:`rounded-lg border bg-muted/10`,children:[a,(0,K.jsx)(`div`,{className:`divide-y`,children:o})]}),t[8]=o,t[9]=s),s}function Ce(e){let t=(0,B.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,K.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,K.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(Ee),t[2]=n.tools,t[3]=i);let a;t[4]===i?a=t[5]:(a=(0,K.jsxs)(`div`,{children:[r,(0,K.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,K.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(Te),t[7]=n.resources,t[8]=s);let c;t[9]===s?c=t[10]:(c=(0,K.jsxs)(`div`,{children:[o,(0,K.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,K.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(we),t[12]=n.resourceTemplates,t[13]=u);let d;t[14]===u?d=t[15]:(d=(0,K.jsxs)(`div`,{children:[l,(0,K.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,K.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 we(e){return(0,K.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,K.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),(0,K.jsx)(`div`,{className:`truncate text-[11px] text-muted-foreground/75`,children:e.uriTemplate})]},e.uriTemplate)}function Te(e){return(0,K.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,K.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),(0,K.jsx)(`div`,{className:`truncate text-[11px] text-muted-foreground/75`,children:e.uri})]},e.uri)}function Ee(e){return(0,K.jsxs)(`div`,{className:`rounded-md border bg-background/60 px-2 py-1.5`,children:[(0,K.jsx)(`div`,{className:`truncate text-xs font-medium`,children:e.title??e.name}),e.description?(0,K.jsx)(`div`,{className:`line-clamp-2 text-[11px] text-muted-foreground/75`,children:e.description}):null]},e.name)}function De(e){let t=(0,B.c)(97),{server:n,mutating:r,onToggleEnabled:o,onEdit:c,onRemove:l,onOauthLogin:d}=e,[f,te]=(0,z.useState)(!1),m;t[0]===n?m=t[1]:(m=fe(n),t[0]=n,t[1]=m);let ne=m,h=`${n.tools.length} tools · ${n.resources.length+n.resourceTemplates.length} resources`,g;t[2]===n.config.transport?g=t[3]:(g=n.config.transport===`http`?(0,K.jsx)(ae,{className:`size-4 text-muted-foreground`}):(0,K.jsx)(k,{className:`size-4 text-muted-foreground`}),t[2]=n.config.transport,t[3]=g);let _;t[4]===n.name?_=t[5]:(_=(0,K.jsx)(`h3`,{className:`truncate text-sm font-semibold`,children:n.name}),t[4]=n.name,t[5]=_);let v;t[6]!==g||t[7]!==_?(v=(0,K.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[g,_]}),t[6]=g,t[7]=_,t[8]=v):v=t[8];let y;t[9]===n?y=t[10]:(y=he(n),t[9]=n,t[10]=y);let b;t[11]===n?b=t[12]:(b=ge(n),t[11]=n,t[12]=b);let x;t[13]!==y||t[14]!==b?(x=(0,K.jsx)(D,{variant:y,children:b}),t[13]=y,t[14]=b,t[15]=x):x=t[15];let S;t[16]===n.source?S=t[17]:(S=me(n.source),t[16]=n.source,t[17]=S);let C;t[18]===S?C=t[19]:(C=(0,K.jsx)(D,{variant:`outline`,children:S}),t[18]=S,t[19]=C);let w;t[20]!==v||t[21]!==x||t[22]!==C?(w=(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[v,x,C]}),t[20]=v,t[21]=x,t[22]=C,t[23]=w):w=t[23];let T;t[24]===ne?T=t[25]:(T=(0,K.jsx)(`p`,{className:`mt-1 truncate font-mono text-[11px] text-muted-foreground/80`,children:ne}),t[24]=ne,t[25]=T);let E;t[26]===n.config.transport?E=t[27]:(E=n.config.transport.toUpperCase(),t[26]=n.config.transport,t[27]=E);let O;t[28]===E?O=t[29]:(O=(0,K.jsx)(`span`,{children:E}),t[28]=E,t[29]=O);let A;t[30]===h?A=t[31]:(A=(0,K.jsx)(`span`,{children:h}),t[30]=h,t[31]=A);let j;t[32]===n.authStatus?j=t[33]:(j=(0,K.jsxs)(`span`,{children:[`Auth: `,n.authStatus]}),t[32]=n.authStatus,t[33]=j);let M;t[34]!==O||t[35]!==A||t[36]!==j?(M=(0,K.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2 text-[11px] text-muted-foreground`,children:[O,A,j]}),t[34]=O,t[35]=A,t[36]=j,t[37]=M):M=t[37];let N;t[38]===n.error?N=t[39]:(N=n.error?(0,K.jsx)(`p`,{className:`mt-2 text-xs text-destructive`,children:n.error}):null,t[38]=n.error,t[39]=N);let P;t[40]!==w||t[41]!==T||t[42]!==M||t[43]!==N?(P=(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[w,T,M,N]}),t[40]=w,t[41]=T,t[42]=M,t[43]=N,t[44]=P):P=t[44];let F;t[45]!==r||t[46]!==d||t[47]!==n?(F=n.authStatus===`notLoggedIn`?(0,K.jsxs)(ee,{children:[(0,K.jsx)(s,{render:(0,K.jsx)(p,{size:`icon-sm`,variant:`outline`,disabled:r,onClick:()=>d(n),"aria-label":`Log in to ${n.name}`,children:(0,K.jsx)(oe,{})})}),(0,K.jsx)(i,{children:`Start OAuth login`})]}):null,t[45]=r,t[46]=d,t[47]=n,t[48]=F):F=t[48];let I;t[49]!==c||t[50]!==n?(I=()=>c(n),t[49]=c,t[50]=n,t[51]=I):I=t[51];let L;t[52]!==r||t[53]!==I?(L=(0,K.jsx)(p,{size:`sm`,variant:`outline`,onClick:I,disabled:r,children:`Edit`}),t[52]=r,t[53]=I,t[54]=L):L=t[54];let R;t[55]!==l||t[56]!==n?(R=()=>l(n),t[55]=l,t[56]=n,t[57]=R):R=t[57];let se=`Remove ${n.name}`,ce;t[58]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,K.jsx)(ie,{}),t[58]=ce):ce=t[58];let V;t[59]!==r||t[60]!==R||t[61]!==se?(V=(0,K.jsx)(s,{render:(0,K.jsx)(p,{size:`icon-sm`,variant:`destructive-outline`,disabled:r,onClick:R,"aria-label":se,children:ce})}),t[59]=r,t[60]=R,t[61]=se,t[62]=V):V=t[62];let H;t[63]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,K.jsx)(i,{children:`Remove server`}),t[63]=H):H=t[63];let U;t[64]===V?U=t[65]:(U=(0,K.jsxs)(ee,{children:[V,H]}),t[64]=V,t[65]=U);let W;t[66]!==o||t[67]!==n?(W=e=>o(n,!!e),t[66]=o,t[67]=n,t[68]=W):W=t[68];let le=`Enable ${n.name}`,G;t[69]!==r||t[70]!==n.config.enabled||t[71]!==W||t[72]!==le?(G=(0,K.jsx)(re,{checked:n.config.enabled,disabled:r,onCheckedChange:W,"aria-label":le}),t[69]=r,t[70]=n.config.enabled,t[71]=W,t[72]=le,t[73]=G):G=t[73];let ue;t[74]===Symbol.for(`react.memo_cache_sentinel`)?(ue=()=>te(Oe),t[74]=ue):ue=t[74];let de=`Toggle ${n.name} inventory`,pe=f&&`rotate-180`,q;t[75]===pe?q=t[76]:(q=u(`transition-transform`,pe),t[75]=pe,t[76]=q);let J;t[77]===q?J=t[78]:(J=(0,K.jsx)(a,{className:q}),t[77]=q,t[78]=J);let Y;t[79]!==de||t[80]!==J?(Y=(0,K.jsx)(p,{size:`icon-sm`,variant:`ghost`,onClick:ue,"aria-label":de,children:J}),t[79]=de,t[80]=J,t[81]=Y):Y=t[81];let X;t[82]!==F||t[83]!==L||t[84]!==U||t[85]!==G||t[86]!==Y?(X=(0,K.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[F,L,U,G,Y]}),t[82]=F,t[83]=L,t[84]=U,t[85]=G,t[86]=Y,t[87]=X):X=t[87];let Z;t[88]!==P||t[89]!==X?(Z=(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 p-4 sm:flex-row sm:items-start sm:justify-between`,children:[P,X]}),t[88]=P,t[89]=X,t[90]=Z):Z=t[90];let Q;t[91]!==f||t[92]!==n?(Q=f?(0,K.jsx)(`div`,{className:`border-t bg-muted/20 p-4`,children:(0,K.jsx)(Ce,{server:n})}):null,t[91]=f,t[92]=n,t[93]=Q):Q=t[93];let $;return t[94]!==Z||t[95]!==Q?($=(0,K.jsxs)(`article`,{className:`rounded-lg border bg-card text-card-foreground shadow-sm/4`,children:[Z,Q]}),t[94]=Z,t[95]=Q,t[96]=$):$=t[96],$}function Oe(e){return!e}function ke(){let[e,t]=(0,z.useState)(null),[n,a]=(0,z.useState)(null),[c,d]=(0,z.useState)(null),[f,h]=(0,z.useState)(!0),[re,g]=(0,z.useState)(!1),[_,v]=(0,z.useState)(null),[y,b]=(0,z.useState)(!1),[x,S]=(0,z.useState)(null),[C,w]=(0,z.useState)(null),T=e?.workspaces??pe,E=e?.providers??q,D=(0,z.useMemo)(()=>T.find(e=>e.id===n)??null,[n,T]),k=(0,z.useCallback)(async(e,t)=>{t?.quiet||g(!0),w(null);try{d(await J().listServers({workspaceId:l.make(e),detail:`full`}))}catch(e){w(e instanceof Error?e.message:`Failed to load MCP servers.`),Y(`Failed to load MCP servers`,e)}finally{g(!1)}},[]),A=(0,z.useCallback)(async()=>{h(!0),w(null);try{let e=await J().listWorkspaces();t(e);let r=e.workspaces.find(e=>e.id===n)?.id??e.workspaces[0]?.id??null;a(r),r?await k(r,{quiet:!0}):d(null)}catch(e){w(e instanceof Error?e.message:`Failed to load MCP workspaces.`),Y(`Failed to load MCP workspaces`,e)}finally{h(!1)}},[k,n]);(0,z.useEffect)(()=>{A()},[A]);let ie=async()=>{if(!n){await A();return}await k(n)},I=async()=>{if(n){g(!0);try{d(await J().reloadServers({workspaceId:l.make(n)})),m.add(te({type:`success`,title:`MCP servers reloaded`}))}catch(e){Y(`Failed to reload MCP servers`,e)}finally{g(!1)}}},L=async e=>{n&&(d(await J().upsertServer({workspaceId:l.make(n),name:o.make(e.name.trim()),config:de(e)})),m.add(te({type:`success`,title:`MCP server saved`})))},ae=async(e,t)=>{if(n){v(e.name);try{d(await J().setServerEnabled({workspaceId:l.make(n),name:e.name,enabled:t}))}catch(e){Y(`Failed to update MCP server`,e)}finally{v(null)}}},oe=async e=>{if(n&&await r().dialogs.confirm(`Remove MCP server "${e.name}"?`)){v(e.name);try{d(await J().removeServer({workspaceId:l.make(n),name:e.name})),m.add(te({type:`success`,title:`MCP server removed`}))}catch(e){Y(`Failed to remove MCP server`,e)}finally{v(null)}}},R=async e=>{if(n){v(e.name);try{let t=await J().startOauthLogin({workspaceId:l.make(n),serverName:e.name,scopes:e.config.oauthScopes});await r().shell.openExternal(t.authorizationUrl),m.add(te({type:`success`,title:`OAuth login opened`}))}catch(e){Y(`Failed to start OAuth login`,e)}finally{v(null)}}},B=()=>{S(null),b(!0)},se=e=>{S(e),b(!0)};return(0,K.jsxs)(`div`,{className:`flex-1 p-6 sm:p-8`,children:[(0,K.jsxs)(`div`,{className:`mx-auto flex w-full max-w-4xl flex-col gap-6`,children:[(0,K.jsxs)(`header`,{className:`flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-semibold uppercase tracking-[0.08em] text-muted-foreground`,children:[(0,K.jsx)(N,{className:`size-3.5`}),`Provider MCP`]}),(0,K.jsx)(`h2`,{className:`mt-1 text-lg font-semibold tracking-[-0.01em]`,children:`MCP Servers`}),(0,K.jsx)(`p`,{className:`mt-1 max-w-2xl text-sm leading-relaxed text-muted-foreground/80`,children:`Manage Codex MCP servers and inspect how other provider instances currently expose MCP support.`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(be,{workspaces:T,selectedWorkspaceId:n,onChange:e=>{a(e),k(e)}}),(0,K.jsxs)(ee,{children:[(0,K.jsx)(s,{render:(0,K.jsx)(p,{size:`icon`,variant:`outline`,onClick:()=>void ie(),disabled:f||re,"aria-label":`Refresh MCP servers`,children:(0,K.jsx)(M,{className:u((f||re)&&`animate-spin`)})})}),(0,K.jsx)(i,{children:`Refresh`})]}),(0,K.jsxs)(p,{variant:`outline`,disabled:!n||re,onClick:()=>void I(),children:[(0,K.jsx)(F,{}),`Reload`]}),(0,K.jsxs)(p,{disabled:!n,onClick:B,children:[(0,K.jsx)(j,{}),`Add server`]})]})]}),(0,K.jsx)(Se,{providers:E,selectedWorkspaceId:n,onSelectWorkspace:e=>{a(e),k(e)}}),D?(0,K.jsxs)(`div`,{className:`rounded-lg border bg-muted/20 px-4 py-3 text-xs text-muted-foreground`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1`,children:[(0,K.jsx)(`span`,{className:`font-mono`,children:D.displayPath}),(0,K.jsx)(`span`,{children:D.mode===`authOverlay`?`Auth overlay`:`Direct home`}),(0,K.jsxs)(`span`,{children:[`Used by`,` `,D.providerInstances.map(e=>e.displayName??e.instanceId).join(`, `)]})]}),c?.configPath?(0,K.jsx)(`div`,{className:`mt-1 font-mono text-[11px] text-muted-foreground/70`,children:c.configPath}):null]}):null,e?.issues.length?(0,K.jsx)(`div`,{className:`space-y-2 rounded-lg border border-warning/30 bg-warning/6 p-3`,children:e.issues.map(e=>(0,K.jsxs)(`div`,{className:`flex gap-2 text-xs`,children:[(0,K.jsx)(P,{className:`mt-0.5 size-3.5 text-warning-foreground`}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`font-medium`,children:e.instanceId}),`: `,e.message]})]},`${e.instanceId}:${e.message}`))}):null,C?(0,K.jsx)(`div`,{className:`rounded-lg border border-destructive/30 bg-destructive/6 p-3 text-sm text-destructive-foreground`,children:C}):null,f?(0,K.jsx)(`div`,{className:`flex min-h-48 items-center justify-center rounded-lg border border-dashed`,children:(0,K.jsx)(O,{className:`size-5 animate-spin text-muted-foreground`})}):T.length===0?(0,K.jsxs)(`div`,{className:`rounded-lg border border-dashed p-8 text-center`,children:[(0,K.jsx)(N,{className:`mx-auto size-7 text-muted-foreground/60`}),(0,K.jsx)(`h3`,{className:`mt-3 text-sm font-semibold`,children:`No Codex workspaces`}),(0,K.jsx)(`p`,{className:`mx-auto mt-1 max-w-md text-sm text-muted-foreground/80`,children:`Add or enable a Codex provider instance before managing MCP servers.`})]}):c?.servers.length===0?(0,K.jsxs)(`div`,{className:`rounded-lg border border-dashed p-8 text-center`,children:[(0,K.jsx)(ne,{className:`mx-auto size-7 text-muted-foreground/60`}),(0,K.jsx)(`h3`,{className:`mt-3 text-sm font-semibold`,children:`No MCP servers configured`}),(0,K.jsx)(`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 Codex sessions.`}),(0,K.jsxs)(p,{className:`mt-4`,onClick:B,children:[(0,K.jsx)(j,{}),`Add server`]})]}):(0,K.jsx)(`div`,{className:`grid gap-3`,children:c?.servers.map(e=>(0,K.jsx)(De,{server:e,mutating:_===e.name,onToggleEnabled:(e,t)=>void ae(e,t),onEdit:se,onRemove:e=>void oe(e),onOauthLogin:e=>void R(e)},e.name))})]}),(0,K.jsx)(ye,{open:y,server:x,onOpenChange:b,onSubmit:L})]})}export{ke as McpServersSettings};
@@ -0,0 +1 @@
1
+ import{t as e}from"./compiler-runtime-BNrXlsa1.js";import{ut as t}from"./projectAtoms-DUEBb7Zz.js";import{Ni as n,Sr as r}from"./composerDraftStore-D12lUSfh.js";import{g as i,o as a}from"./sidebar-DHwNQmWp.js";import{i as o,o as s,r as c,t as l}from"./empty-DlLY-Hhj.js";var u=e(),d=n();function f(){let e=(0,u.c)(2),n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,d.jsx)(`header`,{className:r(`border-b border-border px-3 sm:px-5`,t?`drag-region flex h-[52px] items-center wco:h-[env(titlebar-area-height)]`:`py-2 sm:py-3`),children:t?(0,d.jsx)(`span`,{className:`text-xs text-muted-foreground/50 wco:pr-[calc(100vw-env(titlebar-area-width)-env(titlebar-area-x)+1em)]`,children:`No active thread`}):(0,d.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,d.jsx)(i,{className:`size-7 shrink-0 md:hidden`}),(0,d.jsx)(`span`,{className:`text-sm font-medium text-foreground md:text-muted-foreground/60`,children:`No active thread`})]})}),e[0]=n):n=e[0];let f;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,d.jsx)(a,{className:`h-dvh min-h-0 overflow-hidden overscroll-y-none bg-background text-foreground`,children:(0,d.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background`,children:[n,(0,d.jsx)(l,{className:`flex-1`,children:(0,d.jsx)(`div`,{className:`w-full max-w-lg rounded-3xl border border-border/55 bg-card/20 px-8 py-12 shadow-sm/5`,children:(0,d.jsxs)(o,{className:`max-w-none`,children:[(0,d.jsx)(s,{className:`text-foreground text-xl`,children:`Pick a thread to continue`}),(0,d.jsx)(c,{className:`mt-2 text-sm text-muted-foreground/78`,children:`Select an existing thread or create a new one to get started.`})]})})})]})}),e[1]=f):f=e[1],f}export{f as t};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{Jt as r,cn as i,sn as a}from"./projectAtoms-DUEBb7Zz.js";import{A as o,M as s,Ni as c,Sr as l,br as u,k as d}from"./composerDraftStore-D12lUSfh.js";import{a as f,h as p,i as m,m as h}from"./toast-DE7a4wkW.js";import{G as g,H as _,Tr as v,U as y,W as ee,_ as b,lr as x,yr as te,z as ne}from"./providerIconUtils-uhWb4bdg.js";import{t as S}from"./download-DLBlpp4h.js";import{t as re}from"./refresh-cw-DkBMGllm.js";import{n as ie,t as ae}from"./tokenModePresentation-BSYdIvBm.js";import{i as oe,n as se,r as ce}from"./settingsLayout-D22Mm0u3.js";var le=n(),C=e(t(),1),w=c();function T(e){return`${e.pluginId}:${e.targetKind}:${e.providerInstanceId??`global`}`}function E(e){switch(e.state){case`installed`:return`Installed`;case`not-installed`:return`Not installed`;case`unsupported`:return`Unsupported`;case`error`:return`Error`}}function ue(e){switch(e.state){case`installed`:return`success`;case`not-installed`:return`outline`;case`unsupported`:return`warning`;case`error`:return`error`}}function D(e){switch(e.state){case`installed`:return(0,w.jsx)(h,{className:`size-3.5 text-success-foreground`});case`not-installed`:return(0,w.jsx)(v,{className:`size-3.5 text-muted-foreground`});case`unsupported`:case`error`:return(0,w.jsx)(p,{className:`size-3.5 text-warning-foreground`})}}function O(e){return e.targetKind===`global`?`System`:e.providerDisplayName??String(e.providerInstanceId??`Provider`)}function de(e){return e.impact===`tool-output`?`Tool output`:`Assistant output`}function fe(e){return e.scope===`global`?`Global`:`Provider`}function k(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 A(e){return`${e.targetKind===`global`?`0`:`1`}:${O(e).toLowerCase()}`}function pe(e){let t=(0,le.c)(36),{status:n,isInstalling:r,onInstall:i}=e,a=n.canInstall&&n.state!==`installed`,o;t[0]===n?o=t[1]:(o=D(n),t[0]=n,t[1]=o);let s;t[2]===n?s=t[3]:(s=O(n),t[2]=n,t[3]=s);let c;t[4]===s?c=t[5]:(c=(0,w.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=ue(n),t[6]=n,t[7]=l);let d;t[8]===n?d=t[9]:(d=E(n),t[8]=n,t[9]=d);let f;t[10]!==l||t[11]!==d?(f=(0,w.jsx)(b,{variant:l,size:`sm`,children:d}),t[10]=l,t[11]=d,t[12]=f):f=t[12];let p;t[13]===n.version?p=t[14]:(p=n.version?(0,w.jsx)(`span`,{className:`font-mono text-[11px] text-muted-foreground/70`,children:n.version}):null,t[13]=n.version,t[14]=p);let m;t[15]!==o||t[16]!==c||t[17]!==f||t[18]!==p?(m=(0,w.jsxs)(`div`,{className:`flex min-h-5 flex-wrap items-center gap-2`,children:[o,c,f,p]}),t[15]=o,t[16]=c,t[17]=f,t[18]=p,t[19]=m):m=t[19];let h;t[20]===n.detail?h=t[21]:(h=n.detail?(0,w.jsx)(`p`,{className:`max-w-2xl text-xs leading-relaxed text-muted-foreground/80`,children:n.detail}):null,t[20]=n.detail,t[21]=h);let g;t[22]===n.manualSteps?g=t[23]:(g=n.manualSteps.length>0?(0,w.jsx)(`div`,{className:`space-y-1 pt-1`,children:n.manualSteps.map(me)}):null,t[22]=n.manualSteps,t[23]=g);let _;t[24]!==g||t[25]!==m||t[26]!==h?(_=(0,w.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[m,h,g]}),t[24]=g,t[25]=m,t[26]=h,t[27]=_):_=t[27];let v;t[28]!==a||t[29]!==r||t[30]!==i||t[31]!==n?(v=a?(0,w.jsxs)(u,{size:`xs`,variant:`outline`,disabled:r,className:`self-start sm:self-auto`,onClick:()=>i(n),children:[r?(0,w.jsx)(x,{className:`size-3.5 animate-spin`}):(0,w.jsx)(S,{className:`size-3.5`}),`Install`]}):null,t[28]=a,t[29]=r,t[30]=i,t[31]=n,t[32]=v):v=t[32];let y;return t[33]!==_||t[34]!==v?(y=(0,w.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:[_,v]}),t[33]=_,t[34]=v,t[35]=y):y=t[35],y}function me(e){return(0,w.jsx)(`p`,{className:`font-mono text-[11px] leading-relaxed text-muted-foreground`,children:e},e)}function j(){let e=(0,le.c)(48),t=a(),{updateSettings:n}=i(),c=t.defaultAgentTokenMode??`balanced`,f=ie[c],p=f.icon,h;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],e[0]=h):h=e[0];let[_,v]=(0,C.useState)(h),S;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(S=[],e[1]=S):S=e[1];let[E,ue]=(0,C.useState)(S),[D,k]=(0,C.useState)(!1),[A,me]=(0,C.useState)(null),j=(0,C.useRef)(!1),M;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(M=()=>{if(j.current)return;j.current=!0,k(!0);let e=r();Promise.all([e.server.listOpinionatedPlugins(),e.server.checkOpinionatedPlugins()]).then(e=>{let[t,n]=e;v(t.plugins.toSorted(Se)),ue(n.statuses)}).catch(xe).finally(()=>{j.current=!1,k(!1)})},e[2]=M):M=e[2];let N=M,P,F;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(P=()=>{N()},F=[N],e[3]=P,e[4]=F):(P=e[3],F=e[4]),(0,C.useEffect)(P,F);let I;if(e[5]!==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(be));e[5]=E,e[6]=I}else I=e[6];let L=I,Ce=ye,R;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(R=e=>{let t=r(),n=O(e);t.dialogs.confirm(`Install ${e.pluginId===`rtk`?`RTK`:`Caveman`} for ${n}?\n\nThis may run networked CLI installation commands on this machine.`).then(r=>{if(!r)return;let i=T(e);return me(i),t.server.installOpinionatedPlugin({pluginId:e.pluginId,...e.providerInstanceId?{providerInstanceId:e.providerInstanceId}:{}}).then(t=>{ue(e=>[...e.filter(e=>T(e)!==i),t.status]),m.add({type:`success`,title:`${e.pluginId===`rtk`?`RTK`:`Caveman`} installed`,description:t.commands.length>0?t.commands[t.commands.length-1]:n}),N()}).catch(ve).finally(()=>me(null))}).catch(_e)},e[7]=R):R=e[7];let we=R,z;e[8]===n?z=e[9]:(z=e=>n({defaultAgentTokenMode:e}),e[8]=n,e[9]=z);let B;e[10]===p?B=e[11]:(B=(0,w.jsx)(p,{className:`size-4 shrink-0 text-muted-foreground`}),e[10]=p,e[11]=B);let V;e[12]===f.triggerLabel?V=e[13]:(V=(0,w.jsx)(g,{children:f.triggerLabel}),e[12]=f.triggerLabel,e[13]=V);let H;e[14]!==B||e[15]!==V?(H=(0,w.jsx)(ee,{className:`w-full sm:w-52`,"aria-label":`Default token mode`,children:(0,w.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-2`,children:[B,V]})}),e[14]=B,e[15]=V,e[16]=H):H=e[16];let U;e[17]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,w.jsx)(y,{align:`end`,alignItemWithTrigger:!1,className:`w-60`,children:ae.map(ge)}),e[17]=U):U=e[17];let W;e[18]!==c||e[19]!==z||e[20]!==H?(W=(0,w.jsx)(oe,{title:`Token mode`,children:(0,w.jsx)(ce,{title:`Default token mode`,description:`Applied to new threads and draft sessions. Existing threads keep their own mode.`,control:(0,w.jsxs)(ne,{value:c,onValueChange:z,children:[H,U]})})}),e[18]=c,e[19]=z,e[20]=H,e[21]=W):W=e[21];let G;e[22]===Symbol.for(`react.memo_cache_sentinel`)?(G=()=>N(),e[22]=G):G=e[22];let K;e[23]===D?K=e[24]:(K=D?(0,w.jsx)(x,{className:`size-3 animate-spin`}):(0,w.jsx)(re,{className:`size-3`}),e[23]=D,e[24]=K);let q;e[25]!==D||e[26]!==K?(q=(0,w.jsx)(s,{render:(0,w.jsx)(u,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:D,onClick:G,"aria-label":`Refresh plugin status`,children:K})}),e[25]=D,e[26]=K,e[27]=q):q=e[27];let J;e[28]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,w.jsx)(o,{side:`top`,children:`Refresh plugin status`}),e[28]=J):J=e[28];let Y;e[29]===q?Y=e[30]:(Y=(0,w.jsxs)(d,{children:[q,J]}),e[29]=q,e[30]=Y);let X;e[31]!==D||e[32]!==_.length?(X=_.length===0&&D?(0,w.jsxs)(`div`,{className:`flex items-center gap-2 px-5 py-4 text-xs text-muted-foreground`,children:[(0,w.jsx)(x,{className:`size-3.5 animate-spin`}),`Loading plugin status`]}):null,e[31]=D,e[32]=_.length,e[33]=X):X=e[33];let Z;if(e[34]!==A||e[35]!==_||e[36]!==L){let t;e[38]!==A||e[39]!==L?(t=e=>{let t=L.get(e.id)??[],n=t.filter(he).length;return(0,w.jsx)(ce,{title:(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:e.name}),(0,w.jsx)(b,{variant:n>0?`success`:`outline`,size:`sm`,children:n>0?`${n} installed`:`Available`})]}),description:e.summary,status:(0,w.jsxs)(`span`,{className:`flex flex-wrap gap-1.5`,children:[(0,w.jsx)(b,{variant:`info`,size:`sm`,children:de(e)}),(0,w.jsx)(b,{variant:`outline`,size:`sm`,children:fe(e)})]}),control:(0,w.jsxs)(u,{size:`xs`,variant:`ghost`,onClick:()=>Ce(e),children:[(0,w.jsx)(te,{className:`size-3.5`}),`Docs`]}),children:(0,w.jsx)(`div`,{className:l(`mt-4 border-t border-border/60`,t.length===0?`px-5 py-4`:``),children:t.length===0?(0,w.jsx)(`p`,{className:`text-xs text-muted-foreground/80`,children:`No compatible provider instances detected.`}):t.map(e=>(0,w.jsx)(pe,{status:e,isInstalling:A===T(e),onInstall:we},T(e)))})},e.id)},e[38]=A,e[39]=L,e[40]=t):t=e[40],Z=_.map(t),e[34]=A,e[35]=_,e[36]=L,e[37]=Z}else Z=e[37];let Q;e[41]!==Y||e[42]!==X||e[43]!==Z?(Q=(0,w.jsxs)(oe,{title:`Opinionated plugins`,headerAction:Y,children:[X,Z]}),e[41]=Y,e[42]=X,e[43]=Z,e[44]=Q):Q=e[44];let $;return e[45]!==W||e[46]!==Q?($=(0,w.jsxs)(se,{children:[W,Q]}),e[45]=W,e[46]=Q,e[47]=$):$=e[47],$}function he(e){return e.state===`installed`}function ge(e){let t=ie[e],n=t.icon;return(0,w.jsx)(_,{hideIndicator:!0,value:e,children:(0,w.jsxs)(`div`,{className:`grid min-w-0 gap-0.5`,children:[(0,w.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 font-medium text-foreground`,children:[(0,w.jsx)(n,{className:`size-3.5 shrink-0 text-muted-foreground`}),t.label]}),(0,w.jsx)(`span`,{className:`text-muted-foreground text-xs leading-4`,children:t.description})]})},e)}function _e(e){m.add(f({type:`error`,title:`Install confirmation failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function ve(e){m.add(f({type:`error`,title:`Plugin install failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function ye(e){let t=e.docsUrl??e.homepageUrl;r().shell.openExternal(t).catch(M)}function M(e){m.add(f({type:`error`,title:`Failed to open plugin docs`,description:e instanceof Error?e.message:`An error occurred.`}))}function be(e,t){return A(e).localeCompare(A(t))}function xe(e){m.add(f({type:`error`,title:`Failed to load plugins`,description:e instanceof Error?e.message:`An error occurred.`}))}function Se(e,t){return k(e.id)-k(t.id)}export{j as OpinionatedPluginsSettingsPanel};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"./react-PSPkXoKo.js";import{Gt as n}from"./projectAtoms-DUEBb7Zz.js";import{Ni as r,Sr as i}from"./composerDraftStore-D12lUSfh.js";import{mr as a}from"./providerIconUtils-uhWb4bdg.js";var o=e(t(),1),s=r(),c=new Set;function l(e){let t=(()=>{try{return e.customAvatarContentHash&&e.projectId?n({environmentId:e.environmentId,pathname:`/api/project-avatar`,searchParams:{projectId:e.projectId,v:e.customAvatarContentHash}}):n({environmentId:e.environmentId,pathname:`/api/project-favicon`,searchParams:{cwd:e.cwd}})}catch{return null}})(),[r,l]=(0,o.useState)(()=>t&&c.has(t)?`loaded`:`loading`),u=e.fillContainer?i(`size-full text-muted-foreground/50`,e.className):i(`size-3.5 shrink-0 text-muted-foreground/50`,e.className);if(!t||r===`error`)return(0,s.jsx)(a,{className:u});let d=e.fillContainer?i(`size-full object-cover`,r===`loaded`?``:`hidden`,e.className):i(`size-3.5 shrink-0 rounded-sm object-contain`,r===`loaded`?``:`hidden`,e.className);return(0,s.jsxs)(s.Fragment,{children:[r===`loaded`?null:(0,s.jsx)(a,{className:u}),(0,s.jsx)(`img`,{src:t,alt:``,className:d,onLoad:()=>{c.add(t),l(`loaded`)},onError:()=>l(`error`)})]})}export{l as t};
@@ -1 +1 @@
1
- import{ca as e,da as t}from"./composerDraftStore-DTMZbmmF.js";var n=3e3;function r(e){return e.startsWith(`v`)?e:`v${e}`}function i(e,n){if(!e)return n;let r=t(n.driver);return n.instanceId===r?n:e.instanceId===r?e:n.checkedAt.localeCompare(e.checkedAt)>=0?n:e}function a(e){let t=new Map;for(let n of e)t.set(n.driver,i(t.get(n.driver),n));return[...t.values()]}function o(e){let t=new Map;for(let n of e){let e=t.get(n.instanceId);(!e||n.checkedAt.localeCompare(e.checkedAt)>=0)&&t.set(n.instanceId,n)}return[...t.values()]}function s(t){let n=e[t.driver]??t.driver;return t.version?`${n} updated: ${r(t.version)}`:`${n} updated`}function c(e){return e===1?`New sessions will use the updated provider.`:`New sessions will use the updated providers.`}function l(t){let n=e[t.driver]??t.driver,i=t.versionAdvisory?.latestVersion;return i?`${n} ${r(i)} update failed`:`${n} update failed`}function u(e){return e.enabled&&e.versionAdvisory?.status===`behind_latest`&&e.versionAdvisory.latestVersion!==null}function d(e){return e.updateState?.status===`queued`||e.updateState?.status===`running`}function f(e){return a(e.filter(u))}function p(e,t){if(e.versionAdvisory.canUpdate!==!0||e.versionAdvisory.updateCommand===null)return!1;let n=t.filter(t=>t.driver===e.driver);if(n.length===0)return!1;let r=new Set;for(let e of n){if(!u(e))continue;let t=e.versionAdvisory;if(!t||t.canUpdate!==!0||t.updateCommand===null)return!1;r.add(t.updateCommand)}return r.size===1}function m(e,t){return!d(e)&&p(e,t)}function h(e){let t=a(e).map(e=>{let t=e.versionAdvisory;return[e.driver,t.latestVersion].join(`:`)}).toSorted();return t.length>0?t.join(`|`):null}function g(t){let n=t.map(t=>e[t.driver]??t.driver);return n.length<=2?n.join(` and `):`${n.slice(0,-1).join(`, `)}, and ${n[n.length-1]}`}function _(e){return{phase:`initial`,type:`warning`,title:D(e.updateProviders),description:e.oneClickProviders.length>0?`Install the update now or review provider settings.`:`${g(e.updateProviders)} can be updated from provider settings.`}}function v(e){return{phase:`running`,type:`loading`,title:e===1?`Updating provider`:`Updating providers`,description:`Running provider update command.`}}function y(e,t){return{phase:`failed`,type:`error`,title:e===1?`Provider update failed`:`Provider updates failed`,description:t}}function b(e){let t=a(e.providers),r=t.filter(e=>e.updateState?.status===`failed`);if(r.length>0)return{phase:`failed`,type:`error`,title:r.length===1?`Provider update failed`:`Provider updates failed`,description:O(r)};let i=t.filter(e=>e.updateState?.status===`unchanged`);return i.length>0?{phase:`unchanged`,type:`warning`,title:i.length===1?`Provider still needs an update`:`Providers still need updates`,description:`${g(i)} ${i.length===1?`still appears`:`still appear`} outdated. Check provider settings for details.`}:t.some(d)?v(e.providerCount):t.length>=e.providerCount&&t.every(e=>e.updateState?.status===`succeeded`||!u(e))?{phase:`succeeded`,type:`success`,title:e.providerCount===1?`Provider updated`:`Provider updates finished`,description:c(e.providerCount),dismissAfterVisibleMs:n}:v(e.providerCount)}function x(e){let t=[];for(let n of e.results)if(n.status===`fulfilled`)for(let r of n.value.providers)e.providerInstanceIds.has(r.instanceId)&&t.push(r);return o(t)}function S(e){let t=e.find(e=>e.status===`rejected`);return t?t.reason instanceof Error?t.reason.message:`Provider update failed.`:null}function C(e){return e.updateState?.finishedAt??null}function w(e,t){let n=e.updateState?.status;if(n!==`failed`&&n!==`unchanged`&&n!==`succeeded`)return!1;if(t===void 0)return!0;let r=C(e);return r!==null&&r>=t}function T(e){return e.reduce((e,t)=>{let n=C(t);return n===null?e:e===null||n>e?n:e},null)}function E(t,r){let i=a(t),o=i.filter(d);if(o.length>0){let t=o[0],n=e[t.driver]??t.driver;return{key:`loading:${o.map(e=>`${e.driver}:${e.updateState?.status??`idle`}`).toSorted().join(`|`)}`,tone:`loading`,title:o.length===1?`Updating ${n}`:`Updating ${o.length} providers`,description:o.length===1?`${g(o)} update in progress.`:`${g(o)} updates are in progress.`}}let u=i.filter(e=>w(e,r?.visibleAfterIso)),f=[],p=u.filter(e=>e.updateState?.status===`failed`);if(p.length>0){let e=p[0];f.push({key:`failed:${p.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`error`,title:p.length===1?l(e):`${p.length} provider updates failed`,description:O(p),dismissible:!0})}let m=u.filter(e=>e.updateState?.status===`unchanged`);if(m.length>0){let t=m[0],n=e[t.driver]??t.driver;f.push({key:`unchanged:${m.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`warning`,title:m.length===1?`${n} still needs an update`:`${m.length} providers still need updates`,description:`${g(m)} ${m.length===1?`still appears`:`still appear`} outdated. Review provider settings for details.`,dismissible:!0})}let h=u.filter(e=>e.updateState?.status===`succeeded`);if(h.length>0){let e=h[0];f.push({key:`succeeded:${h.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`success`,title:h.length===1?s(e):`${h.length} providers updated`,description:c(h.length),dismissAfterVisibleMs:n})}return f.toSorted((e,t)=>{let n=e.tone===`error`?p:e.tone===`warning`?m:h,r=t.tone===`error`?p:t.tone===`warning`?m:h,i=T(n)??``;return(T(r)??``).localeCompare(i)}).find(e=>!r?.dismissedKeys?.has(e.key))??null}function D(t){if(t.length===1){let n=t[0];return`Update Available: ${e[n.driver]??n.driver} ${r(n.versionAdvisory.latestVersion)}`}return`Updates Available: ${t.length} providers`}function O(e){if(e.length===1){let t=e[0];if(t.updateState?.message)return t.updateState.message}return`${g(e)} failed to update. Check provider settings for details.`}export{_ as a,v as c,u as d,h as f,S as i,E as l,f as n,b as o,x as r,y as s,m as t,d as u};
1
+ import{fa as e,la as t}from"./composerDraftStore-D12lUSfh.js";var n=3e3;function r(e){return e.startsWith(`v`)?e:`v${e}`}function i(t,n){if(!t)return n;let r=e(n.driver);return n.instanceId===r?n:t.instanceId===r?t:n.checkedAt.localeCompare(t.checkedAt)>=0?n:t}function a(e){let t=new Map;for(let n of e)t.set(n.driver,i(t.get(n.driver),n));return[...t.values()]}function o(e){let t=new Map;for(let n of e){let e=t.get(n.instanceId);(!e||n.checkedAt.localeCompare(e.checkedAt)>=0)&&t.set(n.instanceId,n)}return[...t.values()]}function s(e){let n=t[e.driver]??e.driver;return e.version?`${n} updated: ${r(e.version)}`:`${n} updated`}function c(e){return e===1?`New sessions will use the updated provider.`:`New sessions will use the updated providers.`}function l(e){let n=t[e.driver]??e.driver,i=e.versionAdvisory?.latestVersion;return i?`${n} ${r(i)} update failed`:`${n} update failed`}function u(e){return e.enabled&&e.versionAdvisory?.status===`behind_latest`&&e.versionAdvisory.latestVersion!==null}function d(e){return e.updateState?.status===`queued`||e.updateState?.status===`running`}function f(e){return a(e.filter(u))}function p(e,t){if(e.versionAdvisory.canUpdate!==!0||e.versionAdvisory.updateCommand===null)return!1;let n=t.filter(t=>t.driver===e.driver);if(n.length===0)return!1;let r=new Set;for(let e of n){if(!u(e))continue;let t=e.versionAdvisory;if(!t||t.canUpdate!==!0||t.updateCommand===null)return!1;r.add(t.updateCommand)}return r.size===1}function m(e,t){return!d(e)&&p(e,t)}function h(e){let t=a(e).map(e=>{let t=e.versionAdvisory;return[e.driver,t.latestVersion].join(`:`)}).toSorted();return t.length>0?t.join(`|`):null}function g(e){let n=e.map(e=>t[e.driver]??e.driver);return n.length<=2?n.join(` and `):`${n.slice(0,-1).join(`, `)}, and ${n[n.length-1]}`}function _(e){return{phase:`initial`,type:`warning`,title:D(e.updateProviders),description:e.oneClickProviders.length>0?`Install the update now or review provider settings.`:`${g(e.updateProviders)} can be updated from provider settings.`}}function v(e){return{phase:`running`,type:`loading`,title:e===1?`Updating provider`:`Updating providers`,description:`Running provider update command.`}}function y(e,t){return{phase:`failed`,type:`error`,title:e===1?`Provider update failed`:`Provider updates failed`,description:t}}function b(e){let t=a(e.providers),r=t.filter(e=>e.updateState?.status===`failed`);if(r.length>0)return{phase:`failed`,type:`error`,title:r.length===1?`Provider update failed`:`Provider updates failed`,description:O(r)};let i=t.filter(e=>e.updateState?.status===`unchanged`);return i.length>0?{phase:`unchanged`,type:`warning`,title:i.length===1?`Provider still needs an update`:`Providers still need updates`,description:`${g(i)} ${i.length===1?`still appears`:`still appear`} outdated. Check provider settings for details.`}:t.some(d)?v(e.providerCount):t.length>=e.providerCount&&t.every(e=>e.updateState?.status===`succeeded`||!u(e))?{phase:`succeeded`,type:`success`,title:e.providerCount===1?`Provider updated`:`Provider updates finished`,description:c(e.providerCount),dismissAfterVisibleMs:n}:v(e.providerCount)}function x(e){let t=[];for(let n of e.results)if(n.status===`fulfilled`)for(let r of n.value.providers)e.providerInstanceIds.has(r.instanceId)&&t.push(r);return o(t)}function S(e){let t=e.find(e=>e.status===`rejected`);return t?t.reason instanceof Error?t.reason.message:`Provider update failed.`:null}function C(e){return e.updateState?.finishedAt??null}function w(e,t){let n=e.updateState?.status;if(n!==`failed`&&n!==`unchanged`&&n!==`succeeded`)return!1;if(t===void 0)return!0;let r=C(e);return r!==null&&r>=t}function T(e){return e.reduce((e,t)=>{let n=C(t);return n===null?e:e===null||n>e?n:e},null)}function E(e,r){let i=a(e),o=i.filter(d);if(o.length>0){let e=o[0],n=t[e.driver]??e.driver;return{key:`loading:${o.map(e=>`${e.driver}:${e.updateState?.status??`idle`}`).toSorted().join(`|`)}`,tone:`loading`,title:o.length===1?`Updating ${n}`:`Updating ${o.length} providers`,description:o.length===1?`${g(o)} update in progress.`:`${g(o)} updates are in progress.`}}let u=i.filter(e=>w(e,r?.visibleAfterIso)),f=[],p=u.filter(e=>e.updateState?.status===`failed`);if(p.length>0){let e=p[0];f.push({key:`failed:${p.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`error`,title:p.length===1?l(e):`${p.length} provider updates failed`,description:O(p),dismissible:!0})}let m=u.filter(e=>e.updateState?.status===`unchanged`);if(m.length>0){let e=m[0],n=t[e.driver]??e.driver;f.push({key:`unchanged:${m.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`warning`,title:m.length===1?`${n} still needs an update`:`${m.length} providers still need updates`,description:`${g(m)} ${m.length===1?`still appears`:`still appear`} outdated. Review provider settings for details.`,dismissible:!0})}let h=u.filter(e=>e.updateState?.status===`succeeded`);if(h.length>0){let e=h[0];f.push({key:`succeeded:${h.map(e=>`${e.driver}:${e.updateState?.finishedAt??`pending`}:${e.updateState?.message??``}`).toSorted().join(`|`)}`,tone:`success`,title:h.length===1?s(e):`${h.length} providers updated`,description:c(h.length),dismissAfterVisibleMs:n})}return f.toSorted((e,t)=>{let n=e.tone===`error`?p:e.tone===`warning`?m:h,r=t.tone===`error`?p:t.tone===`warning`?m:h,i=T(n)??``;return(T(r)??``).localeCompare(i)}).find(e=>!r?.dismissedKeys?.has(e.key))??null}function D(e){if(e.length===1){let n=e[0];return`Update Available: ${t[n.driver]??n.driver} ${r(n.versionAdvisory.latestVersion)}`}return`Updates Available: ${e.length} providers`}function O(e){if(e.length===1){let t=e[0];if(t.updateState?.message)return t.updateState.message}return`${g(e)} failed to update. Check provider settings for details.`}export{_ as a,v as c,u as d,h as f,S as i,E as l,f as n,b as o,x as r,y as s,m as t,d as u};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{It as r,La as i,Lt as a,_t as o}from"./react-CjD7iThp.js";import{Jt as s,cn as c,ln as l,sn as u,vn as d}from"./projectAtoms-DUEBb7Zz.js";import{A as f,An as p,Ei as m,Gn as h,Hr as g,In as _,Jr as v,Ki as y,M as b,Mn as x,Ni as S,Nn as C,Nr as w,On as T,P as E,Pn as D,Sr as O,Ti as k,Wr as A,Xn as j,Xr as M,Yn as N,br as P,cr as F,da as I,f as ee,fa as L,fr as R,g as z,jn as B,k as te,kn as V,m as H,pa as ne,ua as U,v as W,vr as G,x as re,y as ie,yr as K}from"./composerDraftStore-D12lUSfh.js";import{_ as q,a as J,f as ae,i as Y,o as X,p as oe}from"./toast-DE7a4wkW.js";import{At as se,D as ce,It as le,Lt as ue,Mt as de,Nt as fe,Pt as pe,S as me,Tt as he,Un as ge,_ as _e,b as ve,ln as ye,lr as be,tn as xe,vn as Se,vr as Ce,x as we}from"./providerIconUtils-uhWb4bdg.js";import{C as Te,w as Ee}from"./kbd-aeSsjiPI.js";import{t as De}from"./download-DLBlpp4h.js";import{t as Z}from"./plus-4Oy56d-3.js";import{t as Oe}from"./refresh-cw-DkBMGllm.js";import{c as ke,d as Ae,l as je,n as Me,p as Ne,r as Pe,s as Fe,t as Ie,u as Le}from"./radio-group-DHyQlLeX.js";import{t as Re}from"./trash-2-BI5xcbsm.js";import{t as ze}from"./x-fI9snvD3.js";import{t as Be}from"./input-B9-RWT56.js";import{d as Ve,t as He,u as Ue}from"./ProviderUpdateLaunchNotification.logic-6TpFsmiI.js";import{t as We}from"./AnimatedHeight-DgItDSis.js";import{a as Ge,i as Ke,n as qe,r as Je,t as Ye}from"./settingsLayout-D22Mm0u3.js";import{n as Xe,r as Ze,t as Qe}from"./providerDriverMeta-Dwi6Zqgd.js";import{t as $e}from"./draft-input-dLlVMl5P.js";import{t as et}from"./RedactedSensitiveText-BfoVjPsE.js";var tt=M(`circle-arrow-up`,[[`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`}]]),nt=M(`eye-off`,[[`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`}]]),Q=e(t(),1),rt=n(),$=S();function it(e){return e.replace(/([a-z0-9])([A-Z])/g,`$1 $2`).replace(/[-_]+/g,` `).replace(/^./,e=>e.toUpperCase())}function at(e){return a(e)??r(e)}function ot(e,t){let n=at(e)?.[t];return typeof n==`string`?n:void 0}function st(e){return at(e)?.providerSettingsForm??{}}function ct(e){return r(e.settingsSchema)?.providerSettingsFormSchema??{}}function lt(e){try{let t=o(e)(void 0);return typeof t==`boolean`?t:void 0}catch{return}}function ut(e){let t=ct(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=st(n);if(r.hidden)return[];let i=ot(n,`title`),a=ot(n,`description`);return[{key:t,control:r.control??`text`,label:i??it(t),...a===void 0?{}:{description:a},...r.placeholder===void 0?{}:{placeholder:r.placeholder},clearWhenEmpty:r.clearWhenEmpty??`omit`,...r.control===`switch`?{defaultBooleanValue:lt(n)}:{}}]})}function dt(e,t){if(typeof e!=`object`||!e)return``;let n=e[t];return typeof n==`string`?n:``}function ft(e,t,n=!1){if(typeof e!=`object`||!e)return n;let r=e[t];return typeof r==`boolean`?r:n}function pt(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 mt(e){let t=(0,rt.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 ht(e){let t=(0,rt.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=ft(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(pt(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)(ce,{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)(mt,{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=O(e),t[26]=e,t[27]=i);let c=a===`card`&&`mt-1.5`,l;t[28]===c?l=t[29]:(l=O(c),t[28]=c,t[29]=l);let d;t[30]!==n.key||t[31]!==r?(d=dt(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(pt(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)(he,{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)(mt,{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=O(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)($e,{id:s,className:`mt-1.5`,type:p,autoComplete:n.control===`password`?`off`:void 0,value:dt(r,n.key),onCommit:e=>o(pt(r,n,e)),placeholder:n.placeholder,spellCheck:!1}):(0,$.jsx)(Be,{id:s,className:`bg-background`,type:p,autoComplete:n.control===`password`?`off`:void 0,value:dt(r,n.key),onChange:e=>o(pt(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)(mt,{variant:a,children:_}),t[67]=_,t[68]=a,t[69]=v):v=t[69],v}function gt(e){let t=(0,rt.c)(15),{definition:n,value:r,idPrefix:i,variant:a,onChange:o}=e,s;t[0]===n?s=t[1]:(s=ut(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)(ht,{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 _t=[`#2563eb`,`#16a34a`,`#ea580c`,`#dc2626`,`#7c3aed`,`#0891b2`];function vt(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,`_`).replace(/^_+|_+$/g,``).slice(0,48)}function yt(e,t){let n=vt(t);return n?`${e}_${n}`:``}var bt=/^[a-zA-Z][a-zA-Z0-9_-]*$/,xt=U.make(`codex`),St=Qe[0],Ct={},wt=[{value:U.make(`gemini`),label:`Gemini`,icon:ye},{value:U.make(`acpRegistry`),label:`ACP Registry`,icon:xe},{value:U.make(`piAgent`),label:`Pi Agent`,icon:Se}];function Tt(e,t){return e.length===0?`Instance ID is required.`:e.length>64?`Instance ID must be 64 characters or fewer.`:bt.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 Et(e){let t=(0,rt.c)(134),{open:n,onOpenChange:r}=e,i=u(),{updateSettings:a}=c(),[o,s]=(0,Q.useState)(0),[l,d]=(0,Q.useState)(xt),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(!1),b;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(b={},t[0]=b):b=t[0];let[x,S]=(0,Q.useState)(b),[C,w]=(0,Q.useState)(!1),T;t[1]===i.providerInstances?T=t[2]:(T=new Set(Object.keys(i.providerInstances??{})),t[1]=i.providerInstances,t[2]=T);let E=T,D,k;t[3]===n?(D=t[4],k=t[5]):(D=()=>{n&&(d(xt),p(``),h(``),_(``),s(0),y(!1),S({}),w(!1))},k=[n],t[3]=n,t[4]=D,t[5]=k),(0,Q.useEffect)(D,k);let A,j;t[6]!==l||t[7]!==v||t[8]!==f?(A=()=>{v||_(yt(l,f))},j=[l,f,v],t[6]=l,t[7]=v,t[8]=f,t[9]=A,t[10]=j):(A=t[9],j=t[10]),(0,Q.useEffect)(A,j);let M=Xe[l]??St,N;t[11]===M?N=t[12]:(N=ut(M),t[11]=M,t[12]=N);let F=N,ee;t[13]!==E||t[14]!==g?(ee=Tt(g,E),t[13]=E,t[14]=g,t[15]=ee):ee=t[15];let L=ee,R=C&&L!==null,z;t[16]!==M.label||t[17]!==f?(z=f.trim()||`${M.label} Workspace`,t[16]=M.label,t[17]=f,t[18]=z):z=t[18];let B=z,te;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(te=[`Driver`,`Identity`,`Config`],t[19]=te):te=t[19];let V=te,H;t[20]!==M.label||t[21]!==B?(H=[M.label,B,null],t[20]=M.label,t[21]=B,t[22]=H):H=t[22];let ne=H,W=x[l]??Ct,G;t[23]===l?G=t[24]:(G=e=>{S(t=>{let n={...t};return e===void 0||Object.keys(e).length===0?delete n[l]:n[l]=e,n})},t[23]=l,t[24]=G);let re=G,K;t[25]!==m||t[26]!==x||t[27]!==l||t[28]!==M.label||t[29]!==g||t[30]!==L||t[31]!==f||t[32]!==r||t[33]!==i.providerInstances||t[34]!==a?(K=()=>{if(w(!0),L!==null)return;let e=x[l]??{},t=Object.keys(e).length>0,n=ie(m),o={driver:l,enabled:!0,...f.trim().length>0?{displayName:f.trim()}:{},...n?{accentColor:n}:{},...t?{config:e}:{}},s=I.make(g),c={...i.providerInstances,[s]:o};try{a({providerInstances:c}),Y.add({type:`success`,title:`Provider instance added`,description:`${M.label} instance '${g}' was added.`}),r(!1)}catch(e){let t=e;Y.add({type:`error`,title:`Could not add provider instance`,description:t instanceof Error?t.message:`Update failed.`})}},t[25]=m,t[26]=x,t[27]=l,t[28]=M.label,t[29]=g,t[30]=L,t[31]=f,t[32]=r,t[33]=i.providerInstances,t[34]=a,t[35]=K):K=t[35];let J=K,ae,X;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(ue,{children:`Add provider instance`}),X=(0,$.jsx)(de,{children:`Configure an additional provider instance — for example, a second Codex install pointed at a different workspace.`}),t[36]=ae,t[37]=X):(ae=t[36],X=t[37]);let oe;t[38]!==o||t[39]!==ne?(oe=(0,$.jsxs)(pe,{className:`border-b border-border/70 bg-background`,children:[ae,X,(0,$.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:V.map((e,t)=>(0,$.jsxs)(`button`,{type:`button`,className:O(`grid min-w-0 grid-cols-[1rem_minmax(0,1fr)] gap-x-2 rounded-lg border px-3 py-2 text-left`,t===o?`border-primary bg-primary/10 ring-1 ring-primary/25`:t<o?`border-border bg-background`:`border-border bg-muted/40`),onClick:()=>s(t),children:[(0,$.jsx)(`span`,{className:O(`row-span-2 mt-0.5 grid size-4 place-items-center rounded-full border`,t<o?`border-primary bg-primary text-primary-foreground`:t===o?`border-primary bg-background`:`border-muted-foreground/35 bg-background`),"aria-hidden":!0,children:t<o?(0,$.jsx)(q,{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<o&&ne[t]?`: ${ne[t]}`:``]})]},e))})]}),t[38]=o,t[39]=ne,t[40]=oe):oe=t[40];let ce=o!==0&&`hidden`,me;t[41]===ce?me=t[42]:(me=O(`grid gap-2`,ce),t[41]=ce,t[42]=me);let he;t[43]===Symbol.for(`react.memo_cache_sentinel`)?(he=(0,$.jsx)(`span`,{id:`add-instance-driver-label`,className:`text-xs font-medium text-foreground`,children:`Driver`}),t[43]=he):he=t[43];let ge;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(ge=e=>d(U.make(e)),t[44]=ge):ge=t[44];let ve;t[45]===l?ve=t[46]:(ve=Qe.map(e=>{let t=e.icon,n=e.value===l;return(0,$.jsxs)(Me,{value:e.value,className:O(`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)(_e,{variant:`warning`,size:`sm`,children:e.badgeLabel}):null]},e.value)}),t[45]=l,t[46]=ve);let ye;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(ye=wt.map(kt),t[47]=ye):ye=t[47];let be;t[48]!==l||t[49]!==ve?(be=(0,$.jsxs)(Ie,{value:l,onValueChange:ge,"aria-labelledby":`add-instance-driver-label`,className:`grid grid-cols-2 gap-2.5`,children:[ve,ye]}),t[48]=l,t[49]=ve,t[50]=be):be=t[50];let xe;t[51]!==me||t[52]!==be?(xe=(0,$.jsxs)(`div`,{className:me,children:[he,be]}),t[51]=me,t[52]=be,t[53]=xe):xe=t[53];let Se=o!==1&&`hidden`,Ce;t[54]===Se?Ce=t[55]:(Ce=O(`grid gap-2`,Se),t[54]=Se,t[55]=Ce);let we;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(we=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Label`}),t[56]=we):we=t[56];let Te;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(Te=e=>p(e.target.value),t[57]=Te):Te=t[57];let Ee;t[58]===f?Ee=t[59]:(Ee=(0,$.jsx)(Be,{className:`bg-background`,placeholder:`e.g. Work`,value:f,onChange:Te}),t[58]=f,t[59]=Ee);let De;t[60]===Symbol.for(`react.memo_cache_sentinel`)?(De=(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Shown in the provider list. Optional.`}),t[60]=De):De=t[60];let Z;t[61]!==Ce||t[62]!==Ee?(Z=(0,$.jsxs)(`label`,{className:Ce,children:[we,Ee,De]}),t[61]=Ce,t[62]=Ee,t[63]=Z):Z=t[63];let Oe=o!==1&&`hidden`,ke;t[64]===Oe?ke=t[65]:(ke=O(`grid gap-2`,Oe),t[64]=Oe,t[65]=ke);let Ae;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(Ae=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Instance ID`}),t[66]=Ae):Ae=t[66];let je=`${l}_work`,Ne;t[67]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=e=>{y(!0),_(e.target.value)},t[67]=Ne):Ne=t[67];let Pe;t[68]!==g||t[69]!==R||t[70]!==je?(Pe=(0,$.jsx)(Be,{className:`bg-background`,placeholder:je,value:g,onChange:Ne,"aria-invalid":R}),t[68]=g,t[69]=R,t[70]=je,t[71]=Pe):Pe=t[71];let Fe;t[72]!==L||t[73]!==R?(Fe=R?(0,$.jsx)(`span`,{className:`text-[11px] text-destructive`,children:L}):(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Routing key used by threads and sessions. Letters, digits, '-', or '_'.`}),t[72]=L,t[73]=R,t[74]=Fe):Fe=t[74];let Le;t[75]!==ke||t[76]!==Pe||t[77]!==Fe?(Le=(0,$.jsxs)(`label`,{className:ke,children:[Ae,Pe,Fe]}),t[75]=ke,t[76]=Pe,t[77]=Fe,t[78]=Le):Le=t[78];let Re=o!==1&&`hidden`,ze;t[79]===Re?ze=t[80]:(ze=O(`grid gap-2`,Re),t[79]=Re,t[80]=ze);let Ve;t[81]===Symbol.for(`react.memo_cache_sentinel`)?(Ve=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Accent color`}),t[81]=Ve):Ve=t[81];let He;t[82]===m?He=t[83]:(He=ie(m)??_t[0],t[82]=m,t[83]=He);let Ue;t[84]===Symbol.for(`react.memo_cache_sentinel`)?(Ue=e=>h(e.target.value),t[84]=Ue):Ue=t[84];let Ge;t[85]===He?Ge=t[86]:(Ge=(0,$.jsx)(`input`,{type:`color`,value:He,onChange:Ue,"aria-label":`Provider instance accent color`,className:`h-8 w-10 cursor-pointer rounded-xl border border-input bg-background p-0.5`}),t[85]=He,t[86]=Ge);let Ke;t[87]===m?Ke=t[88]:(Ke=_t.map(e=>(0,$.jsx)(`button`,{type:`button`,className:O(`size-6 cursor-pointer rounded-full border transition`,m.toLowerCase()===e?`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:()=>h(e),"aria-label":`Use ${e} accent`},e)),t[87]=m,t[88]=Ke);let qe;t[89]===Ke?qe=t[90]:(qe=(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:Ke}),t[89]=Ke,t[90]=qe);let Je;t[91]===m?Je=t[92]:(Je=m?(0,$.jsx)(P,{type:`button`,size:`sm`,variant:`ghost`,className:`h-7 px-2 text-xs text-muted-foreground`,onClick:()=>h(``),children:`Clear`}):null,t[91]=m,t[92]=Je);let Ye;t[93]!==Ge||t[94]!==qe||t[95]!==Je?(Ye=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[Ge,qe,Je]}),t[93]=Ge,t[94]=qe,t[95]=Je,t[96]=Ye):Ye=t[96];let Ze;t[97]===Symbol.for(`react.memo_cache_sentinel`)?(Ze=(0,$.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:`Optional marker shown in the picker.`}),t[97]=Ze):Ze=t[97];let $e;t[98]!==ze||t[99]!==Ye?($e=(0,$.jsxs)(`div`,{className:ze,children:[Ve,Ye,Ze]}),t[98]=ze,t[99]=Ye,t[100]=$e):$e=t[100];let et;t[101]!==W||t[102]!==l||t[103]!==M||t[104]!==F.length||t[105]!==re||t[106]!==o?(et=F.length>0?(0,$.jsx)(`div`,{className:O(`grid gap-4`,o!==2&&`hidden`),children:(0,$.jsx)(gt,{definition:M,value:W,idPrefix:`add-provider-${l}`,variant:`dialog`,onChange:re})}):o===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,t[101]=W,t[102]=l,t[103]=M,t[104]=F.length,t[105]=re,t[106]=o,t[107]=et):et=t[107];let tt;t[108]!==xe||t[109]!==Z||t[110]!==Le||t[111]!==$e||t[112]!==et?(tt=(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)(We,{children:[xe,Z,Le,$e,et]})}),t[108]=xe,t[109]=Z,t[110]=Le,t[111]=$e,t[112]=et,t[113]=tt):tt=t[113];let nt;t[114]!==r||t[115]!==o?(nt=()=>{if(o===0){r(!1);return}s(Ot)},t[114]=r,t[115]=o,t[116]=nt):nt=t[116];let it=o===0?`Cancel`:`Back`,at;t[117]!==nt||t[118]!==it?(at=(0,$.jsx)(P,{variant:`outline`,size:`sm`,onClick:nt,children:it}),t[117]=nt,t[118]=it,t[119]=at):at=t[119];let ot;t[120]!==J||t[121]!==o?(ot=o<V.length-1?(0,$.jsx)(P,{size:`sm`,onClick:()=>s(Dt),children:`Next`}):(0,$.jsx)(P,{size:`sm`,onClick:J,children:`Add instance`}),t[120]=J,t[121]=o,t[122]=ot):ot=t[122];let st;t[123]!==at||t[124]!==ot?(st=(0,$.jsxs)(fe,{className:`border-t bg-background`,children:[at,ot]}),t[123]=at,t[124]=ot,t[125]=st):st=t[125];let ct;t[126]!==oe||t[127]!==tt||t[128]!==st?(ct=(0,$.jsx)(le,{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:[oe,tt,st]})}),t[126]=oe,t[127]=tt,t[128]=st,t[129]=ct):ct=t[129];let lt;return t[130]!==r||t[131]!==n||t[132]!==ct?(lt=(0,$.jsx)(se,{open:n,onOpenChange:r,children:ct}),t[130]=r,t[131]=n,t[132]=ct,t[133]=lt):lt=t[133],lt}function Dt(e){return Math.min(2,e+1)}function Ot(e){return Math.max(0,e-1)}function kt(e){let t=e.icon;return(0,$.jsxs)(Me,{value:e.value,disabled:!0,className:O(`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)(_e,{variant:`warning`,size:`sm`,children:`Coming Soon`})]},e.value)}function At(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,a=t!==void 0,[o,s]=N({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:c,setMounted:l,transitionStatus:u}=p(o,!0,!0),[d,f]=Q.useState(o),[{height:m,width:g},v]=Q.useState({height:void 0,width:void 0}),y=_(),[b,x]=Q.useState(),S=b??y,[C,w]=Q.useState(!1),[T,E]=Q.useState(!1),O=Q.useRef(null),k=Q.useRef(null),A=Q.useRef(null),M=Q.useRef(null),P=V(M,!1),F=j(e=>{let t=!o,n=D(R,e.nativeEvent);if(r(t,n),n.isCanceled)return;let i=M.current;k.current===`css-animation`&&i!=null&&i.style.removeProperty(`animation-name`),!C&&!T&&(k.current!=null&&k.current!==`css-animation`&&!c&&t&&l(!0),k.current===`css-animation`&&(!d&&t&&f(!0),!c&&t&&l(!0))),s(t),k.current===`none`&&c&&!t&&l(!1)});return h(()=>{a&&k.current===`none`&&!T&&!o&&l(!1)},[a,T,o,t,l]),Q.useMemo(()=>({abortControllerRef:O,animationTypeRef:k,disabled:i,handleTrigger:F,height:m,mounted:c,open:o,panelId:S,panelRef:M,runOnceAnimationsFinish:P,setDimensions:v,setHiddenUntilFound:w,setKeepMounted:E,setMounted:l,setOpen:s,setPanelIdState:x,setVisible:f,transitionDimensionRef:A,transitionStatus:u,visible:d,width:g}),[O,k,i,F,m,c,o,S,M,P,v,w,E,l,s,f,A,u,d,g])}var jt=Q.createContext(void 0);function Mt(){let e=Q.useContext(jt);if(e===void 0)throw Error(A(15));return e}var Nt=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=G.startingStyle]=`startingStyle`,e[e.endingStyle=G.endingStyle]=`endingStyle`,e}({}),Pt={[Nt.open]:``},Ft={[Nt.closed]:``},It={open(e){return e?Pt:Ft},...K},Lt=Q.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,...c}=e,l=j(o),u=At({open:s,defaultOpen:i,onOpenChange:l,disabled:a}),d=Q.useMemo(()=>({open:u.open,disabled:u.disabled,transitionStatus:u.transitionStatus}),[u.open,u.disabled,u.transitionStatus]),f=Q.useMemo(()=>({...u,onOpenChange:l,state:d}),[u,l,d]),p=w(`div`,e,{state:d,ref:t,props:c,stateAttributesMapping:It});return(0,$.jsx)(jt.Provider,{value:f,children:p})}),Rt=function(e){return e.disabled=`data-disabled`,e.orientation=`data-orientation`,e}({});function zt(e){let{abortControllerRef:t,animationTypeRef:n,externalRef:r,height:i,hiddenUntilFound:a,keepMounted:o,id:s,mounted:c,onOpenChange:l,open:u,panelRef:d,runOnceAnimationsFinish:f,setDimensions:p,setMounted:m,setOpen:_,setVisible:v,transitionDimensionRef:y,visible:b,width:S}=e,w=Q.useRef(!1),T=Q.useRef(null),E=Q.useRef(u),O=Q.useRef(u),k=x(),A=Q.useMemo(()=>n.current===`css-animation`?!b:!u&&!c,[u,c,b,n]),M=g(r,d,j(e=>{if(!e)return;if(n.current==null||y.current==null){let t=getComputedStyle(e),r=t.animationName!==`none`&&t.animationName!==``,i=t.transitionDuration!==`0s`&&t.transitionDuration!==``;r&&i||(t.animationName===`none`&&t.transitionDuration!==`0s`?n.current=`css-transition`:t.animationName!==`none`&&t.transitionDuration===`0s`?n.current=`css-animation`:n.current=`none`),e.getAttribute(Rt.orientation)===`horizontal`||t.transitionProperty.indexOf(`width`)>-1?y.current=`width`:y.current=`height`}if(n.current!==`css-transition`)return;(i===void 0||S===void 0)&&(p({height:e.scrollHeight,width:e.scrollWidth}),O.current&&e.style.setProperty(`transition-duration`,`0s`));let t=-1,r=-1;return t=B.request(()=>{O.current=!1,r=B.request(()=>{setTimeout(()=>{e.style.removeProperty(`transition-duration`)})})}),()=>{B.cancel(t),B.cancel(r)}}));return h(()=>{if(n.current!==`css-transition`)return;let e=d.current;if(!e)return;let r=-1;if(t.current!=null&&(t.current.abort(),t.current=null),u){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)}),!O.current&&!o&&e.setAttribute(Nt.startingStyle,``),p({height:e.scrollHeight,width:e.scrollWidth}),r=B.request(()=>{Object.entries(t).forEach(([t,n])=>{n===``?e.style.removeProperty(t):e.style.setProperty(t,n)})})}else{if(e.scrollHeight===0&&e.scrollWidth===0)return;p({height:e.scrollHeight,width:e.scrollWidth});let n=new AbortController;t.current=n;let r=n.signal,i=null,a=Nt.endingStyle;return i=new MutationObserver(o=>{o.some(e=>e.type===`attributes`&&e.attributeName===a)&&(i?.disconnect(),i=null,f(()=>{p({height:0,width:0}),e.style.removeProperty(`content-visibility`),m(!1),t.current===n&&(t.current=null)},r))}),i.observe(e,{attributes:!0,attributeFilter:[a]}),()=>{i?.disconnect(),k.cancel(),t.current===n&&(n.abort(),t.current=null)}}return()=>{B.cancel(r)}},[t,n,k,a,o,c,u,d,f,p,m]),h(()=>{if(n.current!==`css-animation`)return;let e=d.current;e&&(T.current=e.style.animationName||T.current,e.style.setProperty(`animation-name`,`none`),p({height:e.scrollHeight,width:e.scrollWidth}),!E.current&&!w.current&&e.style.removeProperty(`animation-name`),u?(t.current!=null&&(t.current.abort(),t.current=null),m(!0),v(!0)):(t.current=new AbortController,f(()=>{m(!1),v(!1),t.current=null},t.current.signal)))},[t,n,u,d,f,p,m,v,b]),C(()=>{let e=B.request(()=>{E.current=!1});return()=>B.cancel(e)}),h(()=>{if(!a)return;let e=d.current;if(!e)return;let t=-1,n=-1;return u&&w.current&&(e.style.transitionDuration=`0s`,p({height:e.scrollHeight,width:e.scrollWidth}),t=B.request(()=>{w.current=!1,n=B.request(()=>{setTimeout(()=>{e.style.removeProperty(`transition-duration`)})})})),()=>{B.cancel(t),B.cancel(n)}},[a,u,d,p]),h(()=>{let e=d.current;e&&a&&A&&(e.setAttribute(`hidden`,`until-found`),n.current===`css-transition`&&e.setAttribute(Nt.startingStyle,``))},[a,A,n,d]),Q.useEffect(function(){let e=d.current;if(!e)return;function t(e){w.current=!0,_(!0),l(!0,D(F,e))}return e.addEventListener(`beforematch`,t),()=>{e.removeEventListener(`beforematch`,t)}},[l,d,_]),Q.useMemo(()=>({props:{hidden:A,id:s,ref:M}}),[A,s,M])}var Bt=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),Vt=Q.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,...s}=e,{abortControllerRef:c,animationTypeRef:l,height:u,mounted:d,onOpenChange:f,open:p,panelId:m,panelRef:g,runOnceAnimationsFinish:_,setDimensions:v,setHiddenUntilFound:y,setKeepMounted:b,setMounted:x,setPanelIdState:S,setOpen:C,setVisible:E,state:D,transitionDimensionRef:O,visible:k,width:A,transitionStatus:j}=Mt(),M=r??!1,N=i??!1;h(()=>{if(o)return S(o),()=>{S(void 0)}},[o,S]),h(()=>{y(M)},[y,M]),h(()=>{b(N)},[b,N]);let{props:P}=zt({abortControllerRef:c,animationTypeRef:l,externalRef:t,height:u,hiddenUntilFound:M,id:m,keepMounted:N,mounted:d,onOpenChange:f,open:p,panelRef:g,runOnceAnimationsFinish:_,setDimensions:v,setMounted:x,setOpen:C,setVisible:E,transitionDimensionRef:O,visible:k,width:A});T({open:p&&j===`idle`,ref:g,onComplete(){p&&v({height:void 0,width:void 0})}});let F=w(`div`,e,{state:Q.useMemo(()=>({...D,transitionStatus:j}),[D,j]),ref:[t,g],props:[P,{style:{[Bt.collapsiblePanelHeight]:u===void 0?`auto`:`${u}px`,[Bt.collapsiblePanelWidth]:A===void 0?`auto`:`${A}px`}},s],stateAttributesMapping:It});return N||M||!N&&d?F:null});function Ht(e){let t=(0,rt.c)(4),n;t[0]===e?n=t[1]:({...n}=e,t[0]=e,t[1]=n);let r;return t[2]===n?r=t[3]:(r=(0,$.jsx)(Lt,{"data-slot":`collapsible`,...n}),t[2]=n,t[3]=r),r}function Ut(e){let t=(0,rt.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=O(`h-(--collapsible-panel-height) overflow-hidden transition-[height] duration-200 data-ending-style:h-0 data-starting-style:h-0 data-open:data-ending-style:[height:var(--collapsible-panel-height)]`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,$.jsx)(Vt,{className:i,"data-slot":`collapsible-panel`,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}var Wt={[U.make(`codex`)]:`gpt-6.7-codex-ultra-preview`,[U.make(`claudeAgent`)]:`claude-sonnet-5-0`,[U.make(`cursor`)]:`claude-sonnet-4-6`,[U.make(`opencode`)]:`openai/gpt-5`};function Gt(e){let t=(0,rt.c)(70),{instanceId:n,driverKind:r,models:i,customModels:a,hiddenModels:o,favoriteModels:s,modelOrder:c,onChange:l,onHiddenModelsChange:u,onFavoriteModelsChange:d,onModelOrderChange:p}=e,[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(null),y=(0,Q.useRef)(null),x;t[0]===o?x=t[1]:(x=new Set(o),t[0]=o,t[1]=x);let S=x,C;t[2]===s?C=t[3]:(C=new Set(s),t[2]=s,t[3]=C);let w=C,T;t[4]!==w||t[5]!==c||t[6]!==i?(T=z(i,{favoriteModels:w,groupFavorites:!0,modelOrder:c}),t[4]=w,t[5]=c,t[6]=i,t[7]=T):T=t[7];let E=T,D;t[8]!==a||t[9]!==r||t[10]!==h||t[11]!==i||t[12]!==l?(D=()=>{let e=r?m(h,r):h.trim()||null;if(!e){v(`Enter a model slug.`);return}if(i.some(t=>!t.isCustom&&t.slug===e)){v(`That model is already built in.`);return}if(e.length>256){v(`Model slugs must be 256 characters or less.`);return}if(a.includes(e)){v(`That custom model is already saved.`);return}l([...a,e]),g(``),v(null);let t=y.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]=h,t[11]=i,t[12]=l,t[13]=D):D=t[13];let k=D,A;t[14]!==a||t[15]!==s||t[16]!==c||t[17]!==l||t[18]!==d||t[19]!==p?(A=e=>{l(a.filter(t=>t!==e)),p(c.filter(t=>t!==e)),d(s.filter(t=>t!==e)),v(null)},t[14]=a,t[15]=s,t[16]=c,t[17]=l,t[18]=d,t[19]=p,t[20]=A):A=t[20];let j=A,M;t[21]!==S||t[22]!==o||t[23]!==u?(M=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]=M):M=t[24];let N=M,F;t[25]!==w||t[26]!==s||t[27]!==d?(F=e=>{if(w.has(e)){d(s.filter(t=>t!==e));return}d([...s,e])},t[25]=w,t[26]=s,t[27]=d,t[28]=F):F=t[28];let I=F,ee;t[29]!==p||t[30]!==E?(ee=(e,t)=>{let n=E.map(Xt),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,p(a)},t[29]=p,t[30]=E,t[31]=ee):ee=t[31];let L=ee,R;t[32]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,$.jsx)(`div`,{className:`text-xs font-medium text-foreground`,children:`Models`}),t[32]=R):R=t[32];let B=i.length===1?``:`s`,V;t[33]!==i.length||t[34]!==B?(V=(0,$.jsxs)(`div`,{className:`mt-1 text-xs text-muted-foreground`,children:[i.length,` model`,B,` available.`]}),t[33]=i.length,t[34]=B,t[35]=V):V=t[35];let H;t[36]!==w||t[37]!==L||t[38]!==j||t[39]!==I||t[40]!==N||t[41]!==S||t[42]!==n||t[43]!==E?(H=E.map((e,t)=>{let r=e.capabilities,i=[],a=!e.isCustom&&S.has(e.slug),o=w.has(e.slug),s=E[t-1],c=E[t+1],l=s!==void 0&&w.has(s.slug)===o,u=c!==void 0&&w.has(c.slug)===o,d=r?.optionDescriptors??[];d.some(Yt)&&i.push(`Fast mode`),d.some(Jt)&&i.push(`Thinking`),d.some(qt)&&i.push(`Reasoning`);let p=i.length>0||e.name!==e.slug;return(0,$.jsxs)(`div`,{className:O(`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:O(`min-w-0 truncate text-xs`,a?`text-muted-foreground line-through`:`text-foreground/90`),children:e.name}),p?(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{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)(ae,{className:`size-3`})}),(0,$.jsx)(f,{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(Kt)}):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)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:O(`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,o&&`text-yellow-500 hover:text-yellow-600`),onClick:()=>I(e.slug),"aria-label":`${o?`Remove`:`Add`} ${e.name} ${o?`from`:`to`} favorites`}),children:(0,$.jsx)(Ne,{className:O(`size-3`,o&&`fill-current`)})}),(0,$.jsx)(f,{side:`top`,children:o?`Remove from favorites`:`Add to favorites`})]}),(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:!l,onClick:()=>L(e.slug,-1),"aria-label":`Move ${e.name} up`}),children:(0,$.jsx)(Te,{className:`size-3`})}),(0,$.jsx)(f,{side:`top`,children:`Move up`})]}),(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:!u,onClick:()=>L(e.slug,1),"aria-label":`Move ${e.name} down`}),children:(0,$.jsx)(Ee,{className:`size-3`})}),(0,$.jsx)(f,{side:`top`,children:`Move down`})]}),e.isCustom?null:(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:()=>N(e.slug),"aria-label":`${a?`Show`:`Hide`} ${e.name}`}),children:a?(0,$.jsx)(Ce,{className:`size-3`}):(0,$.jsx)(nt,{className:`size-3`})}),(0,$.jsx)(f,{side:`top`,children:a?`Show in picker`:`Hide from picker`})]}),e.isCustom?(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,"aria-label":`Remove ${e.slug}`,onClick:()=>j(e.slug)}),children:(0,$.jsx)(ze,{className:`size-3`})}),(0,$.jsx)(f,{side:`top`,children:`Remove custom model`})]}):null]})]},`${n}:${e.slug}`)}),t[36]=w,t[37]=L,t[38]=j,t[39]=I,t[40]=N,t[41]=S,t[42]=n,t[43]=E,t[44]=H):H=t[44];let ne;t[45]===H?ne=t[46]:(ne=(0,$.jsx)(`div`,{ref:y,className:`mt-2 max-h-40 overflow-y-auto pb-1`,children:H}),t[45]=H,t[46]=ne);let U=`provider-instance-${n}-custom-model`,W;t[47]===_?W=t[48]:(W=e=>{g(e.target.value),_&&v(null)},t[47]=_,t[48]=W);let G;t[49]===k?G=t[50]:(G=e=>{e.key===`Enter`&&(e.preventDefault(),k())},t[49]=k,t[50]=G);let re=r?Wt[r]:`model-slug`,ie;t[51]!==h||t[52]!==U||t[53]!==W||t[54]!==G||t[55]!==re?(ie=(0,$.jsx)(Be,{id:U,value:h,onChange:W,onKeyDown:G,placeholder:re,spellCheck:!1}),t[51]=h,t[52]=U,t[53]=W,t[54]=G,t[55]=re,t[56]=ie):ie=t[56];let K;t[57]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,$.jsx)(Z,{className:`size-3.5`}),t[57]=K):K=t[57];let q;t[58]===k?q=t[59]:(q=(0,$.jsxs)(P,{className:`shrink-0`,variant:`outline`,onClick:k,children:[K,`Add`]}),t[58]=k,t[59]=q);let J;t[60]!==ie||t[61]!==q?(J=(0,$.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2 sm:flex-row`,children:[ie,q]}),t[60]=ie,t[61]=q,t[62]=J):J=t[62];let Y;t[63]===_?Y=t[64]:(Y=_?(0,$.jsx)(`p`,{className:`mt-2 text-xs text-destructive`,children:_}):null,t[63]=_,t[64]=Y);let X;return t[65]!==V||t[66]!==ne||t[67]!==J||t[68]!==Y?(X=(0,$.jsxs)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:[R,V,ne,J,Y]}),t[65]=V,t[66]=ne,t[67]=J,t[68]=Y,t[69]=X):X=t[69],X}function Kt(e){return(0,$.jsx)(`span`,{className:`text-[10px] text-muted-foreground`,children:e},e)}function qt(e){return e.type===`select`&&(e.id===`reasoningEffort`||e.id===`effort`||e.id===`reasoning`||e.id===`variant`)}function Jt(e){return e.id===`thinking`}function Yt(e){return e.id===`fastMode`}function Xt(e){return e.slug}var Zt={disabled:{dot:`bg-amber-400`},error:{dot:`bg-destructive`},ready:{dot:`bg-success`},warning:{dot:`bg-warning`}};function Qt(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 $t(e){return e?e.startsWith(`v`)?e:`v${e}`:null}function en(e){if(!e||e.status===`current`||e.status===`unknown`)return null;let t=`Update available`,n=e.latestVersion,r=$t(n);return{detail:e.message??(r?`${t}: install ${r}.`:`${t}: install the latest provider version.`),updateCommand:e.updateCommand,emphasis:`normal`}}var tn=[`#2563eb`,`#16a34a`,`#ea580c`,`#dc2626`,`#7c3aed`,`#0891b2`],nn=/^[a-zA-Z_][a-zA-Z0-9_]*$/,rn=0,an=()=>`provider-env-${rn++}`;function on(e,t){return{id:`${t}:${e.name}`,name:e.name,value:e.value,sensitive:e.sensitive,...e.valueRedacted===void 0?{}:{valueRedacted:e.valueRedacted}}}function sn(e,t){if(typeof e!=`object`||!e)return[];let n=e[t];return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}function cn(e,t,n){let r=typeof e==`object`&&e?{...e}:{};return r[t]=n,r}function ln(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 un(e){let t=(0,rt.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)(et,{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 dn(e){let t=(0,rt.c)(34),[n,r]=(0,Q.useState)(e.value??``),[i,a]=(0,Q.useState)(!1),o;t[0]===n?o=t[1]:(o=ie(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??tn[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=tn.map(e=>(0,$.jsx)(`button`,{type:`button`,className:O(`size-6 cursor-pointer rounded-full border transition`,s?.toLowerCase()===e?`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)(P,{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 E;return t[32]===w?E=t[33]:(E=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[m,w,T]}),t[32]=w,t[33]=E),E}function fn(e){let t=(0,rt.c)(35),n;t[0]===e.window?n=t[1]:(n=Le(e.window),t[0]=e.window,t[1]=n);let r=n,i=e.window.windowDurationMins===void 0?e.fallbackLabel:r.label,a=je(e.window.usedPercent),o;t[2]===e.window.usedPercent?o=t[3]:(o=ke(e.window.usedPercent),t[2]=e.window.usedPercent,t[3]=o);let s=o,c;t[4]===e.window.resetsAt?c=t[5]:(c=Ae(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=O(`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 E;return t[31]!==S||t[32]!==T||t[33]!==h?(E=(0,$.jsxs)(`div`,{className:`grid gap-1.5`,children:[h,S,T]}),t[31]=S,t[32]=T,t[33]=h,t[34]=E):E=t[34],E}function pn(e){let t=(0,rt.c)(8),{primary:n,secondary:r}=e.rateLimits;if(!n&&!r)return null;let i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Usage limits`}),t[0]=i):i=t[0];let a;t[1]===n?a=t[2]:(a=n?(0,$.jsx)(fn,{window:n,fallbackLabel:`Short window`}):null,t[1]=n,t[2]=a);let o;t[3]===r?o=t[4]:(o=r?(0,$.jsx)(fn,{window:r,fallbackLabel:`Weekly`}):null,t[3]=r,t[4]=o);let s;return t[5]!==a||t[6]!==o?(s=(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:[i,(0,$.jsxs)(`div`,{className:`grid gap-3`,children:[a,o]})]})}),t[5]=a,t[6]=o,t[7]=s):s=t[7],s}function mn(e){let t=(0,rt.c)(27),n;t[0]===e.environment?n=t[1]:(n=()=>e.environment.map(on),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(on))},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(!nn.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:an(),name:``,value:``,sensitive:!0}]),t[14]=r,t[15]=m);let h;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,$.jsx)(Z,{className:`size-3`}),t[16]=h):h=t[16];let g;t[17]===m?g=t[18]:(g=(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[p,(0,$.jsxs)(P,{type:`button`,size:`sm`,variant:`outline`,className:`h-7 gap-1.5 px-2 text-xs`,onClick:m,children:[h,`Add`]})]}),t[17]=m,t[18]=g);let _;t[19]!==f||t[20]!==r||t[21]!==u?(_=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)($e,{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)($e,{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)(P,{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)(ze,{className:`size-3.5`})})]},e.id))}),t[19]=f,t[20]=r,t[21]=u,t[22]=_):_=t[22];let v;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(v=(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]=v):v=t[23];let y;return t[24]!==_||t[25]!==g?(y=(0,$.jsxs)(`div`,{className:`grid gap-2`,children:[g,_,v]}),t[24]=_,t[25]=g,t[26]=y):y=t[26],y}function hn(e){let t=(0,rt.c)(168),{instanceId:n,instance:r,driverOption:i,liveProvider:a,isExpanded:o,onExpandedChange:s,onUpdate:c,onDelete:l,headerAction:u,hiddenModels:d,favoriteModels:p,modelOrder:m,onHiddenModelsChange:h,onFavoriteModelsChange:g,onModelOrderChange:_,onRunUpdate:y,isUpdating:x}=e,S=x===void 0?!1:x,C=r.enabled??!0,w=Zt[a?.status??(C?`warning`:`disabled`)],T;t[0]===a?T=t[1]:(T=Qt(a),t[0]=a,t[1]=T);let E=T,D=a?.auth.email,k;t[2]!==D||t[3]!==a?.auth.status?(k=a?.auth.status===`authenticated`&&!!D?.trim(),t[2]=D,t[3]=a?.auth.status,t[4]=k):k=t[4];let A=k,j=A?a?.auth.label??a?.auth.type??null:null,M=E,N=a?.version,F;t[5]===N?F=t[6]:(F=$t(N),t[5]=N,t[6]=F);let I=F,ee=a?.versionAdvisory,L;t[7]===ee?L=t[8]:(L=en(ee),t[7]=ee,t[8]=L);let R=L,z=R?.updateCommand??null,B=i?.icon,V;t[9]!==i?.label||t[10]!==r.displayName||t[11]!==r.driver?(V=r.displayName?.trim()||i?.label||String(r.driver),t[9]=i?.label,t[10]=r.displayName,t[11]=r.driver,t[12]=V):V=t[12];let H=V,U;t[13]===r.accentColor?U=t[14]:(U=ie(r.accentColor),t[13]=r.accentColor,t[14]=U);let W=U,G;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(G={onCopy:vn,onError:_n},t[15]=G):G=t[15];let{copyToClipboard:re}=X(G),K=ne(r.driver)?r.driver:null,q,J;t[16]!==r.config||t[17]!==a?.models?(q=sn(r.config,`customModels`),J=ln({liveModels:a?.models,customModels:q}),t[16]=r.config,t[17]=a?.models,t[18]=q,t[19]=J):(q=t[18],J=t[19]);let ae=J,Y;t[20]!==r||t[21]!==c?(Y=e=>{let t=e.trim(),{displayName:n,...i}=r;c(t.length>0?{...i,displayName:t}:i)},t[20]=r,t[21]=c,t[22]=Y):Y=t[22];let se=Y,le;t[23]!==r||t[24]!==c?(le=e=>{c({...r,enabled:e})},t[23]=r,t[24]=c,t[25]=le):le=t[25];let ue=le,de;t[26]!==r||t[27]!==c?(de=e=>{let t=ie(e),{accentColor:n,...i}=r;c(t?{...i,accentColor:t}:i)},t[26]=r,t[27]=c,t[28]=de):de=t[28];let fe=de,pe;t[29]!==r||t[30]!==c?(pe=e=>{let{config:t,...n}=r;c(e===void 0?n:{...n,config:e})},t[29]=r,t[30]=c,t[31]=pe):pe=t[31];let he=pe,ge;t[32]!==r||t[33]!==c?(ge=e=>{let t=cn(r.config,`customModels`,[...e]),{config:n,...i}=r;c({...i,config:t})},t[32]=r,t[33]=c,t[34]=ge):ge=t[34];let ye=ge,xe;t[35]!==r||t[36]!==c?(xe=e=>{let t=e.filter(gn),{environment:n,...i}=r;c(t.length>0?{...i,environment:t}:i)},t[35]=r,t[36]=c,t[37]=xe):xe=t[37];let Se=xe,Ce;t[38]!==B||t[39]!==W||t[40]!==H||t[41]!==K||t[42]!==w.dot?(Ce=K?(0,$.jsx)(Fe,{driverKind:K,displayName:H,accentColor:W,showBadge:!!W,statusDotClassName:w.dot,className:`size-5`,iconClassName:`size-4 text-foreground/80`,badgeClassName:`right-[-0.125rem] bottom-[-0.125rem] h-3 min-w-3 text-[7px]`}):B?(0,$.jsxs)(`span`,{className:`relative inline-flex size-5 shrink-0 items-center justify-center`,children:[(0,$.jsx)(B,{className:`size-4 text-foreground/80`,"aria-hidden":!0}),(0,$.jsx)(`span`,{className:O(`pointer-events-none absolute -left-0.5 -top-0.5 size-2 rounded-full ring-2 ring-background`,w.dot),"aria-hidden":!0})]}):(0,$.jsx)(`span`,{className:O(`size-2 shrink-0 rounded-full`,w.dot)}),t[38]=B,t[39]=W,t[40]=H,t[41]=K,t[42]=w.dot,t[43]=Ce):Ce=t[43];let Te=Ce,Ee;t[44]===H?Ee=t[45]:(Ee=(0,$.jsx)(`h3`,{className:`truncate text-[13px] font-semibold tracking-[-0.01em] text-foreground`,children:H}),t[44]=H,t[45]=Ee);let Z;t[46]!==r.driver||t[47]!==n?(Z=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[46]=r.driver,t[47]=n,t[48]=Z):Z=t[48];let Oe;t[49]===i?Oe=t[50]:(Oe=i?.badgeLabel?(0,$.jsx)(_e,{variant:`warning`,size:`sm`,className:`shrink-0`,children:i.badgeLabel}):null,t[49]=i,t[50]=Oe);let ke;t[51]!==Ee||t[52]!==Z||t[53]!==Oe||t[54]!==Te?(ke=(0,$.jsxs)($.Fragment,{children:[Te,Ee,Z,Oe]}),t[51]=Ee,t[52]=Z,t[53]=Oe,t[54]=Te,t[55]=ke):ke=t[55];let Ae=ke,je;t[56]===u?je=t[57]:(je=u?(0,$.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center`,children:u}):null,t[56]=u,t[57]=je);let Me;t[58]!==n||t[59]!==l?(Me=l?(0,$.jsx)(`span`,{className:`inline-flex h-5 w-5 shrink-0 items-center justify-center`,children:(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-destructive`,onClick:l,"aria-label":`Delete provider instance ${n}`,children:(0,$.jsx)(Re,{className:`size-3`})})}),(0,$.jsx)(f,{side:`top`,children:`Delete instance`})]})}):null,t[58]=n,t[59]=l,t[60]=Me):Me=t[60];let Ne;t[61]!==je||t[62]!==Me?(Ne=(0,$.jsxs)($.Fragment,{children:[je,Me]}),t[61]=je,t[62]=Me,t[63]=Ne):Ne=t[63];let Pe=Ne,Ie;t[64]!==D||t[65]!==j||t[66]!==A||t[67]!==M.headline?(Ie=A?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`Authenticated as`}),(0,$.jsx)(un,{email:D}),j?(0,$.jsxs)(`span`,{children:[`· `,j]}):null]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:M.headline}),(0,$.jsx)(un,{email:D,separator:!0,prefix:`Email`})]}),t[64]=D,t[65]=j,t[66]=A,t[67]=M.headline,t[68]=Ie):Ie=t[68];let Le;t[69]===M.detail?Le=t[70]:(Le=M.detail?(0,$.jsxs)(`span`,{children:[`- `,M.detail]}):null,t[69]=M.detail,t[70]=Le);let ze;t[71]!==Ie||t[72]!==Le?(ze=(0,$.jsxs)(`p`,{className:`flex min-w-0 flex-wrap items-center gap-x-1 text-xs text-muted-foreground`,children:[Ie,Le]}),t[71]=Ie,t[72]=Le,t[73]=ze):ze=t[73];let Be=ze,Ve;t[74]===I?Ve=t[75]:(Ve=I?(0,$.jsx)(`code`,{className:`text-xs text-muted-foreground`,children:I}):null,t[74]=I,t[75]=Ve);let He=Ve,Ue;t[76]!==re||t[77]!==H||t[78]!==S||t[79]!==y||t[80]!==z||t[81]!==R?(Ue=R?(0,$.jsxs)(ve,{children:[(0,$.jsx)(me,{render:(0,$.jsx)(P,{type:`button`,size:`icon-xs`,variant:`ghost`,className:O(`size-5 rounded-sm p-0`,R.emphasis===`strong`?`text-warning hover:text-warning`:`text-primary hover:text-primary`),"aria-label":`Update available — view details`,children:(0,$.jsx)(tt,{className:`size-3.5 [animation:bounce_2.4s_ease-in-out_infinite] motion-reduce:animate-none`})})}),(0,$.jsx)(we,{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:O(`text-xs leading-snug`,R.emphasis===`strong`?`text-warning`:`text-muted-foreground`),children:R.detail})]}),y?(0,$.jsxs)(P,{type:`button`,size:`xs`,variant:`default`,className:`w-full`,disabled:S,onClick:y,children:[S?(0,$.jsx)(be,{className:`animate-spin`}):(0,$.jsx)(De,{}),S?`Updating`:`Update now`]}):null,y&&z?(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,z?(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:z}),(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`size-6 shrink-0 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:()=>re(z,{providerName:H}),"aria-label":`Copy update command`,children:(0,$.jsx)(oe,{className:`size-3`})})}),(0,$.jsx)(f,{side:`top`,children:`Copy command`})]})]}):null]})})]}):null,t[76]=re,t[77]=H,t[78]=S,t[79]=y,t[80]=z,t[81]=R,t[82]=Ue):Ue=t[82];let We;t[83]!==Ue||t[84]!==Ae||t[85]!==Pe||t[86]!==He?(We=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[Ae,He,Ue,Pe]}),t[83]=Ue,t[84]=Ae,t[85]=Pe,t[86]=He,t[87]=We):We=t[87];let Ge;t[88]!==Be||t[89]!==We?(Ge=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1`,children:[We,Be]}),t[88]=Be,t[89]=We,t[90]=Ge):Ge=t[90];let Ke;t[91]!==o||t[92]!==s?(Ke=()=>s(!o),t[91]=o,t[92]=s,t[93]=Ke):Ke=t[93];let qe=`Toggle ${H} details`,Je=o&&`rotate-180`,Ye;t[94]===Je?Ye=t[95]:(Ye=O(`size-3.5 transition-transform`,Je),t[94]=Je,t[95]=Ye);let Xe;t[96]===Ye?Xe=t[97]:(Xe=(0,$.jsx)(v,{className:Ye}),t[96]=Ye,t[97]=Xe);let Ze;t[98]!==Ke||t[99]!==qe||t[100]!==Xe?(Ze=(0,$.jsx)(P,{size:`sm`,variant:`ghost`,className:`h-7 px-2 text-xs text-muted-foreground hover:text-foreground`,onClick:Ke,"aria-label":qe,children:Xe}),t[98]=Ke,t[99]=qe,t[100]=Xe,t[101]=Ze):Ze=t[101];let Qe;t[102]===ue?Qe=t[103]:(Qe=e=>ue(!!e),t[102]=ue,t[103]=Qe);let et=`Enable ${H}`,nt;t[104]!==C||t[105]!==Qe||t[106]!==et?(nt=(0,$.jsx)(ce,{checked:C,onCheckedChange:Qe,"aria-label":et}),t[104]=C,t[105]=Qe,t[106]=et,t[107]=nt):nt=t[107];let Q;t[108]!==Ze||t[109]!==nt?(Q=(0,$.jsxs)(`div`,{className:`flex w-full shrink-0 items-center gap-2 sm:w-auto sm:justify-end`,children:[Ze,nt]}),t[108]=Ze,t[109]=nt,t[110]=Q):Q=t[110];let it;t[111]!==Ge||t[112]!==Q?(it=(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:[Ge,Q]})}),t[111]=Ge,t[112]=Q,t[113]=it):it=t[113];let at;t[114]===a?at=t[115]:(at=a?.rateLimits?(0,$.jsx)(pn,{rateLimits:a.rateLimits}):null,t[114]=a,t[115]=at);let ot=`provider-instance-${n}-display-name`,st;t[116]===Symbol.for(`react.memo_cache_sentinel`)?(st=(0,$.jsx)(`span`,{className:`text-xs font-medium text-foreground`,children:`Display name`}),t[116]=st):st=t[116];let ct=`provider-instance-${n}-display-name`,lt=r.displayName??``,ut=i?.label??`Instance label`,dt;t[117]!==ct||t[118]!==lt||t[119]!==ut||t[120]!==se?(dt=(0,$.jsx)($e,{id:ct,className:`mt-1.5`,value:lt,onCommit:se,placeholder:ut,spellCheck:!1}),t[117]=ct,t[118]=lt,t[119]=ut,t[120]=se,t[121]=dt):dt=t[121];let ft;t[122]===Symbol.for(`react.memo_cache_sentinel`)?(ft=(0,$.jsx)(`span`,{className:`mt-1 block text-xs text-muted-foreground`,children:`Optional label shown in the provider list.`}),t[122]=ft):ft=t[122];let pt;t[123]!==ot||t[124]!==dt?(pt=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`label`,{htmlFor:ot,className:`block`,children:[st,dt,ft]})}),t[123]=ot,t[124]=dt,t[125]=pt):pt=t[125];let mt;t[126]!==W||t[127]!==H||t[128]!==fe?(mt=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsx)(dn,{displayName:H,value:W,onCommit:fe})}),t[126]=W,t[127]=H,t[128]=fe,t[129]=mt):mt=t[129];let ht;t[130]===r.environment?ht=t[131]:(ht=r.environment??[],t[130]=r.environment,t[131]=ht);let _t;t[132]!==ht||t[133]!==Se?(_t=(0,$.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3 sm:px-5`,children:(0,$.jsx)(mn,{environment:ht,onChange:Se})}),t[132]=ht,t[133]=Se,t[134]=_t):_t=t[134];let vt;t[135]!==i||t[136]!==r.config||t[137]!==n||t[138]!==he?(vt=i?(0,$.jsx)(gt,{definition:i,value:r.config,idPrefix:`provider-instance-${n}`,variant:`card`,onChange:he}):null,t[135]=i,t[136]=r.config,t[137]=n,t[138]=he,t[139]=vt):vt=t[139];let yt;t[140]!==q||t[141]!==K||t[142]!==i||t[143]!==p||t[144]!==d||t[145]!==r.driver||t[146]!==n||t[147]!==m||t[148]!==ae||t[149]!==g||t[150]!==h||t[151]!==_||t[152]!==ye?(yt=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)(Gt,{instanceId:n,driverKind:K,models:ae,customModels:q,hiddenModels:d,favoriteModels:p,modelOrder:m,onChange:ye,onHiddenModelsChange:h,onFavoriteModelsChange:g,onModelOrderChange:_}),t[140]=q,t[141]=K,t[142]=i,t[143]=p,t[144]=d,t[145]=r.driver,t[146]=n,t[147]=m,t[148]=ae,t[149]=g,t[150]=h,t[151]=_,t[152]=ye,t[153]=yt):yt=t[153];let bt;t[154]!==at||t[155]!==pt||t[156]!==mt||t[157]!==_t||t[158]!==vt||t[159]!==yt?(bt=(0,$.jsx)(Ut,{children:(0,$.jsxs)(`div`,{className:`space-y-0`,children:[at,pt,mt,_t,vt,yt]})}),t[154]=at,t[155]=pt,t[156]=mt,t[157]=_t,t[158]=vt,t[159]=yt,t[160]=bt):bt=t[160];let xt;t[161]!==o||t[162]!==s||t[163]!==bt?(xt=(0,$.jsx)(Ht,{open:o,onOpenChange:s,children:bt}),t[161]=o,t[162]=s,t[163]=bt,t[164]=xt):xt=t[164];let St;return t[165]!==it||t[166]!==xt?(St=(0,$.jsxs)(`div`,{className:`border-t border-border/60 first:border-t-0`,children:[it,xt]}),t[165]=it,t[166]=xt,t[167]=St):St=t[167],St}function gn(e){return e.name.trim().length>0}function _n(e,t){let{providerName:n}=t;Y.add(J({type:`error`,title:`Could not copy ${n} update command`,description:e.message}))}function vn(e){let{providerName:t}=e;Y.add({type:`success`,title:`${t} update command copied`,description:`Run it in a terminal when you are ready to update.`})}function yn(e){let t=y.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 bn=U.make(`codex`),xn=Qe.map(e=>({provider:e.value}));function Sn(e,t){let n={...e};return delete n[t],n}function Cn(e,t){return e.filter(e=>e.provider!==t)}function wn(e){let t=(0,rt.c)(5),{lastCheckedAt:n}=e;Ge();let r;t[0]===n?r=t[1]:(r=n?ge(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 Tn(){let e=(0,rt.c)(89),t=u(),{updateSettings:n}=c(),r=d(),[a,o]=(0,Q.useState)(!1),[l,p]=(0,Q.useState)(!1),m;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(m=new Set,e[0]=m):m=e[0];let[h,g]=(0,Q.useState)(m),_;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(_={},e[1]=_):_=e[1];let[v,x]=(0,Q.useState)(_),S=(0,Q.useRef)(!1),C;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>{S.current||(S.current=!0,o(!0),s().server.refreshProviders().catch(Rn).finally(()=>{S.current=!1,o(!1)}))},e[2]=C):C=e[2];let w=C,T,D,O,A,j,M;if(e[3]!==a||e[4]!==v||e[5]!==r||e[6]!==t||e[7]!==n||e[8]!==h){let o=xn.filter(e=>e.provider!==`cursor`||r.some(Ln)),c,l,u,d,m,_,S;if(e[15]!==r||e[16]!==t){let n=H(t,r);d=n.instanceId,m=n.model,_=n.options,c=re(W(r)),u=c.find(e=>e.instanceId===d),S=u?.driverKind??bn,l=ee(t,r,d,m),e[15]=r,e[16]=t,e[17]=c,e[18]=l,e[19]=u,e[20]=d,e[21]=m,e[22]=_,e[23]=S}else c=e[17],l=e[18],u=e[19],d=e[20],m=e[21],_=e[22],S=e[23];let C=l,N;e[24]===t.textGenerationModelSelection?N=e[25]:(N=i(t.textGenerationModelSelection??null,y.textGenerationModelSelection??null),e[24]=t.textGenerationModelSelection,e[25]=N);let F=!N,I;e[26]===r?I=e[27]:(I=r.length>0?r.reduce(In,r[0].checkedAt):null,e[26]=r,e[27]=I);let R=I,z=new Map;for(let[e,n]of Object.entries(t.providerInstances??{})){let t=n.driver,r=z.get(t)??[];r.push([e,n]),z.set(t,r)}let B=new Set(o.map(Fn)),V=[],ne=new Set(o.map(Pn));for(let e of o){let n=t.providers,r=y.providers,a=e.provider,o=L(a),s=t.providerInstances?.[o],c=n[e.provider],l=r[e.provider],u=s??{driver:a,enabled:c.enabled,config:c},d=s!==void 0||!i(c,l);V.push({instanceId:o,instance:u,driver:a,isDefault:!0,isDirty:d});for(let[t,n]of z.get(e.provider)??[])t!==o&&V.push({instanceId:t,instance:n,driver:n.driver,isDefault:!1})}for(let[e,t]of z)if(!ne.has(e))for(let[e,n]of t){let t=B.has(String(e));V.push({instanceId:e,instance:n,driver:n.driver,isDefault:t})}let U=(e,r,i)=>{n(yn({settings:t,instanceId:e.instanceId,instance:r,driver:e.driver,isDefault:e.isDefault,textGenerationModelSelection:i?.textGenerationModelSelection}))},G=e=>{n({providerInstances:Sn(t.providerInstances,e),providerModelPreferences:Sn(t.providerModelPreferences,e),favorites:Cn(t.favorites??[],e)})},ie=(e,r)=>{let i=[...new Set(r.hiddenModels.filter(Nn))],a=[...new Set(r.modelOrder.filter(Mn))],o=Sn(t.providerModelPreferences,e);n({providerModelPreferences:i.length===0&&a.length===0?o:{...o,[e]:{hiddenModels:i,modelOrder:a}}})},K=(e,r)=>{let i=[...new Set(r.map(jn).filter(An))];n({favorites:[...Cn(t.favorites??[],e),...i.map(t=>({provider:e,model:t}))]})},q=e=>{g(t=>new Set(t).add(e.instanceId)),s().server.updateProvider({provider:e.driver,instanceId:e.instanceId}).then(kn).catch(On).finally(()=>{g(t=>{let n=new Set(t);return n.delete(e.instanceId),n})})},J=e=>{let r=y.providers,i=L(e),a=r[e];a!==void 0&&n({providers:{...t.providers,[e]:a},providerInstances:Sn(t.providerInstances,i),providerModelPreferences:Sn(t.providerModelPreferences,i),favorites:Cn(t.favorites??[],i)})};D=qe;let ae;e[28]!==F||e[29]!==n?(ae=F?(0,$.jsx)(Ye,{label:`text generation model`,onClick:()=>n({textGenerationModelSelection:y.textGenerationModelSelection})}):null,e[28]=F,e[29]=n,e[30]=ae):ae=e[30];let Y;e[31]!==r||e[32]!==t||e[33]!==n?(Y=(e,i)=>{n({textGenerationModelSelection:H({...t,textGenerationModelSelection:k(e,i)},r)})},e[31]=r,e[32]=t,e[33]=n,e[34]=Y):Y=e[34];let X;e[35]!==c||e[36]!==C||e[37]!==Y||e[38]!==d||e[39]!==m?(X=(0,$.jsx)(Pe,{activeInstanceId:d,model:m,lockedProvider:null,instanceEntries:c,modelOptionsByInstance:C,triggerVariant:`outline`,triggerClassName:`min-w-0 max-w-none shrink-0 text-foreground/90 hover:text-foreground`,onInstanceModelChange:Y}),e[35]=c,e[36]=C,e[37]=Y,e[38]=d,e[39]=m,e[40]=X):X=e[40];let oe;e[41]===u?.models?oe=e[42]:(oe=u?.models??[],e[41]=u?.models,e[42]=oe);let se;e[43]!==r||e[44]!==t||e[45]!==d||e[46]!==m||e[47]!==n?(se=e=>{n({textGenerationModelSelection:H({...t,textGenerationModelSelection:k(d,m,e)},r)})},e[43]=r,e[44]=t,e[45]=d,e[46]=m,e[47]=n,e[48]=se):se=e[48];let ce;e[49]!==oe||e[50]!==se||e[51]!==m||e[52]!==_||e[53]!==S?(ce=(0,$.jsx)(E,{provider:S,models:oe,model:m,prompt:``,onPromptChange:Dn,modelOptions:_,allowPromptInjectedEffort:!1,triggerVariant:`outline`,triggerClassName:`min-w-0 max-w-none shrink-0 text-foreground/90 hover:text-foreground`,onModelOptionsChange:se}),e[49]=oe,e[50]=se,e[51]=m,e[52]=_,e[53]=S,e[54]=ce):ce=e[54];let le;e[55]!==X||e[56]!==ce?(le=(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-1.5`,children:[X,ce]}),e[55]=X,e[56]=ce,e[57]=le):le=e[57],e[58]!==ae||e[59]!==le?(M=(0,$.jsx)(Ke,{title:`Text generation`,children:(0,$.jsx)(Je,{title:`Text generation model`,description:`Configure the model used for generated commit messages, PR titles, and similar Git text.`,resetAction:ae,control:le})}),e[58]=ae,e[59]=le,e[60]=M):M=e[60],T=Ke,O=`Providers`;let ue;e[61]===R?ue=e[62]:(ue=(0,$.jsx)(wn,{lastCheckedAt:R}),e[61]=R,e[62]=ue);let de;e[63]===Symbol.for(`react.memo_cache_sentinel`)?(de=()=>p(!0),e[63]=de):de=e[63];let fe;e[64]===Symbol.for(`react.memo_cache_sentinel`)?(fe=(0,$.jsxs)(te,{children:[(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:de,"aria-label":`Add provider instance`,children:(0,$.jsx)(Z,{className:`size-3`})})}),(0,$.jsx)(f,{side:`top`,children:`Add provider instance`})]}),e[64]=fe):fe=e[64];let pe;e[65]===Symbol.for(`react.memo_cache_sentinel`)?(pe=()=>void w(),e[65]=pe):pe=e[65];let me;e[66]===a?me=e[67]:(me=a?(0,$.jsx)(be,{className:`size-3 animate-spin`}):(0,$.jsx)(Oe,{className:`size-3`}),e[66]=a,e[67]=me);let he;e[68]!==a||e[69]!==me?(he=(0,$.jsx)(b,{render:(0,$.jsx)(P,{size:`icon-xs`,variant:`ghost`,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,disabled:a,onClick:pe,"aria-label":`Refresh provider status`,children:me})}),e[68]=a,e[69]=me,e[70]=he):he=e[70];let ge;e[71]===Symbol.for(`react.memo_cache_sentinel`)?(ge=(0,$.jsx)(f,{side:`top`,children:`Refresh provider status`}),e[71]=ge):ge=e[71];let _e;e[72]===he?_e=e[73]:(_e=(0,$.jsxs)(te,{children:[he,ge]}),e[72]=he,e[73]=_e),e[74]!==ue||e[75]!==_e?(A=(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[ue,fe,_e]}),e[74]=ue,e[75]=_e,e[76]=A):A=e[76],j=V.map(e=>{let n=Ze(e.driver),i=r.find(t=>t.instanceId===e.instanceId),a=i&&Ve(i)?i:null,o=a!==null&&He(a,r),s=!!(i&&Ue(i))||h.has(e.instanceId),c=t.providerModelPreferences?.[e.instanceId]??{hiddenModels:[],modelOrder:[]},l=(t.favorites??[]).filter(t=>t.provider===e.instanceId).map(En),u=n?.label??String(e.driver),f=e.isDefault&&e.isDirty?(0,$.jsx)(Ye,{label:`${u} provider settings`,onClick:()=>J(e.driver)}):null;return(0,$.jsx)(hn,{instanceId:e.instanceId,instance:e.instance,driverOption:n,liveProvider:i,isExpanded:v[e.instanceId]??!1,onExpandedChange:t=>x(n=>({...n,[e.instanceId]:t})),onUpdate:t=>{let n=e.instance.enabled??!0;t.enabled===!1&&n&&d===e.instanceId?U(e,t,{textGenerationModelSelection:y.textGenerationModelSelection}):U(e,t)},onDelete:e.isDefault?void 0:()=>G(e.instanceId),headerAction:f,hiddenModels:c.hiddenModels,favoriteModels:l,modelOrder:c.modelOrder,onHiddenModelsChange:t=>ie(e.instanceId,{...c,hiddenModels:t}),onFavoriteModelsChange:t=>K(e.instanceId,t),onModelOrderChange:t=>ie(e.instanceId,{...c,modelOrder:t}),onRunUpdate:o?()=>q(a):void 0,isUpdating:s},e.instanceId)}),e[3]=a,e[4]=v,e[5]=r,e[6]=t,e[7]=n,e[8]=h,e[9]=T,e[10]=D,e[11]=O,e[12]=A,e[13]=j,e[14]=M}else T=e[9],D=e[10],O=e[11],A=e[12],j=e[13],M=e[14];let N;e[77]!==T||e[78]!==O||e[79]!==A||e[80]!==j?(N=(0,$.jsx)(T,{title:O,headerAction:A,children:j}),e[77]=T,e[78]=O,e[79]=A,e[80]=j,e[81]=N):N=e[81];let F;e[82]===l?F=e[83]:(F=(0,$.jsx)(Et,{open:l,onOpenChange:p}),e[82]=l,e[83]=F);let I;return e[84]!==D||e[85]!==M||e[86]!==N||e[87]!==F?(I=(0,$.jsxs)(D,{children:[M,N,F]}),e[84]=D,e[85]=M,e[86]=N,e[87]=F,e[88]=I):I=e[88],I}function En(e){return e.model}function Dn(){}function On(e){Y.add(J({type:`error`,title:`Provider update failed`,description:e instanceof Error?e.message:`An error occurred.`}))}function kn(e){l(e)}function An(e){return e.length>0}function jn(e){return e.trim()}function Mn(e){return e.trim().length>0}function Nn(e){return e.trim().length>0}function Pn(e){return e.provider}function Fn(e){return String(L(e.provider))}function In(e,t){return t.checkedAt>e?t.checkedAt:e}function Ln(e){return e.instanceId===L(U.make(`cursor`))}function Rn(e){Y.add(J({type:`error`,title:`Failed to refresh providers`,description:e instanceof Error?e.message:`An error occurred.`}))}export{Tn as ProvidersSettingsPanel};
@@ -1 +1 @@
1
- import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{Fr as r,G as i,H as a,Mi as o,U as s}from"./composerDraftStore-DTMZbmmF.js";var c=n(),l=e(t(),1),u=o(),d=`abcdefghjkmnpqrstuvwxyz23456789`;function f(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);let n=()=>(t=Math.imul(t^t>>>13,2246822507),t=Math.imul(t^t>>>16,3266489909),d[Math.abs(t)%31]??`x`);return Array.from(e,e=>e===`@`||e===`.`||e===`-`||e===`_`?e:n()).join(``)}function p(e){let t=(0,c.c)(17),[n,o]=(0,l.useState)(!1),d;t[0]===e.value?d=t[1]:(d=e.value?.trim(),t[0]=e.value,t[1]=d);let p=d,h;t[2]===p?h=t[3]:(h=p?f(p):``,t[2]=p,t[3]=h);let g=h;if(!p)return null;let _=n?`text-muted-foreground`:`select-none text-muted-foreground blur-[2px]`,v;t[4]!==e.className||t[5]!==_?(v=r(`min-w-0 cursor-pointer rounded-sm font-mono text-[11px] leading-none transition hover:text-foreground`,_,e.className),t[4]=e.className,t[5]=_,t[6]=v):v=t[6];let y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>o(m),t[7]=y):y=t[7];let b=n?p:g,x;t[8]!==e.ariaLabel||t[9]!==v||t[10]!==b?(x=(0,u.jsx)(i,{render:(0,u.jsx)(`button`,{type:`button`,className:v,onClick:y,"aria-label":e.ariaLabel,children:b})}),t[8]=e.ariaLabel,t[9]=v,t[10]=b,t[11]=x):x=t[11];let S=n?e.hideTooltip:e.revealTooltip,C;t[12]===S?C=t[13]:(C=(0,u.jsx)(s,{side:`top`,children:S}),t[12]=S,t[13]=C);let w;return t[14]!==x||t[15]!==C?(w=(0,u.jsxs)(a,{children:[x,C]}),t[14]=x,t[15]=C,t[16]=w):w=t[16],w}function m(e){return!e}export{p as t};
1
+ import{i as e,t}from"./react-PSPkXoKo.js";import{t as n}from"./compiler-runtime-BNrXlsa1.js";import{A as r,M as i,Ni as a,Sr as o,k as s}from"./composerDraftStore-D12lUSfh.js";var c=n(),l=e(t(),1),u=a(),d=`abcdefghjkmnpqrstuvwxyz23456789`;function f(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);let n=()=>(t=Math.imul(t^t>>>13,2246822507),t=Math.imul(t^t>>>16,3266489909),d[Math.abs(t)%31]??`x`);return Array.from(e,e=>e===`@`||e===`.`||e===`-`||e===`_`?e:n()).join(``)}function p(e){let t=(0,c.c)(17),[n,a]=(0,l.useState)(!1),d;t[0]===e.value?d=t[1]:(d=e.value?.trim(),t[0]=e.value,t[1]=d);let p=d,h;t[2]===p?h=t[3]:(h=p?f(p):``,t[2]=p,t[3]=h);let g=h;if(!p)return null;let _=n?`text-muted-foreground`:`select-none text-muted-foreground blur-[2px]`,v;t[4]!==e.className||t[5]!==_?(v=o(`min-w-0 cursor-pointer rounded-sm font-mono text-[11px] leading-none transition hover:text-foreground`,_,e.className),t[4]=e.className,t[5]=_,t[6]=v):v=t[6];let y;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(y=()=>a(m),t[7]=y):y=t[7];let b=n?p:g,x;t[8]!==e.ariaLabel||t[9]!==v||t[10]!==b?(x=(0,u.jsx)(i,{render:(0,u.jsx)(`button`,{type:`button`,className:v,onClick:y,"aria-label":e.ariaLabel,children:b})}),t[8]=e.ariaLabel,t[9]=v,t[10]=b,t[11]=x):x=t[11];let S=n?e.hideTooltip:e.revealTooltip,C;t[12]===S?C=t[13]:(C=(0,u.jsx)(r,{side:`top`,children:S}),t[12]=S,t[13]=C);let w;return t[14]!==x||t[15]!==C?(w=(0,u.jsxs)(s,{children:[x,C]}),t[14]=x,t[15]=C,t[16]=w):w=t[16],w}function m(e){return!e}export{p as t};