openpond 0.2.53 → 0.2.55

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 (254) hide show
  1. package/dist/app-server.d.ts +1514 -100
  2. package/dist/app-server.js +1 -1
  3. package/dist/chunks/actions-command-WTFZA7LF.js +2 -0
  4. package/dist/chunks/{app-layer-I7MZYVLL.js → app-layer-Y2UERCPY.js} +1 -1
  5. package/dist/chunks/app-server-runtime-2RM3N4I6.js +2 -0
  6. package/dist/chunks/apps-KDNWYO3G.js +2 -0
  7. package/dist/chunks/chunk-2DFR7PJ4.js +2460 -0
  8. package/dist/chunks/chunk-4CRM2ADK.js +2 -0
  9. package/dist/chunks/{chunk-7ZG3IT7C.js → chunk-4WEUCGJ3.js} +6 -6
  10. package/dist/chunks/chunk-55G6B54U.js +6 -0
  11. package/dist/chunks/chunk-73G5UYBB.js +12 -0
  12. package/dist/chunks/{chunk-DALJMSJG.js → chunk-ARQEJOEK.js} +24 -24
  13. package/dist/chunks/chunk-B7QDZPNX.js +2 -0
  14. package/dist/chunks/chunk-BFKYRQMA.js +2 -0
  15. package/dist/chunks/{chunk-AH22RHPS.js → chunk-BQAF5P7K.js} +2 -2
  16. package/dist/chunks/{chunk-YJ4PNAST.js → chunk-BTI4N7YO.js} +1 -1
  17. package/dist/chunks/chunk-C6D4WAYN.js +6 -0
  18. package/dist/chunks/chunk-CGBI2VYJ.js +2 -0
  19. package/dist/chunks/chunk-DLVPSCTB.js +2 -0
  20. package/dist/chunks/{chunk-UJ5EFSEC.js → chunk-G6JMQGX7.js} +1 -1
  21. package/dist/chunks/chunk-GGIG3XU7.js +3 -0
  22. package/dist/chunks/chunk-IODUCRBA.js +58 -0
  23. package/dist/chunks/chunk-JIMU3KDA.js +24 -0
  24. package/dist/chunks/chunk-JUJSA7KI.js +22 -0
  25. package/dist/chunks/chunk-K5SBVO3B.js +195 -0
  26. package/dist/chunks/chunk-KD3QVRIJ.js +21 -0
  27. package/dist/chunks/chunk-KGNCKIFP.js +3 -0
  28. package/dist/chunks/chunk-L4235TRQ.js +140 -0
  29. package/dist/chunks/{chunk-N5QNXMIS.js → chunk-MH3LHSGX.js} +1 -1
  30. package/dist/chunks/chunk-MVF3F5QS.js +2 -0
  31. package/dist/chunks/{chunk-N3DEA6PG.js → chunk-NNIRIUSY.js} +1 -1
  32. package/dist/chunks/{chunk-WITSXYEW.js → chunk-NOTXPD2T.js} +1 -1
  33. package/dist/chunks/{chunk-T5LE6R5S.js → chunk-OSIO7PLX.js} +1 -1
  34. package/dist/chunks/chunk-OULAKUIN.js +2 -0
  35. package/dist/chunks/chunk-OWNLDB2O.js +2 -0
  36. package/dist/chunks/{chunk-NAZ26IZL.js → chunk-Q7AXHFZV.js} +1 -1
  37. package/dist/chunks/chunk-QDHMP5FS.js +2 -0
  38. package/dist/chunks/chunk-QKD5OMDI.js +2 -0
  39. package/dist/chunks/{chunk-YD55Z5H3.js → chunk-QRAKXZOC.js} +10 -10
  40. package/dist/chunks/{chunk-JDLAHVAJ.js → chunk-R27YGT77.js} +1 -1
  41. package/dist/chunks/chunk-R2BSIRYL.js +3 -0
  42. package/dist/chunks/chunk-SHQOIROR.js +42 -0
  43. package/dist/chunks/chunk-STDMBJOQ.js +9 -0
  44. package/dist/chunks/chunk-T4QGDQHP.js +4 -0
  45. package/dist/chunks/{chunk-R3XFY7VL.js → chunk-TERVLCRG.js} +1 -1
  46. package/dist/chunks/{chunk-PA7XP42P.js → chunk-U2YMBCX7.js} +1 -1
  47. package/dist/chunks/{chunk-GXSTZBM6.js → chunk-UA5DA5I2.js} +1 -1
  48. package/dist/chunks/chunk-VJEZPDBS.js +5 -0
  49. package/dist/chunks/chunk-WDFLCNRC.js +8 -0
  50. package/dist/chunks/chunk-WZYRAR7X.js +16 -0
  51. package/dist/chunks/chunk-YDT7L3VZ.js +24 -0
  52. package/dist/chunks/chunk-YR5ID2SS.js +2 -0
  53. package/dist/chunks/chunk-YUPBAWBJ.js +554 -0
  54. package/dist/chunks/cli-465VC2WP.js +2 -0
  55. package/dist/chunks/{configuration-command-MATM4XR5.js → configuration-command-LAAP2EXT.js} +1 -1
  56. package/dist/chunks/connected-evidence-XM626247.js +2 -0
  57. package/dist/chunks/{continual-PKK2BOTB.js → continual-TTGJ6YTR.js} +1 -1
  58. package/dist/chunks/core-commands-W7EK552V.js +2 -0
  59. package/dist/chunks/datasets-QJWYTTQL.js +2 -0
  60. package/dist/chunks/desktop-test-3B2D34NF.js +3 -0
  61. package/dist/chunks/dist-FAJX2UBW.js +2 -0
  62. package/dist/chunks/{dist-4HV2W6V4.js → dist-HUAE2KFZ.js} +1 -1
  63. package/dist/chunks/{chunk-6VF3Q6QJ.js → dist-SKYG5LZO.js} +2 -4
  64. package/dist/chunks/evaluation-coordination-2MONR4AX.js +2 -0
  65. package/dist/chunks/experiment-improvements-WVQ5FK46.js +2 -0
  66. package/dist/chunks/experiments-S5UQ32QB.js +2 -0
  67. package/dist/chunks/extension-DWMY6D2R.js +4 -0
  68. package/dist/chunks/{help-WLKSACLZ.js → help-A72QDRNG.js} +1 -1
  69. package/dist/chunks/hosted-experiment-improvement-2OWOQLHC.js +3 -0
  70. package/dist/chunks/hosted-harness-runtime-TGFMAV7W.js +2 -0
  71. package/dist/chunks/hosted-profile-candidate-WQSI6HZO.js +3 -0
  72. package/dist/chunks/hosted-profile-compiler-Z2A4TEA6.js +2 -0
  73. package/dist/chunks/hosted-profile-evaluation-control-FKGARUEE.js +2 -0
  74. package/dist/chunks/hosted-profile-evaluation-inspection-QOY2JKV4.js +3 -0
  75. package/dist/chunks/hosted-profile-evaluation-preparation-WVP6CALP.js +3 -0
  76. package/dist/chunks/human-review-TGHQKXFZ.js +2 -0
  77. package/dist/chunks/{import-V3HUGRHR.js → import-4UE5XNSG.js} +1 -1
  78. package/dist/chunks/javascript-isolate-process-source-ZPQKKLR4.js +2 -0
  79. package/dist/chunks/javascript-verifier-worker-source-F3LSGPOY.js +2 -0
  80. package/dist/chunks/learning-R2XBMMEM.js +2 -0
  81. package/dist/chunks/opchat-WULL6CUP.js +3 -0
  82. package/dist/chunks/organizations-I37HISVX.js +2 -0
  83. package/dist/chunks/profile-NOZ6TVXL.js +3 -0
  84. package/dist/chunks/project-agent-T6XKC54C.js +2 -0
  85. package/dist/chunks/sandbox-command-STB47FRY.js +2 -0
  86. package/dist/chunks/{sandbox-template-BBGGPJMI.js → sandbox-template-LKGBDVJ4.js} +1 -1
  87. package/dist/chunks/sql-execution-process-source-B4HQM6ZV.js +2 -0
  88. package/dist/chunks/src-T3KWWCAH.js +322 -0
  89. package/dist/chunks/{src-CR6UZYTX.js → src-ZWJ5IO7A.js} +1 -1
  90. package/dist/chunks/{taskset-LUG3ZU6J.js → taskset-RNYDR4GS.js} +1 -1
  91. package/dist/chunks/{teams-bot-7I4BAUVO.js → teams-bot-H7XT23XB.js} +1 -1
  92. package/dist/chunks/{training-XHE6FVII.js → training-M6FAPRSJ.js} +1 -1
  93. package/dist/cli.js +1 -1
  94. package/dist/index.js +1 -1
  95. package/dist/web/assets/App-CLFfy_Av.js +154 -0
  96. package/dist/web/assets/App-CTlAPuCY.css +1 -0
  97. package/dist/web/assets/{AppDialog-BdusXgU0.js → AppDialog-CPHTPqrx.js} +1 -1
  98. package/dist/web/assets/{AppTerminalPanel-C4uRpnBz.js → AppTerminalPanel-BVj5Tj93.js} +2 -2
  99. package/dist/web/assets/AppsView-O69zEBY3.js +1 -0
  100. package/dist/web/assets/{BrowserSidebar-Bl7V6YO2.js → BrowserSidebar-Pr_Kpe8p.js} +1 -1
  101. package/dist/web/assets/{CartesianChart-BstFbsdn.js → CartesianChart-JPqo6YOf.js} +1 -1
  102. package/dist/web/assets/{CollaborationTabs-B8YAf0c1.js → CollaborationTabs-CAJcQFn2.js} +1 -1
  103. package/dist/web/assets/{CommandMenu-DZct7zUJ.js → CommandMenu-B-w53n9A.js} +1 -1
  104. package/dist/web/assets/{CommunityView-CR0-W-uG.js → CommunityView-DbZKK8_P.js} +1 -1
  105. package/dist/web/assets/{ComposerCreateImproveStrip-DR-Qo7b4.js → ComposerCreateImproveStrip-3_083PF4.js} +1 -1
  106. package/dist/web/assets/{GetStartedView-xqQoMMei.js → GetStartedView-D7JGm_6c.js} +1 -1
  107. package/dist/web/assets/HostedModelLearningReview-DwgMfZ7_.js +1 -0
  108. package/dist/web/assets/{HostedModelLearningSettings-De3i9wF4.js → HostedModelLearningSettings-JRfQadRl.js} +1 -1
  109. package/dist/web/assets/{LabModelVersionDetailPage-DAY1MmqP.js → LabModelVersionDetailPage-BUYflJY_.js} +1 -1
  110. package/dist/web/assets/{LabSkillSidebar-DLnIgnry.js → LabSkillSidebar-BBiqk7Rf.js} +1 -1
  111. package/dist/web/assets/LabsRoute-Ci6vUnSd.js +99 -0
  112. package/dist/web/assets/MainChatThread-BQK3oI2N.js +2 -0
  113. package/dist/web/assets/MainPane-D3ojiN-p.js +18 -0
  114. package/dist/web/assets/{MarkdownText-gJMuefaJ.js → MarkdownText-DOdOVFXL.js} +25 -25
  115. package/dist/web/assets/{NativeSkillSidebar-Dlxb8iOC.js → NativeSkillSidebar-CRI_ri8z.js} +1 -1
  116. package/dist/web/assets/{NewExperienceSwitcher-DM-cqJ-K.js → NewExperienceSwitcher-DhYtfE68.js} +1 -1
  117. package/dist/web/assets/{NewProjectDialog-Cu1q75gq.js → NewProjectDialog-D8sy1gOz.js} +1 -1
  118. package/dist/web/assets/{OutputsPage-DiXMkasl.js → OutputsPage-CbWgrhXA.js} +1 -1
  119. package/dist/web/assets/{ProjectsPage-DqiBHiCB.js → ProjectsPage-DLB67lyA.js} +1 -1
  120. package/dist/web/assets/RightChatPanelStack-ozSKnDyX.js +1 -0
  121. package/dist/web/assets/{RightSidebarHomePanel-CeSFJM5s.js → RightSidebarHomePanel-CKs3OwhD.js} +1 -1
  122. package/dist/web/assets/ScheduledWorkPage-Cafv_QnR.js +1 -0
  123. package/dist/web/assets/SettingsView-T1vYDPjh.js +5 -0
  124. package/dist/web/assets/{TeamChatView-DM0adMtj.js → TeamChatView-vIrmXOY_.js} +2 -2
  125. package/dist/web/assets/{TerminalOverlay-CFlH51DD.js → TerminalOverlay-CAmF__Dq.js} +1 -1
  126. package/dist/web/assets/{TrainingCreationPanel-CgIBVGha.js → TrainingCreationPanel-D75K0yk5.js} +1 -1
  127. package/dist/web/assets/{TrainingDraftPanel-Bbo3RRie.js → TrainingDraftPanel-D7XZePAk.js} +1 -1
  128. package/dist/web/assets/{UsageSettingsSection-CSRjJUSa.js → UsageSettingsSection-CYTmp7PG.js} +1 -1
  129. package/dist/web/assets/WorkSidebarPanel-CODMjVHY.js +1 -0
  130. package/dist/web/assets/WorkspaceDiffPanel-DQGoIjH9.js +14 -0
  131. package/dist/web/assets/WorkspaceEnvironmentMenu-c1pHDskn.js +63 -0
  132. package/dist/web/assets/{WorkspaceGitDialogs-Dgmg-6XG.js → WorkspaceGitDialogs-DrVtapQQ.js} +1 -1
  133. package/dist/web/assets/{WorkspaceMonacoEditor-BR4qxMgU.js → WorkspaceMonacoEditor-BCKzvSj2.js} +3 -3
  134. package/dist/web/assets/arrow-up-right-CP4hZdrJ.js +1 -0
  135. package/dist/web/assets/chunk-NOJECMB7-Bhcms-w5.js +1 -0
  136. package/dist/web/assets/{clipboard-BZzZ82Bk.js → clipboard-BgrXorn-.js} +1 -1
  137. package/dist/web/assets/{cloud-upload-CJPYPVl8.js → cloud-upload-B_zYztb6.js} +1 -1
  138. package/dist/web/assets/{cssMode-WC4Rg1l-.js → cssMode-DanjGgA8.js} +1 -1
  139. package/dist/web/assets/{folder-open-sLZJxLQy.js → folder-open-CdVKbtGq.js} +1 -1
  140. package/dist/web/assets/folder-plus-Cc5KElB6.js +1 -0
  141. package/dist/web/assets/{git-commit-horizontal-Cotm7KEC.js → git-commit-horizontal-CjGIIgRi.js} +1 -1
  142. package/dist/web/assets/{htmlMode-C6oZGeaB.js → htmlMode-DRGDF_UL.js} +1 -1
  143. package/dist/web/assets/index-B5re-RJy.css +1 -0
  144. package/dist/web/assets/{index-BxWTVKtn.js → index-BE-wXZ5R.js} +2 -2
  145. package/dist/web/assets/info-BLj0RvhA.js +1 -0
  146. package/dist/web/assets/{jsonMode-BET4LQIn.js → jsonMode-CCu0j2GD.js} +1 -1
  147. package/dist/web/assets/{lspLanguageFeatures-BPxA_-Kg.js → lspLanguageFeatures-s_Lhm7P6.js} +1 -1
  148. package/dist/web/assets/minimize-2-Cyg_zD9z.js +1 -0
  149. package/dist/web/assets/{monaco.contribution-DXzyQfVi.js → monaco.contribution-CAzXvYkn.js} +2 -2
  150. package/dist/web/assets/{monaco.contribution-DFzEyaHi.js → monaco.contribution-CY7mRgOB.js} +2 -2
  151. package/dist/web/assets/{monaco.contribution-7AUuf2NS.js → monaco.contribution-aUeLcBEg.js} +2 -2
  152. package/dist/web/assets/{monaco.contribution-BH6kkO4b.js → monaco.contribution-mUPNK9ra.js} +2 -2
  153. package/dist/web/assets/monitor-DZvOs_wC.js +1 -0
  154. package/dist/web/assets/play-BJPzemuY.js +1 -0
  155. package/dist/web/assets/{python-PzBkTjWx.js → python-B_qnnVaG.js} +1 -1
  156. package/dist/web/assets/{save-DpezrtH2.js → save-BDy9tA3E.js} +1 -1
  157. package/dist/web/assets/square-Cb2c5td4.js +1 -0
  158. package/dist/web/assets/{toggleHighContrast-Cto-fOXm.js → toggleHighContrast-MhO1JLyR.js} +1 -1
  159. package/dist/web/assets/{tsMode-BYA4LNc6.js → tsMode-DfBXJb9V.js} +1 -1
  160. package/dist/web/assets/{upload-C5YFNgtS.js → upload-D56kThRh.js} +1 -1
  161. package/dist/web/assets/{useLocalAgentSchedules-CnyTsqlf.js → useLocalAgentSchedules-DMnGfswi.js} +1 -1
  162. package/dist/web/assets/useProviderSettings-Bv5B9eNk.js +5 -0
  163. package/dist/web/assets/{useSessionTurnCache-DICuJSJW.js → useSessionTurnCache-ClAY8gze.js} +1 -1
  164. package/dist/web/assets/{wifi-off-nzHj7JXp.js → wifi-off-C9lWJmVm.js} +1 -1
  165. package/dist/web/assets/{workers-Dboaw6f_.js → workers-BYzrH8by.js} +1 -1
  166. package/dist/web/assets/{yaml-uuY5JmO8.js → yaml-D3T8UkT3.js} +1 -1
  167. package/dist/web/index.html +2 -2
  168. package/package.json +3 -3
  169. package/dist/chunks/actions-command-DSO6YOEE.js +0 -2
  170. package/dist/chunks/app-server-runtime-KZP2LB5X.js +0 -2
  171. package/dist/chunks/apps-TM74FFQB.js +0 -2
  172. package/dist/chunks/chunk-2JO2KWT3.js +0 -5
  173. package/dist/chunks/chunk-2SPZYBDN.js +0 -16
  174. package/dist/chunks/chunk-3LX6RU3C.js +0 -3
  175. package/dist/chunks/chunk-4SHKI3BH.js +0 -2
  176. package/dist/chunks/chunk-4TZHH5FC.js +0 -2409
  177. package/dist/chunks/chunk-5TNDPNS3.js +0 -2
  178. package/dist/chunks/chunk-6JAN4RMN.js +0 -42
  179. package/dist/chunks/chunk-7QEE4PBI.js +0 -8
  180. package/dist/chunks/chunk-AFUDIT36.js +0 -2
  181. package/dist/chunks/chunk-BX4J2VDU.js +0 -2
  182. package/dist/chunks/chunk-EMKZVP7Z.js +0 -2
  183. package/dist/chunks/chunk-FPUUZQUP.js +0 -6
  184. package/dist/chunks/chunk-GCOUYYHG.js +0 -5
  185. package/dist/chunks/chunk-GS2NKNKG.js +0 -4
  186. package/dist/chunks/chunk-H2VT22JK.js +0 -2
  187. package/dist/chunks/chunk-HA7EFTPF.js +0 -23
  188. package/dist/chunks/chunk-IKWDL3RB.js +0 -17
  189. package/dist/chunks/chunk-L3KS6MOV.js +0 -2
  190. package/dist/chunks/chunk-NHFGEVVH.js +0 -518
  191. package/dist/chunks/chunk-NNF6KCHD.js +0 -3
  192. package/dist/chunks/chunk-PJM2G7SG.js +0 -21
  193. package/dist/chunks/chunk-PQHTZ5CP.js +0 -2
  194. package/dist/chunks/chunk-PYABBF53.js +0 -53
  195. package/dist/chunks/chunk-QRWPEW3Z.js +0 -24
  196. package/dist/chunks/chunk-QXVIIM4T.js +0 -2
  197. package/dist/chunks/chunk-SDEDAHV6.js +0 -160
  198. package/dist/chunks/chunk-TGIB24K4.js +0 -22
  199. package/dist/chunks/chunk-USKE34VR.js +0 -9
  200. package/dist/chunks/chunk-WV2APYWG.js +0 -2
  201. package/dist/chunks/chunk-XGE2XI6M.js +0 -191
  202. package/dist/chunks/chunk-XM26DGML.js +0 -3
  203. package/dist/chunks/chunk-YIB3J4RC.js +0 -2
  204. package/dist/chunks/chunk-YL6VFJ4P.js +0 -2
  205. package/dist/chunks/chunk-Z3D4C7BG.js +0 -12
  206. package/dist/chunks/cli-JVB345H2.js +0 -2
  207. package/dist/chunks/connected-evidence-YDPGNHLP.js +0 -2
  208. package/dist/chunks/core-commands-MTV4EKXY.js +0 -2
  209. package/dist/chunks/datasets-CP3IT47T.js +0 -2
  210. package/dist/chunks/desktop-test-IAZC5MAH.js +0 -3
  211. package/dist/chunks/dist-SAABJU5F.js +0 -2
  212. package/dist/chunks/evaluation-coordination-EPHLZXYM.js +0 -2
  213. package/dist/chunks/experiment-improvements-6JTOPA74.js +0 -2
  214. package/dist/chunks/experiments-XHPFGECH.js +0 -2
  215. package/dist/chunks/extension-GX7DLW2X.js +0 -4
  216. package/dist/chunks/hosted-experiment-improvement-HAB3UE6A.js +0 -3
  217. package/dist/chunks/hosted-harness-runtime-YM23QNDK.js +0 -2
  218. package/dist/chunks/hosted-profile-candidate-EOBGKQAS.js +0 -3
  219. package/dist/chunks/hosted-profile-compiler-OZAOZ2ES.js +0 -2
  220. package/dist/chunks/hosted-profile-evaluation-control-RJ6XJZCS.js +0 -2
  221. package/dist/chunks/hosted-profile-evaluation-inspection-SJIDXPHI.js +0 -3
  222. package/dist/chunks/hosted-profile-evaluation-preparation-26EI5LJR.js +0 -3
  223. package/dist/chunks/human-review-AAVMISBF.js +0 -2
  224. package/dist/chunks/learning-FNBEIAY6.js +0 -2
  225. package/dist/chunks/opchat-QK43DXTY.js +0 -3
  226. package/dist/chunks/organizations-SRPAWKC7.js +0 -2
  227. package/dist/chunks/profile-C6CQNVYE.js +0 -3
  228. package/dist/chunks/project-agent-GZV5HNYI.js +0 -2
  229. package/dist/chunks/sandbox-command-4TJXQTKT.js +0 -2
  230. package/dist/chunks/src-P3VYLFLI.js +0 -329
  231. package/dist/web/assets/App-CO2F717V.css +0 -1
  232. package/dist/web/assets/App-CuhaCsfb.js +0 -235
  233. package/dist/web/assets/AppsView-BS1czXUP.js +0 -1
  234. package/dist/web/assets/HostedModelLearningReview-CHxxf_Lu.js +0 -1
  235. package/dist/web/assets/LabsRoute-CXJRJMhr.js +0 -99
  236. package/dist/web/assets/MainChatThread-BwAla81W.js +0 -2
  237. package/dist/web/assets/MainPane-CakOBCHw.js +0 -19
  238. package/dist/web/assets/RightChatPanelStack-VaOOmxwd.js +0 -1
  239. package/dist/web/assets/ScheduledWorkPage-D1jRQxFs.js +0 -1
  240. package/dist/web/assets/SettingsView-RA9OXgcu.js +0 -5
  241. package/dist/web/assets/WorkSidebarPanel-DwlEMEoG.js +0 -1
  242. package/dist/web/assets/WorkspaceDiffPanel-pGVezNMw.js +0 -14
  243. package/dist/web/assets/WorkspaceEnvironmentMenu-Byjngd9V.js +0 -32
  244. package/dist/web/assets/arrow-up-right-H0pvnH2s.js +0 -1
  245. package/dist/web/assets/chunk-UHVJOMWN-BqXRe639.js +0 -1
  246. package/dist/web/assets/folder-plus-C84wrpt_.js +0 -1
  247. package/dist/web/assets/index-dSmk3FLJ.css +0 -1
  248. package/dist/web/assets/info-Dc81lEfw.js +0 -1
  249. package/dist/web/assets/minimize-2-Bs7MVN3C.js +0 -1
  250. package/dist/web/assets/monitor-DXL019Wf.js +0 -1
  251. package/dist/web/assets/play-CXkxUZeU.js +0 -1
  252. package/dist/web/assets/square-oy7f5Ce6.js +0 -1
  253. package/dist/web/assets/useProviderSettings-B_KeQjE5.js +0 -5
  254. /package/dist/chunks/{chunk-OGPHXXCD.js → chunk-BT5YNE5U.js} +0 -0
