@openhands/agent-canvas 1.5.0 → 1.5.2

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 (347) hide show
  1. package/README.md +1 -1
  2. package/README.windows.md +2 -2
  3. package/build/assets/{acp-providers-BQwoUBpe.js → acp-providers-DerAmTyY.js} +1 -1
  4. package/build/assets/{active-backend-context-BCXRv5pm.js → active-backend-context-DHhm10VS.js} +1 -1
  5. package/build/assets/{add-backend-modal-BKHzq5no.js → add-backend-modal-BoMkMyLB.js} +1 -1
  6. package/build/assets/{agent-profiles-settings-CEp5CIz8.js → agent-profiles-settings-CYPloKYK.js} +1 -1
  7. package/build/assets/{agent-server-compatibility-D6DSanlx.js → agent-server-compatibility-C0MtTTwb.js} +1 -1
  8. package/build/assets/{agent-server-conversation-service.api-cylugfDz.js → agent-server-conversation-service.api-lzc8dabY.js} +4 -4
  9. package/build/assets/{agent-settings-C-tann3x.js → agent-settings-GwiXe_6k.js} +1 -1
  10. package/build/assets/agent-settings-OdsyI2gX.js +1 -0
  11. package/build/assets/{alert-banner-Dd4woGbm.js → alert-banner-Dh51WURQ.js} +1 -1
  12. package/build/assets/{api-key-entry-screen-Bll_CkuQ.js → api-key-entry-screen-2gsoZAOK.js} +1 -1
  13. package/build/assets/app-settings-CD9euh81.js +1 -0
  14. package/build/assets/{automation-detail-Z9dN2f5l.js → automation-detail-Bn8q0AG3.js} +1 -1
  15. package/build/assets/{automation-export-D5uL0Tf8.js → automation-export-Djc8Tf0M.js} +1 -1
  16. package/build/assets/{automations-list-BMOWcqzZ.js → automations-list-Dtiolk1h.js} +1 -1
  17. package/build/assets/{back-nav-button-ZUDTMOTB.js → back-nav-button-DVknCcSP.js} +1 -1
  18. package/build/assets/backend-form-modal-B8GtBA-J.js +1 -0
  19. package/build/assets/{backend-synced-settings-badge-Db_REKVw.js → backend-synced-settings-badge-yVh6Kf4E.js} +1 -1
  20. package/build/assets/{base-modal-Cb0C6m0Q.js → base-modal-CIF_785P.js} +1 -1
  21. package/build/assets/{brand-button-2Tp3aXk1.js → brand-button-B1izLAdR.js} +1 -1
  22. package/build/assets/{browser-QYLVr1kS.js → browser-DKaeq_sT.js} +2 -2
  23. package/build/assets/browser-store-BI6uklCG.js +1 -0
  24. package/build/assets/{browser-tab-BTTP1OE2.js → browser-tab-qb_ftCxW.js} +1 -1
  25. package/build/assets/{circle-plus-check-toggle-QQJKUnF6.js → circle-plus-check-toggle-DoFIjVE0.js} +1 -1
  26. package/build/assets/client-source-CtQjJEy6.js +1 -0
  27. package/build/assets/cloud-funnel-analytics-uzzLlLuj.js +1 -0
  28. package/build/assets/{color-themes-bVMmJJG6.js → color-themes-CHizm1xF.js} +1 -1
  29. package/build/assets/{combobox-caret-A5jMVHgE.js → combobox-caret-CxZpqoSR.js} +1 -1
  30. package/build/assets/{command-menu-BMVEme4H.js → command-menu-oTvKDU3Y.js} +1 -1
  31. package/build/assets/{command-store-jrWX_CcW.js → command-store-D8J5LMW1.js} +1 -1
  32. package/build/assets/{condenser-settings-CIa6eyB4.js → condenser-settings-Q1rHh4Qe.js} +1 -1
  33. package/build/assets/{confirmation-modal-4n_944zq.js → confirmation-modal-DGBWM2Ls.js} +1 -1
  34. package/build/assets/{context-menu-list-item-DvfFic5I.js → context-menu-list-item-6psNyl7X.js} +1 -1
  35. package/build/assets/conversation-B8d8_Upd.js +1 -0
  36. package/build/assets/{conversation-D4o4dG2t.js → conversation-Lmqm6VJC.js} +20 -20
  37. package/build/assets/conversation-panel-B8n40Swu.js +1 -0
  38. package/build/assets/{conversation-service.api-0JG_fF9d.js → conversation-service.api-D8QU-BiL.js} +1 -1
  39. package/build/assets/conversation-state-store-B2Bp32XI.js +1 -0
  40. package/build/assets/{conversation-store-BCSpLuEf.js → conversation-store-LptbOvKa.js} +1 -1
  41. package/build/assets/{copy-to-clipboard-button-Dp4Q_hXi.js → copy-to-clipboard-button-CFzH_NOX.js} +1 -1
  42. package/build/assets/{device-verify-CM086oKs.js → device-verify-WBSjJBLH.js} +1 -1
  43. package/build/assets/{dropdown-classes-DZq0BQjb.js → dropdown-classes-D3wMJlXT.js} +1 -1
  44. package/build/assets/{ellipsis-button-TPJdyxnK.js → ellipsis-button-CbNnHlIq.js} +1 -1
  45. package/build/assets/{entry.client-DypYHsYm.js → entry.client-Dnnak-Hq.js} +2 -2
  46. package/build/assets/{enum-filter-dropdown-CW_mBg0e.js → enum-filter-dropdown-JLYv1t8L.js} +1 -1
  47. package/build/assets/{environment-switch-overlay-6laJch-9.js → environment-switch-overlay-B1PFO8P8.js} +1 -1
  48. package/build/assets/{extensions-hub-BJFbFfKS.js → extensions-hub-DqvwvpCi.js} +1 -1
  49. package/build/assets/{extensions-navigation-DqSl7CJw.js → extensions-navigation-BMc9Nluv.js} +1 -1
  50. package/build/assets/{files-tab-c316dKAq.js → files-tab-BAkaV4aO.js} +1 -1
  51. package/build/assets/{files-tab-store-tfCav6bB.js → files-tab-store-DJsPxYdg.js} +1 -1
  52. package/build/assets/{git-provider-icon-DUb2pEos.js → git-provider-icon-xvbukHaT.js} +1 -1
  53. package/build/assets/{home-D7ds4Jyw.js → home-D01kSnmo.js} +1 -1
  54. package/build/assets/home-NZO2bF4N.js +1 -0
  55. package/build/assets/index-home-BsI6i0TC.js +1 -0
  56. package/build/assets/{install-server-modal-CvHvzZj3.js → install-server-modal-BYjqoRyX.js} +1 -1
  57. package/build/assets/{launch-A47TK2Me.js → launch-DlXspDku.js} +1 -1
  58. package/build/assets/lesson-plan-cNUjpdFx.js +4 -0
  59. package/build/assets/{llm-not-configured-banner-B7DR8SPs.js → llm-not-configured-banner-DUPyoFIZ.js} +7 -7
  60. package/build/assets/{llm-settings-Cvi7q4ox.js → llm-settings-Cs_iieFY.js} +1 -1
  61. package/build/assets/llm-settings-J2ke2foG.js +1 -0
  62. package/build/assets/{llm-subscription-service-Cz1yBBvE.js → llm-subscription-service-C0zN0-rH.js} +1 -1
  63. package/build/assets/{manage-backends-modal-DAVhNUCe.js → manage-backends-modal-nMoCZ2a0.js} +1 -1
  64. package/build/assets/manifest-f1b46f62.js +1 -0
  65. package/build/assets/{map-provider-XSFHmdDs.js → map-provider-BbIb12oh.js} +1 -1
  66. package/build/assets/{markdown-renderer-B6cJJ_MN.js → markdown-renderer-B4V2OMFP.js} +1 -1
  67. package/build/assets/{mcp-BwssgMpg.js → mcp-kZM-cAZw.js} +1 -1
  68. package/build/assets/{messages-D8MeG2ZQ.js → messages-CJAv5n4j.js} +1 -1
  69. package/build/assets/{model-selector-BxTbbKub.js → model-selector-D51W2Q9b.js} +1 -1
  70. package/build/assets/{navigation-link-imH6S7h2.js → navigation-link-D8hfwvxI.js} +1 -1
  71. package/build/assets/{onboarding-CyicadGt.js → onboarding-Dx8n8HFr.js} +1 -1
  72. package/build/assets/onboarding-modal-Bxuxpfdz.js +1 -0
  73. package/build/assets/{organization-service.api-QknzKDh3.js → organization-service.api-Da2jiuBS.js} +1 -1
  74. package/build/assets/{path-utils-BECGet7G.js → path-utils-D53ZHUQU.js} +1 -1
  75. package/build/assets/{planner-tab-DPKHmMAX.js → planner-tab-BM-pKx0z.js} +1 -1
  76. package/build/assets/{plugins-management-service-DuTTxquo.js → plugins-management-service-DISfOL13.js} +1 -1
  77. package/build/assets/{profiles-service.api-D6jvZOWu.js → profiles-service.api-DWetW2TL.js} +1 -1
  78. package/build/assets/providers-C7lMslCi.js +1 -0
  79. package/build/assets/{proxy-CuhhyjdX.js → proxy-G4ce0fnQ.js} +1 -1
  80. package/build/assets/{recommended-automations-launcher-DA6DWS7V.js → recommended-automations-launcher-BWRRvMPE.js} +1 -1
  81. package/build/assets/root-layout-ClEl-JlJ.js +2 -0
  82. package/build/assets/root-oT83qVlk.js +2 -0
  83. package/build/assets/{runtime-waiting-state-DeD9G7yJ.js → runtime-waiting-state-CnyVhX4T.js} +1 -1
  84. package/build/assets/{schema-field-BOLdL_U7.js → schema-field-CwdqUOnE.js} +1 -1
  85. package/build/assets/{sdk-section-page-ZIltERxf.js → sdk-section-page-Cwj0T4gF.js} +1 -1
  86. package/build/assets/{sdk-settings-schema-Ba_Pa9uf.js → sdk-settings-schema-CLR01YIK.js} +1 -1
  87. package/build/assets/{secrets-service-50DElFny.js → secrets-service-Ch7RH8eH.js} +1 -1
  88. package/build/assets/{secrets-settings-Digl7JLe.js → secrets-settings-Bc_pBX6F.js} +1 -1
  89. package/build/assets/{settings-dropdown-input-BD5C9fBn.js → settings-dropdown-input-Dhx9ErGd.js} +1 -1
  90. package/build/assets/{settings-index-CODBijya.js → settings-index-BzSIM1-N.js} +1 -1
  91. package/build/assets/{settings-input-CzNOq-Pj.js → settings-input-BsgQWS5R.js} +1 -1
  92. package/build/assets/{settings-list-classes-CuxH9ZoR.js → settings-list-classes-DSJJX99U.js} +1 -1
  93. package/build/assets/{settings-modal-BcSWpKI0.js → settings-modal-BnZ7mMu7.js} +1 -1
  94. package/build/assets/settings-n9a395O0.js +1 -0
  95. package/build/assets/{settings-service.api-Bsu1PvYO.js → settings-service.api-DPTFyRXL.js} +1 -1
  96. package/build/assets/{settings-switch-DqmHAfWJ.js → settings-switch-Bes8dIlV.js} +1 -1
  97. package/build/assets/{settings-utils-B1lBErvV.js → settings-utils-DzCVfiR3.js} +1 -1
  98. package/build/assets/{shared-conversation-CDskdmrb.js → shared-conversation-CIDDti9I.js} +1 -1
  99. package/build/assets/{sidebar-mobile-menu-toggle-DmCmZgq1.js → sidebar-mobile-menu-toggle-CTX7J4wM.js} +1 -1
  100. package/build/assets/{sidebar-nav-link-DMc8AIe7.js → sidebar-nav-link-CHqyFXwV.js} +1 -1
  101. package/build/assets/{sidebar-store-DXWSCFpa.js → sidebar-store-uiUXBU1N.js} +1 -1
  102. package/build/assets/{skill-card-pill-row-DOIWjiMF.js → skill-card-pill-row-BPYKQ3IN.js} +1 -1
  103. package/build/assets/{skills-plugins-DLgINYuY.js → skills-plugins-HZEbNDmX.js} +1 -1
  104. package/build/assets/{skills-settings-DPiCWalR.js → skills-settings-BdqijFlC.js} +1 -1
  105. package/build/assets/{task-list-tab-CuhcDycu.js → task-list-tab-DyfgG4MC.js} +1 -1
  106. package/build/assets/telemetry-SHxpVxk8.js +2 -0
  107. package/build/assets/{terminal-CVqF-tCD.js → terminal-BDTa1HEr.js} +1 -1
  108. package/build/assets/{typography-CQn9wyEX.js → typography-CzfoD9DY.js} +1 -1
  109. package/build/assets/{use-acp-credential-form-LlfZO_DD.js → use-acp-credential-form-DHd_Id-q.js} +1 -1
  110. package/build/assets/{use-activate-agent-profile-DpQjsXM0.js → use-activate-agent-profile-BRDdSwQ0.js} +1 -1
  111. package/build/assets/{use-active-agent-profile-Gw_uJujV.js → use-active-agent-profile-BMDTXsay.js} +1 -1
  112. package/build/assets/{use-active-conversation-B0sttISF.js → use-active-conversation-BbeVgedA.js} +1 -1
  113. package/build/assets/{use-agent-profiles-LHZEK0Gg.js → use-agent-profiles-Dn_S_Tkz.js} +1 -1
  114. package/build/assets/{use-agent-state-C5uA0bRj.js → use-agent-state-5qM3X30V.js} +1 -1
  115. package/build/assets/{use-backends-health-DKt1SmiU.js → use-backends-health-BagmAE_W.js} +1 -1
  116. package/build/assets/{use-can-manage-org-profiles-BAtqsbCi.js → use-can-manage-org-profiles-CyYqfzeo.js} +1 -1
  117. package/build/assets/{use-cloud-current-user-id-C8m1oBy4.js → use-cloud-current-user-id-BwMX7jHW.js} +1 -1
  118. package/build/assets/use-config-B39iHYFi.js +1 -0
  119. package/build/assets/{use-create-conversation-CWQGNQ9J.js → use-create-conversation-CkKUQVbP.js} +1 -1
  120. package/build/assets/{use-create-secret-BIrsX3OB.js → use-create-secret-DEgM0MXZ.js} +1 -1
  121. package/build/assets/{use-event-store-CsD17BKu.js → use-event-store-Bbaz51GR.js} +1 -1
  122. package/build/assets/{use-handle-plan-click-DEuO7Byo.js → use-handle-plan-click-BFcE0Xms.js} +1 -1
  123. package/build/assets/{use-launch-skill-in-chat-CdHOoQGM.js → use-launch-skill-in-chat-DJWEfVc5.js} +1 -1
  124. package/build/assets/{use-llm-profiles-DQpQxVOD.js → use-llm-profiles-CgRtnj74.js} +1 -1
  125. package/build/assets/{use-plugins-marketplace-Bkk07W_M.js → use-plugins-marketplace-DOJp9rlE.js} +1 -1
  126. package/build/assets/use-runtime-is-ready-ziHQvXZQ.js +1 -0
  127. package/build/assets/{use-save-agent-profile-BxEsjnW0.js → use-save-agent-profile-i4FcEP98.js} +1 -1
  128. package/build/assets/{use-save-settings-ioSUMqbE.js → use-save-settings-DiDEbIJw.js} +1 -1
  129. package/build/assets/{use-settings-DNJC4gqu.js → use-settings-BeJap6YL.js} +1 -1
  130. package/build/assets/{use-settings-nav-items-BUsrDbVR.js → use-settings-nav-items-D5JJjFHJ.js} +1 -1
  131. package/build/assets/{use-skills-BsmKm23M.js → use-skills-Blpg2BqE.js} +1 -1
  132. package/build/assets/{use-task-list-rs7Xbzl8.js → use-task-list-CfisapBW.js} +1 -1
  133. package/build/assets/use-tracking-DFoPQUSU.js +1 -0
  134. package/build/assets/{use-user-conversation-B337kUKB.js → use-user-conversation-BrN2xeQU.js} +1 -1
  135. package/build/assets/{vendor~browser-tab-Xn94EtUo.js → vendor~browser-tab-CsMb-pta.js} +1 -1
  136. package/build/assets/{vendor~browser-5Njjw1Cl.js → vendor~browser-wXQ-WZEC.js} +1 -1
  137. package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-BIieS_OD.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js} +2 -2
  138. package/build/assets/{vendor~files-tab-CiC3-lGh.js → vendor~files-tab-B-5fBohe.js} +1 -1
  139. package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DWteoTyr.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js} +1 -1
  140. package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-tlf6AnDe.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js} +1 -1
  141. package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-B8XNNEQZ.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js} +1 -1
  142. package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-Dc5nKwLO.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js} +1 -1
  143. package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-CnJRLn5s.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js} +1 -1
  144. package/build/assets/{vendor~launch-28DK5Rsl.js → vendor~launch-_Km3J77E.js} +1 -1
  145. package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~g9hift2g-DmmpG9SI.js → vendor~module-D5a_AClf.js} +1 -1
  146. package/build/assets/{vendor~root-layout~conversation-panel~conversation~shared-conversation-lYNG9C1U.js → vendor~root-layout~conversation-panel~conversation~shared-conversation-BrguKXCn.js} +1 -1
  147. package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation-Zhq6xAxR.js → vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js} +1 -1
  148. package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-B81b08bw.js → vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js} +1 -1
  149. package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-jpyLM1Nn.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js} +1 -1
  150. package/build/assets/{verification-settings-HRgEM-_3.js → verification-settings-C8KzAdAX.js} +1 -1
  151. package/build/index.html +4 -4
  152. package/config/defaults.json +1 -1
  153. package/dist/api/cloud/conversation-service.api.cjs +1 -1
  154. package/dist/api/cloud/conversation-service.api.js +4 -4
  155. package/dist/api/option-service/option-service.api.cjs +1 -1
  156. package/dist/api/option-service/option-service.api.cjs.map +1 -1
  157. package/dist/api/option-service/option-service.api.js +0 -1
  158. package/dist/api/option-service/option-service.api.js.map +1 -1
  159. package/dist/api/option-service/option.types.d.ts +0 -1
  160. package/dist/components/features/backends/backend-form-modal.cjs +1 -1
  161. package/dist/components/features/backends/backend-form-modal.cjs.map +1 -1
  162. package/dist/components/features/backends/backend-form-modal.d.ts +1 -1
  163. package/dist/components/features/backends/backend-form-modal.js +137 -144
  164. package/dist/components/features/backends/backend-form-modal.js.map +1 -1
  165. package/dist/components/providers/agent-server-ui-providers.cjs +1 -1
  166. package/dist/components/providers/agent-server-ui-providers.cjs.map +1 -1
  167. package/dist/components/providers/agent-server-ui-providers.d.ts +4 -2
  168. package/dist/components/providers/agent-server-ui-providers.js +9 -2
  169. package/dist/components/providers/agent-server-ui-providers.js.map +1 -1
  170. package/dist/components/providers/index.cjs +1 -1
  171. package/dist/components/providers/index.d.ts +1 -2
  172. package/dist/components/providers/index.js +0 -1
  173. package/dist/components/providers/telemetry-provider.cjs +2 -0
  174. package/dist/components/providers/telemetry-provider.cjs.map +1 -0
  175. package/dist/components/providers/telemetry-provider.d.ts +6 -0
  176. package/dist/components/providers/telemetry-provider.js +64 -0
  177. package/dist/components/providers/telemetry-provider.js.map +1 -0
  178. package/dist/config/defaults.cjs +1 -1
  179. package/dist/config/defaults.cjs.map +1 -1
  180. package/dist/config/defaults.js +1 -1
  181. package/dist/config/defaults.js.map +1 -1
  182. package/dist/contexts/conversation-websocket-context.cjs +3 -3
  183. package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
  184. package/dist/contexts/conversation-websocket-context.js +197 -204
  185. package/dist/contexts/conversation-websocket-context.js.map +1 -1
  186. package/dist/hooks/mutation/use-save-settings.cjs +1 -1
  187. package/dist/hooks/mutation/use-save-settings.cjs.map +1 -1
  188. package/dist/hooks/mutation/use-save-settings.d.ts +3 -1
  189. package/dist/hooks/mutation/use-save-settings.js +6 -5
  190. package/dist/hooks/mutation/use-save-settings.js.map +1 -1
  191. package/dist/hooks/query/use-task-polling.cjs +1 -1
  192. package/dist/hooks/query/use-task-polling.cjs.map +1 -1
  193. package/dist/hooks/query/use-task-polling.d.ts +19 -3
  194. package/dist/hooks/query/use-task-polling.js +36 -35
  195. package/dist/hooks/query/use-task-polling.js.map +1 -1
  196. package/dist/hooks/use-telemetry.cjs +1 -1
  197. package/dist/hooks/use-telemetry.cjs.map +1 -1
  198. package/dist/hooks/use-telemetry.d.ts +3 -3
  199. package/dist/hooks/use-telemetry.js +16 -22
  200. package/dist/hooks/use-telemetry.js.map +1 -1
  201. package/dist/hooks/use-tracking.cjs +1 -1
  202. package/dist/hooks/use-tracking.cjs.map +1 -1
  203. package/dist/hooks/use-tracking.d.ts +3 -4
  204. package/dist/hooks/use-tracking.js +37 -37
  205. package/dist/hooks/use-tracking.js.map +1 -1
  206. package/dist/index.cjs +1 -1
  207. package/dist/index.js +2 -2
  208. package/dist/lib/index.d.ts +2 -2
  209. package/dist/package.cjs +1 -1
  210. package/dist/package.cjs.map +1 -1
  211. package/dist/package.js +2 -2
  212. package/dist/package.js.map +1 -1
  213. package/dist/routes/app-settings.cjs +1 -1
  214. package/dist/routes/app-settings.cjs.map +1 -1
  215. package/dist/routes/app-settings.js +66 -68
  216. package/dist/routes/app-settings.js.map +1 -1
  217. package/dist/routes/conversation.cjs +1 -1
  218. package/dist/routes/conversation.cjs.map +1 -1
  219. package/dist/routes/conversation.js +1 -1
  220. package/dist/routes/conversation.js.map +1 -1
  221. package/dist/routes/llm-settings.cjs +1 -1
  222. package/dist/routes/llm-settings.cjs.map +1 -1
  223. package/dist/routes/llm-settings.js +4 -1
  224. package/dist/routes/llm-settings.js.map +1 -1
  225. package/dist/services/cloud-funnel-analytics.cjs +1 -1
  226. package/dist/services/cloud-funnel-analytics.cjs.map +1 -1
  227. package/dist/services/cloud-funnel-analytics.d.ts +3 -11
  228. package/dist/services/cloud-funnel-analytics.js +16 -30
  229. package/dist/services/cloud-funnel-analytics.js.map +1 -1
  230. package/dist/services/telemetry.cjs +1 -1
  231. package/dist/services/telemetry.cjs.map +1 -1
  232. package/dist/services/telemetry.d.ts +46 -9
  233. package/dist/services/telemetry.js +181 -72
  234. package/dist/services/telemetry.js.map +1 -1
  235. package/dist/themes/color-themes.cjs.map +1 -1
  236. package/dist/themes/color-themes.d.ts +3 -6
  237. package/dist/themes/color-themes.js.map +1 -1
  238. package/dist/utils/error-handler.cjs +1 -1
  239. package/dist/utils/error-handler.cjs.map +1 -1
  240. package/dist/utils/error-handler.d.ts +1 -4
  241. package/dist/utils/error-handler.js +6 -7
  242. package/dist/utils/error-handler.js.map +1 -1
  243. package/dist/utils/map-provider.cjs +1 -1
  244. package/dist/utils/map-provider.cjs.map +1 -1
  245. package/dist/utils/map-provider.d.ts +1 -0
  246. package/dist/utils/map-provider.js +2 -1
  247. package/dist/utils/map-provider.js.map +1 -1
  248. package/package.json +2 -2
  249. package/build/assets/agent-settings-DGUKNSnU.js +0 -1
  250. package/build/assets/app-settings-BpViWwpC.js +0 -1
  251. package/build/assets/backend-form-modal-DhBT8P4g.js +0 -1
  252. package/build/assets/browser-store-BGXOGo-R.js +0 -1
  253. package/build/assets/client-source-Biqarhgr.js +0 -1
  254. package/build/assets/cloud-funnel-analytics-D-27T5Ao.js +0 -1
  255. package/build/assets/conversation-CHnEXGRM.js +0 -1
  256. package/build/assets/conversation-panel-11FjLCId.js +0 -1
  257. package/build/assets/conversation-state-store-JiUQp02U.js +0 -1
  258. package/build/assets/handle-capture-consent-DDnXMC9Y.js +0 -1
  259. package/build/assets/home-BQ-DC06B.js +0 -1
  260. package/build/assets/index-home-BRFDWs_4.js +0 -1
  261. package/build/assets/lesson-plan-DSf95kQ2.js +0 -4
  262. package/build/assets/llm-settings-Ch4ZbW3c.js +0 -1
  263. package/build/assets/manifest-958c741a.js +0 -1
  264. package/build/assets/onboarding-modal-DQwihcTz.js +0 -1
  265. package/build/assets/option-service.api-DAkg_F7p.js +0 -1
  266. package/build/assets/package-Dk_VtWJ4.js +0 -1
  267. package/build/assets/providers-B8pxQK8x.js +0 -1
  268. package/build/assets/root-BhP6bTBB.js +0 -2
  269. package/build/assets/root-layout-oBaHHW4s.js +0 -2
  270. package/build/assets/settings-BfgLHsgd.js +0 -1
  271. package/build/assets/telemetry-DHiTRl5_.js +0 -2
  272. package/build/assets/use-config-CXy4vD0H.js +0 -1
  273. package/build/assets/use-runtime-is-ready-D4pkGT6E.js +0 -1
  274. package/build/assets/use-tracking-poxQHMwR.js +0 -1
  275. package/build/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~ljq5gbus-B2XD4bi2.js +0 -1
  276. package/dist/components/providers/posthog-wrapper.cjs +0 -2
  277. package/dist/components/providers/posthog-wrapper.cjs.map +0 -1
  278. package/dist/components/providers/posthog-wrapper.d.ts +0 -4
  279. package/dist/components/providers/posthog-wrapper.js +0 -49
  280. package/dist/components/providers/posthog-wrapper.js.map +0 -1
  281. package/dist/node_modules/posthog-js/react/dist/esm/index.cjs +0 -2
  282. package/dist/node_modules/posthog-js/react/dist/esm/index.cjs.map +0 -1
  283. package/dist/node_modules/posthog-js/react/dist/esm/index.js +0 -113
  284. package/dist/node_modules/posthog-js/react/dist/esm/index.js.map +0 -1
  285. package/dist/utils/handle-capture-consent.cjs +0 -2
  286. package/dist/utils/handle-capture-consent.cjs.map +0 -1
  287. package/dist/utils/handle-capture-consent.d.ts +0 -7
  288. package/dist/utils/handle-capture-consent.js +0 -8
  289. package/dist/utils/handle-capture-consent.js.map +0 -1
  290. /package/build/assets/{__vite-browser-external-DU-Cb_sT.js → __vite-browser-external-BQUj0sYu.js} +0 -0
  291. /package/build/assets/{agent-server-ui-style-scope-COnDHTm5.js → agent-server-ui-style-scope-qhnhZHBV.js} +0 -0
  292. /package/build/assets/{automation-BVEmGghX.js → automation-LZB0MjdV.js} +0 -0
  293. /package/build/assets/{canvas-ui-BhxjoA1f.js → canvas-ui-COgjltGz.js} +0 -0
  294. /package/build/assets/{checkmark-DhcMGwtO.js → checkmark-h7udgXMM.js} +0 -0
  295. /package/build/assets/{close-DO5Rq_CS.js → close-DLFb5kfv.js} +0 -0
  296. /package/build/assets/{code-tag-BvjtzUsr.js → code-tag-DYlAhEQY.js} +0 -0
  297. /package/build/assets/{conversation-local-storage-B31voBg7.js → conversation-local-storage-F6zVMM--.js} +0 -0
  298. /package/build/assets/{conversation-tab-empty-state-BUhKVwoi.js → conversation-tab-empty-state-CNUmIms2.js} +0 -0
  299. /package/build/assets/{copy-DLUw2us-.js → copy-BLmGeJcd.js} +0 -0
  300. /package/build/assets/{dist-Dj01FXbZ.js → dist-CodhvuAP.js} +0 -0
  301. /package/build/assets/{environment-switch-store-D9hB9PvY.js → environment-switch-store-DkjlKWzN.js} +0 -0
  302. /package/build/assets/{extension-module-card-classes-BlO4w702.js → extension-module-card-classes-9V3J9J_b.js} +0 -0
  303. /package/build/assets/{folder-ynxP2EIL.js → folder-Bk311brm.js} +0 -0
  304. /package/build/assets/{form-control-classes-CvUaw8_L.js → form-control-classes-CbdN5aO3.js} +0 -0
  305. /package/build/assets/{get-language-from-path-rWEQrOGU.js → get-language-from-path-DBqBsCWH.js} +0 -0
  306. /package/build/assets/{git-status-mapper-C3rfzUex.js → git-status-mapper-DnL9OC8_.js} +0 -0
  307. /package/build/assets/{iconBase-CuvxAQZ5.js → iconBase-Dz51Zn5x.js} +0 -0
  308. /package/build/assets/{link-external-BVDiJfZt.js → link-external-CaBmUEs_.js} +0 -0
  309. /package/build/assets/{llm-subscription-BkdHwtQe.js → llm-subscription-DtsX5Lhg.js} +0 -0
  310. /package/build/assets/{loading-spinner-Txxx1I1p.js → loading-spinner-BcdnT0mN.js} +0 -0
  311. /package/build/assets/{middleware-CWYDMVuG.js → middleware-DYHYNAnP.js} +0 -0
  312. /package/build/assets/{modal-backdrop-Dsmzgr5s.js → modal-backdrop-zVwfOJZr.js} +0 -0
  313. /package/build/assets/{modal-body-CDZdZ-eT.js → modal-body-Cc2zp0xb.js} +0 -0
  314. /package/build/assets/{modal-classes-B4oit_4c.js → modal-classes-3qT9Ap7Q.js} +0 -0
  315. /package/build/assets/{modal-close-button-DQElFMPo.js → modal-close-button-BcIBUdSq.js} +0 -0
  316. /package/build/assets/{navigation-context-SjzfpygH.js → navigation-context-DPs2G0X8.js} +0 -0
  317. /package/build/assets/{objectWithoutPropertiesLoose-CQwg6tC0.js → objectWithoutPropertiesLoose-BgYIAs2y.js} +0 -0
  318. /package/build/assets/{openhands-logo-C-gDp1wr.js → openhands-logo-bcNw5bkY.js} +0 -0
  319. /package/build/assets/{plan-components-CgPHWz3E.js → plan-components-BdZXPyZU.js} +0 -0
  320. /package/build/assets/{react-ao3tWj6K.js → react-DPDgL6du.js} +0 -0
  321. /package/build/assets/{search-pb4UKTfK.js → search-BgOCR7_c.js} +0 -0
  322. /package/build/assets/{segmented-toggle-C1-ZVyr5.js → segmented-toggle-kzwZkLaj.js} +0 -0
  323. /package/build/assets/{settings-gear-D_HVvE5L.js → settings-gear-MXCyZW0x.js} +0 -0
  324. /package/build/assets/{settings-like-page-layout-classes-DLrsPCaI.js → settings-like-page-layout-classes-Cdl6jOe5.js} +0 -0
  325. /package/build/assets/{settings-DksoDv5z.js → settings-mQUckT0g.js} +0 -0
  326. /package/build/assets/{settings-section-header-context-C2MUIG88.js → settings-section-header-context-COMOIaxV.js} +0 -0
  327. /package/build/assets/{sidebar-layout-Cn6eQaEI.js → sidebar-layout-Bm7pa3Vk.js} +0 -0
  328. /package/build/assets/{skills-CH4xgIh-.js → skills-EqzxYBvT.js} +0 -0
  329. /package/build/assets/{styled-tooltip-CvsjHuIf.js → styled-tooltip-B14i_Uac.js} +0 -0
  330. /package/build/assets/{switch-skeleton-BpSOvZ-n.js → switch-skeleton-DqQwalyu.js} +0 -0
  331. /package/build/assets/{terminal-Dokfkxn0.js → terminal-Cgf___rK.js} +0 -0
  332. /package/build/assets/{toggle-switch-CS0ClOy2.js → toggle-switch-DX_k418f.js} +0 -0
  333. /package/build/assets/{u-check-circle-DPWVO-9N.js → u-check-circle-BqoIxNz_.js} +0 -0
  334. /package/build/assets/{u-check-circle-half-BGNAAjOW.js → u-check-circle-half-MsShT8Ec.js} +0 -0
  335. /package/build/assets/{u-edit-BIskOoEG.js → u-edit-DL5LgKon.js} +0 -0
  336. /package/build/assets/{use-breakpoint-OjLm94cF.js → use-breakpoint-BP3lqLMx.js} +0 -0
  337. /package/build/assets/{use-click-outside-element-Jpt2WWd7.js → use-click-outside-element-D9BYdANT.js} +0 -0
  338. /package/build/assets/{use-is-authed-Dvbpiu3B.js → use-is-authed-BezEyfeh.js} +0 -0
  339. /package/build/assets/{use-onboarding-completion-DkRpDTsD.js → use-onboarding-completion-C_Swglzp.js} +0 -0
  340. /package/build/assets/{v4-DPgam_jW.js → v4-DbCkTSoU.js} +0 -0
  341. /package/build/assets/{vendor~browser-BvEKaLBz.js → vendor~browser-By2MVv_N.js} +0 -0
  342. /package/build/assets/{vendor~conversation-panel~conversation~alert-banner-CznX01nZ.js → vendor~conversation-panel~conversation~alert-banner-CxfzCmkN.js} +0 -0
  343. /package/build/assets/{vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BuL5kjfS.js → vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js} +0 -0
  344. /package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-DUYl8gbZ.js → vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js} +0 -0
  345. /package/build/assets/{vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-pIgQDxTc.js → vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js} +0 -0
  346. /package/build/assets/{vendor~terminal-jAaNQWS9.js → vendor~terminal-CnKZILnC.js} +0 -0
  347. /package/build/assets/{x-mark-C5przfXl.js → x-mark-Batp6gXa.js} +0 -0