@@ -1 +0,0 @@
1
- import{c}from"./App-CuhaCsfb.js";const o=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],t=c("info",o);export{t as I};
@@ -1 +0,0 @@
1
- import{c as e}from"./App-CuhaCsfb.js";const i=[["path",{d:"m14 10 7-7",key:"oa77jy"}],["path",{d:"M20 10h-6V4",key:"mjg0md"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M4 14h6v6",key:"rmj7iw"}]],t=e("minimize-2",i);export{t as M};
@@ -1 +0,0 @@
1
- import{c as e}from"./App-CuhaCsfb.js";const o=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],t=e("monitor",o);export{t as M};
@@ -1 +0,0 @@
1
- import{c as a}from"./App-CuhaCsfb.js";const o=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],e=a("play",o);export{e as P};
@@ -1 +0,0 @@
1
- import{c as e}from"./App-CuhaCsfb.js";const t=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],o=e("square",t);export{o as S};
@@ -1,5 +0,0 @@
1
- import{r as d,j as e}from"./index-BxWTVKtn.js";import{c as Ne,l as Pe,bl as G,al as oe,as as ce,an as de,ck as ke,z as ue,bs as Se,co as we,cp as Z,bo as Ee,X as Me,m as Ae,D as Oe,G as B,$ as se}from"./App-CuhaCsfb.js";import{S as De}from"./save-DpezrtH2.js";import{T as te}from"./MarkdownText-gJMuefaJ.js";const Re=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],F=Ne("key-round",Re);function $e(n){const i=d.useRef(null),f=d.useRef(n);return f.current=n,d.useEffect(()=>{const a=document.activeElement instanceof HTMLElement?document.activeElement:null,s=()=>[...i.current?.querySelectorAll('button:not(:disabled), input:not(:disabled), select:not(:disabled), a[href], [tabindex="0"]')??[]].filter(u=>u.getClientRects().length>0);s()[0]?.focus();const b=u=>{if(document.querySelector(".native-setup-terminal")||(u.key==="Escape"&&(u.preventDefault(),u.stopPropagation(),f.current()),u.key!=="Tab"))return;const l=s(),N=l[0],O=l.at(-1);u.shiftKey&&document.activeElement===N?(u.preventDefault(),O?.focus()):!u.shiftKey&&document.activeElement===O&&(u.preventDefault(),N?.focus())};return document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b),a?.isConnected&&a.focus()}},[]),i}const K=["codex","claude-code","grok-build","opencode"];function V(n){return["claude-code","grok-build","opencode"].includes(n)}const Te={codex:{executable:"codex",install:"https://developers.openai.com/codex/cli"},"claude-code":{executable:"claude",install:"https://code.claude.com/docs/en/setup"},"grok-build":{executable:"grok",install:"https://docs.x.ai/build/cli"},opencode:{executable:"opencode",install:"https://opencode.ai/docs"}},J=(n,i)=>JSON.stringify([n||"",i||""]);function le({connection:n,providerId:i,config:f,status:a,cachedModels:s,busy:b,onCheck:u}){const[l,N]=d.useState(null),[O,E]=d.useState(null),[x,_]=d.useState(null),[v,P]=d.useState(!1),[k,M]=d.useState(f.binaryPath??""),[j,D]=d.useState(f.sourceHome??""),t=d.useRef(null),p=d.useRef(null),y=d.useRef(u);y.current=u;const R=Te[i],S=J(f.binaryPath,f.sourceHome),A=J(k.trim(),j.trim())!==S,g=b||v||l!==null,w=d.useCallback(async c=>{t.current?.abort();const h=new AbortController;t.current=h;const $=setTimeout(()=>h.abort(new Error("Connection check timed out. Retry when the agent is available.")),45e3);P(!0),E(null);try{const z=await y.current(i,h.signal,c);t.current===h&&!h.signal.aborted&&_(z)}catch(z){t.current===h&&E(z instanceof Error?z.message:"Could not check the agent.")}finally{clearTimeout($),t.current===h&&(t.current=null,P(!1))}},[i]);d.useEffect(()=>{if(M(f.binaryPath??""),D(f.sourceHome??""),p.current===S){p.current=null;return}N(null),_(null),w()},[w,S,f.binaryPath,f.sourceHome,n?.serverUrl,n?.token]),d.useEffect(()=>()=>{const c=t.current;t.current=null,c?.abort()},[]);async function L(c){c.preventDefault(),!(!A||g)&&(p.current=J(k.trim(),j.trim()),await w({binaryPath:k.trim()||null,sourceHome:j.trim()||null}),p.current=null)}async function T(){if(!n||x?.status!=="needs_login")return;const c=new AbortController,h=setTimeout(()=>c.abort(),1e4);t.current?.abort(),t.current=c,P(!0),E(null);try{const $=await ue(n,`/v1/providers/${i}/native-setup`,{method:"POST",body:JSON.stringify({action:"login"}),signal:c.signal});t.current===c&&!c.signal.aborted&&N($.command)}catch($){t.current===c&&E($ instanceof Error?$.message:"Could not open native login.")}finally{clearTimeout(h),t.current===c&&(t.current=null,P(!1))}}const o=x?.settings.modelCaches[i]?.models??s,r=[...new Set(o.map(c=>Pe(c.displayName||c.id)))],m=O??x?.error;return e.jsxs("div",{className:"provider-dialog-body native-agent-setup",children:[e.jsxs("p",{children:["Uses your existing ",a.displayName," installation and login."]}),e.jsxs("div",{className:"native-connection-status",children:[e.jsx("div",{role:"status","aria-live":"polite",children:v?e.jsxs(e.Fragment,{children:[e.jsx(G,{size:16,className:"settings-spin"}),e.jsx("span",{children:"Checking connection…"})]}):x?.status==="ready"?e.jsxs(e.Fragment,{children:[e.jsx(oe,{size:16}),e.jsx("span",{children:f.enabled?"Connected":"Connected, disabled for chat"})]}):e.jsxs(e.Fragment,{children:[e.jsx(ce,{size:16}),e.jsx("span",{children:x?.status==="missing"?"Installation not found":x?.status==="needs_login"?"Sign in required":"Connection needs attention"})]})}),e.jsxs("button",{type:"button",className:"settings-secondary",disabled:g||!n,onClick:()=>{w()},title:"Refresh connection","aria-label":"Refresh connection",children:[e.jsx(de,{size:14})," Refresh"]})]}),m?e.jsx("p",{role:"alert",children:m}):null,r.length?e.jsxs("section",{className:"native-model-section","aria-label":"Available models",children:[e.jsxs("div",{className:"native-model-heading",children:[e.jsx("h3",{children:"Models"}),e.jsxs("small",{children:[r.length," available"]})]}),e.jsx("div",{className:"native-model-list",tabIndex:0,"aria-label":"Models",role:"list",children:r.map(c=>e.jsx("span",{role:"listitem",children:c},c))}),e.jsx("small",{children:"Choose a model when starting a chat."})]}):null,x?.version?e.jsx("small",{className:"native-agent-version",children:x.version}):null,x?.status==="needs_login"?e.jsx("button",{type:"button",className:"settings-secondary",disabled:g||A||!n,title:A?"Save changes before signing in to a different installation":void 0,onClick:()=>{T()},children:"Sign in"}):null,x?.status==="missing"?e.jsxs("p",{children:[e.jsxs("a",{href:R.install,target:"_blank",rel:"noreferrer",children:["Install ",a.displayName]}),", then refresh this connection."]}):null,(O||x?.status==="unavailable")&&!v?e.jsx("button",{type:"button",className:"settings-secondary",disabled:g||!n,onClick:()=>{w()},children:"Retry"}):null,l&&n?e.jsx(ke,{connection:n,command:l,onComplete:()=>{N(null),w()},onClose:()=>{N(null),w()}}):null,V(i)?e.jsxs("details",{children:[e.jsx("summary",{children:"Advanced"}),e.jsxs("form",{className:"provider-card-form",onSubmit:c=>{L(c)},children:[e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:"Executable"}),e.jsx("input",{value:k,placeholder:`${R.executable} from PATH, or an absolute path`,disabled:g,onChange:c=>M(c.currentTarget.value)})]}),e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:"Source home"}),e.jsx("input",{value:j,placeholder:"Use the agent's existing home",disabled:g,onChange:c=>D(c.currentTarget.value)})]}),A?e.jsx("button",{className:"settings-secondary",disabled:g||!n,children:"Save changes"}):null]})]}):null]})}const _e=[{value:"local_secret",label:"Saved key",description:"Encrypted on this machine"},{value:"env",label:"Environment variable",description:"Read by the local server"}],ze=120,Ue=new Set(["openai","xai","zai"]),Le=new Set(["chatgpt-subscription"]),Be="https://api.z.ai/api/coding/paas/v4";function ae(n){return n.split(/[\n,]/).map(i=>i.trim()).filter(Boolean)}function he(n){return n?n.available?"Ready":n.credential.connected?"Configured":n.credential.lastError||n.lastError?"Needs attention":n.id==="codex"?"Needs Codex login":V(n.id)?"Check connection":n.routing.localByok?"Needs key":n.enabled?"Enabled":"Off":"Unknown"}function pe(n){return n?n.available?"ready":n.credential.connected?"configured":n.credential.lastError||n.lastError||n.id==="codex"?"warning":"muted":"unknown"}function ie(n){return n.credential.connected?n.credential.redacted?n.credential.redacted:n.credential.source==="native_agent_login"?"Native login":n.credential.source==="chatgpt_subscription"?"ChatGPT subscription":n.credential.source:n.credential.lastError??"Not connected"}function Ge(n){return n?.trim().replace(/\/+$/,"")??""}function me(n,i){return n.id==="zai"&&Ge(i.providers.zai?.baseUrl)===Be}function Fe(n,i){return!n.credential.connected||!n.routing.localByok?"":n.credential.source==="native_agent_login"?"Native login":n.credential.source==="chatgpt_subscription"?"Subscription":me(n,i)?"Coding Plan key":"API key"}function Ve(n,i){const f=i.modelCaches[n.id];if(n.routing.localByok&&n.enabled&&!n.credential.connected||!n.enabled&&n.id!=="openpond")return"";const a=Math.max(f?.models.length??0,n.modelIds.length),s=n.defaultModel?Ee(n.defaultModel,i,n.id):"",b=a===1?"1 model":`${a} models`;return[Fe(n,i),f?b:"",s].filter(Boolean).join(" · ")}function He(n){return n!=="openpond"&&Z(n)}function fe(n){return n?Ue.has(n.id)||n.credentialModes.some(i=>Le.has(i)):!1}function Ke(n){return fe(n)?["api","subscription"]:["api"]}function re(n,i){return!n||!i||!fe(n)?"api":n.credential.source==="chatgpt_subscription"||me(n,i)?"subscription":"api"}function qe(n){if(!n)return"Never";const i=new Date(n);return Number.isNaN(i.getTime())?n:i.toLocaleString()}function Je(n,i,f=ze){const a=[],s=new Set,b=new Set(i.map(l=>l.trim()).filter(Boolean)),u=l=>{s.has(l.value)||a.length>=f||(s.add(l.value),a.push(l))};for(const l of n)b.has(l.value)&&u(l);for(const l of n)u(l);return a}function nn({checkNativeProvider:n,connection:i,account:f,codex:a,providers:s,providerBusy:b,validationMessage:u,deleteProviderCredential:l,loadProviderModels:N,refreshProviderModels:O,saveProviderConfig:E,saveProviderCredential:x,startOpenAiSubscriptionAuth:_,validateProvider:v}){const[P,k]=d.useState(null),M=K.filter(t=>s?.statuses[t]),j=P?s?.statuses[P]??null:null;function D(t,p){k(t),p&&N(t)}return e.jsxs("section",{className:"account-settings provider-connections-settings",children:[e.jsx("h1",{children:"Providers"}),e.jsxs("div",{className:"provider-connections-intro",children:[e.jsx("p",{children:"Manage your installed agents and login. Sync their conversations from Connections."}),e.jsx("button",{type:"button",className:"settings-secondary",onClick:()=>{Se({kind:"view",view:"apps"})},children:"Connections & apps"})]}),s?e.jsx("div",{className:"provider-connections-panel",children:M.length>0?e.jsx("div",{className:"provider-connections-grid",role:"list",children:M.map(t=>{const p=s.statuses[t],y=s.modelCaches[t],R=p.modelIds.length>0&&(y?.models.length??0)<p.modelIds.length,S=b?.startsWith(`${t}:`)??!1,A=He(t),g=t==="openpond"||!!s.providers[t]?.enabled;return e.jsxs("div",{className:"provider-connection-card",role:"listitem",children:[e.jsxs("div",{className:"provider-connection-identity",children:[e.jsx("strong",{children:p.displayName}),e.jsxs("label",{className:"provider-toggle","aria-label":`Enable ${p.displayName}`,children:[e.jsx("input",{type:"checkbox",checked:g,disabled:!A||S,onChange:w=>{E(t,{enabled:w.currentTarget.checked})}}),e.jsx("span",{})]})]}),e.jsxs("div",{className:`provider-connection-status ${pe(p)}`,children:[S?e.jsx(G,{size:13,className:"settings-spin"}):null,e.jsx("span",{children:he(p)})]}),e.jsx("p",{children:Ve(p,s)||(p.enabled?"Check your installation and sign in to use this agent.":"Enable this agent to use it in chats.")}),t==="codex"||t==="claude-code"?e.jsx(we,{connection:i,provider:t}):null,e.jsx("button",{type:"button",className:"settings-secondary",onClick:()=>{D(t,R)},children:"Manage"})]},t)})}):e.jsx("div",{className:"empty-account-list provider-manager-empty",children:e.jsx("strong",{children:"No agent providers available"})})}):null,u?e.jsxs("div",{className:"settings-footnote provider-validation-message",children:[e.jsx("span",{children:"Last validation"}),e.jsx("strong",{children:u})]}):null,P&&j&&s?e.jsx(Ze,{checkNativeProvider:n,connection:i,account:f,codex:a,providerId:P,providerBusy:b,settings:s,status:j,onClose:()=>k(null),onDeleteCredential:l,onRefreshModels:O,onSaveConfig:E,onSaveCredential:x,onStartOpenAiSubscriptionAuth:_,onValidate:v}):null]})}function Ze({checkNativeProvider:n,connection:i,account:f,codex:a,providerId:s,providerBusy:b,settings:u,status:l,onClose:N,onDeleteCredential:O,onRefreshModels:E,onSaveConfig:x,onSaveCredential:_,onStartOpenAiSubscriptionAuth:v,onValidate:P,conversationPanel:k}){const M=$e(N),[j,D]=d.useState("setup"),t=d.useId(),p=u.providers[s],y=u.modelCaches[s],R=d.useId(),S=d.useRef(s),A=Math.max(y?.models.length??0,l.modelIds.length),g=l.routing.localByok&&Z(s)&&s!=="codex"&&!V(s),w=d.useMemo(()=>g?Ke(l):[],[g,l]),L=w.includes("subscription"),[T,o]=d.useState(()=>re(l,u)),r=g&&T==="subscription"&&L,m=h=>`${R}-${h}-panel`,c=s==="codex"?"Codex app server":p?.baseUrl??(s==="openpond"?f?.chatApiBaseUrl:null)??"Not set";return d.useEffect(()=>{if(S.current!==s){S.current=s,o(re(l,u));return}g&&!w.includes(T)&&o("api")},[T,w,g,s,u,l]),e.jsx("div",{className:"git-dialog-backdrop provider-dialog-backdrop",role:"presentation",onMouseDown:N,children:e.jsxs("section",{ref:M,className:`git-dialog provider-details-dialog${k?" agent-setup-dialog":""}`,role:"dialog","aria-modal":"true","aria-label":`${l.displayName} provider details`,onMouseDown:h=>h.stopPropagation(),children:[e.jsx("button",{className:"git-dialog-close",type:"button",title:"Close","aria-label":"Close",onClick:N,children:e.jsx(Me,{size:16})}),e.jsxs("div",{className:"provider-dialog-header",children:[e.jsxs("div",{children:[e.jsx("h2",{children:l.displayName}),e.jsx("span",{children:K.includes(s)?"Installation and login":"API and subscription settings"})]}),e.jsx("div",{className:`provider-state-pill ${pe(l)}`,children:he(l)})]}),K.includes(s)&&p?e.jsxs("label",{className:"provider-chat-toggle",children:[e.jsxs("span",{className:"provider-toggle",children:[e.jsx("input",{type:"checkbox","aria-label":`Enable ${l.displayName} for chat`,checked:p.enabled,disabled:b!==null,onChange:h=>{x(s,{enabled:h.target.checked})}}),e.jsx("span",{"aria-hidden":"true"})]}),e.jsxs("span",{children:["Use ",l.displayName," for chats"]})]}):null,k?e.jsxs("div",{className:"surface-tabs provider-agent-tabs",role:"tablist","aria-label":"Agent settings",onKeyDown:h=>{if(h.key!=="ArrowLeft"&&h.key!=="ArrowRight")return;h.preventDefault();const $=j==="setup"?"sync":"setup";D($),h.currentTarget.querySelector(`#${CSS.escape(`${t}-${$}`)}`)?.focus()},children:[e.jsx("button",{type:"button",role:"tab",id:`${t}-setup`,"aria-controls":`${t}-setup-panel`,"aria-selected":j==="setup",tabIndex:j==="setup"?0:-1,onClick:()=>D("setup"),children:"Agent setup"}),e.jsx("button",{type:"button",role:"tab",id:`${t}-sync`,"aria-controls":`${t}-sync-panel`,"aria-selected":j==="sync",tabIndex:j==="sync"?0:-1,onClick:()=>D("sync"),children:"Conversation sync"})]}):null,e.jsxs("div",{hidden:j!=="setup",id:`${t}-setup-panel`,role:k?"tabpanel":void 0,"aria-labelledby":k?`${t}-setup`:void 0,children:[g?e.jsx("div",{className:"surface-tabs provider-mode-tabs",role:"tablist","aria-label":`${l.displayName} mode`,children:w.map(h=>e.jsx("button",{type:"button",role:"tab",id:`${R}-${h}`,className:T===h?"active":void 0,"aria-selected":T===h,"aria-controls":m(h),onClick:()=>o(h),children:h==="api"?"API":"Subscription"},h))}):null,K.includes(s)?null:e.jsxs("dl",{className:"provider-dialog-stats",children:[e.jsxs("div",{children:[e.jsx("dt",{children:"Credential"}),e.jsx("dd",{title:ie(l),children:ie(l)})]}),r?null:e.jsxs(e.Fragment,{children:[V(s)?null:e.jsxs("div",{children:[e.jsx("dt",{children:"Base URL"}),e.jsx("dd",{title:c,children:c})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Model"}),e.jsx("dd",{title:p?.defaultModel??l.defaultModel??void 0,children:p?.defaultModel??l.defaultModel??"Not set"})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Models"}),e.jsxs("dd",{title:y?.lastError??void 0,children:[A," cached, ",qe(y?.fetchedAt)]})]})]}),s==="codex"?e.jsxs(e.Fragment,{children:[e.jsxs("div",{children:[e.jsx("dt",{children:"Account"}),e.jsx("dd",{title:a?.account?.email??void 0,children:a?.account?.label??a?.account?.email??"Not signed in"})]}),e.jsxs("div",{children:[e.jsx("dt",{children:"Binary"}),e.jsx("dd",{title:a?.binaryPath??void 0,children:a?.binaryPath??"Not found"})]})]}):null,l.credential.lastError||y?.lastError||l.lastError?e.jsxs("div",{className:"provider-dialog-error",children:[e.jsx("dt",{children:"Error"}),e.jsx("dd",{title:l.credential.lastError??y?.lastError??l.lastError??void 0,children:l.credential.lastError??y?.lastError??l.lastError})]}):null]}),s==="codex"?e.jsxs(e.Fragment,{children:[p?e.jsx(le,{connection:i,providerId:s,config:p,status:l,cachedModels:y?.models??[],busy:b!==null,onCheck:n},s):null,e.jsxs("div",{className:"provider-dialog-body",children:[e.jsx("h3",{children:"ChatGPT with the OpenPond harness"}),e.jsx("p",{children:"Native Codex and the OpenPond harness keep their own connections. Choose the execution path in the model picker."}),e.jsx("p",{children:u.statuses.openai?.credential.connected?"OpenPond harness connected":"OpenPond harness not connected"}),e.jsx("button",{type:"button",className:"settings-secondary",disabled:b!==null,onClick:()=>{v("browser")},children:"Connect ChatGPT for OpenPond"}),e.jsxs("button",{type:"button",className:"settings-secondary",disabled:b!==null,onClick:()=>{x("openai",{enabled:!u.providers.openai?.enabled})},children:[u.providers.openai?.enabled?"Disable":"Enable"," OpenPond harness route"]})]})]}):V(s)&&p?e.jsx(le,{connection:i,providerId:s,config:p,status:l,cachedModels:y?.models??[],busy:b!==null,onCheck:n},s):g&&p&&y?e.jsx(We,{credentialTab:T,credentialTabsId:R,hasSubscriptionTab:L,providerId:s,providerBusy:b,settings:u,status:l,onDeleteCredential:O,onRefreshModels:E,onSaveConfig:x,onSaveCredential:_,onStartOpenAiSubscriptionAuth:v,onValidate:P}):l.routing.localByok&&!Z(s)?e.jsxs("div",{className:"provider-dialog-note",children:[e.jsx(ce,{size:15}),e.jsx("span",{children:"Adapter pending"})]}):null]}),j==="sync"?e.jsx("div",{role:"tabpanel",id:`${t}-sync-panel`,"aria-labelledby":`${t}-sync`,children:k}):null]})})}function We({credentialTab:n,credentialTabsId:i,hasSubscriptionTab:f,providerId:a,providerBusy:s,settings:b,status:u,onDeleteCredential:l,onRefreshModels:N,onSaveConfig:O,onSaveCredential:E,onStartOpenAiSubscriptionAuth:x,onValidate:_}){const v=b.providers[a],P=d.useMemo(()=>Ae(a,b),[a,b]),k=`provider-models-${a}`,M=d.useRef(a),[j,D]=d.useState(v.baseUrl??""),[t,p]=d.useState(v.defaultModel??""),[y,R]=d.useState(v.modelOverrides.join(`
2
- `)),[S,A]=d.useState({baseUrl:!1,defaultModel:!1,modelOverrides:!1}),[g,w]=d.useState("local_secret"),[L,T]=d.useState(""),[o,r]=d.useState(""),m=s===`${a}:config`,c=s===`${a}:credential`,h=s===`${a}:validate`,$=s===`${a}:models`,z=s==="openai:credential",be=a==="openai",ge=a==="xai",W=a==="zai",H=(C=>`${i}-${C}-panel`)(n),X=n==="subscription"&&f,q=n==="subscription"&&W?"coding-plan":"api",Y=q==="coding-plan"?"Coding Plan key":"API key",ve=u.credential.connected?q==="coding-plan"?"Replace saved plan key":"Replace saved key":Y,xe=q==="coding-plan"?"Save plan key":"Save key",Q=d.useMemo(()=>Je(P,[t,...ae(y)]),[t,P,y]),I=Math.max(0,P.length-Q.length);d.useEffect(()=>{if(M.current!==a){M.current=a,A({baseUrl:!1,defaultModel:!1,modelOverrides:!1}),D(v.baseUrl??""),p(v.defaultModel??""),R(v.modelOverrides.join(`
3
- `));return}S.baseUrl||D(v.baseUrl??""),S.defaultModel||p(v.defaultModel??""),S.modelOverrides||R(v.modelOverrides.join(`
4
- `))},[v.baseUrl,v.defaultModel,v.modelOverrides,S.baseUrl,S.defaultModel,S.modelOverrides,a]);const ee=g==="env"?!!o.trim():!!L.trim();async function je(C){C.preventDefault(),await O(a,{enabled:!0,baseUrl:j.trim()||null,defaultModel:t.trim()||null,modelOverrides:ae(y)}),A({baseUrl:!1,defaultModel:!1,modelOverrides:!1})}async function ye(C){if(C.preventDefault(),!!ee){if(g==="env"){await E(a,{source:"env",envVar:o.trim()});return}await E(a,{source:"local_secret",value:L}),T("")}}function ne({panel:C=!0}={}){return e.jsxs("form",{className:"provider-credential-panel",id:C?H:void 0,role:C?"tabpanel":void 0,"aria-labelledby":C?`${i}-${n}`:void 0,onSubmit:U=>{ye(U)},children:[e.jsxs("div",{className:"provider-card-grid credential-grid",children:[e.jsxs("div",{className:"settings-select-field",children:[e.jsx("span",{children:"Credential source"}),e.jsx(Oe,{value:g,disabled:c,label:"Credential source",options:_e,onChange:U=>w(U)})]}),g==="env"?e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:"Environment variable"}),e.jsx("input",{value:o,disabled:c,placeholder:"PROVIDER_API_KEY",onChange:U=>r(U.currentTarget.value)})]}):e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:Y}),e.jsx("input",{type:"password",value:L,disabled:c,placeholder:ve,autoComplete:"off",onChange:U=>T(U.currentTarget.value)})]})]}),e.jsxs("div",{className:"settings-button-row",children:[e.jsxs("button",{className:"settings-secondary",disabled:c||!ee,children:[c?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(F,{size:14}),e.jsx("span",{children:c?"Saving":xe})]}),e.jsx("button",{type:"button",className:"settings-icon-button ghost","aria-label":`Delete ${u.displayName} credential`,disabled:c||!u.credential.connected,onClick:()=>{l(a)},children:e.jsx(te,{size:15})})]})]})}function Ce(){return be?e.jsxs("div",{className:"provider-subscription-panel",id:H,role:"tabpanel","aria-labelledby":`${i}-subscription`,children:[e.jsxs("div",{className:"provider-dialog-note codex-provider-note",children:[e.jsx(F,{size:15}),e.jsx("span",{children:"ChatGPT subscription auth opens OpenAI login and stores a refresh token locally. API keys remain available under the API tab for raw Platform billing."})]}),e.jsxs("div",{className:"settings-button-row",children:[e.jsxs("button",{type:"button",className:"settings-secondary",disabled:z,onClick:()=>{x("browser")},children:[z?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(F,{size:14}),e.jsx("span",{children:z?"Opening":"Connect ChatGPT"})]}),e.jsxs("button",{type:"button",className:"settings-secondary",disabled:z,onClick:()=>{x("device")},children:[z?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(F,{size:14}),e.jsx("span",{children:"Device code"})]}),e.jsx("button",{type:"button",className:"settings-icon-button ghost","aria-label":`Delete ${u.displayName} credential`,disabled:z||!u.credential.connected,onClick:()=>{l(a)},children:e.jsx(te,{size:15})})]})]}):ge?e.jsx("div",{className:"provider-subscription-panel",id:H,role:"tabpanel","aria-labelledby":`${i}-subscription`,children:e.jsxs("div",{className:"provider-dialog-note xai-provider-note",children:[e.jsx(F,{size:15}),e.jsx("span",{children:"SuperGrok includes Grok app and Grok Build access. xAI API calls here still use an xAI Console API key with API credits or invoiced billing, so there is no separate Connect SuperGrok step yet."})]})}):W?e.jsxs("div",{className:"provider-subscription-panel",id:H,role:"tabpanel","aria-labelledby":`${i}-subscription`,children:[e.jsxs("div",{className:"provider-dialog-note subscription-provider-note",children:[e.jsx(F,{size:15}),e.jsx("span",{children:"GLM Coding Plan uses a plan API key with the dedicated Coding endpoint. General Z.ai API keys and balances are separate."})]}),ne({panel:!1})]}):null}return e.jsxs("div",{className:"provider-dialog-body",children:[X?null:e.jsxs("form",{className:"provider-card-form",onSubmit:C=>{je(C)},children:[e.jsxs("div",{className:"provider-card-grid",children:[e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:"Base URL"}),e.jsx("input",{value:j,disabled:m,placeholder:"https://api.example.com/v1",onChange:C=>{A(U=>({...U,baseUrl:!0})),D(C.currentTarget.value)}})]}),e.jsxs("label",{className:"settings-select-field",children:[e.jsx("span",{children:"Default model"}),e.jsx("input",{list:k,value:t,disabled:m,placeholder:"Model id",onChange:C=>{A(U=>({...U,defaultModel:!0})),p(C.currentTarget.value)}}),e.jsx("datalist",{id:k,children:Q.map(C=>e.jsx("option",{value:C.value,children:C.label},C.value))}),I>0?e.jsxs("small",{children:[I," more cached models hidden from suggestions"]}):null]})]}),e.jsxs("div",{className:"settings-button-row",children:[e.jsxs("button",{className:"settings-secondary",disabled:m,children:[m?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(De,{size:14}),e.jsx("span",{children:m?"Saving":"Save config"})]}),e.jsxs("button",{type:"button",className:"settings-secondary",disabled:$,onClick:()=>{N(a)},children:[$?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(de,{size:14}),e.jsx("span",{children:$?"Refreshing":"Refresh models"})]}),e.jsxs("button",{type:"button",className:"settings-secondary",disabled:h||!t.trim(),onClick:()=>{_(a,{baseUrl:j.trim()||void 0,modelId:t.trim()||void 0})},children:[h?e.jsx(G,{size:14,className:"settings-spin"}):e.jsx(oe,{size:14}),e.jsx("span",{children:h?"Testing":"Test"})]})]})]}),e.jsx("div",{className:"provider-card-form credential-form",children:X?Ce():ne()})]})}function sn({connection:n,onError:i,onPreferences:f,onProviders:a,preferences:s,providers:b}){const u=d.useRef(n);u.current=n;const[l,N]=d.useState(s.defaultChatProvider),[O,E]=d.useState(s.defaultChatModel),[x,_]=d.useState(!1),[v,P]=d.useState(null),[k,M]=d.useState(null);d.useEffect(()=>{N(s.defaultChatProvider),E(s.defaultChatModel)},[s.defaultChatProvider,s.defaultChatModel]);async function j(o){if(o.preventDefault(),!!n){_(!0),i(null);try{f(await B.savePreferences(n,{defaultChatProvider:l,defaultChatModel:se(l,O,b)}))}catch(r){i(r instanceof Error?r.message:String(r))}finally{_(!1)}}}function D(o){N(o),E(r=>se(o,r,b))}async function t(o,r,m){if(!n)return null;P(`${o}:${r}`),M(null),i(null);try{return await m()}catch(c){return i(c instanceof Error?c.message:String(c)),null}finally{P(null)}}async function p(o,r){await t(o,"config",async()=>{const m=await B.saveProviderSettings(n,{providers:{[o]:r}});return a(m),m})}async function y(o,r){await t(o,"credential",async()=>{const m=await B.saveProviderCredential(n,o,r);return a(m),m})}async function R(o){await t(o,"credential",async()=>{const r=await B.deleteProviderCredential(n,o,{});return a(r),r})}async function S(o){return t("openai","credential",async()=>{const r=await B.startOpenAiSubscriptionAuth(n,{method:o});return r.method==="browser"?(window.open(r.url,"_blank","noopener,noreferrer"),M("OpenAI ChatGPT login opened in your browser. Return here after authorization.")):(window.open(r.url,"_blank","noopener,noreferrer"),M(`OpenAI device login started. Enter code ${r.userCode}.`)),A(r.expiresAt),r})}async function A(o){if(n)for(;Date.now()<o;){await new Promise(r=>setTimeout(r,2500));try{const r=await B.providerSettings(n);a(r);const m=r.statuses.openai?.credential;if(m?.connected&&m.source==="chatgpt_subscription"){M("OpenAI ChatGPT subscription connected.");return}}catch{}}}async function g(o){await t(o,"models",async()=>{const r=await B.refreshProviderModels(n,o,{force:!0});return a(r.providers),r})}async function w(o){await t(o,"models",async()=>{const r=await B.loadProviderModels(n,o,{limit:500});return a(r.providers),r})}async function L(o,r={}){await t(o,"validate",async()=>{const m=await B.validateProviderCredential(n,o,r);return M(m.ok?`${o} validated${m.modelId?` with ${m.modelId}`:""}.`:m.errors.join(`
5
- `)||`${o} validation failed.`),a(m.providers),m})}return{checkNativeProvider:async(o,r,m)=>{if(!n)throw new Error("Connect to the local OpenPond server first.");r.throwIfAborted(),m&&await B.saveProviderSettings(n,{providers:{[o]:m}}),r.throwIfAborted();const c=await ue(n,`/v1/providers/${o}/native-setup`,{method:"POST",body:JSON.stringify({action:"check"}),signal:r});if(r.throwIfAborted(),u.current?.serverUrl!==n.serverUrl||u.current?.token!==n.token)throw new DOMException("Connection changed","AbortError");return a(c.settings),c},defaultModel:O,defaultProvider:l,providerBusy:v,saving:x,validationMessage:k,changeDefaultProvider:D,deleteProviderCredential:R,loadProviderModels:w,refreshProviderModels:g,saveProviderConfig:p,saveProviderCredential:y,saveProviders:j,setDefaultModel:E,startOpenAiSubscriptionAuth:S,validateProvider:L}}export{F as K,nn as P,$e as a,Ze as b,sn as u};