@@ -1 +1 @@
1
- import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n,xt as r}from"./vendor-styling-CI0PQ3ab.js";import{L as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js";import{n as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js";import{t as o}from"./useMutation-u8UgRgDK.js";import{t as s}from"./useQuery-D5pEZbY0.js";import{t as c}from"./useTranslation-Cbf5AGg_.js";import{t as l}from"./declaration-BGsHjPEW.js";import{C as u,S as d,c as f,f as p,s as m}from"./active-backend-context-BCXRv5pm.js";import{t as h}from"./createLucideIcon-D4Tak8A1.js";import{t as g}from"./back-nav-button-ZUDTMOTB.js";import{t as _}from"./copy-D1YGjP-C.js";import{t as v}from"./external-link-lhdITPqq.js";import{t as y}from"./utils-DB9LsAzA.js";import{t as b}from"./brand-button-2Tp3aXk1.js";import{t as x}from"./loading-spinner-Txxx1I1p.js";import{i as S}from"./dropdown-classes-DZq0BQjb.js";import{t as C}from"./settings-input-CzNOq-Pj.js";import{t as w}from"./settings-DksoDv5z.js";import{t as T}from"./settings-service.api-Bsu1PvYO.js";import{r as E}from"./use-settings-DNJC4gqu.js";import{t as D}from"./profiles-service.api-D6jvZOWu.js";import{a as O,d as k,n as A,p as j,r as M,t as N}from"./llm-subscription-BkdHwtQe.js";import{t as P}from"./llm-subscription-service-Cz1yBBvE.js";import{t as F}from"./use-llm-profiles-DQpQxVOD.js";import{r as I,t as L}from"./ellipsis-button-TPJdyxnK.js";import{t as R}from"./u-edit-BIskOoEG.js";import{n as z,t as B}from"./model-selector-BxTbbKub.js";import{d as ee,g as V,l as te}from"./sdk-settings-schema-Ba_Pa9uf.js";import{r as H}from"./schema-field-BOLdL_U7.js";import{t as U}from"./settings-dropdown-input-BD5C9fBn.js";import{t as ne}from"./copy-to-clipboard-button-Dp4Q_hXi.js";import{r as W}from"./typography-CQn9wyEX.js";import{t as re}from"./sdk-section-page-ZIltERxf.js";import{o as G}from"./extension-module-card-classes-BlO4w702.js";import{a as K,i as q,n as ie,o as ae,r as J,s as Y,t as oe}from"./use-can-manage-org-profiles-BAtqsbCi.js";import{t as se}from"./u-check-circle-DPWVO-9N.js";import{i as ce,n as le,r as ue,t as de}from"./settings-list-classes-CuxH9ZoR.js";import{n as fe}from"./settings-section-header-context-C2MUIG88.js";var pe=h(`text-cursor`,[[`path`,{d:`M17 22h-1a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4h1`,key:`uvaxm9`}],[`path`,{d:`M7 22h1a4 4 0 0 0 4-4v-1`,key:`11xy8d`}],[`path`,{d:`M7 2h1a4 4 0 0 1 4 4v1`,key:`1uw06m`}]]);function X(){let e=a();return o({mutationFn:e=>D.activateProfile(e),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function me(){return o({mutationFn:P.startOpenAIDeviceLogin})}function he(){let e=a();return o({mutationFn:P.pollOpenAIDeviceLogin,onSuccess:()=>{e.invalidateQueries({queryKey:f.openaiStatus})}})}function ge(){let e=a();return o({mutationFn:P.logoutOpenAI,onSuccess:()=>{e.invalidateQueries({queryKey:f.openaiStatus})}})}function _e({enabled:e=!0}={}){return s({queryKey:f.openaiStatus,queryFn:P.getOpenAIStatus,enabled:e,retry:!1,refetchOnWindowFocus:!1,staleTime:1e3*60*5,meta:{disableToast:!0}})}var Z=e(t(),1),Q=n(),ve=5,ye=1;function be(e){let t=e.verificationUriComplete??e.verificationUri;window.open(t,`_blank`,`noopener,noreferrer`)}function xe({isDisabled:e=!1}){let{t}=c(`openhands`),n=_e(),r=me(),i=he(),a=ge(),[o,s]=Z.useState(null),[f,p]=Z.useState(!1),[m,h]=Z.useState(!1),g=Z.useRef(null),_=Z.useCallback(()=>{g.current!==null&&(window.clearTimeout(g.current),g.current=null)},[]),y=()=>{o&&(navigator.clipboard.writeText(o.userCode),p(!0),setTimeout(()=>p(!1),2e3))},x=r.isPending||i.isPending||a.isPending,S=!!n.data?.connected,C=Z.useCallback(async e=>{try{return(await i.mutateAsync(e)).connected?(s(null),h(!1),u(t(l.SETTINGS$SUBSCRIPTION_CONNECTED_TOAST)),!0):(h(!0),!1)}catch{return d(t(l.SETTINGS$SUBSCRIPTION_CONNECT_ERROR)),!0}},[i,t]);return Z.useEffect(()=>{if(!o||S||e)return;let t=!1,n=Math.max(o.intervalSeconds??ve,ye),r=()=>{_(),g.current=window.setTimeout(async()=>{if(t)return;let e=await C(o.deviceCode);!t&&!e&&r()},n*1e3)};return r(),()=>{t=!0,_()}},[o,_,S,e,C]),(0,Q.jsxs)(`section`,{"data-testid":`openai-subscription-auth-card`,className:`flex flex-col gap-4 rounded-xl border border-[var(--oh-border)] bg-[var(--oh-surface-raised)] p-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(W.H3,{children:t(l.SETTINGS$SUBSCRIPTION_CARD_TITLE)}),(0,Q.jsx)(W.Paragraph,{className:`text-tertiary-alt text-sm leading-5`,children:t(l.SETTINGS$SUBSCRIPTION_CARD_DESCRIPTION)})]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-1 text-sm`,"data-testid":`subscription-status`,children:n.isLoading?(0,Q.jsx)(`span`,{className:`text-tertiary-light`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_CHECKING)}):n.isError?(0,Q.jsx)(`span`,{className:`text-danger`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_UNAVAILABLE)}):S?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`text-success`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_CONNECTED)}),n.data?.accountEmail?(0,Q.jsx)(`span`,{className:`text-tertiary-light`,children:t(l.SETTINGS$SUBSCRIPTION_ACCOUNT,{account:n.data.accountEmail})}):null]}):(0,Q.jsx)(`span`,{className:`text-warning`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_DISCONNECTED)})}),o?(0,Q.jsxs)(`div`,{"data-testid":`subscription-device-challenge`,className:`flex flex-col gap-2 rounded-lg border border-[var(--oh-border-subtle)] p-3 text-sm`,children:[(0,Q.jsx)(`span`,{children:t(l.SETTINGS$SUBSCRIPTION_DEVICE_INSTRUCTIONS)}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg bg-[var(--oh-surface-deep)] px-3 py-2 font-mono text-base font-semibold text-white`,children:[(0,Q.jsx)(`span`,{"data-testid":`subscription-user-code`,className:`flex-1 select-all tracking-[0.08em]`,children:o.userCode}),(0,Q.jsx)(ne,{isHidden:!1,isDisabled:!1,onClick:y,mode:f?`copied`:`copy`})]}),(0,Q.jsxs)(`a`,{href:o.verificationUriComplete??o.verificationUri,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-sm text-[var(--oh-accent)] underline`,children:[t(l.SETTINGS$SUBSCRIPTION_OPEN_LOGIN),(0,Q.jsx)(v,{size:14,"aria-hidden":!0})]}),m?(0,Q.jsx)(`span`,{className:`text-warning`,children:t(l.SETTINGS$SUBSCRIPTION_PENDING_TOAST)}):null]}):null,(0,Q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[S?(0,Q.jsx)(b,{testId:`subscription-disconnect`,type:`button`,variant:`tertiary`,isDisabled:e||x,onClick:async()=>{try{await a.mutateAsync(),_(),s(null),h(!1),u(t(l.SETTINGS$SUBSCRIPTION_DISCONNECTED_TOAST))}catch{d(t(l.ERROR$GENERIC))}},children:t(l.SETTINGS$SUBSCRIPTION_DISCONNECT)}):(0,Q.jsx)(b,{testId:`subscription-connect`,type:`button`,variant:`primary`,isDisabled:e||x,onClick:async()=>{try{let e=await r.mutateAsync();s(e),h(!0),be(e)}catch{d(t(l.SETTINGS$SUBSCRIPTION_CONNECT_ERROR))}},children:t(l.SETTINGS$SUBSCRIPTION_CONNECT)}),o?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{testId:`subscription-poll`,type:`button`,variant:`secondary`,isDisabled:e||x,onClick:async()=>{o&&(_(),C(o.deviceCode))},children:t(l.SETTINGS$SUBSCRIPTION_FINISH_SIGN_IN)}),(0,Q.jsx)(b,{testId:`subscription-cancel`,type:`button`,variant:`tertiary`,isDisabled:e||x,onClick:()=>{_(),s(null),h(!1)},children:t(l.BUTTON$CANCEL)})]}):null]})]})}var Se=e=>(0,Q.jsxs)(`svg`,{width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Q.jsx)(`path`,{d:`M9.9509 15.588H10.8349L16.5125 9.91042L15.6285 9.0264L10.3991 14.2681L8.00867 11.8777L7.12465 12.7617L9.9509 15.588Z`,fill:`currentColor`}),(0,Q.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12.8521 3.29895C14.8443 3.42346 16.712 4.41954 18.0816 5.78916C19.7002 7.53231 20.5718 9.64898 20.5718 12.1392C20.5718 14.1314 19.8247 15.999 18.5796 17.6177C17.3345 19.1118 15.5914 20.2324 13.5992 20.6059C11.607 20.9794 9.61486 20.7304 7.87171 19.7343C6.12856 18.7382 4.75895 17.2441 4.01189 15.3765C3.26482 13.5088 3.14031 11.3921 3.76286 9.52447C4.38542 7.53231 5.50601 5.91367 7.24916 4.79308C8.86779 3.67248 10.86 3.17444 12.8521 3.29895ZM13.4747 19.3608C15.0933 18.9873 16.5874 18.1157 17.708 16.7461C18.7041 15.3765 19.3267 13.7578 19.2022 12.0147C19.2022 10.0225 18.4551 8.03035 17.0855 6.66073C15.8404 5.41563 14.3463 4.66857 12.6031 4.54405C10.9845 4.41954 9.24132 4.79308 7.87171 5.78916C6.50209 6.78524 5.50601 8.15486 5.00797 9.89801C4.50993 11.5166 4.50993 13.2598 5.25699 14.8784C6.00405 16.4971 7.12465 17.7422 8.61877 18.6137C10.1129 19.4853 11.856 19.7343 13.4747 19.3608Z`,fill:`currentColor`})]});function Ce({testId:e,isSet:t}){return(0,Q.jsx)(`span`,{"data-testid":e||(t?`set-indicator`:`unset-indicator`),children:(0,Q.jsx)(Se,{className:y(t?`text-success`:`text-danger`)})})}function we(){let e=a();return o({mutationFn:({name:e,newName:t})=>D.renameProfile(e,t),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function Te({profile:e,onClose:t}){let{t:n}=c(`openhands`),[r,i]=(0,Z.useState)(``),a=we(),o=(0,Z.useRef)(null);if((0,Z.useEffect)(()=>{i(e?.name??``)},[e?.name]),!e)return null;let s=Y(r,{isRequired:!0}),f=r===e.name,p=async()=>{if(!s){d(n(l.SETTINGS$PROFILE_NAME_RULE));return}if(f){t();return}try{await a.mutateAsync({name:e.name,newName:r}),u(n(l.SETTINGS$PROFILE_RENAMED,{name:r})),t()}catch(e){d(e instanceof Error?e.message:n(l.ERROR$GENERIC))}},m=()=>{a.isPending||t()},h=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{type:`button`,variant:`tertiary`,onClick:m,isDisabled:a.isPending,children:n(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`rename-profile-submit`,type:`button`,variant:`primary`,onClick:p,isDisabled:a.isPending||!s,children:a.isPending?(0,Q.jsx)(x,{size:`small`}):n(l.BUTTON$RENAME)})]});return(0,Q.jsx)(q,{isOpen:!0,title:n(l.SETTINGS$PROFILE_RENAME_TITLE),footer:h,onClose:m,initialFocusRef:o,children:(0,Q.jsx)(`div`,{"data-testid":`rename-profile-modal`,className:`flex flex-col gap-3`,children:(0,Q.jsx)(K,{ref:o,testId:`rename-profile-input`,ruleTestId:`rename-profile-rule`,value:r,onChange:i,isRequired:!0,onKeyDown:e=>{e.key===`Enter`&&!a.isPending&&s&&p()}})})})}function Ee(){let e=a();return o({mutationFn:e=>D.deleteProfile(e),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function De({profile:e,onClose:t}){let{t:n}=c(`openhands`),r=Ee(),i=(0,Z.useRef)(null);if(!e)return null;let a=async()=>{try{await r.mutateAsync(e.name),u(n(l.SETTINGS$PROFILE_DELETED,{name:e.name})),t()}catch(e){d(e instanceof Error?e.message:n(l.ERROR$GENERIC))}},o=()=>{r.isPending||t()},s=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{ref:i,type:`button`,variant:`tertiary`,onClick:o,isDisabled:r.isPending,children:n(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`delete-profile-confirm`,type:`button`,variant:`danger`,onClick:a,isDisabled:r.isPending,"aria-busy":r.isPending,children:r.isPending?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(x,{size:`small`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:n(l.BUTTON$DELETE)})]}):n(l.BUTTON$DELETE)})]});return(0,Q.jsx)(q,{isOpen:!0,title:n(l.SETTINGS$PROFILE_DELETE_TITLE),footer:s,onClose:o,initialFocusRef:i,children:(0,Q.jsx)(`p`,{className:`text-sm break-all`,children:n(l.SETTINGS$PROFILE_DELETE_CONFIRMATION,{name:e.name})})})}var Oe=e(r(),1);function ke({onEdit:e,onRename:t,onDuplicate:n,onSetActive:r,onDelete:i,isActive:a,isActivating:o,onClose:s,anchorRef:u}){let{t:d}=c(`openhands`),f=(0,Z.useRef)(null),p=(0,Z.useRef)([]),m=u?.current??null,[h,g]=(0,Z.useState)();(0,Z.useLayoutEffect)(()=>{if(!m)return;let e=()=>{let e=m.getBoundingClientRect();e&&g({position:`fixed`,zIndex:9999,top:e.bottom+8,right:window.innerWidth-e.right,width:`max-content`})};return e(),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[m]),(0,Z.useEffect)(()=>{p.current[0]?.focus()},[]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.target;f.current&&!f.current.contains(t)&&s()},t=e=>{e.key===`Escape`&&s()};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[s]);let v=e=>{e(),s()},b=(0,Z.useCallback)((e,t)=>{if(e.key===`Tab`){s();return}let n=p.current.filter(Boolean).length;if(e.key===`ArrowDown`){e.preventDefault();let r=(t+1)%n;p.current[r]?.focus()}else if(e.key===`ArrowUp`){e.preventDefault();let r=(t-1+n)%n;p.current[r]?.focus()}},[s]),x=a||o,C=!!m,w=(0,Q.jsxs)(`div`,{ref:f,className:y(`absolute right-0 top-full z-10 mt-2 w-[160px] rounded-md border border-[var(--oh-border-subtle)] bg-tertiary px-1 py-1 shadow-lg`,S,C&&`!static !top-auto !bottom-auto !left-auto !right-auto !mt-0`),role:`menu`,"aria-orientation":`vertical`,"data-testid":`profile-actions-menu`,children:[(0,Q.jsx)(J,{index:0,icon:(0,Q.jsx)(R,{width:16,height:16}),label:d(l.SETTINGS$PROFILE_EDIT),onClick:()=>v(e),onKeyDown:b,menuItemsRef:p,testId:`profile-edit`}),(0,Q.jsx)(J,{index:1,icon:(0,Q.jsx)(pe,{"aria-hidden":!0,className:`size-4`,strokeWidth:2}),label:d(l.BUTTON$RENAME),onClick:()=>v(t),onKeyDown:b,menuItemsRef:p,testId:`profile-rename`}),(0,Q.jsx)(J,{index:2,icon:(0,Q.jsx)(_,{"aria-hidden":!0,className:`size-4`,strokeWidth:2}),label:d(l.BUTTON$DUPLICATE),onClick:()=>v(n),onKeyDown:b,menuItemsRef:p,testId:`profile-duplicate`}),(0,Q.jsx)(J,{index:3,icon:(0,Q.jsx)(se,{width:16,height:16}),label:d(l.SETTINGS$PROFILE_SET_DEFAULT),onClick:()=>v(r),onKeyDown:b,menuItemsRef:p,disabled:x,testId:`profile-set-active`}),(0,Q.jsx)(J,{index:4,icon:(0,Q.jsx)(I,{width:16,height:16}),label:d(l.BUTTON$DELETE),onClick:()=>v(i),onKeyDown:b,menuItemsRef:p,testId:`profile-delete`})]});return C?typeof document>`u`||!h?null:Oe.createPortal((0,Q.jsx)(`div`,{style:h,children:w}),document.body):w}function Ae({profile:e,isActive:t,canManage:n,onActivate:r,onEdit:i,onRename:a,onDuplicate:o,onDelete:s,isActivating:u}){let{t:d}=c(`openhands`),[f,p]=(0,Z.useState)(!1),m=(0,Z.useRef)(null);return(0,Q.jsxs)(`div`,{"data-testid":`profile-row`,className:y(ce,`justify-between gap-3`),children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,Q.jsx)(`span`,{className:`min-w-0 max-w-full truncate text-sm font-medium text-white`,title:e.name,children:e.name}),e.model?(0,Q.jsx)(`span`,{className:`min-w-0 max-w-full truncate text-sm text-[var(--oh-muted)]`,title:e.model,children:e.model}):null,t&&(0,Q.jsx)(ie,{className:`shrink-0 whitespace-nowrap px-2.5 py-1 text-xs`,"data-testid":`profile-active-badge`,children:d(l.SETTINGS$PROFILE_DEFAULT)})]}),n&&(0,Q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Q.jsx)(L,{ref:m,onClick:()=>p(e=>!e),ariaLabel:d(l.SETTINGS$PROFILE_MENU),testId:`profile-menu-trigger`,className:ue}),f&&(0,Q.jsx)(ke,{anchorRef:m,onEdit:()=>i(e),onRename:()=>a(e),onDuplicate:()=>o(e),onSetActive:()=>r(e.name),onDelete:()=>s(e),isActive:t,isActivating:u,onClose:()=>p(!1)})]})]})}function je({isLoading:e,loadError:t,profiles:n,active:r,canManage:i,onActivate:a,onEdit:o,onRename:s,onDuplicate:u,onDelete:d,isActivating:f}){let{t:p}=c(`openhands`);return e?(0,Q.jsx)(`div`,{className:`flex justify-center p-4`,children:(0,Q.jsx)(x,{size:`large`})}):t?(0,Q.jsx)(`div`,{"data-testid":`profiles-load-error`,className:G,children:(0,Q.jsx)(`p`,{className:`text-sm text-red-400`,children:p(l.SETTINGS$PROFILES_LOAD_ERROR)})}):n.length===0?(0,Q.jsx)(`div`,{"data-testid":`profiles-empty`,className:G,children:(0,Q.jsx)(`p`,{className:`text-sm text-[var(--oh-muted)]`,children:p(l.SETTINGS$PROFILES_EMPTY)})}):(0,Q.jsx)(`div`,{className:y(de,le),children:n.map(e=>(0,Q.jsx)(Ae,{profile:e,isActive:e.name===r,canManage:i,onActivate:a,onEdit:o,onRename:s,onDuplicate:u,onDelete:d,isActivating:f},e.name))})}function $(){let e=a();return o({mutationFn:({name:e,request:t})=>D.saveProfile(e,t),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function Me({onAddProfile:e,onEditProfile:t}){let{t:n}=c(`openhands`),{data:r,isLoading:i,error:a}=F(),o=X(),s=$(),f=oe(),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=r?.profiles??[],v=r?.active_profile??null;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Q.jsx)(`h2`,{className:`text-base font-medium text-white`,children:n(l.SETTINGS$AVAILABLE_PROFILES)}),e&&f?(0,Q.jsx)(b,{testId:`add-llm-profile`,type:`button`,variant:`secondary`,className:`ml-auto`,onClick:e,children:n(l.SETTINGS$ADD_LLM_PROFILE)}):null]}),(0,Q.jsx)(je,{isLoading:i,loadError:a??null,profiles:_,active:v,canManage:f,onActivate:async e=>{try{await o.mutateAsync(e),u(n(l.SETTINGS$PROFILE_ACTIVATED,{name:e}))}catch(e){console.error(`Failed to activate profile:`,e),d(n(l.ERROR$GENERIC))}},onEdit:e=>{t?.(e)},onRename:m,onDuplicate:async e=>{try{let t=await D.getProfile(e.name,`encrypted`),r=new Set(_.map(e=>e.name)),i=`${e.name}-copy`,a=1;for(;r.has(i);)i=`${e.name}-copy-${a}`,a+=1;await s.mutateAsync({name:i,request:{llm:t.config,include_secrets:!0}}),u(n(l.SETTINGS$PROFILE_DUPLICATED,{name:i}))}catch(e){console.error(`Failed to duplicate profile:`,e),d(n(l.ERROR$GENERIC))}},onDelete:g,isActivating:o.isPending})]}),(0,Q.jsx)(Te,{profile:p,onClose:()=>m(null)}),(0,Q.jsx)(De,{profile:h,onClose:()=>g(null)})]})}function Ne({activeProfileName:e,originalName:t,savedName:n}){return e?t?e===t:e===n:!1}function Pe(){let{t:e}=c(`openhands`),{setHideSectionHeader:t}=fe(),n=$(),r=X(),{data:i}=F(),{data:a}=E(),{data:o}=H(a?.agent_settings_schema),s=(0,Z.useRef)(o);s.current=o;let[f,p]=(0,Z.useState)(`list`),[m,h]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(null),[y,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>(t(f!==`list`),()=>t(!1)),[f,t]);let w=(0,Z.useMemo)(()=>new Set(i?.profiles.map(e=>e.name)??[]),[i]),T=(0,Z.useMemo)(()=>!(!Y(m,{isRequired:!0})||f===`create`&&w.has(m)||f===`edit`&&m!==_?.profile.name&&w.has(m)),[m,f,w,_?.profile.name]),P=(0,Z.useCallback)(()=>{h(``),v(null),p(`create`)},[]),I=(0,Z.useCallback)(async t=>{try{let e=(await D.getProfile(t.name,`encrypted`)).config??{},n=s.current?.sections.find(e=>e.key===`llm`)?.fields??[],r={};for(let t of n){let n=t.key.startsWith(`llm.`)?t.key.slice(4):t.key;r[t.key]=ee(t,e[n])}n.length===0&&(r[`llm.model`]=e.model??``,r[`llm.api_key`]=e.api_key??``,r[`llm.base_url`]=e.base_url??``,r[A]=j(e.auth_type),r[O]=e.subscription_vendor??`openai`),v({profile:t,initialValues:r,baseConfig:e}),h(t.name),p(`edit`)}catch(t){console.error(`Failed to fetch profile details:`,t),d(e(l.ERROR$GENERIC))}},[e]),L=(0,Z.useCallback)(()=>{p(`list`),v(null),h(``),x(null)},[]),R=(0,Z.useCallback)(e=>{if(x(e),f===`create`&&!m){let t=e.values[`llm.model`];if(typeof t==`string`&&t){let e=ae(t);w.has(e)||h(e)}}},[f,m,w]),z=(0,Z.useCallback)(async()=>{if(!y||!T)return;let t;try{t=y.getDirtyPayload().llm??{}}catch(t){d(t instanceof Error?t.message:e(l.ERROR$GENERIC));return}let a=f===`edit`&&_?.baseConfig?{..._.baseConfig}:{},o=y.view===`basic`&&Object.prototype.hasOwnProperty.call(t,`model`)&&t.model!==a.model,s={...a,...t};if(j(s.auth_type)===`subscription`)s.auth_type=M,s.subscription_vendor=k,delete s.api_key,delete s.base_url;else if(s.auth_type=N,s.subscription_vendor=null,o&&delete s.base_url,typeof s.api_key!=`string`||s.api_key.trim()===``){let e=typeof a.api_key==`string`?a.api_key:``;e?s.api_key=e:delete s.api_key}if(!(typeof s.model==`string`&&s.model)){d(e(l.SETTINGS$MODEL_REQUIRED));return}let c=m.trim(),p=_?.profile.name,h=f===`edit`&&p&&p!==c,g=Ne({activeProfileName:i?.active_profile,originalName:p,savedName:c});C(!0);try{h&&await D.renameProfile(p,c),await n.mutateAsync({name:c,request:{llm:s,include_secrets:!0}}),g&&await r.mutateAsync(c),u(e(f===`create`?l.SETTINGS$PROFILE_CREATED:l.SETTINGS$PROFILE_UPDATED,{name:c})),L()}catch(t){console.error(`Failed to save profile:`,t),d(e(l.ERROR$GENERIC))}finally{C(!1)}},[y,T,m,f,_,i?.active_profile,n,r,e,L]);if(f===`list`)return(0,Q.jsx)(Me,{onAddProfile:P,onEditProfile:I});let B=e(f===`edit`?l.SETTINGS$EDIT_LLM_PROFILE:l.SETTINGS$ADD_LLM_PROFILE),V=f===`edit`&&_?e(l.SETTINGS$PROFILE_LOADED,{name:_.profile.name}):e(l.SETTINGS$PROFILE_SAVE_HINT);return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(g,{testId:`back-to-profiles`,onClick:L,children:e(l.BUTTON$BACK)}),(0,Q.jsx)(W.H2,{testId:`profile-editor-title`,children:B}),(0,Q.jsx)(`p`,{"data-testid":`profile-editor-description`,className:`text-sm leading-5 text-tertiary-light`,children:V})]}),(0,Q.jsx)(K,{testId:`profile-name-input`,value:m,onChange:h,isRequired:!0}),(0,Q.jsx)(Ue,{embedded:!0,hideSaveButton:!0,initialValueOverrides:f===`edit`&&_?.initialValues?_.initialValues:{"llm.model":``,"llm.api_key":``,"llm.base_url":``,[A]:N,[O]:k},onSaveControlChange:R},f===`edit`?`edit-${_?.profile.name}`:`new-profile`),(0,Q.jsxs)(`div`,{className:`flex justify-start gap-3 pt-4`,children:[(0,Q.jsx)(b,{testId:`cancel-profile-btn`,type:`button`,variant:`secondary`,onClick:L,children:e(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`save-profile-btn`,type:`button`,variant:`primary`,onClick:z,isDisabled:!T||S||!y,"aria-busy":S,children:e(S?l.STATUS$SAVING:l.BUTTON$SAVE)})]})]})}function Fe({enabled:e=!0}={}){return s({queryKey:f.openaiModels,queryFn:P.getOpenAIModels,enabled:e,retry:!1,refetchOnWindowFocus:!1,staleTime:1e3*60*5,meta:{disableToast:!0}})}var Ie=new Set([`llm.model`,`llm.api_key`,`llm.base_url`,A,O]),Le=(e,t)=>!e||!t?null:`${e}/${t}`,Re=(e,t)=>e?.sections.flatMap(e=>e.fields).find(e=>e.key===t)?.default??null,ze={openai:new Set([`https://api.openai.com`,`https://api.openai.com/v1`])},Be=e=>{try{let t=new URL(e),n=t.pathname.replace(/\/+$/,``)||``;return`${t.origin}${n}`}catch{return e.trim().replace(/\/+$/,``)}},Ve=(e,t)=>{let n=Be(t),{provider:r}=z(e);if(r){let e=ze[r];if(e)return e.has(n)}return Object.values(ze).some(e=>e?.has(n))};function He({testId:e}){let{t}=c(`openhands`);return(0,Q.jsx)(V,{testId:e,text:t(l.SETTINGS$OPENHANDS_API_KEY_HELP_TEXT),linkText:t(l.SETTINGS$NAV_API_KEYS),href:`https://app.all-hands.dev/settings/api-keys`,suffix:` ${t(l.SETTINGS$OPENHANDS_API_KEY_HELP_SUFFIX)}`})}function Ue({scope:e=`personal`,onSaveSuccess:t,initialValueOverrides:n,embedded:r,hideSaveButton:i,suppressSuccessToast:a,onSaveControlChange:o}){let{t:s}=c(`openhands`),{data:u}=E(e),{data:d}=H(u?.agent_settings_schema),f=u?.agent_settings?.llm,p=j(n?.[`llm.auth_type`]??f?.auth_type),[m,h]=Z.useState(p===M),{data:g,isLoading:_,isFetching:v}=Fe({enabled:m}),y=m&&!g&&(_||v),b=Z.useRef(null),x=Z.useRef(null);Z.useEffect(()=>{p===`subscription`&&h(!0)},[p]);let S=String(w.agent_settings?.llm?.model??``),T=Z.useCallback((e,t)=>{let n=te(e,t);if(n!==`basic`)return n;let r=e.llm_model??``,i=e.llm_base_url?.trim()??``;return i.length>0&&!Ve(r,i)?`all`:`basic`},[]),D=Z.useCallback(({values:e,isDisabled:t,view:n,onChange:i})=>{let a=typeof e[`llm.model`]==`string`?e[`llm.model`]:``,o=typeof e[`llm.base_url`]==`string`?e[`llm.base_url`]:``,c=a.startsWith(`openhands/`),d=j(e[A]),f=d===M,p=t||f&&y,m=g?.includes(a)?a:g?.[0]??``,_=typeof e[`llm.api_key`]==`string`?e[`llm.api_key`]:``,v=r?_.length>0:!!u?.llm_api_key_set,w=(e,n)=>(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(C,{testId:e,label:s(l.SETTINGS_FORM$API_KEY),type:`password`,className:`w-full`,value:_,placeholder:v?`<hidden>`:``,onChange:e=>i(`llm.api_key`,e),isDisabled:t,startContent:v?(0,Q.jsx)(Ce,{isSet:v}):void 0}),(0,Q.jsx)(V,{testId:n,text:s(l.SETTINGS$DONT_KNOW_API_KEY),linkText:s(l.SETTINGS$CLICK_FOR_INSTRUCTIONS),href:`https://docs.openhands.dev/usage/local-setup#getting-an-api-key`})]}),T=e=>{let t=e===`subscription`?M:N;if(i(A,t),t===`subscription`){h(!0),a&&!g?.includes(a)&&(b.current=a);let e=x.current&&g?.includes(x.current)?x.current:g?.[0];i(O,k),!g?.includes(a)&&e&&i(`llm.model`,e);return}a&&g?.includes(a)&&(x.current=a,i(`llm.model`,b.current??S))},E=()=>(0,Q.jsx)(U,{testId:`llm-auth-type-input`,name:A,label:s(l.SETTINGS$LLM_AUTH_TYPE),items:[{key:N,label:s(l.SETTINGS$LLM_AUTH_TYPE_API_KEY)},{key:M,label:s(l.SETTINGS$LLM_AUTH_TYPE_SUBSCRIPTION)}],selectedKey:d,isClearable:!1,required:!0,isDisabled:p,onSelectionChange:T}),D=()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-subscription-settings`,children:[(0,Q.jsx)(U,{testId:`llm-subscription-model-input`,name:`llm.subscription_model`,label:s(l.SETTINGS$SUBSCRIPTION_MODEL),items:(g??[]).map(e=>({key:e,label:e})),selectedKey:m,isClearable:!1,required:!0,isDisabled:p||!g?.length,onSelectionChange:e=>{let t=typeof e==`string`?e:g?.[0];t&&i(`llm.model`,t)}}),(0,Q.jsx)(xe,{isDisabled:t})]});return(0,Q.jsx)(`div`,{className:`flex flex-col gap-6`,children:n===`basic`?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-settings-form-basic`,children:[E(),f?D():(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(B,{currentModel:a||void 0,onChange:(e,t)=>{let n=Le(e,t);n&&i(`llm.model`,n)},wrapperClassName:`!flex-col !gap-6`,isDisabled:t}),c?(0,Q.jsx)(He,{testId:`openhands-api-key-help`}):null,w(`llm-api-key-input`,`llm-api-key-help-anchor`)]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-settings-form-advanced`,children:[E(),f?D():(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(C,{testId:`llm-custom-model-input`,label:s(l.SETTINGS$CUSTOM_MODEL),type:`text`,className:`w-full`,value:a,placeholder:S,onChange:e=>i(`llm.model`,e),isDisabled:t}),c?(0,Q.jsx)(He,{testId:`openhands-api-key-help-2`}):null,(0,Q.jsx)(C,{testId:`base-url-input`,label:s(l.SETTINGS$BASE_URL),type:`text`,className:`w-full`,value:o,placeholder:`https://api.openai.com`,onChange:e=>i(`llm.base_url`,e),isDisabled:t}),w(`llm-api-key-input`,`llm-api-key-help-anchor-advanced`)]})]})})},[S,r,y,u?.llm_api_key_set,g,s]),P=Z.useCallback((e,t)=>{let n=structuredClone(e.agent_settings_diff??{}),r=n.llm??{};if(j(t.values[`llm.auth_type`])===`subscription`){r.auth_type=M,r.subscription_vendor=k;let e=typeof r.model==`string`?r.model:String(t.values[`llm.model`]??``),n=g?.[0];if(!g?.includes(e)&&!n)throw Error(`Subscription models are not loaded yet.`);r.model=g?.includes(e)?e:n,delete r.api_key,delete r.base_url}else t.dirty[`llm.auth_type`]&&(r.auth_type=N,r.subscription_vendor=null),t.view===`basic`&&r.model!==void 0&&(r.base_url=Re(d,`llm.base_url`));return n.llm=r,{agent_settings_diff:n}},[d,g]);return(0,Q.jsx)(re,{scope:e,settingsSources:[{settingsSource:`agent_settings`,sectionKeys:[`llm`],excludeKeys:Ie}],header:D,buildPayload:P,getInitialView:T,forceShowAdvancedView:!0,allowAllView:!0,onSaveSuccess:t,initialValueOverrides:n,embedded:r,hideSaveButton:i,suppressSuccessToast:a,onSaveControlChange:o,testId:`llm-settings-screen`})}var We=i(function(){return(0,Q.jsx)(Pe,{})});export{X as i,We as n,$ as r,Ue as t};
1
+ import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n,xt as r}from"./vendor-styling-CI0PQ3ab.js";import{L as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js";import{n as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js";import{t as o}from"./useMutation-u8UgRgDK.js";import{t as s}from"./useQuery-D5pEZbY0.js";import{t as c}from"./useTranslation-Cbf5AGg_.js";import{t as l}from"./declaration-BGsHjPEW.js";import{C as u,S as d,c as f,f as p,s as m}from"./active-backend-context-DHhm10VS.js";import{t as h}from"./createLucideIcon-D4Tak8A1.js";import{t as g}from"./back-nav-button-DVknCcSP.js";import{t as _}from"./copy-D1YGjP-C.js";import{t as v}from"./external-link-lhdITPqq.js";import{t as y}from"./utils-DB9LsAzA.js";import{t as b}from"./brand-button-B1izLAdR.js";import{t as x}from"./loading-spinner-BcdnT0mN.js";import{i as S}from"./dropdown-classes-D3wMJlXT.js";import{t as C}from"./settings-input-BsgQWS5R.js";import{t as w}from"./settings-mQUckT0g.js";import{t as T}from"./settings-service.api-DPTFyRXL.js";import{r as E}from"./use-settings-BeJap6YL.js";import{t as D}from"./profiles-service.api-DWetW2TL.js";import{a as O,d as k,n as A,p as j,r as M,t as N}from"./llm-subscription-DtsX5Lhg.js";import{t as P}from"./llm-subscription-service-C0zN0-rH.js";import{t as F}from"./use-llm-profiles-CgRtnj74.js";import{r as I,t as L}from"./ellipsis-button-CbNnHlIq.js";import{t as R}from"./u-edit-DL5LgKon.js";import{n as z,t as B}from"./model-selector-D51W2Q9b.js";import{d as ee,g as V,l as te}from"./sdk-settings-schema-CLR01YIK.js";import{r as H}from"./schema-field-CwdqUOnE.js";import{t as U}from"./settings-dropdown-input-Dhx9ErGd.js";import{t as ne}from"./copy-to-clipboard-button-CFzH_NOX.js";import{r as W}from"./typography-CzfoD9DY.js";import{t as re}from"./sdk-section-page-Cwj0T4gF.js";import{o as G}from"./extension-module-card-classes-9V3J9J_b.js";import{a as K,i as q,n as ie,o as ae,r as J,s as Y,t as oe}from"./use-can-manage-org-profiles-CyYqfzeo.js";import{t as se}from"./u-check-circle-BqoIxNz_.js";import{i as ce,n as le,r as ue,t as de}from"./settings-list-classes-DSJJX99U.js";import{n as fe}from"./settings-section-header-context-COMOIaxV.js";var pe=h(`text-cursor`,[[`path`,{d:`M17 22h-1a4 4 0 0 1-4-4V6a4 4 0 0 1 4-4h1`,key:`uvaxm9`}],[`path`,{d:`M7 22h1a4 4 0 0 0 4-4v-1`,key:`11xy8d`}],[`path`,{d:`M7 2h1a4 4 0 0 1 4 4v1`,key:`1uw06m`}]]);function X(){let e=a();return o({mutationFn:e=>D.activateProfile(e),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function me(){return o({mutationFn:P.startOpenAIDeviceLogin})}function he(){let e=a();return o({mutationFn:P.pollOpenAIDeviceLogin,onSuccess:()=>{e.invalidateQueries({queryKey:f.openaiStatus})}})}function ge(){let e=a();return o({mutationFn:P.logoutOpenAI,onSuccess:()=>{e.invalidateQueries({queryKey:f.openaiStatus})}})}function _e({enabled:e=!0}={}){return s({queryKey:f.openaiStatus,queryFn:P.getOpenAIStatus,enabled:e,retry:!1,refetchOnWindowFocus:!1,staleTime:1e3*60*5,meta:{disableToast:!0}})}var Z=e(t(),1),Q=n(),ve=5,ye=1;function be(e){let t=e.verificationUriComplete??e.verificationUri;window.open(t,`_blank`,`noopener,noreferrer`)}function xe({isDisabled:e=!1}){let{t}=c(`openhands`),n=_e(),r=me(),i=he(),a=ge(),[o,s]=Z.useState(null),[f,p]=Z.useState(!1),[m,h]=Z.useState(!1),g=Z.useRef(null),_=Z.useCallback(()=>{g.current!==null&&(window.clearTimeout(g.current),g.current=null)},[]),y=()=>{o&&(navigator.clipboard.writeText(o.userCode),p(!0),setTimeout(()=>p(!1),2e3))},x=r.isPending||i.isPending||a.isPending,S=!!n.data?.connected,C=Z.useCallback(async e=>{try{return(await i.mutateAsync(e)).connected?(s(null),h(!1),u(t(l.SETTINGS$SUBSCRIPTION_CONNECTED_TOAST)),!0):(h(!0),!1)}catch{return d(t(l.SETTINGS$SUBSCRIPTION_CONNECT_ERROR)),!0}},[i,t]);return Z.useEffect(()=>{if(!o||S||e)return;let t=!1,n=Math.max(o.intervalSeconds??ve,ye),r=()=>{_(),g.current=window.setTimeout(async()=>{if(t)return;let e=await C(o.deviceCode);!t&&!e&&r()},n*1e3)};return r(),()=>{t=!0,_()}},[o,_,S,e,C]),(0,Q.jsxs)(`section`,{"data-testid":`openai-subscription-auth-card`,className:`flex flex-col gap-4 rounded-xl border border-[var(--oh-border)] bg-[var(--oh-surface-raised)] p-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(W.H3,{children:t(l.SETTINGS$SUBSCRIPTION_CARD_TITLE)}),(0,Q.jsx)(W.Paragraph,{className:`text-tertiary-alt text-sm leading-5`,children:t(l.SETTINGS$SUBSCRIPTION_CARD_DESCRIPTION)})]}),(0,Q.jsx)(`div`,{className:`flex flex-col gap-1 text-sm`,"data-testid":`subscription-status`,children:n.isLoading?(0,Q.jsx)(`span`,{className:`text-tertiary-light`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_CHECKING)}):n.isError?(0,Q.jsx)(`span`,{className:`text-danger`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_UNAVAILABLE)}):S?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`span`,{className:`text-success`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_CONNECTED)}),n.data?.accountEmail?(0,Q.jsx)(`span`,{className:`text-tertiary-light`,children:t(l.SETTINGS$SUBSCRIPTION_ACCOUNT,{account:n.data.accountEmail})}):null]}):(0,Q.jsx)(`span`,{className:`text-warning`,children:t(l.SETTINGS$SUBSCRIPTION_STATUS_DISCONNECTED)})}),o?(0,Q.jsxs)(`div`,{"data-testid":`subscription-device-challenge`,className:`flex flex-col gap-2 rounded-lg border border-[var(--oh-border-subtle)] p-3 text-sm`,children:[(0,Q.jsx)(`span`,{children:t(l.SETTINGS$SUBSCRIPTION_DEVICE_INSTRUCTIONS)}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg bg-[var(--oh-surface-deep)] px-3 py-2 font-mono text-base font-semibold text-white`,children:[(0,Q.jsx)(`span`,{"data-testid":`subscription-user-code`,className:`flex-1 select-all tracking-[0.08em]`,children:o.userCode}),(0,Q.jsx)(ne,{isHidden:!1,isDisabled:!1,onClick:y,mode:f?`copied`:`copy`})]}),(0,Q.jsxs)(`a`,{href:o.verificationUriComplete??o.verificationUri,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1 text-sm text-[var(--oh-accent)] underline`,children:[t(l.SETTINGS$SUBSCRIPTION_OPEN_LOGIN),(0,Q.jsx)(v,{size:14,"aria-hidden":!0})]}),m?(0,Q.jsx)(`span`,{className:`text-warning`,children:t(l.SETTINGS$SUBSCRIPTION_PENDING_TOAST)}):null]}):null,(0,Q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[S?(0,Q.jsx)(b,{testId:`subscription-disconnect`,type:`button`,variant:`tertiary`,isDisabled:e||x,onClick:async()=>{try{await a.mutateAsync(),_(),s(null),h(!1),u(t(l.SETTINGS$SUBSCRIPTION_DISCONNECTED_TOAST))}catch{d(t(l.ERROR$GENERIC))}},children:t(l.SETTINGS$SUBSCRIPTION_DISCONNECT)}):(0,Q.jsx)(b,{testId:`subscription-connect`,type:`button`,variant:`primary`,isDisabled:e||x,onClick:async()=>{try{let e=await r.mutateAsync();s(e),h(!0),be(e)}catch{d(t(l.SETTINGS$SUBSCRIPTION_CONNECT_ERROR))}},children:t(l.SETTINGS$SUBSCRIPTION_CONNECT)}),o?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{testId:`subscription-poll`,type:`button`,variant:`secondary`,isDisabled:e||x,onClick:async()=>{o&&(_(),C(o.deviceCode))},children:t(l.SETTINGS$SUBSCRIPTION_FINISH_SIGN_IN)}),(0,Q.jsx)(b,{testId:`subscription-cancel`,type:`button`,variant:`tertiary`,isDisabled:e||x,onClick:()=>{_(),s(null),h(!1)},children:t(l.BUTTON$CANCEL)})]}):null]})]})}var Se=e=>(0,Q.jsxs)(`svg`,{width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,...e,children:[(0,Q.jsx)(`path`,{d:`M9.9509 15.588H10.8349L16.5125 9.91042L15.6285 9.0264L10.3991 14.2681L8.00867 11.8777L7.12465 12.7617L9.9509 15.588Z`,fill:`currentColor`}),(0,Q.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M12.8521 3.29895C14.8443 3.42346 16.712 4.41954 18.0816 5.78916C19.7002 7.53231 20.5718 9.64898 20.5718 12.1392C20.5718 14.1314 19.8247 15.999 18.5796 17.6177C17.3345 19.1118 15.5914 20.2324 13.5992 20.6059C11.607 20.9794 9.61486 20.7304 7.87171 19.7343C6.12856 18.7382 4.75895 17.2441 4.01189 15.3765C3.26482 13.5088 3.14031 11.3921 3.76286 9.52447C4.38542 7.53231 5.50601 5.91367 7.24916 4.79308C8.86779 3.67248 10.86 3.17444 12.8521 3.29895ZM13.4747 19.3608C15.0933 18.9873 16.5874 18.1157 17.708 16.7461C18.7041 15.3765 19.3267 13.7578 19.2022 12.0147C19.2022 10.0225 18.4551 8.03035 17.0855 6.66073C15.8404 5.41563 14.3463 4.66857 12.6031 4.54405C10.9845 4.41954 9.24132 4.79308 7.87171 5.78916C6.50209 6.78524 5.50601 8.15486 5.00797 9.89801C4.50993 11.5166 4.50993 13.2598 5.25699 14.8784C6.00405 16.4971 7.12465 17.7422 8.61877 18.6137C10.1129 19.4853 11.856 19.7343 13.4747 19.3608Z`,fill:`currentColor`})]});function Ce({testId:e,isSet:t}){return(0,Q.jsx)(`span`,{"data-testid":e||(t?`set-indicator`:`unset-indicator`),children:(0,Q.jsx)(Se,{className:y(t?`text-success`:`text-danger`)})})}function we(){let e=a();return o({mutationFn:({name:e,newName:t})=>D.renameProfile(e,t),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function Te({profile:e,onClose:t}){let{t:n}=c(`openhands`),[r,i]=(0,Z.useState)(``),a=we(),o=(0,Z.useRef)(null);if((0,Z.useEffect)(()=>{i(e?.name??``)},[e?.name]),!e)return null;let s=Y(r,{isRequired:!0}),f=r===e.name,p=async()=>{if(!s){d(n(l.SETTINGS$PROFILE_NAME_RULE));return}if(f){t();return}try{await a.mutateAsync({name:e.name,newName:r}),u(n(l.SETTINGS$PROFILE_RENAMED,{name:r})),t()}catch(e){d(e instanceof Error?e.message:n(l.ERROR$GENERIC))}},m=()=>{a.isPending||t()},h=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{type:`button`,variant:`tertiary`,onClick:m,isDisabled:a.isPending,children:n(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`rename-profile-submit`,type:`button`,variant:`primary`,onClick:p,isDisabled:a.isPending||!s,children:a.isPending?(0,Q.jsx)(x,{size:`small`}):n(l.BUTTON$RENAME)})]});return(0,Q.jsx)(q,{isOpen:!0,title:n(l.SETTINGS$PROFILE_RENAME_TITLE),footer:h,onClose:m,initialFocusRef:o,children:(0,Q.jsx)(`div`,{"data-testid":`rename-profile-modal`,className:`flex flex-col gap-3`,children:(0,Q.jsx)(K,{ref:o,testId:`rename-profile-input`,ruleTestId:`rename-profile-rule`,value:r,onChange:i,isRequired:!0,onKeyDown:e=>{e.key===`Enter`&&!a.isPending&&s&&p()}})})})}function Ee(){let e=a();return o({mutationFn:e=>D.deleteProfile(e),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function De({profile:e,onClose:t}){let{t:n}=c(`openhands`),r=Ee(),i=(0,Z.useRef)(null);if(!e)return null;let a=async()=>{try{await r.mutateAsync(e.name),u(n(l.SETTINGS$PROFILE_DELETED,{name:e.name})),t()}catch(e){d(e instanceof Error?e.message:n(l.ERROR$GENERIC))}},o=()=>{r.isPending||t()},s=(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(b,{ref:i,type:`button`,variant:`tertiary`,onClick:o,isDisabled:r.isPending,children:n(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`delete-profile-confirm`,type:`button`,variant:`danger`,onClick:a,isDisabled:r.isPending,"aria-busy":r.isPending,children:r.isPending?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(x,{size:`small`}),(0,Q.jsx)(`span`,{className:`sr-only`,children:n(l.BUTTON$DELETE)})]}):n(l.BUTTON$DELETE)})]});return(0,Q.jsx)(q,{isOpen:!0,title:n(l.SETTINGS$PROFILE_DELETE_TITLE),footer:s,onClose:o,initialFocusRef:i,children:(0,Q.jsx)(`p`,{className:`text-sm break-all`,children:n(l.SETTINGS$PROFILE_DELETE_CONFIRMATION,{name:e.name})})})}var Oe=e(r(),1);function ke({onEdit:e,onRename:t,onDuplicate:n,onSetActive:r,onDelete:i,isActive:a,isActivating:o,onClose:s,anchorRef:u}){let{t:d}=c(`openhands`),f=(0,Z.useRef)(null),p=(0,Z.useRef)([]),m=u?.current??null,[h,g]=(0,Z.useState)();(0,Z.useLayoutEffect)(()=>{if(!m)return;let e=()=>{let e=m.getBoundingClientRect();e&&g({position:`fixed`,zIndex:9999,top:e.bottom+8,right:window.innerWidth-e.right,width:`max-content`})};return e(),window.addEventListener(`resize`,e),window.addEventListener(`scroll`,e,!0),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`scroll`,e,!0)}},[m]),(0,Z.useEffect)(()=>{p.current[0]?.focus()},[]),(0,Z.useEffect)(()=>{let e=e=>{let t=e.target;f.current&&!f.current.contains(t)&&s()},t=e=>{e.key===`Escape`&&s()};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[s]);let v=e=>{e(),s()},b=(0,Z.useCallback)((e,t)=>{if(e.key===`Tab`){s();return}let n=p.current.filter(Boolean).length;if(e.key===`ArrowDown`){e.preventDefault();let r=(t+1)%n;p.current[r]?.focus()}else if(e.key===`ArrowUp`){e.preventDefault();let r=(t-1+n)%n;p.current[r]?.focus()}},[s]),x=a||o,C=!!m,w=(0,Q.jsxs)(`div`,{ref:f,className:y(`absolute right-0 top-full z-10 mt-2 w-[160px] rounded-md border border-[var(--oh-border-subtle)] bg-tertiary px-1 py-1 shadow-lg`,S,C&&`!static !top-auto !bottom-auto !left-auto !right-auto !mt-0`),role:`menu`,"aria-orientation":`vertical`,"data-testid":`profile-actions-menu`,children:[(0,Q.jsx)(J,{index:0,icon:(0,Q.jsx)(R,{width:16,height:16}),label:d(l.SETTINGS$PROFILE_EDIT),onClick:()=>v(e),onKeyDown:b,menuItemsRef:p,testId:`profile-edit`}),(0,Q.jsx)(J,{index:1,icon:(0,Q.jsx)(pe,{"aria-hidden":!0,className:`size-4`,strokeWidth:2}),label:d(l.BUTTON$RENAME),onClick:()=>v(t),onKeyDown:b,menuItemsRef:p,testId:`profile-rename`}),(0,Q.jsx)(J,{index:2,icon:(0,Q.jsx)(_,{"aria-hidden":!0,className:`size-4`,strokeWidth:2}),label:d(l.BUTTON$DUPLICATE),onClick:()=>v(n),onKeyDown:b,menuItemsRef:p,testId:`profile-duplicate`}),(0,Q.jsx)(J,{index:3,icon:(0,Q.jsx)(se,{width:16,height:16}),label:d(l.SETTINGS$PROFILE_SET_DEFAULT),onClick:()=>v(r),onKeyDown:b,menuItemsRef:p,disabled:x,testId:`profile-set-active`}),(0,Q.jsx)(J,{index:4,icon:(0,Q.jsx)(I,{width:16,height:16}),label:d(l.BUTTON$DELETE),onClick:()=>v(i),onKeyDown:b,menuItemsRef:p,testId:`profile-delete`})]});return C?typeof document>`u`||!h?null:Oe.createPortal((0,Q.jsx)(`div`,{style:h,children:w}),document.body):w}function Ae({profile:e,isActive:t,canManage:n,onActivate:r,onEdit:i,onRename:a,onDuplicate:o,onDelete:s,isActivating:u}){let{t:d}=c(`openhands`),[f,p]=(0,Z.useState)(!1),m=(0,Z.useRef)(null);return(0,Q.jsxs)(`div`,{"data-testid":`profile-row`,className:y(ce,`justify-between gap-3`),children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,Q.jsx)(`span`,{className:`min-w-0 max-w-full truncate text-sm font-medium text-white`,title:e.name,children:e.name}),e.model?(0,Q.jsx)(`span`,{className:`min-w-0 max-w-full truncate text-sm text-[var(--oh-muted)]`,title:e.model,children:e.model}):null,t&&(0,Q.jsx)(ie,{className:`shrink-0 whitespace-nowrap px-2.5 py-1 text-xs`,"data-testid":`profile-active-badge`,children:d(l.SETTINGS$PROFILE_DEFAULT)})]}),n&&(0,Q.jsxs)(`div`,{className:`relative shrink-0`,children:[(0,Q.jsx)(L,{ref:m,onClick:()=>p(e=>!e),ariaLabel:d(l.SETTINGS$PROFILE_MENU),testId:`profile-menu-trigger`,className:ue}),f&&(0,Q.jsx)(ke,{anchorRef:m,onEdit:()=>i(e),onRename:()=>a(e),onDuplicate:()=>o(e),onSetActive:()=>r(e.name),onDelete:()=>s(e),isActive:t,isActivating:u,onClose:()=>p(!1)})]})]})}function je({isLoading:e,loadError:t,profiles:n,active:r,canManage:i,onActivate:a,onEdit:o,onRename:s,onDuplicate:u,onDelete:d,isActivating:f}){let{t:p}=c(`openhands`);return e?(0,Q.jsx)(`div`,{className:`flex justify-center p-4`,children:(0,Q.jsx)(x,{size:`large`})}):t?(0,Q.jsx)(`div`,{"data-testid":`profiles-load-error`,className:G,children:(0,Q.jsx)(`p`,{className:`text-sm text-red-400`,children:p(l.SETTINGS$PROFILES_LOAD_ERROR)})}):n.length===0?(0,Q.jsx)(`div`,{"data-testid":`profiles-empty`,className:G,children:(0,Q.jsx)(`p`,{className:`text-sm text-[var(--oh-muted)]`,children:p(l.SETTINGS$PROFILES_EMPTY)})}):(0,Q.jsx)(`div`,{className:y(de,le),children:n.map(e=>(0,Q.jsx)(Ae,{profile:e,isActive:e.name===r,canManage:i,onActivate:a,onEdit:o,onRename:s,onDuplicate:u,onDelete:d,isActivating:f},e.name))})}function $(){let e=a();return o({mutationFn:({name:e,request:t})=>D.saveProfile(e,t),onSuccess:async()=>{T.invalidateCache(),await e.invalidateQueries({queryKey:m.all}),await e.invalidateQueries({queryKey:p.personal()})},meta:{disableToast:!0}})}function Me({onAddProfile:e,onEditProfile:t}){let{t:n}=c(`openhands`),{data:r,isLoading:i,error:a}=F(),o=X(),s=$(),f=oe(),[p,m]=(0,Z.useState)(null),[h,g]=(0,Z.useState)(null),_=r?.profiles??[],v=r?.active_profile??null;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Q.jsx)(`h2`,{className:`text-base font-medium text-white`,children:n(l.SETTINGS$AVAILABLE_PROFILES)}),e&&f?(0,Q.jsx)(b,{testId:`add-llm-profile`,type:`button`,variant:`secondary`,className:`ml-auto`,onClick:e,children:n(l.SETTINGS$ADD_LLM_PROFILE)}):null]}),(0,Q.jsx)(je,{isLoading:i,loadError:a??null,profiles:_,active:v,canManage:f,onActivate:async e=>{try{await o.mutateAsync(e),u(n(l.SETTINGS$PROFILE_ACTIVATED,{name:e}))}catch(e){console.error(`Failed to activate profile:`,e),d(n(l.ERROR$GENERIC))}},onEdit:e=>{t?.(e)},onRename:m,onDuplicate:async e=>{try{let t=await D.getProfile(e.name,`encrypted`),r=new Set(_.map(e=>e.name)),i=`${e.name}-copy`,a=1;for(;r.has(i);)i=`${e.name}-copy-${a}`,a+=1;await s.mutateAsync({name:i,request:{llm:t.config,include_secrets:!0}}),u(n(l.SETTINGS$PROFILE_DUPLICATED,{name:i}))}catch(e){console.error(`Failed to duplicate profile:`,e),d(n(l.ERROR$GENERIC))}},onDelete:g,isActivating:o.isPending})]}),(0,Q.jsx)(Te,{profile:p,onClose:()=>m(null)}),(0,Q.jsx)(De,{profile:h,onClose:()=>g(null)})]})}function Ne({activeProfileName:e,originalName:t,savedName:n}){return e?t?e===t:e===n:!1}function Pe(){let{t:e}=c(`openhands`),{setHideSectionHeader:t}=fe(),n=$(),r=X(),{data:i}=F(),{data:a}=E(),{data:o}=H(a?.agent_settings_schema),s=(0,Z.useRef)(o);s.current=o;let[f,p]=(0,Z.useState)(`list`),[m,h]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(null),[y,x]=(0,Z.useState)(null),[S,C]=(0,Z.useState)(!1);(0,Z.useEffect)(()=>(t(f!==`list`),()=>t(!1)),[f,t]);let w=(0,Z.useMemo)(()=>new Set(i?.profiles.map(e=>e.name)??[]),[i]),T=(0,Z.useMemo)(()=>!(!Y(m,{isRequired:!0})||f===`create`&&w.has(m)||f===`edit`&&m!==_?.profile.name&&w.has(m)),[m,f,w,_?.profile.name]),P=(0,Z.useCallback)(()=>{h(``),v(null),p(`create`)},[]),I=(0,Z.useCallback)(async t=>{try{let e=(await D.getProfile(t.name,`encrypted`)).config??{},n=s.current?.sections.find(e=>e.key===`llm`)?.fields??[],r={};for(let t of n){let n=t.key.startsWith(`llm.`)?t.key.slice(4):t.key;r[t.key]=ee(t,e[n])}n.length===0&&(r[`llm.model`]=e.model??``,r[`llm.api_key`]=e.api_key??``,r[`llm.base_url`]=e.base_url??``,r[A]=j(e.auth_type),r[O]=e.subscription_vendor??`openai`),v({profile:t,initialValues:r,baseConfig:e}),h(t.name),p(`edit`)}catch(t){console.error(`Failed to fetch profile details:`,t),d(e(l.ERROR$GENERIC))}},[e]),L=(0,Z.useCallback)(()=>{p(`list`),v(null),h(``),x(null)},[]),R=(0,Z.useCallback)(e=>{if(x(e),f===`create`&&!m){let t=e.values[`llm.model`];if(typeof t==`string`&&t){let e=ae(t);w.has(e)||h(e)}}},[f,m,w]),z=(0,Z.useCallback)(async()=>{if(!y||!T)return;let t;try{t=y.getDirtyPayload().llm??{}}catch(t){d(t instanceof Error?t.message:e(l.ERROR$GENERIC));return}let a=f===`edit`&&_?.baseConfig?{..._.baseConfig}:{},o=y.view===`basic`&&Object.prototype.hasOwnProperty.call(t,`model`)&&t.model!==a.model,s={...a,...t};if(j(s.auth_type)===`subscription`)s.auth_type=M,s.subscription_vendor=k,delete s.api_key,delete s.base_url;else if(s.auth_type=N,s.subscription_vendor=null,o&&delete s.base_url,typeof s.api_key!=`string`||s.api_key.trim()===``){let e=typeof a.api_key==`string`?a.api_key:``;e?s.api_key=e:delete s.api_key}if(!(typeof s.model==`string`&&s.model)){d(e(l.SETTINGS$MODEL_REQUIRED));return}let c=m.trim(),p=_?.profile.name,h=f===`edit`&&p&&p!==c,g=Ne({activeProfileName:i?.active_profile,originalName:p,savedName:c});C(!0);try{h&&await D.renameProfile(p,c),await n.mutateAsync({name:c,request:{llm:s,include_secrets:!0}}),g&&await r.mutateAsync(c),u(e(f===`create`?l.SETTINGS$PROFILE_CREATED:l.SETTINGS$PROFILE_UPDATED,{name:c})),L()}catch(t){console.error(`Failed to save profile:`,t),d(e(l.ERROR$GENERIC))}finally{C(!1)}},[y,T,m,f,_,i?.active_profile,n,r,e,L]);if(f===`list`)return(0,Q.jsx)(Me,{onAddProfile:P,onEditProfile:I});let B=e(f===`edit`?l.SETTINGS$EDIT_LLM_PROFILE:l.SETTINGS$ADD_LLM_PROFILE),V=f===`edit`&&_?e(l.SETTINGS$PROFILE_LOADED,{name:_.profile.name}):e(l.SETTINGS$PROFILE_SAVE_HINT);return(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Q.jsx)(g,{testId:`back-to-profiles`,onClick:L,children:e(l.BUTTON$BACK)}),(0,Q.jsx)(W.H2,{testId:`profile-editor-title`,children:B}),(0,Q.jsx)(`p`,{"data-testid":`profile-editor-description`,className:`text-sm leading-5 text-tertiary-light`,children:V})]}),(0,Q.jsx)(K,{testId:`profile-name-input`,value:m,onChange:h,isRequired:!0}),(0,Q.jsx)(Ue,{embedded:!0,hideSaveButton:!0,initialValueOverrides:f===`edit`&&_?.initialValues?_.initialValues:{"llm.model":``,"llm.api_key":``,"llm.base_url":``,[A]:N,[O]:k},onSaveControlChange:R},f===`edit`?`edit-${_?.profile.name}`:`new-profile`),(0,Q.jsxs)(`div`,{className:`flex justify-start gap-3 pt-4`,children:[(0,Q.jsx)(b,{testId:`cancel-profile-btn`,type:`button`,variant:`secondary`,onClick:L,children:e(l.BUTTON$CANCEL)}),(0,Q.jsx)(b,{testId:`save-profile-btn`,type:`button`,variant:`primary`,onClick:z,isDisabled:!T||S||!y,"aria-busy":S,children:e(S?l.STATUS$SAVING:l.BUTTON$SAVE)})]})]})}function Fe({enabled:e=!0}={}){return s({queryKey:f.openaiModels,queryFn:P.getOpenAIModels,enabled:e,retry:!1,refetchOnWindowFocus:!1,staleTime:1e3*60*5,meta:{disableToast:!0}})}var Ie=new Set([`llm.model`,`llm.api_key`,`llm.base_url`,A,O]),Le=(e,t)=>!e||!t?null:`${e}/${t}`,Re=(e,t)=>e?.sections.flatMap(e=>e.fields).find(e=>e.key===t)?.default??null,ze={openai:new Set([`https://api.openai.com`,`https://api.openai.com/v1`]),moonshot:new Set([`https://api.kimi.com/coding/v1`])},Be=e=>{try{let t=new URL(e),n=t.pathname.replace(/\/+$/,``)||``;return`${t.origin}${n}`}catch{return e.trim().replace(/\/+$/,``)}},Ve=(e,t)=>{let n=Be(t),{provider:r}=z(e);if(r){let e=ze[r];if(e)return e.has(n)}return Object.values(ze).some(e=>e?.has(n))};function He({testId:e}){let{t}=c(`openhands`);return(0,Q.jsx)(V,{testId:e,text:t(l.SETTINGS$OPENHANDS_API_KEY_HELP_TEXT),linkText:t(l.SETTINGS$NAV_API_KEYS),href:`https://app.all-hands.dev/settings/api-keys`,suffix:` ${t(l.SETTINGS$OPENHANDS_API_KEY_HELP_SUFFIX)}`})}function Ue({scope:e=`personal`,onSaveSuccess:t,initialValueOverrides:n,embedded:r,hideSaveButton:i,suppressSuccessToast:a,onSaveControlChange:o}){let{t:s}=c(`openhands`),{data:u}=E(e),{data:d}=H(u?.agent_settings_schema),f=u?.agent_settings?.llm,p=j(n?.[`llm.auth_type`]??f?.auth_type),[m,h]=Z.useState(p===M),{data:g,isLoading:_,isFetching:v}=Fe({enabled:m}),y=m&&!g&&(_||v),b=Z.useRef(null),x=Z.useRef(null);Z.useEffect(()=>{p===`subscription`&&h(!0)},[p]);let S=String(w.agent_settings?.llm?.model??``),T=Z.useCallback((e,t)=>{let n=te(e,t);if(n!==`basic`)return n;let r=e.llm_model??``,i=e.llm_base_url?.trim()??``;return i.length>0&&!Ve(r,i)?`all`:`basic`},[]),D=Z.useCallback(({values:e,isDisabled:t,view:n,onChange:i})=>{let a=typeof e[`llm.model`]==`string`?e[`llm.model`]:``,o=typeof e[`llm.base_url`]==`string`?e[`llm.base_url`]:``,c=a.startsWith(`openhands/`),d=j(e[A]),f=d===M,p=t||f&&y,m=g?.includes(a)?a:g?.[0]??``,_=typeof e[`llm.api_key`]==`string`?e[`llm.api_key`]:``,v=r?_.length>0:!!u?.llm_api_key_set,w=(e,n)=>(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(C,{testId:e,label:s(l.SETTINGS_FORM$API_KEY),type:`password`,className:`w-full`,value:_,placeholder:v?`<hidden>`:``,onChange:e=>i(`llm.api_key`,e),isDisabled:t,startContent:v?(0,Q.jsx)(Ce,{isSet:v}):void 0}),(0,Q.jsx)(V,{testId:n,text:s(l.SETTINGS$DONT_KNOW_API_KEY),linkText:s(l.SETTINGS$CLICK_FOR_INSTRUCTIONS),href:`https://docs.openhands.dev/usage/local-setup#getting-an-api-key`})]}),T=e=>{let t=e===`subscription`?M:N;if(i(A,t),t===`subscription`){h(!0),a&&!g?.includes(a)&&(b.current=a);let e=x.current&&g?.includes(x.current)?x.current:g?.[0];i(O,k),!g?.includes(a)&&e&&i(`llm.model`,e);return}a&&g?.includes(a)&&(x.current=a,i(`llm.model`,b.current??S))},E=()=>(0,Q.jsx)(U,{testId:`llm-auth-type-input`,name:A,label:s(l.SETTINGS$LLM_AUTH_TYPE),items:[{key:N,label:s(l.SETTINGS$LLM_AUTH_TYPE_API_KEY)},{key:M,label:s(l.SETTINGS$LLM_AUTH_TYPE_SUBSCRIPTION)}],selectedKey:d,isClearable:!1,required:!0,isDisabled:p,onSelectionChange:T}),D=()=>(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-subscription-settings`,children:[(0,Q.jsx)(U,{testId:`llm-subscription-model-input`,name:`llm.subscription_model`,label:s(l.SETTINGS$SUBSCRIPTION_MODEL),items:(g??[]).map(e=>({key:e,label:e})),selectedKey:m,isClearable:!1,required:!0,isDisabled:p||!g?.length,onSelectionChange:e=>{let t=typeof e==`string`?e:g?.[0];t&&i(`llm.model`,t)}}),(0,Q.jsx)(xe,{isDisabled:t})]});return(0,Q.jsx)(`div`,{className:`flex flex-col gap-6`,children:n===`basic`?(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-settings-form-basic`,children:[E(),f?D():(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(B,{currentModel:a||void 0,onChange:(e,t)=>{let n=Le(e,t);n&&i(`llm.model`,n)},wrapperClassName:`!flex-col !gap-6`,isDisabled:t}),c?(0,Q.jsx)(He,{testId:`openhands-api-key-help`}):null,w(`llm-api-key-input`,`llm-api-key-help-anchor`)]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-6`,"data-testid":`llm-settings-form-advanced`,children:[E(),f?D():(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(C,{testId:`llm-custom-model-input`,label:s(l.SETTINGS$CUSTOM_MODEL),type:`text`,className:`w-full`,value:a,placeholder:S,onChange:e=>i(`llm.model`,e),isDisabled:t}),c?(0,Q.jsx)(He,{testId:`openhands-api-key-help-2`}):null,(0,Q.jsx)(C,{testId:`base-url-input`,label:s(l.SETTINGS$BASE_URL),type:`text`,className:`w-full`,value:o,placeholder:`https://api.openai.com`,onChange:e=>i(`llm.base_url`,e),isDisabled:t}),w(`llm-api-key-input`,`llm-api-key-help-anchor-advanced`)]})]})})},[S,r,y,u?.llm_api_key_set,g,s]),P=Z.useCallback((e,t)=>{let n=structuredClone(e.agent_settings_diff??{}),r=n.llm??{};if(j(t.values[`llm.auth_type`])===`subscription`){r.auth_type=M,r.subscription_vendor=k;let e=typeof r.model==`string`?r.model:String(t.values[`llm.model`]??``),n=g?.[0];if(!g?.includes(e)&&!n)throw Error(`Subscription models are not loaded yet.`);r.model=g?.includes(e)?e:n,delete r.api_key,delete r.base_url}else t.dirty[`llm.auth_type`]&&(r.auth_type=N,r.subscription_vendor=null),t.view===`basic`&&r.model!==void 0&&(r.base_url=Re(d,`llm.base_url`));return n.llm=r,{agent_settings_diff:n}},[d,g]);return(0,Q.jsx)(re,{scope:e,settingsSources:[{settingsSource:`agent_settings`,sectionKeys:[`llm`],excludeKeys:Ie}],header:D,buildPayload:P,getInitialView:T,forceShowAdvancedView:!0,allowAllView:!0,onSaveSuccess:t,initialValueOverrides:n,embedded:r,hideSaveButton:i,suppressSuccessToast:a,onSaveControlChange:o,testId:`llm-settings-screen`})}var We=i(function(){return(0,Q.jsx)(Pe,{})});export{X as i,We as n,$ as r,Ue as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./llm-settings-Cs_iieFY.js";export{e as default};
@@ -1 +1 @@
1
- import{d as e}from"./agent-server-compatibility-D6DSanlx.js";import{c as t,d as n,l as r,o as i,s as a,u as o}from"./llm-subscription-BkdHwtQe.js";function s(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var c=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`&&t.trim().length>0)return t.trim()}return null},l=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`number`&&Number.isFinite(t))return t}return null},u=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`boolean`)return t}return!1};async function d(t,n={}){let{host:r,apiKey:i}=e(),a=new Headers(n.headers);a.set(`Accept`,`application/json`),n.body&&!a.has(`Content-Type`)&&a.set(`Content-Type`,`application/json`),i&&a.set(`X-Session-API-Key`,i);let o=await fetch(`${r}${t}`,{...n,headers:a});if(!o.ok)throw Error(`Subscription request failed with ${o.status}`);return o.json()}function f(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):s(e)&&Array.isArray(e.models)?e.models.filter(e=>typeof e==`string`):[]}function p(e){return{vendor:n,connected:u(e,[`connected`,`authenticated`,`is_connected`]),accountEmail:c(e,[`account_email`,`email`,`account`]),expiresAt:c(e,[`expires_at`,`expiresAt`])??l(e,[`expires_at`,`expiresAt`])}}function m(e){let t=c(e,[`device_code`,`deviceCode`]),n=c(e,[`user_code`,`userCode`]),r=c(e,[`verification_uri`,`verificationUri`,`verification_url`,`verificationUrl`]);if(!t||!n||!r)throw Error(`Subscription device login response is incomplete`);return{deviceCode:t,userCode:n,verificationUri:r,verificationUriComplete:c(e,[`verification_uri_complete`,`verificationUriComplete`,`verification_url_complete`,`verificationUrlComplete`]),expiresAt:c(e,[`expires_at`,`expiresAt`])??l(e,[`expires_at`,`expiresAt`,`expires_in`,`expiresIn`]),intervalSeconds:l(e,[`interval`,`interval_seconds`,`intervalSeconds`])}}var h=class{static async getOpenAIModels(){return f(await d(r))}static async getOpenAIStatus(){return p(await d(o))}static async startOpenAIDeviceLogin(){return m(await d(a,{method:`POST`}))}static async pollOpenAIDeviceLogin(e){return p(await d(i,{method:`POST`,body:JSON.stringify({device_code:e})}))}static async logoutOpenAI(){return p(await d(t,{method:`POST`}))}};export{h as t};
1
+ import{d as e}from"./agent-server-compatibility-C0MtTTwb.js";import{c as t,d as n,l as r,o as i,s as a,u as o}from"./llm-subscription-DtsX5Lhg.js";function s(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var c=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`&&t.trim().length>0)return t.trim()}return null},l=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`number`&&Number.isFinite(t))return t}return null},u=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`boolean`)return t}return!1};async function d(t,n={}){let{host:r,apiKey:i}=e(),a=new Headers(n.headers);a.set(`Accept`,`application/json`),n.body&&!a.has(`Content-Type`)&&a.set(`Content-Type`,`application/json`),i&&a.set(`X-Session-API-Key`,i);let o=await fetch(`${r}${t}`,{...n,headers:a});if(!o.ok)throw Error(`Subscription request failed with ${o.status}`);return o.json()}function f(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):s(e)&&Array.isArray(e.models)?e.models.filter(e=>typeof e==`string`):[]}function p(e){return{vendor:n,connected:u(e,[`connected`,`authenticated`,`is_connected`]),accountEmail:c(e,[`account_email`,`email`,`account`]),expiresAt:c(e,[`expires_at`,`expiresAt`])??l(e,[`expires_at`,`expiresAt`])}}function m(e){let t=c(e,[`device_code`,`deviceCode`]),n=c(e,[`user_code`,`userCode`]),r=c(e,[`verification_uri`,`verificationUri`,`verification_url`,`verificationUrl`]);if(!t||!n||!r)throw Error(`Subscription device login response is incomplete`);return{deviceCode:t,userCode:n,verificationUri:r,verificationUriComplete:c(e,[`verification_uri_complete`,`verificationUriComplete`,`verification_url_complete`,`verificationUrlComplete`]),expiresAt:c(e,[`expires_at`,`expiresAt`])??l(e,[`expires_at`,`expiresAt`,`expires_in`,`expiresIn`]),intervalSeconds:l(e,[`interval`,`interval_seconds`,`intervalSeconds`])}}var h=class{static async getOpenAIModels(){return f(await d(r))}static async getOpenAIStatus(){return p(await d(o))}static async startOpenAIDeviceLogin(){return m(await d(a,{method:`POST`}))}static async pollOpenAIDeviceLogin(e){return p(await d(i,{method:`POST`,body:JSON.stringify({device_code:e})}))}static async logoutOpenAI(){return p(await d(t,{method:`POST`}))}};export{h as t};
@@ -1 +1 @@
1
- import{a as e,r as t}from"./rolldown-runtime-BFRubm34.js";import{Ct as n,bt as r}from"./vendor-styling-CI0PQ3ab.js";import{t as i}from"./useQuery-D5pEZbY0.js";import{t as a}from"./useTranslation-Cbf5AGg_.js";import{t as o}from"./declaration-BGsHjPEW.js";import{r as s}from"./active-backend-context-BCXRv5pm.js";import{t as c}from"./pencil-CWhApFIT.js";import{n as l,t as u}from"./refresh-cw-B9B7-vsy.js";import{t as d}from"./trash-2-BU6BlW4i.js";import{t as f}from"./utils-DB9LsAzA.js";import{F as p,d as m,r as h}from"./agent-server-compatibility-D6DSanlx.js";import{y as g}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-BIieS_OD.js";import{a as _,n as v,r as y}from"./use-backends-health-DKt1SmiU.js";import{t as b}from"./modal-backdrop-Dsmzgr5s.js";import{r as x,t as S}from"./modal-body-CDZdZ-eT.js";import{n as C}from"./modal-classes-B4oit_4c.js";import{t as w}from"./brand-button-2Tp3aXk1.js";import{n as T,t as E}from"./use-cloud-current-user-id-C8m1oBy4.js";import{a as D,o as O,r as k,s as A}from"./backend-form-modal-DhBT8P4g.js";import{t as j}from"./modal-close-button-DQElFMPo.js";import{t as M}from"./confirmation-modal-4n_944zq.js";var N=e(n(),1),P=r();function F({backend:e}){let{t}=a(`openhands`),{data:n}=i({queryKey:[`backend-version`,e.host,e.apiKey],queryFn:async()=>h(await new g(m({host:e.host,sessionApiKey:e.apiKey||null,timeout:5e3})).getServerInfo()),retry:!1,staleTime:6e4,enabled:e.kind===`local`});return n?(0,P.jsx)(`span`,{className:`inline-flex shrink-0 items-center rounded-full border border-[var(--oh-border)] bg-[var(--oh-surface)] px-1.5 py-0.5 text-[10px] font-medium leading-none text-[var(--oh-text-dim)]`,"data-testid":`manage-backends-version-${e.name}`,children:t(o.BACKEND$VERSION_LABEL,{version:n})}):null}var I=`inline-flex cursor-pointer items-center justify-center rounded-md p-1 text-muted transition-colors hover:bg-interactive-hover hover:text-white`;function L({backend:e,health:t,orgLabel:n,onSelect:r,onEdit:i,onRemove:s,onLogin:l}){let{t:m}=a(`openhands`),h=y(t?.lastError),g=e.kind===`cloud`&&v(t?.lastError),_=!h&&!g&&t?.isConnected===!1&&t.lastError?t.lastError:null,b=g?m(o.BACKEND$LOGGED_OUT):A(m,e,t),x=t?.isConnected===!0?`text-green-300`:t?.isConnected===!1?`text-red-300`:`text-[var(--oh-muted)]`,S=h?!1:t?.isConnected??null,C=t?.isConnected===!0&&!h,w=p();return(0,P.jsxs)(`li`,{className:`flex items-stretch`,"data-testid":`manage-backends-row-${e.name}`,children:[(0,P.jsxs)(`button`,{type:`button`,disabled:!C,onClick:r,className:f(`flex min-w-0 flex-1 items-center gap-3 px-3 py-3 text-left`,C?`cursor-pointer transition-colors hover:bg-interactive-hover focus-visible:bg-interactive-hover focus-visible:outline-none`:`cursor-default`),children:[(0,P.jsx)(O,{isConnected:S}),(0,P.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,P.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,P.jsx)(`span`,{className:`truncate text-sm text-white`,children:e.name}),(0,P.jsx)(F,{backend:e})]}),n?(0,P.jsx)(`span`,{"data-testid":`manage-backends-org-${e.name}`,className:`truncate text-xs text-[var(--oh-text-secondary)]`,children:n}):null,(0,P.jsx)(`span`,{className:`truncate text-xs text-[var(--oh-muted)]`,children:e.host}),(0,P.jsx)(`span`,{"data-testid":`manage-backends-status-${e.name}`,className:f(`truncate text-xs`,x),children:b}),_?(0,P.jsx)(`span`,{"data-testid":`manage-backends-status-detail-${e.name}`,title:_,className:`text-xs text-red-300/80 whitespace-normal break-words`,children:_}):null]}),(0,P.jsx)(`span`,{className:`px-2 py-1 rounded-full text-[11px] uppercase tracking-wide text-[var(--oh-text-tertiary)] bg-[var(--oh-surface)] border border-[var(--oh-border)]`,children:e.kind===`cloud`?m(o.BACKEND$KIND_CLOUD):m(o.BACKEND$KIND_LOCAL)})]}),(0,P.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 px-3 py-3`,children:[g&&l?(0,P.jsx)(D,{host:e.host,onSuccess:l,testIdRoot:`manage-backends-login-${e.id}`,idleButtonLabel:m(o.BACKEND$LOG_BACK_IN),idleButtonContent:(0,P.jsx)(u,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),className:`w-auto`,buttonVariant:`unstyled`,buttonClassName:I,statusDisplay:`modal`,analyticsSource:`manage_backends_modal`}):null,!w&&(0,P.jsx)(`button`,{type:`button`,onClick:i,"aria-label":m(o.BACKEND$EDIT),"data-testid":`manage-backends-edit-${e.name}`,className:I,children:(0,P.jsx)(c,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})}),!w&&(0,P.jsx)(`button`,{type:`button`,onClick:s,"aria-label":m(o.BACKEND$REMOVE),"data-testid":`manage-backends-remove-${e.name}`,className:I,children:(0,P.jsx)(d,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})})]})]})}var R=t({ManageBackendsModal:()=>B});function z(e,t,n,r){if(e.kind!==`cloud`)return;let i=t[e.id];if(!i||i.orgs.length===0)return;let a=n[e.id]?.userId??null;return i.orgs.map(e=>a&&a===e.id?r:e.name).join(`, `)}function B({onClose:e,recoveryMode:t=!1}){let{t:n}=a(`openhands`),{backends:r,active:i,removeBackend:c,setActive:u,updateBackend:d}=s(),p=_(r,{probeDisabledOnce:!0}),m=T(),h=E(),g=n(o.BACKEND$PERSONAL_WORKSPACE),[v,y]=N.useState(null),[D,O]=N.useState(null),[A,F]=N.useState(!1),I=()=>{v&&(c(v.id),y(null))},R=N.useCallback(t=>{(i.backend.id!==t.id||i.orgId!==null)&&u(t.id),e()},[i.backend.id,i.orgId,e,u]),B=N.useCallback((e,t)=>{d(e.id,{apiKey:t})},[d]);return(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(b,{onClose:t?void 0:e,closeOnEscape:!t,closeOnBackdropClick:!t,"aria-label":n(o.BACKEND$MANAGE_TITLE),children:(0,P.jsxs)(`div`,{"data-testid":`manage-backends-modal`,className:f(`relative flex flex-col bg-[var(--oh-surface)] border border-[var(--oh-border)] rounded-xl`,x(`lg`),S,`max-h-[70vh]`),children:[t?null:(0,P.jsx)(j,{onClose:e,testId:`close-manage-backends-modal`}),(0,P.jsx)(`div`,{className:f(`p-5`,!t&&`pr-12`),children:(0,P.jsx)(`h2`,{className:C,children:n(o.BACKEND$MANAGE_TITLE)})}),(0,P.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-5`,children:(0,P.jsx)(`div`,{className:`flex-1 overflow-auto rounded-md border border-[var(--oh-border)] bg-surface-raised custom-scrollbar-always`,"data-testid":`manage-backends-list`,children:r.length===0?(0,P.jsx)(`p`,{className:`px-3 py-6 text-center text-sm text-[var(--oh-text-secondary)]`,children:n(o.BACKEND$MANAGE_EMPTY)}):(0,P.jsx)(`ul`,{className:`divide-y divide-[var(--oh-border)]`,children:r.map(e=>(0,P.jsx)(L,{backend:e,health:p[e.id],orgLabel:z(e,m,h,g),onSelect:()=>R(e),onEdit:()=>O(e),onRemove:()=>y({id:e.id,name:e.name}),onLogin:t=>B(e,t)},e.id))})})}),(0,P.jsxs)(`div`,{className:`flex justify-end gap-2 p-5`,children:[(0,P.jsx)(w,{type:`button`,variant:t?`primary`:`secondary`,onClick:()=>F(!0),testId:`manage-backends-add`,startContent:(0,P.jsx)(l,{width:14,height:14}),children:n(o.BACKEND$ADD)}),t?null:(0,P.jsx)(w,{type:`button`,variant:`primary`,onClick:e,testId:`manage-backends-done`,children:n(o.HOME$DONE)})]})]})}),A?(0,P.jsx)(k,{mode:`add`,source:`manage_backends_modal`,onClose:()=>F(!1)}):null,D?(0,P.jsx)(k,{mode:`edit`,backend:D,onClose:()=>O(null)}):null,v?(0,P.jsx)(M,{text:n(o.BACKEND$REMOVE_CONFIRMATION,{name:v.name}),onConfirm:I,onCancel:()=>y(null)}):null]})}export{R as n,B as t};
1
+ import{a as e,r as t}from"./rolldown-runtime-BFRubm34.js";import{Ct as n,bt as r}from"./vendor-styling-CI0PQ3ab.js";import{t as i}from"./useQuery-D5pEZbY0.js";import{t as a}from"./useTranslation-Cbf5AGg_.js";import{t as o}from"./declaration-BGsHjPEW.js";import{r as s}from"./active-backend-context-DHhm10VS.js";import{t as c}from"./pencil-CWhApFIT.js";import{n as l,t as u}from"./refresh-cw-B9B7-vsy.js";import{t as d}from"./trash-2-BU6BlW4i.js";import{t as f}from"./utils-DB9LsAzA.js";import{F as p,d as m,r as h}from"./agent-server-compatibility-C0MtTTwb.js";import{y as g}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js";import{a as _,n as v,r as y}from"./use-backends-health-BagmAE_W.js";import{t as b}from"./modal-backdrop-zVwfOJZr.js";import{r as x,t as S}from"./modal-body-Cc2zp0xb.js";import{n as C}from"./modal-classes-3qT9Ap7Q.js";import{t as w}from"./brand-button-B1izLAdR.js";import{n as T,t as E}from"./use-cloud-current-user-id-BwMX7jHW.js";import{a as D,o as O,r as k,s as A}from"./backend-form-modal-B8GtBA-J.js";import{t as j}from"./modal-close-button-BcIBUdSq.js";import{t as M}from"./confirmation-modal-DGBWM2Ls.js";var N=e(n(),1),P=r();function F({backend:e}){let{t}=a(`openhands`),{data:n}=i({queryKey:[`backend-version`,e.host,e.apiKey],queryFn:async()=>h(await new g(m({host:e.host,sessionApiKey:e.apiKey||null,timeout:5e3})).getServerInfo()),retry:!1,staleTime:6e4,enabled:e.kind===`local`});return n?(0,P.jsx)(`span`,{className:`inline-flex shrink-0 items-center rounded-full border border-[var(--oh-border)] bg-[var(--oh-surface)] px-1.5 py-0.5 text-[10px] font-medium leading-none text-[var(--oh-text-dim)]`,"data-testid":`manage-backends-version-${e.name}`,children:t(o.BACKEND$VERSION_LABEL,{version:n})}):null}var I=`inline-flex cursor-pointer items-center justify-center rounded-md p-1 text-muted transition-colors hover:bg-interactive-hover hover:text-white`;function L({backend:e,health:t,orgLabel:n,onSelect:r,onEdit:i,onRemove:s,onLogin:l}){let{t:m}=a(`openhands`),h=y(t?.lastError),g=e.kind===`cloud`&&v(t?.lastError),_=!h&&!g&&t?.isConnected===!1&&t.lastError?t.lastError:null,b=g?m(o.BACKEND$LOGGED_OUT):A(m,e,t),x=t?.isConnected===!0?`text-green-300`:t?.isConnected===!1?`text-red-300`:`text-[var(--oh-muted)]`,S=h?!1:t?.isConnected??null,C=t?.isConnected===!0&&!h,w=p();return(0,P.jsxs)(`li`,{className:`flex items-stretch`,"data-testid":`manage-backends-row-${e.name}`,children:[(0,P.jsxs)(`button`,{type:`button`,disabled:!C,onClick:r,className:f(`flex min-w-0 flex-1 items-center gap-3 px-3 py-3 text-left`,C?`cursor-pointer transition-colors hover:bg-interactive-hover focus-visible:bg-interactive-hover focus-visible:outline-none`:`cursor-default`),children:[(0,P.jsx)(O,{isConnected:S}),(0,P.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,P.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,P.jsx)(`span`,{className:`truncate text-sm text-white`,children:e.name}),(0,P.jsx)(F,{backend:e})]}),n?(0,P.jsx)(`span`,{"data-testid":`manage-backends-org-${e.name}`,className:`truncate text-xs text-[var(--oh-text-secondary)]`,children:n}):null,(0,P.jsx)(`span`,{className:`truncate text-xs text-[var(--oh-muted)]`,children:e.host}),(0,P.jsx)(`span`,{"data-testid":`manage-backends-status-${e.name}`,className:f(`truncate text-xs`,x),children:b}),_?(0,P.jsx)(`span`,{"data-testid":`manage-backends-status-detail-${e.name}`,title:_,className:`text-xs text-red-300/80 whitespace-normal break-words`,children:_}):null]}),(0,P.jsx)(`span`,{className:`px-2 py-1 rounded-full text-[11px] uppercase tracking-wide text-[var(--oh-text-tertiary)] bg-[var(--oh-surface)] border border-[var(--oh-border)]`,children:e.kind===`cloud`?m(o.BACKEND$KIND_CLOUD):m(o.BACKEND$KIND_LOCAL)})]}),(0,P.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 px-3 py-3`,children:[g&&l?(0,P.jsx)(D,{host:e.host,onSuccess:l,testIdRoot:`manage-backends-login-${e.id}`,idleButtonLabel:m(o.BACKEND$LOG_BACK_IN),idleButtonContent:(0,P.jsx)(u,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),className:`w-auto`,buttonVariant:`unstyled`,buttonClassName:I,statusDisplay:`modal`,analyticsSource:`manage_backends_modal`}):null,!w&&(0,P.jsx)(`button`,{type:`button`,onClick:i,"aria-label":m(o.BACKEND$EDIT),"data-testid":`manage-backends-edit-${e.name}`,className:I,children:(0,P.jsx)(c,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})}),!w&&(0,P.jsx)(`button`,{type:`button`,onClick:s,"aria-label":m(o.BACKEND$REMOVE),"data-testid":`manage-backends-remove-${e.name}`,className:I,children:(0,P.jsx)(d,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})})]})]})}var R=t({ManageBackendsModal:()=>B});function z(e,t,n,r){if(e.kind!==`cloud`)return;let i=t[e.id];if(!i||i.orgs.length===0)return;let a=n[e.id]?.userId??null;return i.orgs.map(e=>a&&a===e.id?r:e.name).join(`, `)}function B({onClose:e,recoveryMode:t=!1}){let{t:n}=a(`openhands`),{backends:r,active:i,removeBackend:c,setActive:u,updateBackend:d}=s(),p=_(r,{probeDisabledOnce:!0}),m=T(),h=E(),g=n(o.BACKEND$PERSONAL_WORKSPACE),[v,y]=N.useState(null),[D,O]=N.useState(null),[A,F]=N.useState(!1),I=()=>{v&&(c(v.id),y(null))},R=N.useCallback(t=>{(i.backend.id!==t.id||i.orgId!==null)&&u(t.id),e()},[i.backend.id,i.orgId,e,u]),B=N.useCallback((e,t)=>{d(e.id,{apiKey:t})},[d]);return(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(b,{onClose:t?void 0:e,closeOnEscape:!t,closeOnBackdropClick:!t,"aria-label":n(o.BACKEND$MANAGE_TITLE),children:(0,P.jsxs)(`div`,{"data-testid":`manage-backends-modal`,className:f(`relative flex flex-col bg-[var(--oh-surface)] border border-[var(--oh-border)] rounded-xl`,x(`lg`),S,`max-h-[70vh]`),children:[t?null:(0,P.jsx)(j,{onClose:e,testId:`close-manage-backends-modal`}),(0,P.jsx)(`div`,{className:f(`p-5`,!t&&`pr-12`),children:(0,P.jsx)(`h2`,{className:C,children:n(o.BACKEND$MANAGE_TITLE)})}),(0,P.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col px-5`,children:(0,P.jsx)(`div`,{className:`flex-1 overflow-auto rounded-md border border-[var(--oh-border)] bg-surface-raised custom-scrollbar-always`,"data-testid":`manage-backends-list`,children:r.length===0?(0,P.jsx)(`p`,{className:`px-3 py-6 text-center text-sm text-[var(--oh-text-secondary)]`,children:n(o.BACKEND$MANAGE_EMPTY)}):(0,P.jsx)(`ul`,{className:`divide-y divide-[var(--oh-border)]`,children:r.map(e=>(0,P.jsx)(L,{backend:e,health:p[e.id],orgLabel:z(e,m,h,g),onSelect:()=>R(e),onEdit:()=>O(e),onRemove:()=>y({id:e.id,name:e.name}),onLogin:t=>B(e,t)},e.id))})})}),(0,P.jsxs)(`div`,{className:`flex justify-end gap-2 p-5`,children:[(0,P.jsx)(w,{type:`button`,variant:t?`primary`:`secondary`,onClick:()=>F(!0),testId:`manage-backends-add`,startContent:(0,P.jsx)(l,{width:14,height:14}),children:n(o.BACKEND$ADD)}),t?null:(0,P.jsx)(w,{type:`button`,variant:`primary`,onClick:e,testId:`manage-backends-done`,children:n(o.HOME$DONE)})]})]})}),A?(0,P.jsx)(k,{mode:`add`,source:`manage_backends_modal`,onClose:()=>F(!1)}):null,D?(0,P.jsx)(k,{mode:`edit`,backend:D,onClose:()=>O(null)}):null,v?(0,P.jsx)(M,{text:n(o.BACKEND$REMOVE_CONFIRMATION,{name:v.name}),onConfirm:I,onCancel:()=>y(null)}):null]})}export{R as n,B as t};
@@ -0,0 +1 @@
1
+ window.__reactRouterManifest={"entry":{"module":"/assets/entry.client-Dnnak-Hq.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client-DQGrNspu.js","/assets/providers-C7lMslCi.js","/assets/vendor~entry.client-DDuH4--y.js","/assets/active-backend-context-DHhm10VS.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/declaration-BGsHjPEW.js","/assets/utils-DB9LsAzA.js","/assets/telemetry-SHxpVxk8.js","/assets/agent-server-ui-style-scope-qhnhZHBV.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/client-source-CtQjJEy6.js"],"css":[]},"routes":{"root":{"id":"root","path":"","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/root-oT83qVlk.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client-DQGrNspu.js","/assets/providers-C7lMslCi.js","/assets/vendor~entry.client-DDuH4--y.js","/assets/active-backend-context-DHhm10VS.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/declaration-BGsHjPEW.js","/assets/utils-DB9LsAzA.js","/assets/telemetry-SHxpVxk8.js","/assets/agent-server-ui-style-scope-qhnhZHBV.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/client-source-CtQjJEy6.js","/assets/useQuery-D5pEZbY0.js","/assets/useTranslation-Cbf5AGg_.js","/assets/use-config-B39iHYFi.js","/assets/use-onboarding-completion-C_Swglzp.js","/assets/brand-button-B1izLAdR.js","/assets/base-modal-CIF_785P.js","/assets/loading-spinner-BcdnT0mN.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-backends-health-BagmAE_W.js","/assets/color-themes-CHizm1xF.js","/assets/suspense-DmZ3MSSh.js","/assets/form-control-classes-CbdN5aO3.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/proxy-G4ce0fnQ.js"],"css":["/assets/root-CYWeTrWE.css"]},"routes/root-layout":{"id":"routes/root-layout","parentId":"root","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":true,"module":"/assets/root-layout-ClEl-JlJ.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/recommended-automations-launcher-BWRRvMPE.js","/assets/path-utils-D53ZHUQU.js","/assets/useQuery-D5pEZbY0.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js","/assets/vendor~root-layout~conversation-panel~conversation-8tIsyrPj.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/bot-C-EA6685.js","/assets/check-TbOEtHKj.js","/assets/onboarding-modal-Bxuxpfdz.js","/assets/onboarding-Dx8n8HFr.js","/assets/format-time-delta-DhDbkD7V.js","/assets/refresh-cw-B9B7-vsy.js","/assets/search-dIQ09UY2.js","/assets/sidebar-store-uiUXBU1N.js","/assets/llm-settings-Cs_iieFY.js","/assets/trash-2-BU6BlW4i.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~root-layout~conversation-panel~conversation~shared-conversation-BrguKXCn.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/active-backend-context-DHhm10VS.js","/assets/git-provider-icon-xvbukHaT.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/use-config-B39iHYFi.js","/assets/backend-form-modal-B8GtBA-J.js","/assets/openhands-logo-bcNw5bkY.js","/assets/add-backend-modal-BoMkMyLB.js","/assets/manage-backends-modal-nMoCZ2a0.js","/assets/environment-switch-store-DkjlKWzN.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/sidebar-mobile-menu-toggle-CTX7J4wM.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/sidebar-nav-link-CHqyFXwV.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/base-modal-CIF_785P.js","/assets/styled-tooltip-B14i_Uac.js","/assets/loading-spinner-BcdnT0mN.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/navigation-link-D8hfwvxI.js","/assets/acp-providers-DerAmTyY.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-backends-health-BagmAE_W.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/use-is-authed-BezEyfeh.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/use-settings-BeJap6YL.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/use-tracking-DFoPQUSU.js","/assets/search-BgOCR7_c.js","/assets/skills-EqzxYBvT.js","/assets/u-edit-DL5LgKon.js","/assets/telemetry-SHxpVxk8.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/conversation-store-LptbOvKa.js","/assets/common-CxbUL3nR.js","/assets/combobox-caret-CxZpqoSR.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js","/assets/useMutationState-OnAsCLA_.js","/assets/settings-service.api-DPTFyRXL.js","/assets/install-server-modal-BYjqoRyX.js","/assets/brand-button-B1izLAdR.js","/assets/skill-card-pill-row-BPYKQ3IN.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/modal-close-button-BcIBUdSq.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/useMutation-u8UgRgDK.js","/assets/v4-DbCkTSoU.js","/assets/secrets-service-Ch7RH8eH.js","/assets/settings-input-BsgQWS5R.js","/assets/suspense-DmZ3MSSh.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/profiles-service.api-DWetW2TL.js","/assets/plugins-management-service-DISfOL13.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/chat-send-button-BZHG2hAW.js","/assets/loader-circle-CsAsfLIs.js","/assets/use-acp-credential-form-DHd_Id-q.js","/assets/cloud-funnel-analytics-uzzLlLuj.js","/assets/use-can-manage-org-profiles-CyYqfzeo.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-save-agent-profile-i4FcEP98.js","/assets/terminal-Cgf___rK.js","/assets/back-nav-button-DVknCcSP.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/model-selector-D51W2Q9b.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/u-check-circle-BqoIxNz_.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/typography-CzfoD9DY.js","/assets/settings-list-classes-DSJJX99U.js","/assets/map-provider-BbIb12oh.js","/assets/dist-CodhvuAP.js","/assets/organization-service.api-Da2jiuBS.js","/assets/switch-skeleton-DqQwalyu.js","/assets/settings-switch-Bes8dIlV.js","/assets/toggle-switch-DX_k418f.js","/assets/copy-BLmGeJcd.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/segmented-toggle-kzwZkLaj.js","/assets/useQueries-BpIlT8Mt.js","/assets/use-onboarding-completion-C_Swglzp.js","/assets/confirmation-modal-DGBWM2Ls.js","/assets/close-DLFb5kfv.js","/assets/folder-Bk311brm.js","/assets/iconBase-Dz51Zn5x.js","/assets/git-status-mapper-DnL9OC8_.js","/assets/pencil-CWhApFIT.js","/assets/Trans-DqF_OEZB.js"],"css":[]},"routes/index-home":{"id":"routes/index-home","parentId":"routes/root-layout","index":true,"hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/index-home-BsI6i0TC.js","imports":["/assets/home-D01kSnmo.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/recommended-automations-launcher-BWRRvMPE.js","/assets/path-utils-D53ZHUQU.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js","/assets/chevron-down-D7IvFMBM.js","/assets/onboarding-Dx8n8HFr.js","/assets/search-dIQ09UY2.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/git-provider-icon-xvbukHaT.js","/assets/lesson-plan-cNUjpdFx.js","/assets/use-plugins-marketplace-DOJp9rlE.js","/assets/llm-not-configured-banner-DUPyoFIZ.js","/assets/brand-button-B1izLAdR.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/base-modal-CIF_785P.js","/assets/styled-tooltip-B14i_Uac.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/folder-Bk311brm.js","/assets/conversation-store-LptbOvKa.js","/assets/typography-CzfoD9DY.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js","/assets/useMutationState-OnAsCLA_.js","/assets/settings-service.api-DPTFyRXL.js","/assets/install-server-modal-BYjqoRyX.js","/assets/skill-card-pill-row-BPYKQ3IN.js","/assets/use-settings-BeJap6YL.js","/assets/use-tracking-DFoPQUSU.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/useMutation-u8UgRgDK.js","/assets/bot-C-EA6685.js","/assets/v4-DbCkTSoU.js","/assets/secrets-service-Ch7RH8eH.js","/assets/settings-input-BsgQWS5R.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/profiles-service.api-DWetW2TL.js","/assets/plugins-management-service-DISfOL13.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/telemetry-SHxpVxk8.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/useQueries-BpIlT8Mt.js","/assets/onboarding-modal-Bxuxpfdz.js","/assets/use-onboarding-completion-C_Swglzp.js","/assets/confirmation-modal-DGBWM2Ls.js","/assets/close-DLFb5kfv.js","/assets/chat-send-button-BZHG2hAW.js","/assets/check-TbOEtHKj.js","/assets/loader-circle-CsAsfLIs.js","/assets/llm-settings-Cs_iieFY.js","/assets/use-acp-credential-form-DHd_Id-q.js","/assets/cloud-funnel-analytics-uzzLlLuj.js","/assets/backend-form-modal-B8GtBA-J.js","/assets/openhands-logo-bcNw5bkY.js","/assets/use-can-manage-org-profiles-CyYqfzeo.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-save-agent-profile-i4FcEP98.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-backends-health-BagmAE_W.js","/assets/terminal-Cgf___rK.js","/assets/back-nav-button-DVknCcSP.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/model-selector-D51W2Q9b.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/loading-spinner-BcdnT0mN.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/u-check-circle-BqoIxNz_.js","/assets/u-edit-DL5LgKon.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/settings-list-classes-DSJJX99U.js","/assets/navigation-link-D8hfwvxI.js","/assets/combobox-caret-CxZpqoSR.js","/assets/map-provider-BbIb12oh.js","/assets/dist-CodhvuAP.js","/assets/organization-service.api-Da2jiuBS.js","/assets/switch-skeleton-DqQwalyu.js","/assets/settings-switch-Bes8dIlV.js","/assets/use-is-authed-BezEyfeh.js","/assets/toggle-switch-DX_k418f.js","/assets/copy-BLmGeJcd.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/segmented-toggle-kzwZkLaj.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/git-status-mapper-DnL9OC8_.js","/assets/iconBase-Dz51Zn5x.js","/assets/use-event-store-Bbaz51GR.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/files-tab-store-DJsPxYdg.js","/assets/browser-store-BI6uklCG.js","/assets/command-store-D8J5LMW1.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/vendor~index-home~home~conversation-panel~conversation-ChmYLVgz.js","/assets/refresh-cw-B9B7-vsy.js","/assets/use-skills-Blpg2BqE.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/use-config-B39iHYFi.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/runtime-waiting-state-CnyVhX4T.js","/assets/markdown-renderer-B4V2OMFP.js","/assets/use-active-conversation-BbeVgedA.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/use-agent-state-5qM3X30V.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/use-handle-plan-click-BFcE0Xms.js","/assets/code-tag-DYlAhEQY.js","/assets/link-external-CaBmUEs_.js","/assets/settings-gear-MXCyZW0x.js","/assets/skills-EqzxYBvT.js","/assets/settings-utils-DzCVfiR3.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js"],"css":[]},"routes/home":{"id":"routes/home","parentId":"routes/root-layout","path":"conversations","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/home-NZO2bF4N.js","imports":["/assets/home-D01kSnmo.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/recommended-automations-launcher-BWRRvMPE.js","/assets/path-utils-D53ZHUQU.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js","/assets/chevron-down-D7IvFMBM.js","/assets/onboarding-Dx8n8HFr.js","/assets/search-dIQ09UY2.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/git-provider-icon-xvbukHaT.js","/assets/lesson-plan-cNUjpdFx.js","/assets/use-plugins-marketplace-DOJp9rlE.js","/assets/llm-not-configured-banner-DUPyoFIZ.js","/assets/brand-button-B1izLAdR.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/base-modal-CIF_785P.js","/assets/styled-tooltip-B14i_Uac.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/folder-Bk311brm.js","/assets/conversation-store-LptbOvKa.js","/assets/typography-CzfoD9DY.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js","/assets/useMutationState-OnAsCLA_.js","/assets/settings-service.api-DPTFyRXL.js","/assets/install-server-modal-BYjqoRyX.js","/assets/skill-card-pill-row-BPYKQ3IN.js","/assets/use-settings-BeJap6YL.js","/assets/use-tracking-DFoPQUSU.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/useMutation-u8UgRgDK.js","/assets/bot-C-EA6685.js","/assets/v4-DbCkTSoU.js","/assets/secrets-service-Ch7RH8eH.js","/assets/settings-input-BsgQWS5R.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/profiles-service.api-DWetW2TL.js","/assets/plugins-management-service-DISfOL13.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/telemetry-SHxpVxk8.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/useQueries-BpIlT8Mt.js","/assets/onboarding-modal-Bxuxpfdz.js","/assets/use-onboarding-completion-C_Swglzp.js","/assets/confirmation-modal-DGBWM2Ls.js","/assets/close-DLFb5kfv.js","/assets/chat-send-button-BZHG2hAW.js","/assets/check-TbOEtHKj.js","/assets/loader-circle-CsAsfLIs.js","/assets/llm-settings-Cs_iieFY.js","/assets/use-acp-credential-form-DHd_Id-q.js","/assets/cloud-funnel-analytics-uzzLlLuj.js","/assets/backend-form-modal-B8GtBA-J.js","/assets/openhands-logo-bcNw5bkY.js","/assets/use-can-manage-org-profiles-CyYqfzeo.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-save-agent-profile-i4FcEP98.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-backends-health-BagmAE_W.js","/assets/terminal-Cgf___rK.js","/assets/back-nav-button-DVknCcSP.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/model-selector-D51W2Q9b.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/loading-spinner-BcdnT0mN.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/u-check-circle-BqoIxNz_.js","/assets/u-edit-DL5LgKon.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/settings-list-classes-DSJJX99U.js","/assets/navigation-link-D8hfwvxI.js","/assets/combobox-caret-CxZpqoSR.js","/assets/map-provider-BbIb12oh.js","/assets/dist-CodhvuAP.js","/assets/organization-service.api-Da2jiuBS.js","/assets/switch-skeleton-DqQwalyu.js","/assets/settings-switch-Bes8dIlV.js","/assets/use-is-authed-BezEyfeh.js","/assets/toggle-switch-DX_k418f.js","/assets/copy-BLmGeJcd.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/segmented-toggle-kzwZkLaj.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/git-status-mapper-DnL9OC8_.js","/assets/iconBase-Dz51Zn5x.js","/assets/use-event-store-Bbaz51GR.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/files-tab-store-DJsPxYdg.js","/assets/browser-store-BI6uklCG.js","/assets/command-store-D8J5LMW1.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/vendor~index-home~home~conversation-panel~conversation-ChmYLVgz.js","/assets/refresh-cw-B9B7-vsy.js","/assets/use-skills-Blpg2BqE.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/use-config-B39iHYFi.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/runtime-waiting-state-CnyVhX4T.js","/assets/markdown-renderer-B4V2OMFP.js","/assets/use-active-conversation-BbeVgedA.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/use-agent-state-5qM3X30V.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/use-handle-plan-click-BFcE0Xms.js","/assets/code-tag-DYlAhEQY.js","/assets/link-external-CaBmUEs_.js","/assets/settings-gear-MXCyZW0x.js","/assets/skills-EqzxYBvT.js","/assets/settings-utils-DzCVfiR3.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js"],"css":[]},"routes/conversation-panel":{"id":"routes/conversation-panel","parentId":"routes/root-layout","path":"conversations/:conversationId/panel","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/conversation-panel-B8n40Swu.js","imports":["/assets/conversation-Lmqm6VJC.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/path-utils-D53ZHUQU.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/useMutation-u8UgRgDK.js","/assets/useQuery-D5pEZbY0.js","/assets/vendor~conversation-panel~conversation~alert-banner-CxfzCmkN.js","/assets/vendor~root-layout~conversation-panel~conversation-8tIsyrPj.js","/assets/messages-CJAv5n4j.js","/assets/Trans-DqF_OEZB.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/check-TbOEtHKj.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/list-todo-CAtvkzcy.js","/assets/loader-circle-CsAsfLIs.js","/assets/square-chevron-right-DE-JN-2Z.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/v4-DbCkTSoU.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/active-backend-context-DHhm10VS.js","/assets/proxy-G4ce0fnQ.js","/assets/git-provider-icon-xvbukHaT.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/lesson-plan-cNUjpdFx.js","/assets/llm-not-configured-banner-DUPyoFIZ.js","/assets/use-event-store-Bbaz51GR.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/sidebar-mobile-menu-toggle-CTX7J4wM.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/plan-components-BdZXPyZU.js","/assets/brand-button-B1izLAdR.js","/assets/base-modal-CIF_785P.js","/assets/styled-tooltip-B14i_Uac.js","/assets/loading-spinner-BcdnT0mN.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/use-active-conversation-BbeVgedA.js","/assets/use-is-authed-BezEyfeh.js","/assets/use-settings-BeJap6YL.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/use-agent-state-5qM3X30V.js","/assets/use-breakpoint-BP3lqLMx.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/use-runtime-is-ready-ziHQvXZQ.js","/assets/use-task-list-CfisapBW.js","/assets/use-tracking-DFoPQUSU.js","/assets/copy-BLmGeJcd.js","/assets/skills-EqzxYBvT.js","/assets/u-edit-DL5LgKon.js","/assets/command-store-D8J5LMW1.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/conversation-store-LptbOvKa.js","/assets/common-CxbUL3nR.js","/assets/typography-CzfoD9DY.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/profiles-service.api-DWetW2TL.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/settings-mQUckT0g.js","/assets/chevron-down-D7IvFMBM.js","/assets/vendor~root-layout~conversation-panel~conversation~shared-conversation-BrguKXCn.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js","/assets/use-config-B39iHYFi.js","/assets/markdown-renderer-B4V2OMFP.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/close-DLFb5kfv.js","/assets/files-tab-store-DJsPxYdg.js","/assets/get-language-from-path-DBqBsCWH.js","/assets/u-check-circle-half-MsShT8Ec.js","/assets/u-check-circle-BqoIxNz_.js","/assets/form-control-classes-CbdN5aO3.js","/assets/iconBase-Dz51Zn5x.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js","/assets/telemetry-SHxpVxk8.js","/assets/browser-store-BI6uklCG.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/checkmark-h7udgXMM.js","/assets/dist-CodhvuAP.js","/assets/git-status-mapper-DnL9OC8_.js","/assets/vendor~index-home~home~conversation-panel~conversation-ChmYLVgz.js","/assets/useMutationState-OnAsCLA_.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js","/assets/chat-send-button-BZHG2hAW.js","/assets/refresh-cw-B9B7-vsy.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/use-skills-Blpg2BqE.js","/assets/cloud-funnel-analytics-uzzLlLuj.js","/assets/runtime-waiting-state-CnyVhX4T.js","/assets/navigation-link-D8hfwvxI.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/use-handle-plan-click-BFcE0Xms.js","/assets/code-tag-DYlAhEQY.js","/assets/link-external-CaBmUEs_.js","/assets/settings-gear-MXCyZW0x.js","/assets/combobox-caret-CxZpqoSR.js","/assets/settings-utils-DzCVfiR3.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/plugins-management-service-DISfOL13.js","/assets/map-provider-BbIb12oh.js"],"css":[]},"routes/conversation":{"id":"routes/conversation","parentId":"routes/root-layout","path":"conversations/:conversationId","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/conversation-B8d8_Upd.js","imports":["/assets/conversation-Lmqm6VJC.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/path-utils-D53ZHUQU.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/useMutation-u8UgRgDK.js","/assets/useQuery-D5pEZbY0.js","/assets/vendor~conversation-panel~conversation~alert-banner-CxfzCmkN.js","/assets/vendor~root-layout~conversation-panel~conversation-8tIsyrPj.js","/assets/messages-CJAv5n4j.js","/assets/Trans-DqF_OEZB.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/check-TbOEtHKj.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/list-todo-CAtvkzcy.js","/assets/loader-circle-CsAsfLIs.js","/assets/square-chevron-right-DE-JN-2Z.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/v4-DbCkTSoU.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/active-backend-context-DHhm10VS.js","/assets/proxy-G4ce0fnQ.js","/assets/git-provider-icon-xvbukHaT.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/lesson-plan-cNUjpdFx.js","/assets/llm-not-configured-banner-DUPyoFIZ.js","/assets/use-event-store-Bbaz51GR.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/sidebar-mobile-menu-toggle-CTX7J4wM.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/plan-components-BdZXPyZU.js","/assets/brand-button-B1izLAdR.js","/assets/base-modal-CIF_785P.js","/assets/styled-tooltip-B14i_Uac.js","/assets/loading-spinner-BcdnT0mN.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/use-active-conversation-BbeVgedA.js","/assets/use-is-authed-BezEyfeh.js","/assets/use-settings-BeJap6YL.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/use-agent-state-5qM3X30V.js","/assets/use-breakpoint-BP3lqLMx.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/use-runtime-is-ready-ziHQvXZQ.js","/assets/use-task-list-CfisapBW.js","/assets/use-tracking-DFoPQUSU.js","/assets/copy-BLmGeJcd.js","/assets/skills-EqzxYBvT.js","/assets/u-edit-DL5LgKon.js","/assets/command-store-D8J5LMW1.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/conversation-store-LptbOvKa.js","/assets/common-CxbUL3nR.js","/assets/typography-CzfoD9DY.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/profiles-service.api-DWetW2TL.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/settings-mQUckT0g.js","/assets/chevron-down-D7IvFMBM.js","/assets/vendor~root-layout~conversation-panel~conversation~shared-conversation-BrguKXCn.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js","/assets/use-config-B39iHYFi.js","/assets/markdown-renderer-B4V2OMFP.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/close-DLFb5kfv.js","/assets/files-tab-store-DJsPxYdg.js","/assets/get-language-from-path-DBqBsCWH.js","/assets/u-check-circle-half-MsShT8Ec.js","/assets/u-check-circle-BqoIxNz_.js","/assets/form-control-classes-CbdN5aO3.js","/assets/iconBase-Dz51Zn5x.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js","/assets/telemetry-SHxpVxk8.js","/assets/browser-store-BI6uklCG.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/checkmark-h7udgXMM.js","/assets/dist-CodhvuAP.js","/assets/git-status-mapper-DnL9OC8_.js","/assets/vendor~index-home~home~conversation-panel~conversation-ChmYLVgz.js","/assets/useMutationState-OnAsCLA_.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation-BTvhGHHG.js","/assets/chat-send-button-BZHG2hAW.js","/assets/refresh-cw-B9B7-vsy.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/use-skills-Blpg2BqE.js","/assets/cloud-funnel-analytics-uzzLlLuj.js","/assets/runtime-waiting-state-CnyVhX4T.js","/assets/navigation-link-D8hfwvxI.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/use-handle-plan-click-BFcE0Xms.js","/assets/code-tag-DYlAhEQY.js","/assets/link-external-CaBmUEs_.js","/assets/settings-gear-MXCyZW0x.js","/assets/combobox-caret-CxZpqoSR.js","/assets/settings-utils-DzCVfiR3.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/plugins-management-service-DISfOL13.js","/assets/map-provider-BbIb12oh.js"],"css":[]},"routes/launch":{"id":"routes/launch","parentId":"routes/root-layout","path":"launch","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/launch-DlXspDku.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~launch-_Km3J77E.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/brand-button-B1izLAdR.js","/assets/settings-input-BsgQWS5R.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/typography-CzfoD9DY.js","/assets/iconBase-Dz51Zn5x.js","/assets/form-control-classes-CbdN5aO3.js","/assets/common-CxbUL3nR.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/active-backend-context-DHhm10VS.js","/assets/profiles-service.api-DWetW2TL.js","/assets/plugins-management-service-DISfOL13.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/use-tracking-DFoPQUSU.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/useQuery-D5pEZbY0.js","/assets/proxy-G4ce0fnQ.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/v4-DbCkTSoU.js","/assets/client-source-CtQjJEy6.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/settings-mQUckT0g.js","/assets/use-settings-BeJap6YL.js","/assets/telemetry-SHxpVxk8.js","/assets/dist-CodhvuAP.js"],"css":[]},"routes/extensions-hub":{"id":"routes/extensions-hub","parentId":"routes/root-layout","path":"customize","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/extensions-hub-DqvwvpCi.js","imports":["/assets/vendor-styling-CI0PQ3ab.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-nav-link-CHqyFXwV.js","/assets/extensions-navigation-BMc9Nluv.js","/assets/use-breakpoint-BP3lqLMx.js","/assets/typography-CzfoD9DY.js","/assets/rolldown-runtime-BFRubm34.js","/assets/active-backend-context-DHhm10VS.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/utils-DB9LsAzA.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/proxy-G4ce0fnQ.js","/assets/dist-CodhvuAP.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/styled-tooltip-B14i_Uac.js","/assets/navigation-link-D8hfwvxI.js","/assets/navigation-context-DPs2G0X8.js","/assets/skills-EqzxYBvT.js"],"css":[]},"routes/skills-settings":{"id":"routes/skills-settings","parentId":"routes/root-layout","path":"skills","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/skills-settings-BdqijFlC.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/Trans-DqF_OEZB.js","/assets/search-dIQ09UY2.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/use-skills-Blpg2BqE.js","/assets/brand-button-B1izLAdR.js","/assets/settings-switch-Bes8dIlV.js","/assets/extensions-navigation-BMc9Nluv.js","/assets/skill-card-pill-row-BPYKQ3IN.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/enum-filter-dropdown-JLYv1t8L.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/use-launch-skill-in-chat-DJWEfVc5.js","/assets/checkmark-h7udgXMM.js","/assets/copy-BLmGeJcd.js","/assets/skills-EqzxYBvT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/settings-like-page-layout-classes-Cdl6jOe5.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/useQuery-D5pEZbY0.js","/assets/proxy-G4ce0fnQ.js","/assets/suspense-DmZ3MSSh.js","/assets/form-control-classes-CbdN5aO3.js","/assets/toggle-switch-DX_k418f.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/navigation-link-D8hfwvxI.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/typography-CzfoD9DY.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/dist-CodhvuAP.js","/assets/navigation-context-DPs2G0X8.js","/assets/styled-tooltip-B14i_Uac.js","/assets/x-mark-Batp6gXa.js","/assets/check-TbOEtHKj.js","/assets/chevron-down-D7IvFMBM.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/useMutation-u8UgRgDK.js","/assets/settings-service.api-DPTFyRXL.js","/assets/use-tracking-DFoPQUSU.js","/assets/settings-mQUckT0g.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js","/assets/conversation-store-LptbOvKa.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/conversation-local-storage-F6zVMM--.js"],"css":[]},"routes/skills-plugins":{"id":"routes/skills-plugins","parentId":"routes/root-layout","path":"plugins","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/skills-plugins-HZEbNDmX.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/useQuery-D5pEZbY0.js","/assets/search-dIQ09UY2.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/plugins-management-service-DISfOL13.js","/assets/use-plugins-marketplace-DOJp9rlE.js","/assets/brand-button-B1izLAdR.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-switch-Bes8dIlV.js","/assets/extensions-navigation-BMc9Nluv.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/settings-like-page-layout-classes-Cdl6jOe5.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/suspense-DmZ3MSSh.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/form-control-classes-CbdN5aO3.js","/assets/toggle-switch-DX_k418f.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/navigation-link-D8hfwvxI.js","/assets/skills-EqzxYBvT.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/typography-CzfoD9DY.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/proxy-G4ce0fnQ.js","/assets/dist-CodhvuAP.js","/assets/styled-tooltip-B14i_Uac.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js"],"css":[]},"routes/mcp":{"id":"routes/mcp","parentId":"routes/root-layout","path":"mcp","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/mcp-kZM-cAZw.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/search-dIQ09UY2.js","/assets/trash-2-BU6BlW4i.js","/assets/x-ZE4iplpF.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/settings-service.api-DPTFyRXL.js","/assets/install-server-modal-BYjqoRyX.js","/assets/brand-button-B1izLAdR.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/extensions-navigation-BMc9Nluv.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/enum-filter-dropdown-JLYv1t8L.js","/assets/confirmation-modal-DGBWM2Ls.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/use-settings-BeJap6YL.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/settings-like-page-layout-classes-Cdl6jOe5.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/bot-C-EA6685.js","/assets/v4-DbCkTSoU.js","/assets/secrets-service-Ch7RH8eH.js","/assets/styled-tooltip-B14i_Uac.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/combobox-caret-CxZpqoSR.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/navigation-link-D8hfwvxI.js","/assets/skills-EqzxYBvT.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/typography-CzfoD9DY.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/dist-CodhvuAP.js","/assets/navigation-context-DPs2G0X8.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js","/assets/check-TbOEtHKj.js","/assets/chevron-down-D7IvFMBM.js","/assets/use-click-outside-element-D9BYdANT.js","/assets/dropdown-classes-D3wMJlXT.js"],"css":[]},"routes/settings":{"id":"routes/settings","parentId":"routes/root-layout","path":"settings","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":true,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/settings-n9a395O0.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/use-settings-nav-items-D5JJjFHJ.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/active-backend-context-DHhm10VS.js","/assets/use-config-B39iHYFi.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-nav-link-CHqyFXwV.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/navigation-link-D8hfwvxI.js","/assets/utils-DB9LsAzA.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/use-settings-BeJap6YL.js","/assets/use-breakpoint-BP3lqLMx.js","/assets/close-DLFb5kfv.js","/assets/settings-gear-MXCyZW0x.js","/assets/typography-CzfoD9DY.js","/assets/settings-like-page-layout-classes-Cdl6jOe5.js","/assets/settings-utils-DzCVfiR3.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/external-link-lhdITPqq.js","/assets/acp-providers-DerAmTyY.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/common-CxbUL3nR.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/settings-service.api-DPTFyRXL.js","/assets/settings-mQUckT0g.js","/assets/proxy-G4ce0fnQ.js","/assets/map-provider-BbIb12oh.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/dist-CodhvuAP.js","/assets/styled-tooltip-B14i_Uac.js","/assets/navigation-context-DPs2G0X8.js"],"css":[]},"routes/settings-index":{"id":"routes/settings-index","parentId":"routes/settings","index":true,"hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/settings-index-BzSIM1-N.js","imports":["/assets/vendor-styling-CI0PQ3ab.js","/assets/use-settings-nav-items-D5JJjFHJ.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/use-config-B39iHYFi.js","/assets/backend-synced-settings-badge-yVh6Kf4E.js","/assets/sidebar-nav-link-CHqyFXwV.js","/assets/use-breakpoint-BP3lqLMx.js","/assets/typography-CzfoD9DY.js","/assets/settings-utils-DzCVfiR3.js","/assets/rolldown-runtime-BFRubm34.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/external-link-lhdITPqq.js","/assets/active-backend-context-DHhm10VS.js","/assets/sidebar-layout-Bm7pa3Vk.js","/assets/acp-providers-DerAmTyY.js","/assets/utils-DB9LsAzA.js","/assets/use-settings-BeJap6YL.js","/assets/use-active-agent-profile-BMDTXsay.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/common-CxbUL3nR.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/settings-service.api-DPTFyRXL.js","/assets/settings-mQUckT0g.js","/assets/proxy-G4ce0fnQ.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/map-provider-BbIb12oh.js","/assets/use-cloud-current-user-id-BwMX7jHW.js","/assets/useQueries-BpIlT8Mt.js","/assets/organization-service.api-Da2jiuBS.js","/assets/dist-CodhvuAP.js","/assets/styled-tooltip-B14i_Uac.js","/assets/navigation-link-D8hfwvxI.js","/assets/navigation-context-DPs2G0X8.js"],"css":[]},"routes/llm-settings":{"id":"routes/llm-settings","parentId":"routes/settings","path":"llm","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/llm-settings-J2ke2foG.js","imports":["/assets/llm-settings-Cs_iieFY.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/useQuery-D5pEZbY0.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/back-nav-button-DVknCcSP.js","/assets/copy-D1YGjP-C.js","/assets/external-link-lhdITPqq.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/profiles-service.api-DWetW2TL.js","/assets/settings-service.api-DPTFyRXL.js","/assets/model-selector-D51W2Q9b.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/use-can-manage-org-profiles-CyYqfzeo.js","/assets/brand-button-B1izLAdR.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/settings-input-BsgQWS5R.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/loading-spinner-BcdnT0mN.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/utils-DB9LsAzA.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/use-settings-BeJap6YL.js","/assets/u-check-circle-BqoIxNz_.js","/assets/u-edit-DL5LgKon.js","/assets/settings-mQUckT0g.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/typography-CzfoD9DY.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/settings-list-classes-DSJJX99U.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/suspense-DmZ3MSSh.js","/assets/navigation-link-D8hfwvxI.js","/assets/form-control-classes-CbdN5aO3.js","/assets/navigation-context-DPs2G0X8.js","/assets/common-CxbUL3nR.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/proxy-G4ce0fnQ.js","/assets/combobox-caret-CxZpqoSR.js","/assets/map-provider-BbIb12oh.js","/assets/dist-CodhvuAP.js","/assets/organization-service.api-Da2jiuBS.js","/assets/base-modal-CIF_785P.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/switch-skeleton-DqQwalyu.js","/assets/use-save-settings-DiDEbIJw.js","/assets/settings-switch-Bes8dIlV.js","/assets/use-is-authed-BezEyfeh.js","/assets/toggle-switch-DX_k418f.js","/assets/use-tracking-DFoPQUSU.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js","/assets/checkmark-h7udgXMM.js","/assets/copy-BLmGeJcd.js"],"css":[]},"routes/agent-settings":{"id":"routes/agent-settings","parentId":"routes/settings","path":"agent","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/agent-settings-OdsyI2gX.js","imports":["/assets/agent-settings-GwiXe_6k.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/use-acp-credential-form-DHd_Id-q.js","/assets/active-backend-context-DHhm10VS.js","/assets/brand-button-B1izLAdR.js","/assets/settings-input-BsgQWS5R.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/settings-switch-Bes8dIlV.js","/assets/acp-providers-DerAmTyY.js","/assets/utils-DB9LsAzA.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/typography-CzfoD9DY.js","/assets/form-control-classes-CbdN5aO3.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useQuery-D5pEZbY0.js","/assets/check-TbOEtHKj.js","/assets/loader-circle-CsAsfLIs.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/suspense-DmZ3MSSh.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/common-CxbUL3nR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/useMutation-u8UgRgDK.js","/assets/secrets-service-Ch7RH8eH.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/use-is-authed-BezEyfeh.js","/assets/settings-mQUckT0g.js","/assets/combobox-caret-CxZpqoSR.js","/assets/toggle-switch-DX_k418f.js","/assets/dist-CodhvuAP.js","/assets/use-tracking-DFoPQUSU.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js"],"css":[]},"routes/agent-profiles-settings":{"id":"routes/agent-profiles-settings","parentId":"routes/settings","path":"agents","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/agent-profiles-settings-CYPloKYK.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/back-nav-button-DVknCcSP.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/agent-settings-GwiXe_6k.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/active-backend-context-DHhm10VS.js","/assets/ellipsis-button-CbNnHlIq.js","/assets/use-can-manage-org-profiles-CyYqfzeo.js","/assets/brand-button-B1izLAdR.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/loading-spinner-BcdnT0mN.js","/assets/utils-DB9LsAzA.js","/assets/settings-section-header-context-COMOIaxV.js","/assets/use-activate-agent-profile-BRDdSwQ0.js","/assets/use-save-agent-profile-i4FcEP98.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/u-check-circle-BqoIxNz_.js","/assets/u-edit-DL5LgKon.js","/assets/typography-CzfoD9DY.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/settings-list-classes-DSJJX99U.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/navigation-link-D8hfwvxI.js","/assets/form-control-classes-CbdN5aO3.js","/assets/navigation-context-DPs2G0X8.js","/assets/common-CxbUL3nR.js","/assets/use-acp-credential-form-DHd_Id-q.js","/assets/settings-input-BsgQWS5R.js","/assets/schema-field-CwdqUOnE.js","/assets/settings-switch-Bes8dIlV.js","/assets/acp-providers-DerAmTyY.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/useQuery-D5pEZbY0.js","/assets/check-TbOEtHKj.js","/assets/loader-circle-CsAsfLIs.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/suspense-DmZ3MSSh.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/secrets-service-Ch7RH8eH.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/use-is-authed-BezEyfeh.js","/assets/settings-mQUckT0g.js","/assets/combobox-caret-CxZpqoSR.js","/assets/toggle-switch-DX_k418f.js","/assets/dist-CodhvuAP.js","/assets/use-tracking-DFoPQUSU.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js","/assets/organization-service.api-Da2jiuBS.js","/assets/base-modal-CIF_785P.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-body-Cc2zp0xb.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/profiles-service.api-DWetW2TL.js"],"css":[]},"routes/condenser-settings":{"id":"routes/condenser-settings","parentId":"routes/settings","path":"condenser","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/condenser-settings-Q1rHh4Qe.js","imports":["/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/active-backend-context-DHhm10VS.js","/assets/brand-button-B1izLAdR.js","/assets/switch-skeleton-DqQwalyu.js","/assets/schema-field-CwdqUOnE.js","/assets/utils-DB9LsAzA.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/useQuery-D5pEZbY0.js","/assets/settings-service.api-DPTFyRXL.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/settings-switch-Bes8dIlV.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/use-is-authed-BezEyfeh.js","/assets/typography-CzfoD9DY.js","/assets/suspense-DmZ3MSSh.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/combobox-caret-CxZpqoSR.js","/assets/toggle-switch-DX_k418f.js","/assets/dist-CodhvuAP.js","/assets/useMutation-u8UgRgDK.js","/assets/use-tracking-DFoPQUSU.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js"],"css":[]},"routes/verification-settings":{"id":"routes/verification-settings","parentId":"routes/settings","path":"verification","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/verification-settings-C8KzAdAX.js","imports":["/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/sdk-section-page-Cwj0T4gF.js","/assets/rolldown-runtime-BFRubm34.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/active-backend-context-DHhm10VS.js","/assets/brand-button-B1izLAdR.js","/assets/switch-skeleton-DqQwalyu.js","/assets/schema-field-CwdqUOnE.js","/assets/utils-DB9LsAzA.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/sdk-settings-schema-CLR01YIK.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/useQuery-D5pEZbY0.js","/assets/settings-service.api-DPTFyRXL.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/settings-switch-Bes8dIlV.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/use-is-authed-BezEyfeh.js","/assets/typography-CzfoD9DY.js","/assets/suspense-DmZ3MSSh.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/combobox-caret-CxZpqoSR.js","/assets/toggle-switch-DX_k418f.js","/assets/dist-CodhvuAP.js","/assets/useMutation-u8UgRgDK.js","/assets/use-tracking-DFoPQUSU.js","/assets/telemetry-SHxpVxk8.js","/assets/client-source-CtQjJEy6.js"],"css":[]},"routes/app-settings":{"id":"routes/app-settings","parentId":"routes/settings","path":"app","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/app-settings-CD9euh81.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/active-backend-context-DHhm10VS.js","/assets/brand-button-B1izLAdR.js","/assets/switch-skeleton-DqQwalyu.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/settings-switch-Bes8dIlV.js","/assets/use-save-settings-DiDEbIJw.js","/assets/use-settings-BeJap6YL.js","/assets/settings-mQUckT0g.js","/assets/telemetry-SHxpVxk8.js","/assets/color-themes-CHizm1xF.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/utils-DB9LsAzA.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/common-CxbUL3nR.js","/assets/form-control-classes-CbdN5aO3.js","/assets/combobox-caret-CxZpqoSR.js","/assets/toggle-switch-DX_k418f.js","/assets/useMutation-u8UgRgDK.js","/assets/settings-service.api-DPTFyRXL.js","/assets/use-tracking-DFoPQUSU.js","/assets/proxy-G4ce0fnQ.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/client-source-CtQjJEy6.js","/assets/agent-server-ui-style-scope-qhnhZHBV.js"],"css":[]},"routes/secrets-settings":{"id":"routes/secrets-settings","parentId":"routes/settings","path":"secrets","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/secrets-settings-Bc_pBX6F.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/useMutation-u8UgRgDK.js","/assets/back-nav-button-DVknCcSP.js","/assets/pencil-CWhApFIT.js","/assets/trash-2-BU6BlW4i.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/secrets-service-Ch7RH8eH.js","/assets/brand-button-B1izLAdR.js","/assets/settings-input-BsgQWS5R.js","/assets/loading-spinner-BcdnT0mN.js","/assets/confirmation-modal-DGBWM2Ls.js","/assets/utils-DB9LsAzA.js","/assets/use-create-secret-DEgM0MXZ.js","/assets/typography-CzfoD9DY.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/form-control-classes-CbdN5aO3.js","/assets/settings-list-classes-DSJJX99U.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/navigation-link-D8hfwvxI.js","/assets/navigation-context-DPs2G0X8.js","/assets/common-CxbUL3nR.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/proxy-G4ce0fnQ.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/useQuery-D5pEZbY0.js","/assets/active-backend-context-DHhm10VS.js","/assets/suspense-DmZ3MSSh.js","/assets/dist-CodhvuAP.js"],"css":[]},"routes/device-verify":{"id":"routes/device-verify","parentId":"routes/root-layout","path":"oauth/device/verify","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/device-verify-WBSjJBLH.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/utils-DB9LsAzA.js","/assets/use-is-authed-BezEyfeh.js","/assets/typography-CzfoD9DY.js","/assets/common-CxbUL3nR.js","/assets/useQuery-D5pEZbY0.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/suspense-DmZ3MSSh.js","/assets/dist-CodhvuAP.js"],"css":[]},"routes/automations-list":{"id":"routes/automations-list","parentId":"routes/root-layout","path":"automations","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/automations-list-Dtiolk1h.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/recommended-automations-launcher-BWRRvMPE.js","/assets/Trans-DqF_OEZB.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/check-TbOEtHKj.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/automation-export-Djc8Tf0M.js","/assets/active-backend-context-DHhm10VS.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/brand-button-B1izLAdR.js","/assets/skill-card-pill-row-BPYKQ3IN.js","/assets/styled-tooltip-B14i_Uac.js","/assets/modal-backdrop-zVwfOJZr.js","/assets/modal-close-button-BcIBUdSq.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-launch-skill-in-chat-DJWEfVc5.js","/assets/use-tracking-DFoPQUSU.js","/assets/folder-Bk311brm.js","/assets/search-BgOCR7_c.js","/assets/u-edit-DL5LgKon.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/extension-module-card-classes-9V3J9J_b.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js","/assets/useMutationState-OnAsCLA_.js","/assets/settings-service.api-DPTFyRXL.js","/assets/install-server-modal-BYjqoRyX.js","/assets/circle-plus-check-toggle-DoFIjVE0.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/use-settings-BeJap6YL.js","/assets/conversation-store-LptbOvKa.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/common-CxbUL3nR.js","/assets/proxy-G4ce0fnQ.js","/assets/settings-mQUckT0g.js","/assets/useMutation-u8UgRgDK.js","/assets/bot-C-EA6685.js","/assets/v4-DbCkTSoU.js","/assets/secrets-service-Ch7RH8eH.js","/assets/settings-input-BsgQWS5R.js","/assets/form-control-classes-CbdN5aO3.js","/assets/useQuery-D5pEZbY0.js","/assets/suspense-DmZ3MSSh.js","/assets/checkmark-h7udgXMM.js","/assets/x-mark-Batp6gXa.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/profiles-service.api-DWetW2TL.js","/assets/plugins-management-service-DISfOL13.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/client-source-CtQjJEy6.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/telemetry-SHxpVxk8.js","/assets/middleware-DYHYNAnP.js","/assets/react-DPDgL6du.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/automation-LZB0MjdV.js","/assets/dist-CodhvuAP.js","/assets/combobox-caret-CxZpqoSR.js"],"css":[]},"routes/automation-detail":{"id":"routes/automation-detail","parentId":"routes/root-layout","path":"automations/:automationId","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/automation-detail-Bn8q0AG3.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/useQuery-D5pEZbY0.js","/assets/back-nav-button-DVknCcSP.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/automation-export-Djc8Tf0M.js","/assets/active-backend-context-DHhm10VS.js","/assets/proxy-G4ce0fnQ.js","/assets/brand-button-B1izLAdR.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-create-conversation-CkKUQVbP.js","/assets/use-settings-BeJap6YL.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/use-tracking-DFoPQUSU.js","/assets/code-tag-DYlAhEQY.js","/assets/link-external-CaBmUEs_.js","/assets/terminal-Cgf___rK.js","/assets/u-edit-DL5LgKon.js","/assets/x-mark-Batp6gXa.js","/assets/automation-LZB0MjdV.js","/assets/toggle-switch-DX_k418f.js","/assets/modal-classes-3qT9Ap7Q.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/suspense-DmZ3MSSh.js","/assets/navigation-link-D8hfwvxI.js","/assets/form-control-classes-CbdN5aO3.js","/assets/common-CxbUL3nR.js","/assets/useMutation-u8UgRgDK.js","/assets/context-menu-list-item-6psNyl7X.js","/assets/settings-input-BsgQWS5R.js","/assets/settings-dropdown-input-Dhx9ErGd.js","/assets/use-llm-profiles-CgRtnj74.js","/assets/dropdown-classes-D3wMJlXT.js","/assets/dist-CodhvuAP.js","/assets/combobox-caret-CxZpqoSR.js","/assets/profiles-service.api-DWetW2TL.js","/assets/telemetry-SHxpVxk8.js","/assets/settings-service.api-DPTFyRXL.js","/assets/settings-mQUckT0g.js","/assets/client-source-CtQjJEy6.js","/assets/use-agent-profiles-Dn_S_Tkz.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/plugins-management-service-DISfOL13.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/v4-DbCkTSoU.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js"],"css":[]},"routes/shared-conversation":{"id":"routes/shared-conversation","parentId":"root","path":"shared/conversations/:conversationId","hasAction":false,"hasLoader":false,"hasClientAction":false,"hasClientLoader":false,"hasClientMiddleware":false,"hasDefaultExport":true,"hasErrorBoundary":false,"module":"/assets/shared-conversation-CIDDti9I.js","imports":["/assets/rolldown-runtime-BFRubm34.js","/assets/vendor-styling-CI0PQ3ab.js","/assets/agent-server-compatibility-C0MtTTwb.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dhilvkxv-eGLBu60s.js","/assets/path-utils-D53ZHUQU.js","/assets/useQuery-D5pEZbY0.js","/assets/messages-CJAv5n4j.js","/assets/declaration-BGsHjPEW.js","/assets/useTranslation-Cbf5AGg_.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js","/assets/lesson-plan-cNUjpdFx.js","/assets/openhands-logo-bcNw5bkY.js","/assets/use-event-store-Bbaz51GR.js","/assets/loading-spinner-BcdnT0mN.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js","/assets/suspense-DmZ3MSSh.js","/assets/createLucideIcon-D4Tak8A1.js","/assets/agent-server-conversation-service.api-lzc8dabY.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~launch~skills-settings~a~j2jlu22h-mC0v44WR.js","/assets/vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~ftka0fnu-cFNmfAE6.js","/assets/v4-DbCkTSoU.js","/assets/client-source-CtQjJEy6.js","/assets/proxy-G4ce0fnQ.js","/assets/profiles-service.api-DWetW2TL.js","/assets/settings-service.api-DPTFyRXL.js","/assets/llm-subscription-service-C0zN0-rH.js","/assets/acp-providers-DerAmTyY.js","/assets/canvas-ui-COgjltGz.js","/assets/llm-subscription-DtsX5Lhg.js","/assets/settings-mQUckT0g.js","/assets/common-CxbUL3nR.js","/assets/useMutation-u8UgRgDK.js","/assets/Trans-DqF_OEZB.js","/assets/chevron-down-D7IvFMBM.js","/assets/loader-circle-CsAsfLIs.js","/assets/vendor~root-layout~conversation-panel~conversation~shared-conversation-BrguKXCn.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js","/assets/react-DPDgL6du.js","/assets/active-backend-context-DHhm10VS.js","/assets/conversation-service.api-D8QU-BiL.js","/assets/use-config-B39iHYFi.js","/assets/markdown-renderer-B4V2OMFP.js","/assets/plan-components-BdZXPyZU.js","/assets/copy-to-clipboard-button-CFzH_NOX.js","/assets/styled-tooltip-B14i_Uac.js","/assets/utils-DB9LsAzA.js","/assets/navigation-context-DPs2G0X8.js","/assets/use-active-conversation-BbeVgedA.js","/assets/use-settings-BeJap6YL.js","/assets/use-agent-state-5qM3X30V.js","/assets/close-DLFb5kfv.js","/assets/files-tab-store-DJsPxYdg.js","/assets/get-language-from-path-DBqBsCWH.js","/assets/skills-EqzxYBvT.js","/assets/u-check-circle-half-MsShT8Ec.js","/assets/u-check-circle-BqoIxNz_.js","/assets/conversation-store-LptbOvKa.js","/assets/typography-CzfoD9DY.js","/assets/conversation-local-storage-F6zVMM--.js","/assets/form-control-classes-CbdN5aO3.js","/assets/vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~iztiaf2o-rqo6vRFz.js","/assets/iconBase-Dz51Zn5x.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-COhHANvV.js","/assets/objectWithoutPropertiesLoose-BgYIAs2y.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BT05Osu4.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js","/assets/vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-FghQ3Z1a.js","/assets/middleware-DYHYNAnP.js","/assets/use-user-conversation-BrN2xeQU.js","/assets/telemetry-SHxpVxk8.js","/assets/browser-store-BI6uklCG.js","/assets/command-store-D8J5LMW1.js","/assets/conversation-state-store-B2Bp32XI.js","/assets/vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js","/assets/checkmark-h7udgXMM.js","/assets/copy-BLmGeJcd.js","/assets/dist-CodhvuAP.js"],"css":[]}},"url":"/assets/manifest-f1b46f62.js","version":"f1b46f62"};
@@ -1 +1 @@
1
- var e={openai:`OpenAI`,azure:`Azure`,azure_ai:`Azure AI Studio`,vertex_ai:`VertexAI`,palm:`PaLM`,gemini:`Gemini`,anthropic:`Anthropic`,sagemaker:`AWS SageMaker`,bedrock:`AWS Bedrock`,mistral:`Mistral AI`,anyscale:`Anyscale`,databricks:`Databricks`,ollama:`Ollama`,perlexity:`Perplexity AI`,friendliai:`FriendliAI`,groq:`Groq`,fireworks_ai:`Fireworks AI`,cloudflare:`Cloudflare Workers AI`,deepinfra:`DeepInfra`,ai21:`AI21`,replicate:`Replicate`,voyage:`Voyage AI`,openrouter:`OpenRouter`,openhands:`OpenHands`,lemonade:`Lemonade`,clarifai:`Clarifai`},t=t=>Object.keys(e).includes(t)?e[t]:t,n=t=>{let n=Object.entries(e).find(([,e])=>e===t);return n?n[0]:t};export{t as n,n as t};
1
+ var e={openai:`OpenAI`,azure:`Azure`,azure_ai:`Azure AI Studio`,vertex_ai:`VertexAI`,palm:`PaLM`,gemini:`Gemini`,anthropic:`Anthropic`,sagemaker:`AWS SageMaker`,bedrock:`AWS Bedrock`,mistral:`Mistral AI`,anyscale:`Anyscale`,databricks:`Databricks`,ollama:`Ollama`,perlexity:`Perplexity AI`,friendliai:`FriendliAI`,groq:`Groq`,fireworks_ai:`Fireworks AI`,cloudflare:`Cloudflare Workers AI`,deepinfra:`DeepInfra`,ai21:`AI21`,replicate:`Replicate`,voyage:`Voyage AI`,openrouter:`OpenRouter`,openhands:`OpenHands`,lemonade:`Lemonade`,clarifai:`Clarifai`,moonshot:`Moonshot`},t=t=>Object.keys(e).includes(t)?e[t]:t,n=t=>{let n=Object.entries(e).find(([,e])=>e===t);return n?n[0]:t};export{t as n,n as t};
@@ -1,2 +1,2 @@
1
- import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n}from"./vendor-styling-CI0PQ3ab.js";import{t as r}from"./utils-DB9LsAzA.js";import{c as i,i as a,n as o,r as s,s as c}from"./vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-B81b08bw.js";import{t as l}from"./copy-to-clipboard-button-Dp4Q_hXi.js";import{a as u}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-Dc5nKwLO.js";import{o as ee}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DWteoTyr.js";import{$ as te,A as ne,B as re,C as ie,D as ae,E as oe,F as se,G as ce,H as d,I as f,J as p,K as m,L as h,M as g,N as _,O as v,P as y,Q as b,R as x,S,T as C,U as w,V as T,W as E,X as D,Y as O,Z as k,_ as A,a as j,at as M,b as N,c as P,ct as F,d as I,dt as L,et as R,f as z,ft as B,g as V,h as H,i as U,it as W,j as G,k as le,l as ue,lt as de,m as fe,n as pe,nt as me,o as he,ot as K,p as ge,q as _e,r as ve,rt as ye,s as be,st as xe,t as Se,tt as Ce,u as we,ut as Te,v as Ee,w as De,x as Oe,y as ke,z as Ae}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-CnJRLn5s.js";var q=e(t(),1),J=n();function Y({text:e,children:t}){let[n,r]=q.useState(!1),[i,a]=q.useState(!1);return q.useEffect(()=>{let e;return i&&(e=setTimeout(()=>a(!1),2e3)),()=>clearTimeout(e)},[i]),(0,J.jsxs)(`div`,{className:`relative`,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:[(0,J.jsx)(`div`,{className:`absolute top-2 right-2 z-10`,children:(0,J.jsx)(l,{isHidden:!n,isDisabled:i,onClick:async()=>{await navigator.clipboard.writeText(e),a(!0)},mode:i?`copied`:`copy`})}),t]})}var je={bash:M,batch:W,c:ye,clike:me,clojure:Ce,cpp:R,csharp:te,css:b,dart:k,diff:D,docker:O,elixir:p,erlang:_e,fsharp:m,go:ce,graphql:E,groovy:w,haskell:d,hcl:T,http:re,ini:Ae,java:x,javascript:h,json:f,json5:se,jsx:y,julia:_,kotlin:g,less:G,lua:ne,makefile:le,markdown:v,markup:ae,matlab:oe,nginx:C,nix:De,objectivec:ie,ocaml:S,perl:Oe,php:N,powershell:ke,properties:Ee,protobuf:A,python:V,r:H,regex:fe,ruby:ge,rust:z,sass:I,scala:we,scss:ue,"shell-session":P,solidity:be,sql:he,swift:j,toml:U,tsx:ve,typescript:pe,yaml:Se},Me={cpp:[`c++`,`cxx`,`cc`],elixir:[`ex`,`exs`],erlang:[`erl`],fsharp:[`fs`,`fsx`],hcl:[`terraform`,`tf`],haskell:[`hs`],julia:[`jl`],ocaml:[`ml`,`mli`],powershell:[`ps`,`ps1`],rust:[`rs`],"shell-session":[`console`]};Object.entries(je).forEach(([e,t])=>{K.registerLanguage(e,t);let n=t.aliases;Array.isArray(n)&&n.length>0&&K.alias(e,n);let r=Me[e];r&&K.alias(e,r)});function Ne({children:e,className:t}){let n=/language-(\w+)/.exec(t||``),i=String(e).replace(/\n$/,``);return n?(0,J.jsx)(Y,{text:i,children:(0,J.jsx)(K,{className:`rounded-lg`,style:xe,language:n?.[1],PreTag:`div`,children:i})}):String(e).includes(`
1
+ import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n}from"./vendor-styling-CI0PQ3ab.js";import{t as r}from"./utils-DB9LsAzA.js";import{c as i,i as a,n as o,r as s,s as c}from"./vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation~aler~gfu7qdtz-BOKQkbc6.js";import{t as l}from"./copy-to-clipboard-button-CFzH_NOX.js";import{a as u}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DgzWSMRc.js";import{o as ee}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BD7v71DM.js";import{$ as te,A as ne,B as re,C as ie,D as ae,E as oe,F as se,G as ce,H as d,I as f,J as p,K as m,L as h,M as g,N as _,O as v,P as y,Q as b,R as x,S,T as C,U as w,V as T,W as E,X as D,Y as O,Z as k,_ as A,a as j,at as M,b as N,c as P,ct as F,d as I,dt as L,et as R,f as z,ft as B,g as V,h as H,i as U,it as W,j as G,k as le,l as ue,lt as de,m as fe,n as pe,nt as me,o as he,ot as K,p as ge,q as _e,r as ve,rt as ye,s as be,st as xe,t as Se,tt as Ce,u as we,ut as Te,v as Ee,w as De,x as Oe,y as ke,z as Ae}from"./vendor~index-home~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DqZatR3B.js";var q=e(t(),1),J=n();function Y({text:e,children:t}){let[n,r]=q.useState(!1),[i,a]=q.useState(!1);return q.useEffect(()=>{let e;return i&&(e=setTimeout(()=>a(!1),2e3)),()=>clearTimeout(e)},[i]),(0,J.jsxs)(`div`,{className:`relative`,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:[(0,J.jsx)(`div`,{className:`absolute top-2 right-2 z-10`,children:(0,J.jsx)(l,{isHidden:!n,isDisabled:i,onClick:async()=>{await navigator.clipboard.writeText(e),a(!0)},mode:i?`copied`:`copy`})}),t]})}var je={bash:M,batch:W,c:ye,clike:me,clojure:Ce,cpp:R,csharp:te,css:b,dart:k,diff:D,docker:O,elixir:p,erlang:_e,fsharp:m,go:ce,graphql:E,groovy:w,haskell:d,hcl:T,http:re,ini:Ae,java:x,javascript:h,json:f,json5:se,jsx:y,julia:_,kotlin:g,less:G,lua:ne,makefile:le,markdown:v,markup:ae,matlab:oe,nginx:C,nix:De,objectivec:ie,ocaml:S,perl:Oe,php:N,powershell:ke,properties:Ee,protobuf:A,python:V,r:H,regex:fe,ruby:ge,rust:z,sass:I,scala:we,scss:ue,"shell-session":P,solidity:be,sql:he,swift:j,toml:U,tsx:ve,typescript:pe,yaml:Se},Me={cpp:[`c++`,`cxx`,`cc`],elixir:[`ex`,`exs`],erlang:[`erl`],fsharp:[`fs`,`fsx`],hcl:[`terraform`,`tf`],haskell:[`hs`],julia:[`jl`],ocaml:[`ml`,`mli`],powershell:[`ps`,`ps1`],rust:[`rs`],"shell-session":[`console`]};Object.entries(je).forEach(([e,t])=>{K.registerLanguage(e,t);let n=t.aliases;Array.isArray(n)&&n.length>0&&K.alias(e,n);let r=Me[e];r&&K.alias(e,r)});function Ne({children:e,className:t}){let n=/language-(\w+)/.exec(t||``),i=String(e).replace(/\n$/,``);return n?(0,J.jsx)(Y,{text:i,children:(0,J.jsx)(K,{className:`rounded-lg`,style:xe,language:n?.[1],PreTag:`div`,children:i})}):String(e).includes(`
2
2
  `)?(0,J.jsx)(Y,{text:i,children:(0,J.jsx)(`pre`,{className:`bg-surface-raised text-foreground border border-surface-raised rounded p-[1em] overflow-auto`,children:(0,J.jsx)(`code`,{className:t,children:i})})}):(0,J.jsx)(`code`,{className:r(t,`bg-surface-raised text-foreground border border-surface-raised rounded px-[0.4em] py-[0.2em]`),children:e})}function Pe({children:e}){return(0,J.jsx)(`ul`,{className:`my-2 list-disc ml-5 pl-2 whitespace-normal leading-6`,children:e})}function Fe({children:e,start:t}){return(0,J.jsx)(`ol`,{className:`my-2 list-decimal ml-5 pl-2 whitespace-normal leading-6`,start:t,children:e})}function Ie({children:e}){return(0,J.jsx)(`li`,{className:`py-0.5`,children:e})}function Le({children:e}){return(0,J.jsx)(`p`,{className:`py-1.5 leading-6 first:pt-0 last:pb-0`,children:e})}function Re({href:e,children:t}){return(0,J.jsx)(`a`,{className:`text-blue-500 hover:underline`,href:e,target:`_blank`,rel:`noopener noreferrer`,children:t})}function ze({children:e}){return(0,J.jsx)(`h1`,{className:`text-xl text-white font-medium leading-7 mb-3 mt-4 first:mt-0`,children:e})}function Be({children:e}){return(0,J.jsx)(`h2`,{className:`text-lg font-medium leading-6 -tracking-[0.01em] text-white mb-2.5 mt-4 first:mt-0`,children:e})}function Ve({children:e}){return(0,J.jsx)(`h3`,{className:`text-base font-medium text-white mb-2 mt-3 first:mt-0`,children:e})}function He({children:e}){return(0,J.jsx)(`h4`,{className:`text-sm font-medium text-white mb-1.5 mt-3 first:mt-0`,children:e})}function Ue({children:e}){return(0,J.jsx)(`h5`,{className:`text-sm font-normal text-[var(--oh-text-tertiary)] mb-1.5 mt-2.5 first:mt-0`,children:e})}function We({children:e}){return(0,J.jsx)(`h6`,{className:`text-sm font-normal text-[var(--oh-text-tertiary)] mb-1.5 mt-2.5 first:mt-0`,children:e})}var X=1,Z=`w-10`;function Ge(e){let{scrollLeft:t,scrollWidth:n,clientWidth:r}=e,i=n-r,a=i>X;return{left:a&&t>X,right:a&&t<i-X}}function Ke({children:e}){let t=q.useRef(null),[n,i]=q.useState({left:!1,right:!1}),a=q.useCallback(()=>{let e=t.current;e&&i(Ge(e))},[]);return q.useLayoutEffect(()=>{a();let e=t.current;if(!e)return;let n=new ResizeObserver(a);n.observe(e);let r=e.firstElementChild;return r&&n.observe(r),()=>n.disconnect()},[a,e]),(0,J.jsxs)(`div`,{className:`relative max-w-full`,children:[(0,J.jsx)(`div`,{ref:t,"data-testid":`markdown-table-scroll`,onScroll:a,className:`max-w-full overflow-x-auto custom-scrollbar-always`,children:e}),(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":`markdown-table-scroll-fade-left`,"data-visible":n.left?`true`:`false`,className:r(`pointer-events-none absolute inset-y-0 left-0 z-10`,Z,`bg-gradient-to-r from-base to-transparent`,`transition-opacity duration-300 ease-out motion-reduce:transition-none`,n.left?`opacity-100`:`opacity-0`)}),(0,J.jsx)(`div`,{"aria-hidden":!0,"data-testid":`markdown-table-scroll-fade-right`,"data-visible":n.right?`true`:`false`,className:r(`pointer-events-none absolute inset-y-0 right-0 z-10`,Z,`bg-gradient-to-l from-base to-transparent`,`transition-opacity duration-300 ease-out motion-reduce:transition-none`,n.right?`opacity-100`:`opacity-0`)})]})}function qe({children:e}){return(0,J.jsx)(Ke,{children:(0,J.jsx)(`table`,{className:[`my-4 w-max min-w-full border-separate border-spacing-0 overflow-hidden rounded-xl border border-[var(--oh-border)] text-sm`,`[&_td]:border-b [&_td]:border-r [&_th]:border-b [&_th]:border-r`,`[&_td:last-child]:border-r-0 [&_th:last-child]:border-r-0`,`[&_tbody_tr:last-child_td]:border-b-0`].join(` `),children:e})})}function Je({children:e}){return(0,J.jsx)(`th`,{className:`whitespace-nowrap border-[var(--oh-border)] bg-[var(--oh-surface)] px-3 py-2 text-left font-semibold text-white`,children:e})}function Ye({children:e}){return(0,J.jsx)(`td`,{className:`whitespace-nowrap border-[var(--oh-border)] px-3 py-2 align-top`,children:e})}var Q={note:{label:`Note`,icon:s,containerClass:`border-l-blue-500 bg-blue-500/10`,titleClass:`text-blue-300`,iconClass:`text-blue-400`},tip:{label:`Tip`,icon:c,containerClass:`border-l-emerald-500 bg-emerald-500/10`,titleClass:`text-emerald-300`,iconClass:`text-emerald-400`},important:{label:`Important`,icon:o,containerClass:`border-l-purple-500 bg-purple-500/10`,titleClass:`text-purple-300`,iconClass:`text-purple-400`},warning:{label:`Warning`,icon:i,containerClass:`border-l-yellow-500 bg-yellow-500/10`,titleClass:`text-yellow-300`,iconClass:`text-yellow-400`},caution:{label:`Caution`,icon:a,containerClass:`border-l-rose-500 bg-rose-500/10`,titleClass:`text-rose-300`,iconClass:`text-rose-400`}},Xe=/(?:^|\s)markdown-alert-(note|tip|important|warning|caution)(?:\s|$)/i;function Ze(e){if(!e)return null;let t=e.match(Xe);return t?t[1].toLowerCase():null}function Qe({children:e,className:t}){let n=Ze(t);if(n){let t=Q[n],i=t.icon;return(0,J.jsxs)(`div`,{"data-testid":`markdown-alert-${n}`,className:r(`my-3 rounded-r-sm border-l-4 px-3 py-2`,t.containerClass),children:[(0,J.jsxs)(`p`,{className:r(`flex items-center gap-2 font-semibold`,t.titleClass),children:[(0,J.jsx)(i,{"aria-hidden":!0,className:r(`shrink-0`,t.iconClass)}),(0,J.jsx)(`span`,{children:t.label})]}),(0,J.jsx)(`div`,{className:`text-content`,children:e})]})}return(0,J.jsx)(`blockquote`,{className:`my-2 border-l-4 border-border pl-3 italic text-content-muted`,children:e})}function $e({...e}){return(0,J.jsx)(`hr`,{...e,className:`my-4 border-0 border-t border-[var(--oh-border)]`})}var $=/^\[!(NOTE|TIP|IMPORTANT|WARNING|CAUTION)\][ \t]*\r?\n?/i;function et(e){return Array.isArray(e)?e:typeof e==`string`?e.split(/\s+/).filter(Boolean):[]}var tt=()=>e=>{ee(e,`blockquote`,e=>{let t=e,n=t.children[0];if(n?.type!==`paragraph`)return;let r=n,i=r.children[0];if(i?.type!==`text`)return;let a=i.value.match($);if(!a)return;let o=a[1].toLowerCase(),s=i;s.value=s.value.replace($,``),s.value===``&&(r.children.shift(),r.children[0]?.type===`break`&&r.children.shift(),r.children.length===0&&t.children.shift()),t.data=t.data??{};let c=t.data.hProperties??{},l=et(c.className);t.data.hProperties={...c,className:[...l,`markdown-alert`,`markdown-alert-${o}`]}})},nt={...u,attributes:{...u.attributes,"*":[...u.attributes?.[`*`]??[],`className`,`id`],a:[`href`,`title`,`target`,`rel`],img:[...u.attributes?.img??[],`src`,`alt`,`title`,`width`,`height`,`loading`]},tagNames:[...u.tagNames??[],`img`,`details`,`summary`,`figure`,`figcaption`,`mark`,`kbd`,`sub`,`sup`],protocols:{...u.protocols,src:[`http`,`https`],href:[`http`,`https`,`mailto`,`tel`]}};function rt({children:e,content:t,components:n,includeStandard:r=!1,includeHeadings:i=!1,allowHtml:a=!0}){return(0,J.jsx)(`div`,{"data-testid":`markdown-renderer`,children:(0,J.jsx)(B,{components:{code:Ne,ul:Pe,ol:Fe,li:Ie,hr:$e,table:qe,th:Je,td:Ye,blockquote:Qe,...r&&{a:Re,p:Le},...i&&{h1:ze,h2:Be,h3:Ve,h4:He,h5:Ue,h6:We},...n},remarkPlugins:[tt,L,Te],rehypePlugins:a?[de,[F,nt]]:void 0,children:t??e??``})})}export{Y as n,rt as t};
@@ -1,4 +1,4 @@
1
- import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n}from"./vendor-styling-CI0PQ3ab.js";import{L as r}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js";import{n as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js";import{t as a}from"./useMutation-u8UgRgDK.js";import{t as o}from"./useTranslation-Cbf5AGg_.js";import{t as s}from"./declaration-BGsHjPEW.js";import{C as c,E as l,S as u,f as d,n as f}from"./active-backend-context-BCXRv5pm.js";import{t as p}from"./createLucideIcon-D4Tak8A1.js";import{t as m}from"./search-dIQ09UY2.js";import{t as h}from"./trash-2-BU6BlW4i.js";import{t as g}from"./x-ZE4iplpF.js";import{t as _}from"./utils-DB9LsAzA.js";import{t as v}from"./modal-backdrop-Dsmzgr5s.js";import{n as y}from"./modal-classes-B4oit_4c.js";import{l as b}from"./form-control-classes-CvUaw8_L.js";import{t as x}from"./brand-button-2Tp3aXk1.js";import{t as S}from"./modal-close-button-DQElFMPo.js";import{n as C,t as w}from"./settings-input-CzNOq-Pj.js";import{a as T,c as E,i as D,l as O,o as k,s as A,t as j,u as M}from"./settings-service.api-Bsu1PvYO.js";import{r as N}from"./use-settings-DNJC4gqu.js";import{t as P}from"./confirmation-modal-4n_944zq.js";import{t as F}from"./settings-dropdown-input-BD5C9fBn.js";import{a as I,n as L,o as R,r as z,t as B}from"./extension-module-card-classes-BlO4w702.js";import{a as ee,f as V,h as H,i as U,l as W,m as G,n as K,o as q,p as J,r as Y,s as X,t as te,u as ne}from"./install-server-modal-CvHvzZj3.js";import{t as Z}from"./vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-pIgQDxTc.js";import{n as re}from"./circle-plus-check-toggle-QQJKUnF6.js";import{n as ie}from"./extensions-navigation-DqSl7CJw.js";import{t as ae}from"./enum-filter-dropdown-CW_mBg0e.js";import{n as oe}from"./settings-like-page-layout-classes-DLrsPCaI.js";var se=p(`puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),Q=e(t(),1);function ce(){let e=i(),{data:t}=N();return a({mutationFn:async e=>{let n=D(t?.agent_settings?.mcp_config),r={sse_servers:[...n.sse_servers],stdio_servers:[...n.stdio_servers],shttp_servers:[...n.shttp_servers]},i=e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`&&`url`in e){let t=e.url;return typeof t==`string`?t:void 0}};if(e.type===`sse`){if(!e.url)return;let t=r.sse_servers.findIndex(t=>i(t)===e.url);t>=0&&r.sse_servers.splice(t,1)}else if(e.type===`shttp`){if(!e.url)return;let t=r.shttp_servers.findIndex(t=>i(t)===e.url);t>=0&&r.shttp_servers.splice(t,1)}else if(e.type===`stdio`){if(!e.name||!e.command)return;let t=r.stdio_servers.findIndex(t=>t.name===e.name&&t.command===e.command&&JSON.stringify(t.args??[])===JSON.stringify(e.args??[]));t>=0&&r.stdio_servers.splice(t,1)}else return;await j.saveSettings({agent_settings_diff:{mcp_config:E(r)}})},onSuccess:()=>{e.invalidateQueries({queryKey:d.personal()})}})}function le(e){return e.name?.trim()||void 0}function ue(e,t){let n=le(e);return n&&n!==t?.id?n:t?.name?t.name:e.type===`stdio`?n??e.command??``:e.url??``}var $=n();function de(e){switch(e){case`sse`:return`SSE`;case`shttp`:return`HTTP`;case`stdio`:return`STDIO`;default:return e}}function fe(e){if(e.type===`stdio`){let t=e.args&&e.args.length>0?` ${e.args.join(` `)}`:``;return`${e.command??``}${t}`.trim()}return e.url??``}function pe({server:e,onEdit:t,onDelete:n}){let{t:r}=o(`openhands`),i=X(e,V(Z)),a=ue(e,i),c=fe(e),l=de(e.type);return(0,$.jsx)(`div`,{"data-testid":`mcp-server-item`,"data-server-id":e.id,role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},"aria-label":r(s.MCP$EDIT_SERVER_ARIA,{name:a}),className:_(`flex min-h-[132px] flex-col overflow-hidden p-4 text-left`,I,z),children:(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsx)(q,{entry:i,fallback:(0,$.jsx)(se,{strokeWidth:2.25})}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3`,children:[(0,$.jsxs)(`header`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`truncate text-sm font-semibold`,title:a,children:a}),(0,$.jsx)(`p`,{className:`mt-0.5 text-xs text-tertiary-alt`,children:l})]}),(0,$.jsx)(re,{testId:`mcp-installed-toggle-${e.id}`,isSelected:!0,onToggle:e=>{e||n()},enableLabelKey:s.MCP$TOGGLE_ADD_SERVER,disableLabelKey:s.MCP$TOGGLE_REMOVE_SERVER})]}),i?.description?(0,$.jsx)(`p`,{"data-testid":`mcp-server-description-${e.id}`,className:`line-clamp-2 break-words text-xs leading-relaxed text-tertiary-light`,children:i.description}):null,c?(0,$.jsx)(`p`,{"data-testid":`mcp-server-detail-${e.id}`,className:`truncate text-xs text-tertiary-alt`,title:c,children:c}):null]})]})})}function me({servers:e,hasAnyInstalled:t,query:n=``,onEdit:r,onDelete:i}){let{t:a}=o(`openhands`);return e.length===0?t&&n.trim().length>0?(0,$.jsx)(`div`,{"data-testid":`mcp-installed-empty-search`,className:`rounded-xl border border-[var(--oh-border)] p-6 text-center`,children:(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light`,children:a(s.MCP$SEARCH_EMPTY)})}):(0,$.jsxs)(`div`,{"data-testid":`mcp-installed-empty`,className:R,children:[(0,$.jsx)(`p`,{className:`text-sm text-white`,children:a(s.MCP$INSTALLED_EMPTY_TITLE)}),(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light mt-1`,children:a(s.MCP$INSTALLED_EMPTY_HINT)})]}):(0,$.jsx)(`div`,{className:L,children:(0,$.jsx)(`div`,{"data-testid":`mcp-installed-list`,className:B,children:e.map(e=>(0,$.jsx)(pe,{server:e,onEdit:()=>r(e),onDelete:()=>i(e.id)},e.id))})})}function he({entry:e,onClick:t,onAdd:n}){let r=W(e),i=(()=>{switch(r?.kind){case`stdio`:return`STDIO`;case`shttp`:return`HTTP`;case`sse`:return`SSE`;default:return``}})();return(0,$.jsx)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},"data-testid":`mcp-marketplace-card-${e.id}`,className:_(`flex min-h-[132px] flex-col overflow-hidden p-4 text-left`,I,z),children:(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsx)(q,{entry:e}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3`,children:[(0,$.jsxs)(`header`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`truncate text-sm font-semibold`,children:e.name}),(0,$.jsx)(`p`,{className:`mt-0.5 text-xs text-tertiary-alt`,children:i})]}),(0,$.jsx)(re,{testId:`mcp-marketplace-toggle-${e.id}`,isSelected:!1,onToggle:e=>{e&&n()},enableLabelKey:s.MCP$TOGGLE_ADD_SERVER,disableLabelKey:s.MCP$TOGGLE_ADD_SERVER})]}),(0,$.jsx)(`p`,{className:`line-clamp-3 text-xs leading-relaxed text-tertiary-light`,children:e.description})]})]})})}function ge({onSelect:e,onAdd:t,query:n=``}){let{t:r}=o(`openhands`),i=ne(V(Z)).filter(e=>G(e,n));return(0,$.jsxs)(`section`,{"data-testid":`mcp-marketplace-section`,className:`flex flex-col gap-3`,children:[(0,$.jsx)(`h2`,{className:`text-base font-medium text-foreground`,children:r(s.MCP$LIBRARY_TITLE)}),i.length===0?(0,$.jsx)(`div`,{"data-testid":`mcp-marketplace-empty`,className:`rounded-xl border border-dashed border-[var(--oh-border)] p-6 text-center`,children:(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light`,children:r(s.MCP$SEARCH_EMPTY)})}):(0,$.jsx)(`div`,{className:L,children:(0,$.jsx)(`div`,{"data-testid":`mcp-marketplace-grid`,className:B,children:i.map(n=>(0,$.jsx)(he,{entry:n,onClick:()=>e(n),onAdd:()=>t(n)},n.id))})})]})}function _e({mode:e,server:t,existingServers:n,onSubmit:r,onCancel:i,onDelete:a,isActionDisabled:c=!1,onTest:l,isTestPending:u=!1,testMessage:d=null}){let{t:f}=o(`openhands`),[p,m]=Q.useState(t?.type||`sse`),[g,v]=Q.useState(()=>t?.auth?.strategy===`oauth2`?`oauth2`:t?.auth?.strategy===`header`?`header`:t?.auth?.strategy===`bearer`||t?.auth?.strategy===`api_key`?`bearer`:`none`),[y,S]=Q.useState(()=>t?.auth?.strategy===`oauth2`?t.auth.authentication?.client_auth_method??`auto`:`auto`),[T,E]=Q.useState(null),D=Q.useRef(null),k=[{key:`sse`,label:f(s.SETTINGS$MCP_SERVER_TYPE_SSE)},{key:`stdio`,label:f(s.SETTINGS$MCP_SERVER_TYPE_STDIO)},{key:`shttp`,label:f(s.SETTINGS$MCP_SERVER_TYPE_SHTTP)}],A=[{key:`none`,label:f(s.SETTINGS$MCP_AUTH_MODE_NONE)},{key:`bearer`,label:f(s.SETTINGS$MCP_AUTH_MODE_BEARER)},{key:`header`,label:f(s.SETTINGS$MCP_AUTH_MODE_HEADER)},{key:`oauth2`,label:f(s.SETTINGS$MCP_AUTH_MODE_OAUTH)}],j=[{key:`auto`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_AUTO)},{key:`none`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_NONE)},{key:`client_secret_post`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_SECRET_POST)},{key:`client_secret_basic`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_SECRET_BASIC)},{key:`private_key_jwt`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_PRIVATE_KEY_JWT)}],N=e=>{if(!e)return f(s.SETTINGS$MCP_ERROR_URL_REQUIRED);try{let t=new URL(e);if(![`http:`,`https:`].includes(t.protocol))return f(s.SETTINGS$MCP_ERROR_URL_INVALID_PROTOCOL)}catch{return f(s.SETTINGS$MCP_ERROR_URL_INVALID)}return null},P=e=>e?M(e)?null:f(s.SETTINGS$MCP_ERROR_NAME_INVALID):f(s.SETTINGS$MCP_ERROR_NAME_REQUIRED),I=r=>!n||!(e===`add`||e===`edit`&&t?.name!==r)?null:n.filter(e=>e.type===`stdio`).map(e=>e.name).filter(Boolean).includes(r)?f(s.SETTINGS$MCP_ERROR_NAME_DUPLICATE):null,L=e=>e?e.includes(` `)?f(s.SETTINGS$MCP_ERROR_COMMAND_NO_SPACES):null:f(s.SETTINGS$MCP_ERROR_COMMAND_REQUIRED),R=r=>{if(!n)return null;let i=t?.url;return(e===`add`||e===`edit`&&i!==r)&&n.some(e=>(e.type===`sse`||e.type===`shttp`)&&e.url===r)?f(s.SETTINGS$MCP_ERROR_URL_DUPLICATE):null},z=e=>{if(!e.trim())return null;let t=e.split(`
1
+ import{a as e}from"./rolldown-runtime-BFRubm34.js";import{Ct as t,bt as n}from"./vendor-styling-CI0PQ3ab.js";import{L as r}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~jkpzbynd-CkpBIhVe.js";import{n as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~e0djk9ee-Cw6LUe8p.js";import{t as a}from"./useMutation-u8UgRgDK.js";import{t as o}from"./useTranslation-Cbf5AGg_.js";import{t as s}from"./declaration-BGsHjPEW.js";import{C as c,E as l,S as u,f as d,n as f}from"./active-backend-context-DHhm10VS.js";import{t as p}from"./createLucideIcon-D4Tak8A1.js";import{t as m}from"./search-dIQ09UY2.js";import{t as h}from"./trash-2-BU6BlW4i.js";import{t as g}from"./x-ZE4iplpF.js";import{t as _}from"./utils-DB9LsAzA.js";import{t as v}from"./modal-backdrop-zVwfOJZr.js";import{n as y}from"./modal-classes-3qT9Ap7Q.js";import{l as b}from"./form-control-classes-CbdN5aO3.js";import{t as x}from"./brand-button-B1izLAdR.js";import{t as S}from"./modal-close-button-BcIBUdSq.js";import{n as C,t as w}from"./settings-input-BsgQWS5R.js";import{a as T,c as E,i as D,l as O,o as k,s as A,t as j,u as M}from"./settings-service.api-DPTFyRXL.js";import{r as N}from"./use-settings-BeJap6YL.js";import{t as P}from"./confirmation-modal-DGBWM2Ls.js";import{t as F}from"./settings-dropdown-input-Dhx9ErGd.js";import{a as I,n as L,o as R,r as z,t as B}from"./extension-module-card-classes-9V3J9J_b.js";import{a as ee,f as V,h as H,i as U,l as W,m as G,n as K,o as q,p as J,r as Y,s as X,t as te,u as ne}from"./install-server-modal-BYjqoRyX.js";import{t as Z}from"./vendor~root-layout~index-home~home~mcp~automations-list~onboarding-modal-C4-GDgiF.js";import{n as re}from"./circle-plus-check-toggle-DoFIjVE0.js";import{n as ie}from"./extensions-navigation-BMc9Nluv.js";import{t as ae}from"./enum-filter-dropdown-JLYv1t8L.js";import{n as oe}from"./settings-like-page-layout-classes-Cdl6jOe5.js";var se=p(`puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),Q=e(t(),1);function ce(){let e=i(),{data:t}=N();return a({mutationFn:async e=>{let n=D(t?.agent_settings?.mcp_config),r={sse_servers:[...n.sse_servers],stdio_servers:[...n.stdio_servers],shttp_servers:[...n.shttp_servers]},i=e=>{if(typeof e==`string`)return e;if(e&&typeof e==`object`&&`url`in e){let t=e.url;return typeof t==`string`?t:void 0}};if(e.type===`sse`){if(!e.url)return;let t=r.sse_servers.findIndex(t=>i(t)===e.url);t>=0&&r.sse_servers.splice(t,1)}else if(e.type===`shttp`){if(!e.url)return;let t=r.shttp_servers.findIndex(t=>i(t)===e.url);t>=0&&r.shttp_servers.splice(t,1)}else if(e.type===`stdio`){if(!e.name||!e.command)return;let t=r.stdio_servers.findIndex(t=>t.name===e.name&&t.command===e.command&&JSON.stringify(t.args??[])===JSON.stringify(e.args??[]));t>=0&&r.stdio_servers.splice(t,1)}else return;await j.saveSettings({agent_settings_diff:{mcp_config:E(r)}})},onSuccess:()=>{e.invalidateQueries({queryKey:d.personal()})}})}function le(e){return e.name?.trim()||void 0}function ue(e,t){let n=le(e);return n&&n!==t?.id?n:t?.name?t.name:e.type===`stdio`?n??e.command??``:e.url??``}var $=n();function de(e){switch(e){case`sse`:return`SSE`;case`shttp`:return`HTTP`;case`stdio`:return`STDIO`;default:return e}}function fe(e){if(e.type===`stdio`){let t=e.args&&e.args.length>0?` ${e.args.join(` `)}`:``;return`${e.command??``}${t}`.trim()}return e.url??``}function pe({server:e,onEdit:t,onDelete:n}){let{t:r}=o(`openhands`),i=X(e,V(Z)),a=ue(e,i),c=fe(e),l=de(e.type);return(0,$.jsx)(`div`,{"data-testid":`mcp-server-item`,"data-server-id":e.id,role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},"aria-label":r(s.MCP$EDIT_SERVER_ARIA,{name:a}),className:_(`flex min-h-[132px] flex-col overflow-hidden p-4 text-left`,I,z),children:(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsx)(q,{entry:i,fallback:(0,$.jsx)(se,{strokeWidth:2.25})}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3`,children:[(0,$.jsxs)(`header`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`truncate text-sm font-semibold`,title:a,children:a}),(0,$.jsx)(`p`,{className:`mt-0.5 text-xs text-tertiary-alt`,children:l})]}),(0,$.jsx)(re,{testId:`mcp-installed-toggle-${e.id}`,isSelected:!0,onToggle:e=>{e||n()},enableLabelKey:s.MCP$TOGGLE_ADD_SERVER,disableLabelKey:s.MCP$TOGGLE_REMOVE_SERVER})]}),i?.description?(0,$.jsx)(`p`,{"data-testid":`mcp-server-description-${e.id}`,className:`line-clamp-2 break-words text-xs leading-relaxed text-tertiary-light`,children:i.description}):null,c?(0,$.jsx)(`p`,{"data-testid":`mcp-server-detail-${e.id}`,className:`truncate text-xs text-tertiary-alt`,title:c,children:c}):null]})]})})}function me({servers:e,hasAnyInstalled:t,query:n=``,onEdit:r,onDelete:i}){let{t:a}=o(`openhands`);return e.length===0?t&&n.trim().length>0?(0,$.jsx)(`div`,{"data-testid":`mcp-installed-empty-search`,className:`rounded-xl border border-[var(--oh-border)] p-6 text-center`,children:(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light`,children:a(s.MCP$SEARCH_EMPTY)})}):(0,$.jsxs)(`div`,{"data-testid":`mcp-installed-empty`,className:R,children:[(0,$.jsx)(`p`,{className:`text-sm text-white`,children:a(s.MCP$INSTALLED_EMPTY_TITLE)}),(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light mt-1`,children:a(s.MCP$INSTALLED_EMPTY_HINT)})]}):(0,$.jsx)(`div`,{className:L,children:(0,$.jsx)(`div`,{"data-testid":`mcp-installed-list`,className:B,children:e.map(e=>(0,$.jsx)(pe,{server:e,onEdit:()=>r(e),onDelete:()=>i(e.id)},e.id))})})}function he({entry:e,onClick:t,onAdd:n}){let r=W(e),i=(()=>{switch(r?.kind){case`stdio`:return`STDIO`;case`shttp`:return`HTTP`;case`sse`:return`SSE`;default:return``}})();return(0,$.jsx)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{e.target===e.currentTarget&&(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},"data-testid":`mcp-marketplace-card-${e.id}`,className:_(`flex min-h-[132px] flex-col overflow-hidden p-4 text-left`,I,z),children:(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsx)(q,{entry:e}),(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3`,children:[(0,$.jsxs)(`header`,{className:`flex items-start justify-between gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`h3`,{className:`truncate text-sm font-semibold`,children:e.name}),(0,$.jsx)(`p`,{className:`mt-0.5 text-xs text-tertiary-alt`,children:i})]}),(0,$.jsx)(re,{testId:`mcp-marketplace-toggle-${e.id}`,isSelected:!1,onToggle:e=>{e&&n()},enableLabelKey:s.MCP$TOGGLE_ADD_SERVER,disableLabelKey:s.MCP$TOGGLE_ADD_SERVER})]}),(0,$.jsx)(`p`,{className:`line-clamp-3 text-xs leading-relaxed text-tertiary-light`,children:e.description})]})]})})}function ge({onSelect:e,onAdd:t,query:n=``}){let{t:r}=o(`openhands`),i=ne(V(Z)).filter(e=>G(e,n));return(0,$.jsxs)(`section`,{"data-testid":`mcp-marketplace-section`,className:`flex flex-col gap-3`,children:[(0,$.jsx)(`h2`,{className:`text-base font-medium text-foreground`,children:r(s.MCP$LIBRARY_TITLE)}),i.length===0?(0,$.jsx)(`div`,{"data-testid":`mcp-marketplace-empty`,className:`rounded-xl border border-dashed border-[var(--oh-border)] p-6 text-center`,children:(0,$.jsx)(`p`,{className:`text-xs text-tertiary-light`,children:r(s.MCP$SEARCH_EMPTY)})}):(0,$.jsx)(`div`,{className:L,children:(0,$.jsx)(`div`,{"data-testid":`mcp-marketplace-grid`,className:B,children:i.map(n=>(0,$.jsx)(he,{entry:n,onClick:()=>e(n),onAdd:()=>t(n)},n.id))})})]})}function _e({mode:e,server:t,existingServers:n,onSubmit:r,onCancel:i,onDelete:a,isActionDisabled:c=!1,onTest:l,isTestPending:u=!1,testMessage:d=null}){let{t:f}=o(`openhands`),[p,m]=Q.useState(t?.type||`sse`),[g,v]=Q.useState(()=>t?.auth?.strategy===`oauth2`?`oauth2`:t?.auth?.strategy===`header`?`header`:t?.auth?.strategy===`bearer`||t?.auth?.strategy===`api_key`?`bearer`:`none`),[y,S]=Q.useState(()=>t?.auth?.strategy===`oauth2`?t.auth.authentication?.client_auth_method??`auto`:`auto`),[T,E]=Q.useState(null),D=Q.useRef(null),k=[{key:`sse`,label:f(s.SETTINGS$MCP_SERVER_TYPE_SSE)},{key:`stdio`,label:f(s.SETTINGS$MCP_SERVER_TYPE_STDIO)},{key:`shttp`,label:f(s.SETTINGS$MCP_SERVER_TYPE_SHTTP)}],A=[{key:`none`,label:f(s.SETTINGS$MCP_AUTH_MODE_NONE)},{key:`bearer`,label:f(s.SETTINGS$MCP_AUTH_MODE_BEARER)},{key:`header`,label:f(s.SETTINGS$MCP_AUTH_MODE_HEADER)},{key:`oauth2`,label:f(s.SETTINGS$MCP_AUTH_MODE_OAUTH)}],j=[{key:`auto`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_AUTO)},{key:`none`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_NONE)},{key:`client_secret_post`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_SECRET_POST)},{key:`client_secret_basic`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_SECRET_BASIC)},{key:`private_key_jwt`,label:f(s.SETTINGS$MCP_OAUTH_CLIENT_AUTH_PRIVATE_KEY_JWT)}],N=e=>{if(!e)return f(s.SETTINGS$MCP_ERROR_URL_REQUIRED);try{let t=new URL(e);if(![`http:`,`https:`].includes(t.protocol))return f(s.SETTINGS$MCP_ERROR_URL_INVALID_PROTOCOL)}catch{return f(s.SETTINGS$MCP_ERROR_URL_INVALID)}return null},P=e=>e?M(e)?null:f(s.SETTINGS$MCP_ERROR_NAME_INVALID):f(s.SETTINGS$MCP_ERROR_NAME_REQUIRED),I=r=>!n||!(e===`add`||e===`edit`&&t?.name!==r)?null:n.filter(e=>e.type===`stdio`).map(e=>e.name).filter(Boolean).includes(r)?f(s.SETTINGS$MCP_ERROR_NAME_DUPLICATE):null,L=e=>e?e.includes(` `)?f(s.SETTINGS$MCP_ERROR_COMMAND_NO_SPACES):null:f(s.SETTINGS$MCP_ERROR_COMMAND_REQUIRED),R=r=>{if(!n)return null;let i=t?.url;return(e===`add`||e===`edit`&&i!==r)&&n.some(e=>(e.type===`sse`||e.type===`shttp`)&&e.url===r)?f(s.SETTINGS$MCP_ERROR_URL_DUPLICATE):null},z=e=>{if(!e.trim())return null;let t=e.split(`
2
2
  `);for(let e=0;e<t.length;e+=1){let n=t[e].trim();if(n){let e=n.indexOf(`=`);if(e===-1||!n.substring(0,e).trim())return f(s.SETTINGS$MCP_ERROR_ENV_INVALID_FORMAT)}}return null},B=e=>{if(g===`header`){let t=e.get(`headers`)?.toString()||``;return t.trim()?z(t):f(s.SETTINGS$MCP_ERROR_HEADER_REQUIRED)}if(g===`oauth2`){let t=e.get(`oauth_client_id`)?.toString().trim();if(e.get(`oauth_client_secret`)?.toString().trim()&&!t)return f(s.SETTINGS$MCP_ERROR_OAUTH_SECRET_REQUIRES_ID)}return null},ee=e=>{if(!e.trim())return null;let t=parseInt(e.trim(),10);return Number.isNaN(t)?f(s.SETTINGS$MCP_ERROR_TIMEOUT_INVALID_NUMBER):t<=0?f(s.SETTINGS$MCP_ERROR_TIMEOUT_POSITIVE):t>3600?f(s.SETTINGS$MCP_ERROR_TIMEOUT_MAX_EXCEEDED):null},V=e=>{let t=e.get(`name`)?.toString().trim()||``,n=e.get(`command`)?.toString().trim()||``,r=e.get(`env`)?.toString()||``;return P(t)||I(t)||L(n)||z(r)||null},H=e=>{if(p===`sse`||p===`shttp`){let t=e.get(`url`)?.toString().trim()||``,n=N(t);if(n)return n;let r=R(t);if(r)return r;let i=e.get(`name`)?.toString().trim()||``;if(i&&!M(i))return f(s.SETTINGS$MCP_ERROR_NAME_INVALID);if(p===`shttp`){let t=ee(e.get(`timeout`)?.toString()||``);if(t)return t}return B(e)}return p===`stdio`?V(e):null},U=e=>{let t={},n=e.trim();if(!n)return t;for(let e of n.split(`
3
3
  `)){let n=e.trim(),r=n.indexOf(`=`),i=r>=0?n.substring(0,r).trim():``;n&&r!==-1&&i&&(t[i]=n.substring(r+1).trim())}return t},W=e=>e?Object.entries(e).map(([e,t])=>`${e}=${t}`).join(`
4
4
  `):``,G=e=>e?.strategy===`bearer`||e?.strategy===`api_key`?e.value??``:``,K=e=>e?.strategy===`header`?W(e.headers):``,q=t?.auth?.strategy===`oauth2`?t.auth.authentication:void 0,J=t?.auth?.strategy===`oauth2`?t.auth.state:void 0,Y=e=>{if(g===`none`)return;if(g===`bearer`){let n=e.get(`api_key`)?.toString().trim();return n?t?.auth?.strategy===`api_key`?{...t.auth,value:n}:{strategy:`bearer`,value:n}:void 0}if(g===`header`)return{strategy:`header`,headers:U(e.get(`headers`)?.toString()||``)};let n=e.get(`oauth_scopes`)?.toString().trim(),r=e.get(`oauth_client_id`)?.toString().trim(),i=e.get(`oauth_client_secret`)?.toString().trim();return{strategy:`oauth2`,authentication:{type:`oauth`,...y!==`auto`&&{client_auth_method:y},...n&&{scopes:n},...r&&{client_id:r},...i&&{client_secret:i}},...J&&{state:J}}},X=e=>{let n={id:t?.id||`${p}-${Date.now()}`,type:p};if(p===`sse`||p===`shttp`){let t=e.get(`name`)?.toString().trim(),r=e.get(`url`)?.toString().trim(),i=e.get(`timeout`)?.toString().trim(),a=Y(e),o={...n,...t&&{name:t},url:r,...a&&{auth:a}};if(p===`shttp`&&i){let e=parseInt(i,10);Number.isNaN(e)||(o.timeout=e)}return o}let r=e.get(`name`)?.toString().trim(),i=e.get(`command`)?.toString().trim(),a=e.get(`args`)?.toString().trim(),o=e.get(`env`)?.toString().trim(),s=a?a.split(`