@openhands/agent-canvas 1.0.0-rc.9 → 1.0.0
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.
- package/README.md +46 -31
- package/README.windows.md +2 -2
- package/bin/agent-canvas.mjs +3 -1
- package/build/assets/Trans-CBypf0vt.js +1 -0
- package/build/assets/{acp-providers-Dzb4nxxB.js → acp-providers-BMyF5WII.js} +1 -1
- package/build/assets/active-backend-context-Cy_Ui5d7.js +1 -0
- package/build/assets/add-backend-modal-CUw7x0zm.js +1 -0
- package/build/assets/{agent-server-client-options-wXLeJYeM.js → agent-server-client-options-FoO1qgAQ.js} +1 -1
- package/build/assets/agent-server-conversation-service.api-D6Cmbnhd.js +5 -0
- package/build/assets/{agent-settings-Blipgztd.js → agent-settings-DW4vwOaz.js} +2 -2
- package/build/assets/{alert-banner-Bsvys-hT.js → alert-banner-BHmoArV2.js} +1 -1
- package/build/assets/{analytics-consent-form-modal-Cujm1lCj.js → analytics-consent-form-modal-BNK0yu4L.js} +1 -1
- package/build/assets/api-key-entry-screen-BjVajIjf.js +1 -0
- package/build/assets/app-settings-C-5X6RzZ.js +1 -0
- package/build/assets/automation-detail-uDMoYmAc.js +1 -0
- package/build/assets/automations-list-DBCKCbId.js +1 -0
- package/build/assets/{back-nav-button-D20Avel_.js → back-nav-button-Bckz5Wh6.js} +1 -1
- package/build/assets/backend-form-modal-D2-XqJA4.js +1 -0
- package/build/assets/{backend-synced-settings-badge-Da0G6Lwv.js → backend-synced-settings-badge-Dx16CR_k.js} +1 -1
- package/build/assets/{base-modal-DvuGYyu1.js → base-modal-7QRNzf6r.js} +1 -1
- package/build/assets/{brand-button-9SOzmqPP.js → brand-button-CKLvirxz.js} +1 -1
- package/build/assets/browser-D1ZybR7v.js +5 -0
- package/build/assets/browser-store-hzasvz9c.js +1 -0
- package/build/assets/{browser-tab-bveyJhG9.js → browser-tab-iOQjXzmI.js} +1 -1
- package/build/assets/chat-send-button-_Uc9iFpG.js +1 -0
- package/build/assets/check-DfvhVBub.js +1 -0
- package/build/assets/{checkmark--JWAesua.js → checkmark-BHPhb50L.js} +1 -1
- package/build/assets/{chevron-down-B9j6lcFg.js → chevron-down-CMkqyPEY.js} +1 -1
- package/build/assets/{circle-plus-check-toggle-AO9DWyDX.js → circle-plus-check-toggle-ChmnRlpR.js} +1 -1
- package/build/assets/{close--W-tHn1h.js → close-DBs90sI6.js} +1 -1
- package/build/assets/{code-tag-chmctf4w.js → code-tag-BtHOqHwB.js} +1 -1
- package/build/assets/{color-themes-0biOprdo.js → color-themes-CBikRn3w.js} +1 -1
- package/build/assets/{combobox-caret-C9BNHfSu.js → combobox-caret-evUAh6YW.js} +1 -1
- package/build/assets/{command-store-UzKGSUC2.js → command-store-DZfR8QtE.js} +1 -1
- package/build/assets/condenser-settings-0tw3yXX8.js +1 -0
- package/build/assets/{confirmation-modal-Cq3eqvqH.js → confirmation-modal-DWuxe1zG.js} +1 -1
- package/build/assets/{context-menu-list-item-BQU0jZPq.js → context-menu-list-item-BbHFxHaq.js} +1 -1
- package/build/assets/conversation-B1v96pQf.js +19 -0
- package/build/assets/conversation-DgfcjCPm.js +1 -0
- package/build/assets/{conversation-local-storage-an3MiIiJ.js → conversation-local-storage-Btum2xBJ.js} +1 -1
- package/build/assets/conversation-panel-TJ7swm6a.js +1 -0
- package/build/assets/conversation-service.api-DXawvmNN.js +1 -0
- package/build/assets/conversation-state-store-DmuPn875.js +1 -0
- package/build/assets/{conversation-store-FQmakEd-.js → conversation-store-Bu89Yxg1.js} +1 -1
- package/build/assets/{conversation-tab-empty-state-C8tztloo.js → conversation-tab-empty-state-7js7FjYM.js} +1 -1
- package/build/assets/{copy-CdKN5rtJ.js → copy-B0SkXenR.js} +1 -1
- package/build/assets/copy-to-clipboard-button-CfH2EQz9.js +1 -0
- package/build/assets/{createLucideIcon-CkGTf9Qj.js → createLucideIcon-Bazr-V-B.js} +1 -1
- package/build/assets/declaration-Cn-NXHEy.js +1 -0
- package/build/assets/{device-verify-YuGXnpRk.js → device-verify-CWKyQ680.js} +1 -1
- package/build/assets/{dist-5dObF4p4.js → dist-Cbu6eGx8.js} +1 -1
- package/build/assets/dist-Dg2JWLGc.js +1 -0
- package/build/assets/{dropdown-classes-CVp0kVdt.js → dropdown-classes-BI1bI1ho.js} +1 -1
- package/build/assets/edit-automation-modal-DdAG6kFZ.js +1 -0
- package/build/assets/{ellipsis-button-k7HLwYth.js → ellipsis-button-DdCsOBHV.js} +1 -1
- package/build/assets/entry.client-DXyvKj5G.js +2 -0
- package/build/assets/{enum-filter-dropdown-COqUq3mB.js → enum-filter-dropdown-WROAIeys.js} +1 -1
- package/build/assets/{environment-switch-overlay-wB5LxfYZ.js → environment-switch-overlay-Dv0imPE6.js} +1 -1
- package/build/assets/{extensions-hub-BYCLWP3d.js → extensions-hub-CkyDPXvn.js} +1 -1
- package/build/assets/{extensions-navigation-3FLKfb6g.js → extensions-navigation-gMR-la1J.js} +1 -1
- package/build/assets/{external-link-BATfjnkz.js → external-link-FsutnU75.js} +1 -1
- package/build/assets/files-tab-DNUoveJZ.js +1 -0
- package/build/assets/files-tab-store-SyvkH3ic.js +1 -0
- package/build/assets/{folder-DPTBlxWb.js → folder-DusyBXDE.js} +1 -1
- package/build/assets/{globe-Dpgjreyy.js → globe-BUcin4kT.js} +1 -1
- package/build/assets/home-D809jWVS.js +1 -0
- package/build/assets/{iconBase-BVhFI-0E.js → iconBase-B6CXDDaE.js} +1 -1
- package/build/assets/index-redirect-nMYgOTBX.js +1 -0
- package/build/assets/install-server-modal-D92Qy57I.js +1 -0
- package/build/assets/{launch-CMZknx1e.js → launch-BnCG2g2a.js} +1 -1
- package/build/assets/lesson-plan-j-ZaE8vK.js +3 -0
- package/build/assets/{lightbulb-S616sGEL.js → lightbulb-BJ5tWmAh.js} +1 -1
- package/build/assets/{link-external-ooNztGLp.js → link-external-DUtmHAHi.js} +1 -1
- package/build/assets/{list-todo-nCa9zxVE.js → list-todo-C-gekh-4.js} +1 -1
- package/build/assets/{llm-client-D6EtdLBs.js → llm-client-BZUkZYlc.js} +1 -1
- package/build/assets/llm-not-configured-banner-PlvJ99rE.js +27 -0
- package/build/assets/llm-settings-Dgk32xRW.js +1 -0
- package/build/assets/llm-settings-Dxo7owKm.js +1 -0
- package/build/assets/llm-subscription-Bvu8BLXc.js +1 -0
- package/build/assets/llm-subscription-service-Bq6z3Wkv.js +1 -0
- package/build/assets/loader-circle-Cw7_q9hg.js +1 -0
- package/build/assets/{loading-spinner-D7bOU6I7.js → loading-spinner-RF3IlMF5.js} +1 -1
- package/build/assets/manage-backends-modal-BT66a6e0.js +1 -0
- package/build/assets/manifest-b8402d59.js +1 -0
- package/build/assets/markdown-renderer-Tw6FR2ad.js +2 -0
- package/build/assets/mcp-B_pA7vZg.js +9 -0
- package/build/assets/mcp-client-ppbYplKX.js +1 -0
- package/build/assets/messages-Cg9aNVi6.js +41 -0
- package/build/assets/{modal-backdrop-_VbcKk5K.js → modal-backdrop-DRpBVVW5.js} +1 -1
- package/build/assets/{modal-body-Cd-PtMHr.js → modal-body-CEV2O67p.js} +1 -1
- package/build/assets/{modal-classes-CNm4ovfm.js → modal-classes-B2DuQ9qD.js} +1 -1
- package/build/assets/{modal-close-button-Dbo0NAMt.js → modal-close-button-gtb7RHFB.js} +1 -1
- package/build/assets/model-selector-CAv3RrJ3.js +1 -0
- package/build/assets/{mouse-pointer-click-D0QNGSIo.js → mouse-pointer-click-B3i6HcaF.js} +1 -1
- package/build/assets/{navigation-context-BpAOh_t5.js → navigation-context-CM9JmTvm.js} +1 -1
- package/build/assets/{navigation-link-Dci7Nuyf.js → navigation-link-FmXzqR1J.js} +1 -1
- package/build/assets/onboarding-Q9CzuVWy.js +1 -0
- package/build/assets/{openhands-logo-Dzm-d_V_.js → openhands-logo-B4aEO2sf.js} +1 -1
- package/build/assets/option-service.api-C-s2BYZp.js +1 -0
- package/build/assets/organization-service.api-CXTKpFnV.js +1 -0
- package/build/assets/{path-utils-DKu3CNkH.js → path-utils-CE98fIFP.js} +1 -1
- package/build/assets/{pencil-DPEtl5QD.js → pencil-bWrxRWlr.js} +1 -1
- package/build/assets/{plan-components-CutRBi0G.js → plan-components-BF-X7vnQ.js} +1 -1
- package/build/assets/{planner-tab-YkOp7QXt.js → planner-tab-jkyaGiRc.js} +1 -1
- package/build/assets/plus-BTCK8WtR.js +1 -0
- package/build/assets/{profiles-client-BjUo3q05.js → profiles-client-CQ9L1yHR.js} +1 -1
- package/build/assets/providers-B3hkV58J.js +1 -0
- package/build/assets/proxy-BOcEWkCD.js +1 -0
- package/build/assets/{react-dom-hVBnwgwZ.js → react-dom-BBXlXOZX.js} +1 -1
- package/build/assets/{react-CM_dJw1Z.js → react-uQK8du1l.js} +1 -1
- package/build/assets/{react-Dy05vyj5.js → react-x84lbX6s.js} +1 -1
- package/build/assets/{recommended-automations-launcher-WxaZcjRD.js → recommended-automations-launcher-DMk35aFI.js} +11 -11
- package/build/assets/root-CV0kyxfP.js +2 -0
- package/build/assets/root-PB2Jnj61.css +1 -0
- package/build/assets/root-layout-Bl4Qzg5J.js +2 -0
- package/build/assets/{runtime-waiting-state-8i0Z3A_i.js → runtime-waiting-state-C1hJpXxl.js} +1 -1
- package/build/assets/sdk-section-page-DHbC2_j3.js +1 -0
- package/build/assets/sdk-settings-schema-z51bBmMl.js +1 -0
- package/build/assets/{search-C_l_XW4e.js → search-Dxm1MUMi.js} +1 -1
- package/build/assets/{secrets-service-Skzza9sx.js → secrets-service-DlScPUwy.js} +1 -1
- package/build/assets/secrets-settings-B97-JKBe.js +1 -0
- package/build/assets/settings-BpmooyBV.js +1 -0
- package/build/assets/{settings-dropdown-input-BP-arqjU.js → settings-dropdown-input-hIIAlmHb.js} +1 -1
- package/build/assets/{settings-gear-f-zWpxfI.js → settings-gear-DQLTCnFx.js} +1 -1
- package/build/assets/{settings-index-BLfmrKRl.js → settings-index-kKASonWk.js} +1 -1
- package/build/assets/{settings-input-BM8ANxDb.js → settings-input-BlOzCtP3.js} +1 -1
- package/build/assets/{settings-list-classes-B9uo5WES.js → settings-list-classes-BFRbCy4U.js} +1 -1
- package/build/assets/settings-modal-C4pZwj-l.js +1 -0
- package/build/assets/{settings-section-header-context-Cid25HM2.js → settings-section-header-context-iz4Go0dL.js} +1 -1
- package/build/assets/settings-service.api-DVLwi82B.js +1 -0
- package/build/assets/{settings-switch-xa6q4M6j.js → settings-switch-6cXIH-UE.js} +1 -1
- package/build/assets/{settings-utils--H_EvFjx.js → settings-utils-CfScEaPn.js} +1 -1
- package/build/assets/shared-conversation-CLkayApe.js +1 -0
- package/build/assets/sidebar-mobile-menu-toggle-C8uT4Mhd.js +1 -0
- package/build/assets/{sidebar-nav-link-BekRAssb.js → sidebar-nav-link-BKZiAQxQ.js} +1 -1
- package/build/assets/{skill-card-pill-row-DeodrwPG.js → skill-card-pill-row-D13WRKIE.js} +1 -1
- package/build/assets/{skills-BE5HJuGM.js → skills-NpRk6v79.js} +1 -1
- package/build/assets/{skills-client-CgraS-wA.js → skills-client-DsqwQEwj.js} +1 -1
- package/build/assets/{skills-plugins-rIza_fUf.js → skills-plugins-bkwxItAw.js} +1 -1
- package/build/assets/{skills-settings-Dvl7gpEx.js → skills-settings-DMbrlB2b.js} +2 -2
- package/build/assets/{square-chevron-right-BWAB7NPp.js → square-chevron-right-DxZKcVq4.js} +1 -1
- package/build/assets/{styled-tooltip-X61SEwqk.js → styled-tooltip-DG1ofAcS.js} +1 -1
- package/build/assets/suspense-sOGeme-f.js +1 -0
- package/build/assets/{switch-skeleton-BbIWemkK.js → switch-skeleton-CZ6XCVZk.js} +1 -1
- package/build/assets/{task-list-tab-BFnyHGsn.js → task-list-tab-CddMPNCD.js} +1 -1
- package/build/assets/telemetry-CX4mTZUw.js +2 -0
- package/build/assets/{terminal-BFypysgZ.js → terminal-BOAVxAej.js} +1 -1
- package/build/assets/{terminal-B92mACR5.js → terminal-DbtwHqt4.js} +1 -1
- package/build/assets/{toggle-switch-CL_wRiGs.js → toggle-switch-C0t6ge2m.js} +1 -1
- package/build/assets/{trash-2-C-RvV8WA.js → trash-2-Dmprz0A0.js} +1 -1
- package/build/assets/{typography-BLSEGjph.js → typography-CNHbO1eE.js} +1 -1
- package/build/assets/{u-check-circle-dG_VJqx5.js → u-check-circle-CX66WzfT.js} +1 -1
- package/build/assets/{u-check-circle-half-D-5ZPRnd.js → u-check-circle-half-Bj853Ub0.js} +1 -1
- package/build/assets/{u-circuit-BXoisXOA.js → u-circuit-B9bLCP7N.js} +1 -1
- package/build/assets/{u-edit-DIgADxLH.js → u-edit-D7JyvoWm.js} +1 -1
- package/build/assets/use-acp-credential-form-Cj_oUYd5.js +1 -0
- package/build/assets/{use-active-conversation-BkohEtaN.js → use-active-conversation-B64-yy2X.js} +1 -1
- package/build/assets/use-agent-settings-schema-BzbQYEzb.js +1 -0
- package/build/assets/{use-agent-state-DITv5qV7.js → use-agent-state-DxFk391r.js} +1 -1
- package/build/assets/{use-breakpoint-DpxHDmuH.js → use-breakpoint-Cent5lpI.js} +1 -1
- package/build/assets/{use-click-outside-element-DhxCUyWl.js → use-click-outside-element-DOYR26nw.js} +1 -1
- package/build/assets/{use-cloud-current-user-id-CSm3kgqy.js → use-cloud-current-user-id-BVf7pb8n.js} +1 -1
- package/build/assets/use-config-CvdJUq4E.js +1 -0
- package/build/assets/use-create-conversation-Cnouynop.js +1 -0
- package/build/assets/{use-create-secret-LObNBU3M.js → use-create-secret-Cgu4uxyr.js} +1 -1
- package/build/assets/{use-event-store-DNSmyzUh.js → use-event-store-Nv92IYMU.js} +1 -1
- package/build/assets/use-handle-plan-click-C7824bbe.js +1 -0
- package/build/assets/use-is-authed-mnJtd2bw.js +1 -0
- package/build/assets/{use-launch-skill-in-chat-BTgXIu3N.js → use-launch-skill-in-chat-NDUo_UCA.js} +1 -1
- package/build/assets/use-llm-profiles-9eH3Y3Ef.js +1 -0
- package/build/assets/use-runtime-is-ready-DEnxJH7W.js +1 -0
- package/build/assets/use-save-settings-DrClHnX7.js +1 -0
- package/build/assets/use-settings-BNAoCX93.js +1 -0
- package/build/assets/{use-settings-nav-items-ykMjd_NG.js → use-settings-nav-items-CLIW2p2n.js} +2 -2
- package/build/assets/{use-skills-_unimM2d.js → use-skills-B9gOHrOj.js} +1 -1
- package/build/assets/{use-task-list-E5t-jtgs.js → use-task-list-DLKPnq3I.js} +1 -1
- package/build/assets/{use-tracking-C9P88zSo.js → use-tracking-Dph_dRlL.js} +1 -1
- package/build/assets/{use-user-conversation-2jZZ-MLA.js → use-user-conversation-leIsQH1B.js} +1 -1
- package/build/assets/useMutation-cXADjWAv.js +1 -0
- package/build/assets/useQuery-BQr6A6ry.js +1 -0
- package/build/assets/useTranslation-Bp1btAjp.js +1 -0
- package/build/assets/{utils-eXk6yerZ.js → utils-o-OXNtEy.js} +1 -1
- package/build/assets/v4-DOSjXdIn.js +1 -0
- package/build/assets/{vendor~browser-tab-BGJDGHyS.js → vendor~browser-tab-642bOcE1.js} +1 -1
- package/build/assets/{vendor~conversation-panel~conversation-D98u43rl.js → vendor~conversation-panel~conversation-DqmbnXRn.js} +1 -1
- package/build/assets/{vendor~conversation-panel~conversation~alert-banner-CtjHOMO_.js → vendor~conversation-panel~conversation~alert-banner-CSDVP1nw.js} +1 -1
- package/build/assets/{vendor~conversation-panel~conversation~index-BXt2-3Cc.js → vendor~conversation-panel~conversation~index-DITarr3F.js} +1 -1
- package/build/assets/{vendor~entry.client-DrAdOKqA.js → vendor~entry.client-CQ77DucR.js} +1 -1
- package/build/assets/{vendor~entry.client-EcEhmoJW.js → vendor~entry.client-ePAFmSwg.js} +1 -1
- package/build/assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~f0pn7nss-DUk-MwlC.js +177 -0
- package/build/assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~lb3qbbk3-BvmOva8I.js +1 -0
- package/build/assets/{vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~lpdshwee-Cl4h-NSi.js → vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~lpdshwee-BkQQxq_q.js} +1 -1
- package/build/assets/{vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~oli4dvxu-BmOMM-6e.js → vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~oli4dvxu-8xF3WeB9.js} +1 -1
- package/build/assets/{vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js → vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~nyk4vv4g-UzR6fe3Y.js} +1 -1
- package/build/assets/{vendor~files-tab--640YzQO.js → vendor~files-tab-Cko7Kr5k.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation-dhKA2JVJ.js → vendor~home~conversation-panel~conversation-D3otw5Jn.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DMOoHVBy.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-CMdKUYP2.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BoE6JRJj.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DSR6Mugx.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-Dqpi2xyZ.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DdOzMvB1.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DX2CmDJ0.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-Dj2eezvL.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-BNExlCqT.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DyN8jeZz.js} +1 -1
- package/build/assets/{vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-DCn1M97v.js → vendor~home~conversation-panel~conversation~shared-conversation~planner-tab~files-tab-lpEWrbMA.js} +1 -1
- package/build/assets/{vendor~launch-C0VvUe2W.js → vendor~launch-DoYO54df.js} +1 -1
- package/build/assets/{vendor~root-layout~conversation-panel~conversation~shared-conversation-COLUW-6M.js → vendor~root-layout~conversation-panel~conversation~shared-conversation-BGwU2SbU.js} +1 -1
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation-eG1kjEbj.js → vendor~root-layout~home~conversation-panel~conversation-Iqs0j4Wo.js} +1 -1
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-7eqKdLSQ.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-BdS6bbw9.js} +1 -1
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-BP3MGAAY.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-Fd3F3jth.js} +1 -1
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ceijy54y-Dkd2wxJA.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ceijy54y-Cg0AqwMN.js} +2 -2
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-_LydBB1e.js → vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-BlsbqRyZ.js} +1 -1
- package/build/assets/vendor~root-layout~home~conversation-panel~conversation~launch~settings~settings-index~agen~ec6pk3ix-CBICqfKC.js +48 -0
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~launch~skills-settings~mcp~automati~dou5smdo-DavKsAvB.js → vendor~root-layout~home~conversation-panel~conversation~launch~skills-settings~automations-~nv6afr11-BYNoKMU0.js} +97 -69
- package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-CsO1gYxF.js → vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-BspUuSsP.js} +1 -1
- package/build/assets/{vendor~root-layout~home~mcp~automations-list-D40jgugf.js → vendor~root-layout~home~mcp~automations-list-C9U_eOqU.js} +1 -1
- package/build/assets/{vendor~root-layout~home~mcp~automations-list-cNHi83v_.js → vendor~root-layout~home~mcp~automations-list-DhQ3LPVw.js} +1 -1
- package/build/assets/{vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-xCM3k6Rd.js → vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-BEbhHQYg.js} +1 -1
- package/build/assets/{vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-BIm99UaF.js → vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-DdgDNzMc.js} +2 -2
- package/build/assets/{verification-settings-EUkt_CkZ.js → verification-settings-D7R-Ne6L.js} +1 -1
- package/build/assets/x-DCZg87p7.js +1 -0
- package/build/assets/{x-mark-C42svtnu.js → x-mark-jrBTJbnP.js} +1 -1
- package/build/index.html +4 -4
- package/build/locales/ar/openhands.json +22 -0
- package/build/locales/ca/openhands.json +22 -0
- package/build/locales/de/openhands.json +22 -0
- package/build/locales/en/openhands.json +22 -0
- package/build/locales/es/openhands.json +22 -0
- package/build/locales/fr/openhands.json +22 -0
- package/build/locales/it/openhands.json +22 -0
- package/build/locales/ja/openhands.json +22 -0
- package/build/locales/ko-KR/openhands.json +22 -0
- package/build/locales/no/openhands.json +22 -0
- package/build/locales/pt/openhands.json +22 -0
- package/build/locales/tr/openhands.json +22 -0
- package/build/locales/uk/openhands.json +22 -0
- package/build/locales/zh-CN/openhands.json +22 -0
- package/build/locales/zh-TW/openhands.json +22 -0
- package/config/defaults.json +4 -2
- package/dist/api/agent-server-adapter.cjs +3 -3
- package/dist/api/agent-server-adapter.cjs.map +1 -1
- package/dist/api/agent-server-adapter.d.ts +8 -0
- package/dist/api/agent-server-adapter.js +82 -80
- package/dist/api/agent-server-adapter.js.map +1 -1
- package/dist/api/agent-server-compatibility.cjs +1 -1
- package/dist/api/agent-server-compatibility.cjs.map +1 -1
- package/dist/api/agent-server-compatibility.d.ts +10 -0
- package/dist/api/agent-server-compatibility.js +69 -25
- package/dist/api/agent-server-compatibility.js.map +1 -1
- package/dist/api/backend-registry/default-backend.cjs +1 -1
- package/dist/api/backend-registry/default-backend.cjs.map +1 -1
- package/dist/api/backend-registry/default-backend.d.ts +6 -5
- package/dist/api/backend-registry/default-backend.js +1 -1
- package/dist/api/backend-registry/default-backend.js.map +1 -1
- package/dist/api/backend-registry/storage.cjs +1 -1
- package/dist/api/backend-registry/storage.cjs.map +1 -1
- package/dist/api/backend-registry/storage.js +38 -68
- package/dist/api/backend-registry/storage.js.map +1 -1
- package/dist/api/cloud/proxy.cjs +1 -1
- package/dist/api/cloud/proxy.cjs.map +1 -1
- package/dist/api/cloud/proxy.d.ts +3 -16
- package/dist/api/cloud/proxy.js +1 -1
- package/dist/api/cloud/proxy.js.map +1 -1
- package/dist/api/conversation-service/agent-server-conversation-service.api.cjs +1 -1
- package/dist/api/conversation-service/agent-server-conversation-service.api.cjs.map +1 -1
- package/dist/api/conversation-service/agent-server-conversation-service.api.js +75 -75
- package/dist/api/conversation-service/agent-server-conversation-service.api.js.map +1 -1
- package/dist/api/llm-subscription-service.cjs +2 -0
- package/dist/api/llm-subscription-service.cjs.map +1 -0
- package/dist/api/llm-subscription-service.d.ts +23 -0
- package/dist/api/llm-subscription-service.js +109 -0
- package/dist/api/llm-subscription-service.js.map +1 -0
- package/dist/api/mcp-service/mcp-service.api.cjs +1 -1
- package/dist/api/mcp-service/mcp-service.api.cjs.map +1 -1
- package/dist/api/mcp-service/mcp-service.api.d.ts +2 -3
- package/dist/api/mcp-service/mcp-service.api.js +38 -13
- package/dist/api/mcp-service/mcp-service.api.js.map +1 -1
- package/dist/api/settings-service/settings-service.api.cjs +1 -1
- package/dist/api/settings-service/settings-service.api.cjs.map +1 -1
- package/dist/api/settings-service/settings-service.api.js +41 -42
- package/dist/api/settings-service/settings-service.api.js.map +1 -1
- package/dist/components/conversation-events/chat/messages.cjs +1 -1
- package/dist/components/conversation-events/chat/messages.cjs.map +1 -1
- package/dist/components/conversation-events/chat/messages.js +4 -4
- package/dist/components/conversation-events/chat/messages.js.map +1 -1
- package/dist/components/features/backends/backend-form-modal.cjs +1 -1
- package/dist/components/features/backends/backend-form-modal.cjs.map +1 -1
- package/dist/components/features/backends/backend-form-modal.js +136 -135
- package/dist/components/features/backends/backend-form-modal.js.map +1 -1
- package/dist/components/features/backends/backend-selector.cjs +1 -1
- package/dist/components/features/backends/backend-selector.cjs.map +1 -1
- package/dist/components/features/backends/backend-selector.js +103 -91
- package/dist/components/features/backends/backend-selector.js.map +1 -1
- package/dist/components/features/backends/manage-backends-modal.cjs +1 -1
- package/dist/components/features/backends/manage-backends-modal.cjs.map +1 -1
- package/dist/components/features/backends/manage-backends-modal.js +14 -8
- package/dist/components/features/backends/manage-backends-modal.js.map +1 -1
- package/dist/components/features/chat/path-component.cjs +1 -1
- package/dist/components/features/chat/path-component.cjs.map +1 -1
- package/dist/components/features/chat/path-component.js +1 -1
- package/dist/components/features/chat/path-component.js.map +1 -1
- package/dist/components/features/home/workspace-dropdown/folder-browser-modal.cjs +1 -1
- package/dist/components/features/home/workspace-dropdown/folder-browser-modal.cjs.map +1 -1
- package/dist/components/features/home/workspace-dropdown/folder-browser-modal.js +77 -66
- package/dist/components/features/home/workspace-dropdown/folder-browser-modal.js.map +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.cjs +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.cjs.map +1 -1
- package/dist/components/features/mcp-page/custom-server-editor.js +1 -0
- package/dist/components/features/mcp-page/custom-server-editor.js.map +1 -1
- package/dist/components/features/mcp-page/install-server-modal.cjs +1 -1
- package/dist/components/features/mcp-page/install-server-modal.cjs.map +1 -1
- package/dist/components/features/mcp-page/install-server-modal.js +73 -46
- package/dist/components/features/mcp-page/install-server-modal.js.map +1 -1
- package/dist/components/features/mcp-page/marketplace-card.cjs +1 -1
- package/dist/components/features/mcp-page/marketplace-card.cjs.map +1 -1
- package/dist/components/features/mcp-page/marketplace-card.js +6 -2
- package/dist/components/features/mcp-page/marketplace-card.js.map +1 -1
- package/dist/components/features/settings/brand-button.cjs +1 -1
- package/dist/components/features/settings/brand-button.cjs.map +1 -1
- package/dist/components/features/settings/brand-button.js +1 -1
- package/dist/components/features/settings/brand-button.js.map +1 -1
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.cjs +2 -0
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.cjs.map +1 -0
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.d.ts +5 -0
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.js +167 -0
- package/dist/components/features/settings/llm-settings/openai-subscription-auth-card.js.map +1 -0
- package/dist/components/shared/modals/settings/model-selector.cjs +1 -1
- package/dist/components/shared/modals/settings/model-selector.cjs.map +1 -1
- package/dist/components/shared/modals/settings/model-selector.d.ts +1 -2
- package/dist/components/shared/modals/settings/model-selector.js +59 -65
- package/dist/components/shared/modals/settings/model-selector.js.map +1 -1
- package/dist/components/shared/modals/settings/settings-form.cjs +1 -1
- package/dist/components/shared/modals/settings/settings-form.cjs.map +1 -1
- package/dist/components/shared/modals/settings/settings-form.js +1 -2
- package/dist/components/shared/modals/settings/settings-form.js.map +1 -1
- package/dist/config/defaults.cjs +2 -0
- package/dist/config/defaults.cjs.map +1 -0
- package/dist/config/defaults.js +35 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/constants/llm-subscription.cjs +2 -0
- package/dist/constants/llm-subscription.cjs.map +1 -0
- package/dist/constants/llm-subscription.d.ts +16 -0
- package/dist/constants/llm-subscription.js +47 -0
- package/dist/constants/llm-subscription.js.map +1 -0
- package/dist/contexts/conversation-websocket-context.cjs +1 -1
- package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
- package/dist/contexts/conversation-websocket-context.js +1 -1
- package/dist/contexts/conversation-websocket-context.js.map +1 -1
- package/dist/hooks/mutation/use-llm-subscription-auth.cjs +2 -0
- package/dist/hooks/mutation/use-llm-subscription-auth.cjs.map +1 -0
- package/dist/hooks/mutation/use-llm-subscription-auth.d.ts +3 -0
- package/dist/hooks/mutation/use-llm-subscription-auth.js +30 -0
- package/dist/hooks/mutation/use-llm-subscription-auth.js.map +1 -0
- package/dist/hooks/mutation/use-save-fields-as-secrets.cjs +1 -1
- package/dist/hooks/mutation/use-save-fields-as-secrets.cjs.map +1 -1
- package/dist/hooks/mutation/use-save-fields-as-secrets.d.ts +8 -6
- package/dist/hooks/mutation/use-save-fields-as-secrets.js +1 -1
- package/dist/hooks/mutation/use-save-fields-as-secrets.js.map +1 -1
- package/dist/hooks/mutation/use-test-mcp-server.d.ts +1 -1
- package/dist/hooks/query/query-keys.cjs +1 -1
- package/dist/hooks/query/query-keys.cjs.map +1 -1
- package/dist/hooks/query/query-keys.d.ts +5 -0
- package/dist/hooks/query/query-keys.js +14 -2
- package/dist/hooks/query/query-keys.js.map +1 -1
- package/dist/hooks/query/use-agent-settings-schema.cjs +1 -1
- package/dist/hooks/query/use-agent-settings-schema.cjs.map +1 -1
- package/dist/hooks/query/use-agent-settings-schema.d.ts +2 -2
- package/dist/hooks/query/use-agent-settings-schema.js +21 -19
- package/dist/hooks/query/use-agent-settings-schema.js.map +1 -1
- package/dist/hooks/query/use-backends-health.cjs +1 -1
- package/dist/hooks/query/use-backends-health.cjs.map +1 -1
- package/dist/hooks/query/use-backends-health.js +38 -36
- package/dist/hooks/query/use-backends-health.js.map +1 -1
- package/dist/hooks/query/use-llm-subscription-models.cjs +2 -0
- package/dist/hooks/query/use-llm-subscription-models.cjs.map +1 -0
- package/dist/hooks/query/use-llm-subscription-models.d.ts +3 -0
- package/dist/hooks/query/use-llm-subscription-models.js +19 -0
- package/dist/hooks/query/use-llm-subscription-models.js.map +1 -0
- package/dist/hooks/query/use-llm-subscription-status.cjs +2 -0
- package/dist/hooks/query/use-llm-subscription-status.cjs.map +1 -0
- package/dist/hooks/query/use-llm-subscription-status.d.ts +3 -0
- package/dist/hooks/query/use-llm-subscription-status.js +19 -0
- package/dist/hooks/query/use-llm-subscription-status.js.map +1 -0
- package/dist/hooks/use-websocket.cjs +1 -1
- package/dist/hooks/use-websocket.cjs.map +1 -1
- package/dist/hooks/use-websocket.d.ts +0 -1
- package/dist/hooks/use-websocket.js +37 -38
- package/dist/hooks/use-websocket.js.map +1 -1
- package/dist/i18n/declaration.cjs +1 -1
- package/dist/i18n/declaration.cjs.map +1 -1
- package/dist/i18n/declaration.d.ts +22 -0
- package/dist/i18n/declaration.js +1 -1
- package/dist/i18n/declaration.js.map +1 -1
- package/dist/i18n/translation.cjs +2 -2
- package/dist/i18n/translation.cjs.map +1 -1
- package/dist/i18n/translation.js +374 -0
- package/dist/i18n/translation.js.map +1 -1
- package/dist/locales/ar/openhands.json +22 -0
- package/dist/locales/ca/openhands.json +22 -0
- package/dist/locales/de/openhands.json +22 -0
- package/dist/locales/en/openhands.json +22 -0
- package/dist/locales/es/openhands.json +22 -0
- package/dist/locales/fr/openhands.json +22 -0
- package/dist/locales/it/openhands.json +22 -0
- package/dist/locales/ja/openhands.json +22 -0
- package/dist/locales/ko-KR/openhands.json +22 -0
- package/dist/locales/no/openhands.json +22 -0
- package/dist/locales/pt/openhands.json +22 -0
- package/dist/locales/tr/openhands.json +22 -0
- package/dist/locales/uk/openhands.json +22 -0
- package/dist/locales/zh-CN/openhands.json +22 -0
- package/dist/locales/zh-TW/openhands.json +22 -0
- package/dist/node_modules/@openhands/extensions/integrations/catalog/github.cjs +1 -1
- package/dist/node_modules/@openhands/extensions/integrations/catalog/github.cjs.map +1 -1
- package/dist/node_modules/@openhands/extensions/integrations/catalog/github.js +10 -22
- package/dist/node_modules/@openhands/extensions/integrations/catalog/github.js.map +1 -1
- package/dist/node_modules/@openhands/extensions/skills/index.cjs +97 -69
- package/dist/node_modules/@openhands/extensions/skills/index.cjs.map +1 -1
- package/dist/node_modules/@openhands/extensions/skills/index.js +3 -3
- package/dist/node_modules/@openhands/extensions/skills/index.js.map +1 -1
- package/dist/package.cjs +1 -1
- package/dist/package.cjs.map +1 -1
- package/dist/package.js +3 -5
- package/dist/package.js.map +1 -1
- package/dist/routes/files-tab.cjs +1 -1
- package/dist/routes/files-tab.cjs.map +1 -1
- package/dist/routes/files-tab.js +28 -17
- package/dist/routes/files-tab.js.map +1 -1
- package/dist/routes/llm-settings.cjs +1 -1
- package/dist/routes/llm-settings.cjs.map +1 -1
- package/dist/routes/llm-settings.js +142 -85
- package/dist/routes/llm-settings.js.map +1 -1
- package/dist/services/canvas-ui.cjs +1 -1
- package/dist/services/canvas-ui.cjs.map +1 -1
- package/dist/services/canvas-ui.d.ts +1 -1
- package/dist/services/canvas-ui.js +2 -2
- package/dist/services/canvas-ui.js.map +1 -1
- package/dist/stores/files-tab-store.cjs +1 -1
- package/dist/stores/files-tab-store.cjs.map +1 -1
- package/dist/stores/files-tab-store.d.ts +2 -1
- package/dist/stores/files-tab-store.js +5 -1
- package/dist/stores/files-tab-store.js.map +1 -1
- package/dist/stores/use-event-store.cjs +1 -1
- package/dist/stores/use-event-store.cjs.map +1 -1
- package/dist/stores/use-event-store.js +39 -34
- package/dist/stores/use-event-store.js.map +1 -1
- package/dist/types/mcp-server.d.ts +21 -0
- package/dist/ui/dropdown/dropdown.cjs +1 -1
- package/dist/ui/dropdown/dropdown.cjs.map +1 -1
- package/dist/ui/dropdown/dropdown.js +6 -2
- package/dist/ui/dropdown/dropdown.js.map +1 -1
- package/dist/utils/handle-event-for-ui.cjs +1 -1
- package/dist/utils/handle-event-for-ui.cjs.map +1 -1
- package/dist/utils/handle-event-for-ui.d.ts +2 -0
- package/dist/utils/handle-event-for-ui.js +1 -1
- package/dist/utils/handle-event-for-ui.js.map +1 -1
- package/dist/utils/llm-subscription-schema.cjs +2 -0
- package/dist/utils/llm-subscription-schema.cjs.map +1 -0
- package/dist/utils/llm-subscription-schema.d.ts +2 -0
- package/dist/utils/llm-subscription-schema.js +22 -0
- package/dist/utils/llm-subscription-schema.js.map +1 -0
- package/dist/utils/mcp-config.cjs +1 -1
- package/dist/utils/mcp-config.cjs.map +1 -1
- package/dist/utils/mcp-config.js +32 -17
- package/dist/utils/mcp-config.js.map +1 -1
- package/dist/utils/mcp-credential-validation.cjs +2 -0
- package/dist/utils/mcp-credential-validation.cjs.map +1 -0
- package/dist/utils/mcp-credential-validation.d.ts +22 -0
- package/dist/utils/mcp-credential-validation.js +31 -0
- package/dist/utils/mcp-credential-validation.js.map +1 -0
- package/dist/utils/mcp-marketplace-utils.cjs +1 -1
- package/dist/utils/mcp-marketplace-utils.cjs.map +1 -1
- package/dist/utils/mcp-marketplace-utils.d.ts +7 -2
- package/dist/utils/mcp-marketplace-utils.js +33 -48
- package/dist/utils/mcp-marketplace-utils.js.map +1 -1
- package/dist/utils/sdk-settings-schema.cjs +1 -1
- package/dist/utils/sdk-settings-schema.cjs.map +1 -1
- package/dist/utils/sdk-settings-schema.js +64 -61
- package/dist/utils/sdk-settings-schema.js.map +1 -1
- package/package.json +3 -5
- package/scripts/check-sdk-version-sync.mjs +9 -27
- package/scripts/dev-with-automation.mjs +1 -3
- package/scripts/docker-build.mjs +0 -4
- package/scripts/run-staged-typecheck.mjs +44 -0
- package/build/assets/QueryClientProvider-XcSjsfpb.js +0 -1
- package/build/assets/Trans-sy4l4TyQ.js +0 -1
- package/build/assets/active-backend-context-B2OSC-qe.js +0 -1
- package/build/assets/add-backend-modal-lG8XDYjr.js +0 -1
- package/build/assets/agent-server-adapter-BPpZcLOE.js +0 -5
- package/build/assets/agent-server-conversation-service.api-C4Fc9Jnp.js +0 -1
- package/build/assets/api-key-entry-screen-BarZU9nr.js +0 -1
- package/build/assets/app-settings-CofRfixq.js +0 -1
- package/build/assets/automation-detail-BV4Cn0O8.js +0 -1
- package/build/assets/automations-list-BaJ61q7P.js +0 -1
- package/build/assets/backend-form-modal-B3BCZDPq.js +0 -1
- package/build/assets/browser-store-JRrcGdlk.js +0 -1
- package/build/assets/browser-wz8UzRmF.js +0 -5
- package/build/assets/chat-send-button-DzRpAQr4.js +0 -1
- package/build/assets/check-BhnsMsWy.js +0 -1
- package/build/assets/condenser-settings-Bo07FAEi.js +0 -1
- package/build/assets/context-CI9FqkUp.js +0 -1
- package/build/assets/conversation-DDdRyW4z.js +0 -19
- package/build/assets/conversation-panel-Dww2uJOd.js +0 -1
- package/build/assets/conversation-rGQV1Eym.js +0 -1
- package/build/assets/conversation-service.api-ByRiRU1e.js +0 -1
- package/build/assets/conversation-state-store-NEktJKfL.js +0 -1
- package/build/assets/declaration-D9ucT0fq.js +0 -1
- package/build/assets/dist-BCpEDEJq.js +0 -1
- package/build/assets/edit-automation-modal-CpA_JKLY.js +0 -1
- package/build/assets/entry.client-DUpefbBp.js +0 -2
- package/build/assets/files-tab-CBUPwSV1.js +0 -1
- package/build/assets/files-tab-store-DSKUhziI.js +0 -1
- package/build/assets/home-BDCL0Psk.js +0 -1
- package/build/assets/index-redirect-BQ_55qN6.js +0 -1
- package/build/assets/install-server-modal-CWZhBKwH.js +0 -1
- package/build/assets/lesson-plan-y520IDs6.js +0 -3
- package/build/assets/llm-not-configured-banner-CJyURBCm.js +0 -27
- package/build/assets/llm-settings-BW6yW2Go.js +0 -1
- package/build/assets/llm-settings-CiY22Wzi.js +0 -1
- package/build/assets/loader-circle-1XB9nbwF.js +0 -1
- package/build/assets/manage-backends-modal-v5POMal5.js +0 -1
- package/build/assets/manifest-eccb7f46.js +0 -1
- package/build/assets/markdown-renderer-z446oW0Z.js +0 -2
- package/build/assets/mcp-DgPFZ_Dv.js +0 -9
- package/build/assets/mcp-settings-redirect-l3Zbmc0F.js +0 -1
- package/build/assets/messages-Dq6AQ8mp.js +0 -41
- package/build/assets/model-selector-CdZs21EZ.js +0 -1
- package/build/assets/onboarding-Cdwu8QIy.js +0 -1
- package/build/assets/option-service.api-CdYnKVsu.js +0 -1
- package/build/assets/organization-service.api-CzMvXIQT.js +0 -1
- package/build/assets/plus-DKUID4kd.js +0 -1
- package/build/assets/providers-CbpQft-X.js +0 -1
- package/build/assets/proxy-Bx3NeKeo.js +0 -1
- package/build/assets/query-client-config-Ca3tW1AH.js +0 -1
- package/build/assets/root-CRkz_h2T.css +0 -1
- package/build/assets/root-CiNoOVrb.js +0 -2
- package/build/assets/root-layout-DUw-s9LS.js +0 -2
- package/build/assets/sdk-section-page-DPBwwLle.js +0 -1
- package/build/assets/sdk-settings-schema-Big50zDH.js +0 -1
- package/build/assets/secrets-settings-DmpsTC9V.js +0 -1
- package/build/assets/settings-ChsRtIJQ.js +0 -1
- package/build/assets/settings-modal-Cth7Zb-I.js +0 -1
- package/build/assets/settings-service.api-CcpckquT.js +0 -1
- package/build/assets/shared-conversation-Y0C8zqdr.js +0 -1
- package/build/assets/sidebar-mobile-menu-toggle-BvcBXvLY.js +0 -1
- package/build/assets/suspense-Bqb0V0q1.js +0 -1
- package/build/assets/telemetry-CAWBJ_rB.js +0 -2
- package/build/assets/use-acp-credential-form-Dj7Jkhgp.js +0 -1
- package/build/assets/use-agent-settings-schema-Lf_lBAky.js +0 -1
- package/build/assets/use-config-DVU9HaPf.js +0 -1
- package/build/assets/use-create-conversation-CJUAOf1q.js +0 -1
- package/build/assets/use-handle-plan-click-BdcdMWbv.js +0 -1
- package/build/assets/use-is-authed-B8eLO-Xq.js +0 -1
- package/build/assets/use-llm-profiles-BBTR-OsK.js +0 -1
- package/build/assets/use-runtime-is-ready-BOQpqCvp.js +0 -1
- package/build/assets/use-save-settings-7_MLft-Y.js +0 -1
- package/build/assets/use-settings-CNsxccvQ.js +0 -1
- package/build/assets/useMutation-Dm84WAKR.js +0 -1
- package/build/assets/useQuery-DGRSm7IT.js +0 -1
- package/build/assets/useTranslation-CL6FTf1b.js +0 -1
- package/build/assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js +0 -1
- package/build/assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~jfbjdnyv-C5ZIbuq8.js +0 -177
- package/build/assets/vendor~root-layout~home~conversation-panel~conversation~launch~mcp~settings~settings-index~~m3acswdn-DQE89epK.js +0 -48
- package/build/assets/x-CCfDppg5.js +0 -1
- package/dist/api/settings-service/legacy-app-preferences-migration.cjs +0 -2
- package/dist/api/settings-service/legacy-app-preferences-migration.cjs.map +0 -1
- package/dist/api/settings-service/legacy-app-preferences-migration.d.ts +0 -34
- package/dist/api/settings-service/legacy-app-preferences-migration.js +0 -52
- package/dist/api/settings-service/legacy-app-preferences-migration.js.map +0 -1
- package/dist/hooks/query/use-openhands-verified-models.cjs +0 -2
- package/dist/hooks/query/use-openhands-verified-models.cjs.map +0 -1
- package/dist/hooks/query/use-openhands-verified-models.d.ts +0 -1
- package/dist/hooks/query/use-openhands-verified-models.js +0 -14
- package/dist/hooks/query/use-openhands-verified-models.js.map +0 -1
- package/dist/utils/normalize-display-model.cjs +0 -2
- package/dist/utils/normalize-display-model.cjs.map +0 -1
- package/dist/utils/normalize-display-model.d.ts +0 -9
- package/dist/utils/normalize-display-model.js +0 -13
- package/dist/utils/normalize-display-model.js.map +0 -1
- package/dist/utils/openhands-llm.cjs +0 -2
- package/dist/utils/openhands-llm.cjs.map +0 -1
- package/dist/utils/openhands-llm.d.ts +0 -15
- package/dist/utils/openhands-llm.js +0 -15
- package/dist/utils/openhands-llm.js.map +0 -1
- /package/build/assets/{agent-server-ui-style-scope-BwIZYdC1.js → agent-server-ui-style-scope-1MuaCC1k.js} +0 -0
- /package/build/assets/{common-Dh7OqABE.js → common-DqjLSBOt.js} +0 -0
- /package/build/assets/{environment-switch-store-CiurvTtK.js → environment-switch-store-CBXkf5bS.js} +0 -0
- /package/build/assets/{extension-module-card-classes-DP5J6ngE.js → extension-module-card-classes-CVGfXtoL.js} +0 -0
- /package/build/assets/{git-status-mapper-BI8FyUVp.js → git-status-mapper-DVFXF1_X.js} +0 -0
- /package/build/assets/{handle-capture-consent-CPMXU29K.js → handle-capture-consent-BTvatyfE.js} +0 -0
- /package/build/assets/{map-provider-BM2SJarp.js → map-provider-COgsZR9p.js} +0 -0
- /package/build/assets/{objectWithoutPropertiesLoose-DSQKyRhw.js → objectWithoutPropertiesLoose-B80nTzVc.js} +0 -0
- /package/build/assets/{preload-helper-CT1Z6Pdu.js → preload-helper-D_sPnjeL.js} +0 -0
- /package/build/assets/{rolldown-runtime-BFRubm34.js → rolldown-runtime-wFmyQBCi.js} +0 -0
- /package/build/assets/{sdk-settings-field-metadata-p2GVlft7.js → sdk-settings-field-metadata-Cc4D-ut7.js} +0 -0
- /package/build/assets/{settings-wh2sLLJM.js → settings-1287uR2J.js} +0 -0
- /package/build/assets/{vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~nh19ovoo-DJTFnsA1.js → vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~cg1m3bv7-aUIHudsf.js} +0 -0
- /package/build/assets/{vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ntycl9e1-BmZcy_kH.js → vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ntycl9e1-DPPGSgT1.js} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/manage-backends-modal-v5POMal5.js","assets/rolldown-runtime-BFRubm34.js","assets/agent-server-client-options-wXLeJYeM.js","assets/active-backend-context-B2OSC-qe.js","assets/declaration-D9ucT0fq.js","assets/react-CM_dJw1Z.js","assets/query-client-config-Ca3tW1AH.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~jfbjdnyv-C5ZIbuq8.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js","assets/createLucideIcon-CkGTf9Qj.js","assets/utils-eXk6yerZ.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~nh19ovoo-DJTFnsA1.js","assets/common-Dh7OqABE.js","assets/useQuery-DGRSm7IT.js","assets/suspense-Bqb0V0q1.js","assets/QueryClientProvider-XcSjsfpb.js","assets/pencil-DPEtl5QD.js","assets/plus-DKUID4kd.js","assets/trash-2-C-RvV8WA.js","assets/useTranslation-CL6FTf1b.js","assets/context-CI9FqkUp.js","assets/backend-form-modal-B3BCZDPq.js","assets/organization-service.api-CzMvXIQT.js","assets/vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-_LydBB1e.js","assets/proxy-Bx3NeKeo.js","assets/brand-button-9SOzmqPP.js","assets/settings-input-BM8ANxDb.js","assets/modal-backdrop-_VbcKk5K.js","assets/react-dom-hVBnwgwZ.js","assets/modal-body-Cd-PtMHr.js","assets/modal-close-button-Dbo0NAMt.js","assets/navigation-context-BpAOh_t5.js","assets/modal-classes-CNm4ovfm.js","assets/confirmation-modal-Cq3eqvqH.js","assets/api-key-entry-screen-BarZU9nr.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{t as n}from"./preload-helper-CT1Z6Pdu.js";import{L as r,a as i,c as a,d as o,f as s,i as c}from"./vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js";import{t as l}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~jfbjdnyv-C5ZIbuq8.js";import{o as u,t as d}from"./declaration-D9ucT0fq.js";import{n as f}from"./QueryClientProvider-XcSjsfpb.js";import{t as p}from"./useTranslation-CL6FTf1b.js";import{r as m}from"./providers-CbpQft-X.js";import{f as h}from"./query-client-config-Ca3tW1AH.js";import{C as g,s as _}from"./agent-server-client-options-wXLeJYeM.js";import{f as v,l as y,s as b,u as x}from"./active-backend-context-B2OSC-qe.js";import{a as S,i as C,n as w,o as T,r as E,t as D}from"./telemetry-CAWBJ_rB.js";import{t as O}from"./modal-backdrop-_VbcKk5K.js";import{n as k}from"./modal-body-Cd-PtMHr.js";import{n as A,r as j}from"./base-modal-DvuGYyu1.js";import{t as M}from"./brand-button-9SOzmqPP.js";import{t as N}from"./loading-spinner-D7bOU6I7.js";import{t as P}from"./use-config-DVU9HaPf.js";import{i as F,n as I}from"./color-themes-0biOprdo.js";var L=e(t(),1);function R(){let[e,t]=(0,L.useState)(()=>w()),n=(0,L.useRef)(!1);(0,L.useEffect)(()=>{n.current||(n.current=!0,S())},[]),(0,L.useEffect)(()=>{e===`granted`&&T()},[e]);let r=(0,L.useCallback)(async()=>{await E(`granted`),t(`granted`)},[]),i=(0,L.useCallback)(async()=>{await E(`denied`),t(`denied`)},[]),a=(0,L.useCallback)((t,n)=>{e===`granted`&&C(t,n)},[e]),o=(0,L.useCallback)(()=>{D(),t(`pending`)},[]);return{consent:e,isEnabled:e===`granted`,showConsentPrompt:e===`pending`,grantConsent:r,denyConsent:i,track:a,clearData:o}}var z=u();function B({onChoice:e}){let{t,ready:n}=p(`openhands`),{showConsentPrompt:r,grantConsent:i,denyConsent:a}=R(),[o,s]=(0,L.useState)(!1);return(0,L.useEffect)(()=>{if(n&&r){let e=setTimeout(()=>s(!0),50);return()=>clearTimeout(e)}s(!1)},[n,r]),o?(0,z.jsx)(O,{"aria-label":t(d.TELEMETRY$CONSENT_TITLE),children:(0,z.jsx)(`form`,{"data-testid":`telemetry-consent-form`,onSubmit:t=>{t.preventDefault();let n=new FormData(t.currentTarget).get(`analytics`)===`on`;n?i():a(),e?.(n)},className:`flex flex-col gap-2`,children:(0,z.jsxs)(k,{className:`border border-[var(--oh-border)]`,children:[(0,z.jsx)(j,{title:t(d.TELEMETRY$CONSENT_TITLE)}),(0,z.jsx)(A,{children:t(d.TELEMETRY$CONSENT_DESCRIPTION)}),(0,z.jsxs)(`label`,{className:`flex gap-2 items-center self-start text-sm cursor-pointer`,children:[(0,z.jsx)(`input`,{name:`analytics`,type:`checkbox`,defaultChecked:!0,className:`w-4 h-4 cursor-pointer`}),t(d.TELEMETRY$SEND_ANONYMOUS_DATA)]}),(0,z.jsx)(M,{testId:`confirm-telemetry-preferences`,type:`submit`,variant:`primary`,className:`w-full`,children:t(d.TELEMETRY$CONFIRM_PREFERENCES)})]})})}):null}function V(){return L.useEffect(()=>{I(F())},[]),null}var H=L.lazy(()=>n(()=>import(`./manage-backends-modal-v5POMal5.js`).then(e=>e.n).then(e=>({default:e.ManageBackendsModal})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33]))),U=L.lazy(()=>n(()=>import(`./api-key-entry-screen-BarZU9nr.js`),__vite__mapDeps([34,1,2,3,4,5,6,7,8,9,10,11,12,19,20,21,22,14,15,23,24,13,25,26,27,28,29,30,31,32])));function W({children:e}){return(0,z.jsxs)(`html`,{lang:`en`,children:[(0,z.jsxs)(`head`,{children:[(0,z.jsx)(`meta`,{charSet:`utf-8`}),(0,z.jsx)(`meta`,{name:`viewport`,content:`width=device-width, initial-scale=1`}),(0,z.jsx)(i,{}),(0,z.jsx)(c,{})]}),(0,z.jsxs)(`body`,{"data-agent-server-ui":``,className:`m-0`,children:[(0,z.jsxs)(m,{contentClassName:`min-h-screen`,children:[(0,z.jsx)(V,{}),e,(0,z.jsx)(l,{toastOptions:h}),(0,z.jsx)(B,{}),(0,z.jsx)(`div`,{id:`modal-portal-exit`})]}),(0,z.jsx)(s,{}),(0,z.jsx)(o,{})]})]})}function G(){return(0,z.jsx)(`main`,{className:`min-h-screen bg-base px-6 py-10 text-white`,children:(0,z.jsx)(`div`,{className:`mx-auto flex min-h-screen max-w-6xl items-center justify-center`,children:(0,z.jsx)(`div`,{className:`rounded-3xl border border-white/10 bg-base/80 px-8 py-10 shadow-2xl`,children:(0,z.jsx)(N,{size:`large`})})})})}function K(){let e=f(),t=L.useCallback(()=>{_()&&(y(),e.invalidateQueries({queryKey:b.WEB_CLIENT_CONFIG}))},[e]);return(0,z.jsx)(`main`,{"data-testid":`agent-server-onboarding-screen`,className:`min-h-screen bg-base`,children:(0,z.jsx)(L.Suspense,{fallback:null,children:(0,z.jsx)(H,{onClose:t,recoveryMode:!0})})})}var q=()=>[{rel:`icon`,type:`image/svg+xml`,href:`/favicon.svg`}],J=()=>[{title:`OpenHands`},{name:`description`,content:`Let's Start Building!`}],Y=r(function(){let e=g(),t=!!_()?.apiKey,n=e&&!t,r=P({enabled:!n});return n||x(r.error)?(0,z.jsx)(L.Suspense,{fallback:(0,z.jsx)(G,{}),children:(0,z.jsx)(U,{})}):r.isPending||r.isLoading?(0,z.jsx)(G,{}):v(r.error)?(0,z.jsx)(K,{}):(0,z.jsx)(a,{})});export{W as Layout,Y as default,q as links,J as meta};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/settings-modal-Cth7Zb-I.js","assets/rolldown-runtime-BFRubm34.js","assets/model-selector-CdZs21EZ.js","assets/vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-BIm99UaF.js","assets/preload-helper-CT1Z6Pdu.js","assets/vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-BP3MGAAY.js","assets/vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~bok0tgtf-7eqKdLSQ.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~nh19ovoo-DJTFnsA1.js","assets/vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ntycl9e1-BmZcy_kH.js","assets/declaration-D9ucT0fq.js","assets/react-CM_dJw1Z.js","assets/vendor~root-layout~home~mcp~llm-settings~agent-settings~condenser-settings~verification-set~o7tv66sg-xCM3k6Rd.js","assets/react-dom-hVBnwgwZ.js","assets/agent-server-client-options-wXLeJYeM.js","assets/llm-client-D6EtdLBs.js","assets/useQuery-DGRSm7IT.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js","assets/suspense-Bqb0V0q1.js","assets/QueryClientProvider-XcSjsfpb.js","assets/useTranslation-CL6FTf1b.js","assets/context-CI9FqkUp.js","assets/proxy-Bx3NeKeo.js","assets/vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-_LydBB1e.js","assets/brand-button-9SOzmqPP.js","assets/utils-eXk6yerZ.js","assets/common-Dh7OqABE.js","assets/combobox-caret-C9BNHfSu.js","assets/sdk-settings-schema-Big50zDH.js","assets/dist-5dObF4p4.js","assets/sdk-settings-field-metadata-p2GVlft7.js","assets/map-provider-BM2SJarp.js","assets/settings-input-BM8ANxDb.js","assets/base-modal-DvuGYyu1.js","assets/modal-body-Cd-PtMHr.js","assets/modal-classes-CNm4ovfm.js","assets/modal-backdrop-_VbcKk5K.js","assets/navigation-context-BpAOh_t5.js","assets/use-save-settings-7_MLft-Y.js","assets/active-backend-context-B2OSC-qe.js","assets/query-client-config-Ca3tW1AH.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~jfbjdnyv-C5ZIbuq8.js","assets/createLucideIcon-CkGTf9Qj.js","assets/useMutation-Dm84WAKR.js","assets/settings-service.api-CcpckquT.js","assets/settings-wh2sLLJM.js","assets/use-settings-CNsxccvQ.js","assets/use-tracking-C9P88zSo.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~oli4dvxu-BmOMM-6e.js","assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~lpdshwee-Cl4h-NSi.js","assets/settings-utils--H_EvFjx.js","assets/add-backend-modal-lG8XDYjr.js","assets/backend-form-modal-B3BCZDPq.js","assets/organization-service.api-CzMvXIQT.js","assets/modal-close-button-Dbo0NAMt.js","assets/manage-backends-modal-v5POMal5.js","assets/pencil-DPEtl5QD.js","assets/plus-DKUID4kd.js","assets/trash-2-C-RvV8WA.js","assets/confirmation-modal-Cq3eqvqH.js","assets/environment-switch-overlay-wB5LxfYZ.js","assets/environment-switch-store-CiurvTtK.js","assets/analytics-consent-form-modal-Cujm1lCj.js","assets/telemetry-CAWBJ_rB.js","assets/handle-capture-consent-CPMXU29K.js","assets/alert-banner-Bsvys-hT.js","assets/vendor~conversation-panel~conversation~alert-banner-CtjHOMO_.js","assets/vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-CsO1gYxF.js","assets/iconBase-BVhFI-0E.js","assets/close--W-tHn1h.js","assets/typography-BLSEGjph.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{t as n}from"./preload-helper-CT1Z6Pdu.js";import{A as r,C as i,F as a,L as o,M as s,N as c,P as l,R as u,c as d,j as f,k as p}from"./vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js";import{t as m}from"./react-dom-hVBnwgwZ.js";import{d as h,t as g,u as _}from"./path-utils-DKu3CNkH.js";import{o as v,t as y}from"./declaration-D9ucT0fq.js";import{t as b}from"./useQuery-DGRSm7IT.js";import{r as x}from"./recommended-automations-launcher-WxaZcjRD.js";import{t as S}from"./useTranslation-CL6FTf1b.js";import{m as C,p as w,x as T}from"./query-client-config-Ca3tW1AH.js";import{t as E}from"./createLucideIcon-CkGTf9Qj.js";import{t as D}from"./vendor~root-layout~home~conversation-panel~conversation-eG1kjEbj.js";import{a as O,i as k,o as A}from"./vendor~root-layout~home~mcp~automations-list-D40jgugf.js";import{t as j}from"./check-BhnsMsWy.js";import{a as M,c as N,d as P,f as F,i as I,l as L,o as ee,p as R,r as z,s as te,t as ne,u as re}from"./sidebar-mobile-menu-toggle-BvcBXvLY.js";import{a as ie,c as ae,d as oe,f as se,i as B,l as ce,n as le,o as ue,r as de,s as fe,t as pe,u as me}from"./onboarding-Cdwu8QIy.js";import{t as he}from"./plus-DKUID4kd.js";import{a as ge}from"./llm-settings-CiY22Wzi.js";import{t as _e}from"./trash-2-C-RvV8WA.js";import{t as ve}from"./x-CCfDppg5.js";import{t as V,v as ye,x as be,y as xe}from"./utils-eXk6yerZ.js";import{t as H}from"./common-Dh7OqABE.js";import{u as Se}from"./agent-server-client-options-wXLeJYeM.js";import{n as Ce,r as U}from"./active-backend-context-B2OSC-qe.js";import{t as W}from"./agent-server-conversation-service.api-C4Fc9Jnp.js";import{n as we}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~oli4dvxu-BmOMM-6e.js";import{t as Te}from"./modal-backdrop-_VbcKk5K.js";import{n as G}from"./modal-body-Cd-PtMHr.js";import{i as Ee,r as De}from"./base-modal-DvuGYyu1.js";import{g as Oe,s as ke}from"./brand-button-9SOzmqPP.js";import{t as Ae}from"./loading-spinner-D7bOU6I7.js";import{t as je}from"./use-config-DVU9HaPf.js";import{t as Me}from"./openhands-logo-Dzm-d_V_.js";import{n as Ne,t as Pe}from"./navigation-context-BpAOh_t5.js";import{t as Fe}from"./navigation-link-Dci7Nuyf.js";import{a as Ie,d as Le,f as Re,i as ze,m as Be,n as Ve,o as He,p as Ue,s as We,t as Ge}from"./use-cloud-current-user-id-CSm3kgqy.js";import{n as Ke,t as qe}from"./sidebar-nav-link-BekRAssb.js";import{t as Je}from"./vendor~root-layout~home~conversation-panel~conversation~extensions-hub~skills-settings~mcp~~ceijy54y-Dkd2wxJA.js";import{t as K}from"./styled-tooltip-X61SEwqk.js";import{a as Ye,d as Xe,f as Ze,i as Qe,l as $e,n as et,o as tt,r as nt,u as rt}from"./dropdown-classes-CVp0kVdt.js";import{r as it,t as at}from"./combobox-caret-C9BNHfSu.js";import{_ as ot,a as st,c as ct,d as lt,f as ut,g as dt,h as ft,i as pt,l as mt,m as ht,n as gt,o as _t,p as vt,r as yt,u as bt,v as xt,y as St}from"./chat-send-button-DzRpAQr4.js";import{o as Ct,r as wt}from"./backend-form-modal-B3BCZDPq.js";import{s as Tt}from"./environment-switch-store-CiurvTtK.js";import{t as Et}from"./react-Dy05vyj5.js";import{i as Dt,n as Ot,t as kt}from"./conversation-store-FQmakEd-.js";import{t as At}from"./add-backend-modal-lG8XDYjr.js";import{t as jt}from"./manage-backends-modal-v5POMal5.js";import{c as Mt,d as Nt,u as Pt}from"./acp-providers-Dzb4nxxB.js";import{t as Ft}from"./use-is-authed-B8eLO-Xq.js";import{t as It}from"./use-click-outside-element-DhxCUyWl.js";import{r as Lt,t as Rt}from"./use-settings-CNsxccvQ.js";import{t as zt}from"./use-tracking-C9P88zSo.js";import{t as Bt}from"./use-llm-profiles-BBTR-OsK.js";import{t as Vt}from"./use-create-conversation-CJUAOf1q.js";import{t as Ht}from"./conversation-service.api-ByRiRU1e.js";import{r as Ut,t as Wt}from"./vendor~root-layout~conversation-panel~conversation~shared-conversation-COLUW-6M.js";import{n as Gt,t as q}from"./context-menu-list-item-BQU0jZPq.js";import{i as J,r as Kt,t as qt}from"./ellipsis-button-k7HLwYth.js";import{t as Jt}from"./u-edit-DIgADxLH.js";import{t as Yt}from"./skills-BE5HJuGM.js";import{a as Xt,o as Zt,t as Qt}from"./vendor~root-layout~home~conversation-panel~conversation~shared-conversation~alert-banner~pl~rqjteh0a-CsO1gYxF.js";import{t as $t}from"./search-C_l_XW4e.js";import{t as en}from"./handle-capture-consent-CPMXU29K.js";import{t as tn}from"./use-save-settings-7_MLft-Y.js";import{t as nn}from"./use-user-conversation-2jZZ-MLA.js";import{t as rn}from"./conversation-state-store-NEktJKfL.js";var an=E(`calendar-arrow-down`,[[`path`,{d:`m14 18 4 4 4-4`,key:`1waygx`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M18 14v8`,key:`irew45`}],[`path`,{d:`M21 11.354V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7.343`,key:`bse4f3`}],[`path`,{d:`M3 10h18`,key:`8toen8`}],[`path`,{d:`M8 2v4`,key:`1cmpym`}]]),on=E(`clock-3`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6h4`,key:`135r8i`}]]),sn=E(`clock-arrow-down`,[[`path`,{d:`M12 6v6l2 1`,key:`19cm8n`}],[`path`,{d:`M12.337 21.994a10 10 0 1 1 9.588-8.767`,key:`28moa`}],[`path`,{d:`m14 18 4 4 4-4`,key:`1waygx`}],[`path`,{d:`M18 14v8`,key:`irew45`}]]),cn=E(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),ln=E(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),un=E(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),dn=E(`list-filter`,[[`path`,{d:`M2 5h20`,key:`1fs1ex`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`path`,{d:`M9 19h6`,key:`456am0`}]]),fn=E(`message-circle`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}]]),pn=E(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),mn=E(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),hn=E(`star`,[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]),Y=e(t(),1),X=v(),gn=46,_n=30;function vn({className:e,logoClassName:t,logoWidth:n=gn,logoHeight:r=_n}={}){let{t:i}=S(`openhands`);return(0,X.jsx)(Fe,{to:`/conversations`,"aria-label":i(y.BRANDING$OPENHANDS_LOGO),className:V(e),children:(0,X.jsx)(Me,{width:n,height:r,className:V(`shrink-0`,t)})})}function yn(){return(0,X.jsx)(`div`,{className:`animate-spin h-4 w-4 border-2 border-transparent border-t-white rounded-full`,"data-testid":`dropdown-loading`})}function bn({onClear:e}){return(0,X.jsx)(`button`,{type:`button`,"data-testid":`dropdown-clear`,onClick:e,"aria-label":`Clear selection`,className:`text-white hover:text-[var(--oh-text-tertiary)]`,children:(0,X.jsx)(ve,{size:14})})}function xn({isOpen:e,isDisabled:t,getToggleButtonProps:n}){return(0,X.jsx)(`button`,{type:`button`,"data-testid":`dropdown-trigger`,...n({disabled:t,className:V(it,`text-current`,e&&`rotate-180`,t&&`cursor-not-allowed`)}),children:(0,X.jsx)(at,{})})}function Sn({isOpen:e,filteredOptions:t,selectedItem:n,emptyMessage:r,getMenuProps:i,getItemProps:a,footer:o,openUpward:s=!1,fitContent:c=!1}){return(0,X.jsxs)(`div`,{className:V(`absolute z-50 overflow-hidden text-white`,c?`min-w-full w-max`:`w-full`,s?`bottom-full mb-1`:`mt-1`,`bg-tertiary rounded-[6px] context-menu-box-shadow p-1`,`max-h-60 overflow-auto`,!e&&`hidden`),children:[(0,X.jsxs)(`ul`,{...i({className:V(`p-0`,Qe)}),children:[e&&t.length===0&&(0,X.jsx)(`li`,{className:`px-2 py-2 text-sm text-[var(--oh-muted)] italic`,children:r}),e&&t.map((e,t)=>(0,X.jsxs)(`li`,{...a({item:e,index:t,className:V(tt,`focus:outline-none`,n?.value===e.value&&`bg-[var(--oh-interactive-selected)] text-white`)}),children:[e.prefix?(0,X.jsx)(`span`,{className:rt,children:e.prefix}):null,(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:e.label})]},e.value))]}),e&&o?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(St,{inset:`menu`}),(0,X.jsx)(`div`,{className:`p-0`,children:o})]}):null]})}function Cn({placeholder:e,isDisabled:t,getInputProps:n,italicPlaceholder:r=!0,fitContent:i=!1}){return(0,X.jsx)(`input`,{...n({placeholder:e,disabled:t,className:V(`outline-none bg-transparent text-white not-italic`,i?`w-auto field-sizing-content whitespace-nowrap text-sm`:`flex-1 min-w-0`,r&&`placeholder:italic placeholder:text-tertiary-alt`,!r&&`placeholder:text-tertiary-alt`,ke,`px-0 not-italic text-inherit`)})})}var wn={position:`absolute`,width:1,height:1,padding:0,margin:-1,overflow:`hidden`,clip:`rect(0, 0, 0, 0)`,whiteSpace:`nowrap`,border:0};function Tn({options:e,emptyMessage:t=`No options`,clearable:n=!1,loading:r=!1,disabled:i=!1,placeholder:a,defaultValue:o,onChange:s,testId:c,className:l,footer:u,openUpward:d=!1,hideTrigger:f=!1,defaultOpen:p=!1,openOnHover:m=!1,italicPlaceholder:h=!0,fitContent:g=!1}){let _=Y.useRef(null),[v,y]=(0,Y.useState)(o?.label??``),[b,x]=(0,Y.useState)(``),S=e.filter(e=>e.label.toLowerCase().includes(b.toLowerCase())),{isOpen:C,selectedItem:w,selectItem:T,openMenu:E,closeMenu:O,getToggleButtonProps:k,getMenuProps:A,getItemProps:j,getInputProps:M}=D({items:S,itemToString:e=>e?.label??``,inputValue:v,stateReducer:(e,t)=>t.type===D.stateChangeTypes.InputClick&&e.isOpen?{...t.changes,isOpen:!0}:t.changes,initialIsOpen:p,onInputValueChange:({inputValue:e})=>{y(e??``),x(e??``)},defaultSelectedItem:o,onSelectedItemChange:({selectedItem:e})=>{s?.(e??null)},onIsOpenChange:({isOpen:e,selectedItem:t})=>{e?(y(``),x(``)):(y(t?.label??``),x(``))}}),N=r||i,P=w?e.find(e=>e.value===w.value)??w:null,F=e=>M({...e,onChange:e=>{y(e.target.value),x(e.target.value)}});return(0,X.jsxs)(`div`,{className:V(`relative`,g?`inline-block w-auto`:`w-full`),"data-testid":c,onMouseEnter:m?()=>{_.current&&=(clearTimeout(_.current),null),E()}:void 0,onMouseLeave:m?()=>{_.current=setTimeout(()=>O(),150)}:void 0,children:[f?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`input`,{...F({"aria-label":a??`Filter options`,tabIndex:-1}),style:wn}),(0,X.jsx)(`button`,{type:`button`,...k({tabIndex:-1}),style:wn,"aria-hidden":!0})]}):(0,X.jsxs)(`div`,{className:V(Ze,g?`w-auto`:`w-full`,N&&`cursor-not-allowed opacity-60`,l),children:[P?.prefix?(0,X.jsx)(`span`,{className:`flex items-center shrink-0`,children:P.prefix}):null,(0,X.jsx)(Cn,{placeholder:a,isDisabled:N,getInputProps:F,italicPlaceholder:h,fitContent:g}),r&&(0,X.jsx)(yn,{}),n&&w&&(0,X.jsx)(bn,{onClear:()=>T(null)}),(0,X.jsx)(xn,{isOpen:C,isDisabled:N,getToggleButtonProps:k})]}),(0,X.jsx)(Sn,{isOpen:C,filteredOptions:S,selectedItem:w,emptyMessage:t,getMenuProps:A,getItemProps:j,footer:u,openUpward:d,fitContent:g})]})}var En=`::`;function Dn(e,t){return t?`${e}${En}${t}`:e}function On(e){let[t,n]=e.split(En);return{backendId:t,orgId:n??null}}function kn(e){return(0,X.jsx)(wt,{isConnected:e?.isConnected??null})}function An(){return(0,X.jsx)(wt,{isConnected:`unavailable`})}function jn(e,t,n,r,i){let a=[],o=e.filter(e=>e.kind===`local`),s=e.filter(e=>e.kind===`cloud`);for(let e of o)a.push({value:Dn(e.id,null),label:e.name,prefix:kn(i[e.id])});for(let e of s){let o=n[e.id],s=kn(i[e.id]);if(!o||o.orgs.length===0)a.push({value:Dn(e.id,null),label:e.name,prefix:s});else{let n=r[e.id]?.userId??null;for(let r of o.orgs){let i=n&&n===r.id?t:r.name;a.push({value:Dn(e.id,r.id),label:`${e.name} – ${i}`,prefix:s})}}}return a}function Mn({openUpward:e=!1,hideTrigger:t=!1,defaultOpen:n=!1,onSelectOption:i,onOpenAddBackend:a,onOpenManageBackends:o,sidebarCollapsed:c=!1}={}){let{t:l}=S(`openhands`),{backends:u,active:d,setActive:f}=U(),p=Ve(),m=Ge(),h=Ct(u),g=s(),_=r(`/settings`),v=r(`/settings/*`),b=r(`/conversations/:conversationId`),x=r(`/automations/:automationId`),[C,w]=Y.useState(!1),[T,E]=Y.useState(!1),D=l(y.BACKEND$PERSONAL_WORKSPACE),O=Y.useMemo(()=>jn(u,D,p,m,h),[u,D,p,m,h]),k=Se(d.backend),A=l(y.BACKEND$NO_BACKEND_AVAILABLE),j=Dn(d.backend.id,d.orgId),M=k?void 0:O.find(e=>e.value===j),N=!!(_||v),P=l(y.SIDEBAR$SETTINGS),F=kt(e=>e.isRightPanelShown),I=!c||b&&F?`top`:`left`,L=Object.values(p).some(e=>e.isLoading);Y.useEffect(()=>{if(k||d.backend.kind!==`cloud`||d.orgId)return;let{backend:e}=d,t=p[e.id];if(!t||t.orgs.length===0)return;let n=m[e.id]?.userId??null,r=(n?t.orgs.find(e=>e.id===n):void 0)??t.orgs[0];r&&f(e.id,r.id)},[d,p,m,f,k]);let ee=Y.useCallback(()=>{if(a){a(),i?.();return}w(!0)},[a,i]),R=Y.useCallback(()=>{if(o){o(),i?.();return}E(!0)},[o,i]),z=Y.useCallback(e=>{e.preventDefault(),e.stopPropagation()},[]),te=(0,X.jsxs)(`div`,{className:Qe,children:[(0,X.jsxs)(`button`,{type:`button`,"data-testid":`add-backend-menu-item`,onMouseDown:z,onClick:ee,className:V(et,`cursor-pointer rounded-md`),children:[(0,X.jsx)(`span`,{className:rt,"aria-hidden":!0,children:(0,X.jsx)(he,{width:16,height:16})}),l(y.BACKEND$ADD)]}),(0,X.jsxs)(`button`,{type:`button`,"data-testid":`manage-backends-menu-item`,onMouseDown:z,onClick:R,className:V(et,`cursor-pointer rounded-md`),children:[(0,X.jsx)(`span`,{className:rt,"aria-hidden":!0,children:(0,X.jsx)(mn,{width:16,height:16})}),l(y.BACKEND$MANAGE)]})]}),ne=Y.useCallback(async e=>{if(e===j)return;let{backendId:t,orgId:n}=On(e),r=u.find(e=>e.id===t);r&&(Tt(O.find(t=>t.value===e)?.label??r.name),await new Promise(e=>{setTimeout(e,400)}),b?g(`/conversations`):x&&g(`/automations`),f(r.id,n),i?.())},[j,u,b,x,g,O,f,l,i]);return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 w-full`,children:[(0,X.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,X.jsx)(Tn,{testId:`backend-selector`,defaultValue:M??{value:j,label:k?A:d.backend.name,prefix:k?An():kn(h[d.backend.id])},footer:te,openUpward:e,hideTrigger:t,defaultOpen:n,openOnHover:!t,onChange:e=>{e&&ne(e.value)},placeholder:k?A:d.backend.name,loading:L,options:O,className:`h-10 px-2 py-0 bg-transparent border-transparent hover:bg-[var(--oh-surface-raised)] focus-within:bg-[var(--oh-surface-raised)] focus-within:border-transparent focus-within:ring-0`},`${j}-${M?.label??``}`)}),t?null:(0,X.jsx)(K,{content:P,placement:I,offset:10,children:(0,X.jsx)(Fe,{to:`/settings`,"data-testid":`backend-selector-settings-link`,"data-active":N,"aria-label":P,className:V(N?`inline-flex items-center justify-center shrink-0 w-9 h-9 rounded-md bg-tertiary text-white font-normal cursor-pointer`:`inline-flex items-center justify-center shrink-0 w-9 h-9 rounded-md text-[var(--oh-muted)] hover:text-white hover:bg-[var(--oh-surface-raised)] cursor-pointer`,Oe),children:(0,X.jsx)(mn,{width:16,height:16})})})]}),C?(0,X.jsx)(At,{onClose:()=>w(!1)}):null,T?(0,X.jsx)(jt,{onClose:()=>E(!1)}):null]})}var Nn=(e=20)=>{let{data:t}=Ft(),n=Ce(),r=!Se(n.backend);return h({queryKey:[`user`,`conversations`,`paginated`,e,n.backend.id,n.orgId],queryFn:async({pageParam:t})=>await W.searchConversations(e,t),enabled:!!t&&r,getNextPageParam:e=>e.next_page_id,initialPageParam:void 0,refetchInterval:1e4,meta:{backendId:n.backend.id}})},Pn=(e=10)=>b({queryKey:[`start-tasks`,`search`,e],queryFn:()=>[],select:e=>e.filter(e=>e.status!==`READY`&&e.status!==`ERROR`)});function Fn({onConfirm:e,onClose:t,onCancel:n}){let{t:r}=S(`openhands`);return(0,X.jsx)(Te,{onClose:n,children:(0,X.jsxs)(G,{testID:`confirm-new-conversation-modal`,children:[(0,X.jsx)(De,{title:r(y.CONVERSATION$EXIT_WARNING)}),(0,X.jsxs)(`div`,{className:`flex w-full justify-end gap-2`,children:[(0,X.jsx)(Ee,{text:r(y.BUTTON$CANCEL),onClick:t,className:`bg-tertiary`}),(0,X.jsx)(Ee,{text:r(y.ACTION$CONFIRM),onClick:e,className:`bg-[#C63143]`})]})]})})}var In=e=>e.includes(`Z`)||e.match(/[+-]\d{2}:\d{2}$/)!==null?new Date(e):new Date(`${e}Z`),Ln=e=>{let t=typeof e==`string`?In(e):e,n=new Date().getTime()-t.getTime(),r=Math.floor(n/1e3),i=Math.floor(r/60),a=Math.floor(i/60),o=Math.floor(a/24),s=Math.floor(o/30),c=Math.floor(s/12);return r<60?`${r}s`:i<60?`${i}m`:a<24?`${a}h`:o<30?`${o}d`:s<12?`${s}mo`:`${c}y`};function Rn({titleMode:e,title:t,onSave:n,isConversationArchived:r}){return e===`edit`?(0,X.jsx)(`input`,{autoFocus:!0,"data-testid":`conversation-card-title`,onClick:e=>{e.preventDefault(),e.stopPropagation()},onBlur:e=>{n(e.currentTarget?.value?.trim?.()??``)},onKeyUp:e=>{e.nativeEvent.isComposing||e.key===`Enter`&&e.currentTarget.blur()},type:`text`,defaultValue:t,className:`text-sm leading-6 font-semibold bg-transparent w-full`}):(0,X.jsx)(`p`,{"data-testid":`conversation-card-title`,className:V(`text-xs leading-6 font-semibold bg-transparent truncate overflow-hidden`,r&&`opacity-60`),title:t,children:t})}var zn=e=>{switch(e){case H.FINISHED:return`check`;case H.RUNNING:return`working`;case H.IDLE:case H.WAITING_FOR_CONFIRMATION:return`active`;case H.PAUSED:return`paused`;case H.ERROR:case H.STUCK:return`error`;default:return`unknown`}},Bn=(e,t)=>{if(t)return`COMMON$ARCHIVED`;switch(e){case`check`:return`COMMON$FINISHED`;case`working`:case`active`:return`COMMON$WORKING`;case`paused`:return`COMMON$PAUSED`;case`error`:return`COMMON$ERROR`;default:return`COMMON$STOPPED`}};function Vn(e){switch(e){case`check`:return(0,X.jsx)(`svg`,{"data-testid":`conversation-status-check`,viewBox:`0 0 12 12`,className:`w-2.5 h-2.5 stroke-[var(--oh-status-success)]`,fill:`none`,strokeWidth:2.25,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:(0,X.jsx)(`path`,{d:`M2.5 6.5 5 9l4.5-5.5`})});case`working`:return(0,X.jsx)(`span`,{"data-testid":`conversation-status-working`,className:`w-1.5 h-1.5 rounded-full animate-pulse bg-[var(--oh-status-success)]`});case`active`:return(0,X.jsx)(`span`,{"data-testid":`conversation-status-active`,className:`w-1.5 h-1.5 rounded-full bg-[var(--oh-status-success)]`});case`paused`:return(0,X.jsx)(`span`,{"data-testid":`conversation-status-paused`,className:`w-1.5 h-1.5 rounded-full bg-[var(--oh-muted)]`});case`error`:return(0,X.jsx)(`span`,{"data-testid":`conversation-status-error`,className:`w-1.5 h-1.5 rounded-full bg-[var(--oh-status-error)]`});default:return(0,X.jsx)(`span`,{"data-testid":`conversation-status-unknown`,className:`w-1.5 h-1.5 rounded-full bg-[var(--oh-color-tertiary)]`})}}function Hn({executionStatus:e,sandboxStatus:t,showTooltip:n=!0}){let{t:r}=S(`openhands`),i=t===`MISSING`,a=t===`ERROR`?`error`:i?`paused`:zn(e),o=r(Bn(a,i)),s=(0,X.jsx)(`div`,{className:`w-2.5 h-2.5 flex items-center justify-center shrink-0`,children:i?(0,X.jsx)(Wt,{"data-testid":`conversation-status-archived`,size:10,className:`shrink-0 text-[var(--oh-muted)] opacity-60`,"aria-hidden":!0}):Vn(a)});return n?(0,X.jsx)(K,{content:o,placement:`right`,showArrow:!0,tooltipClassName:`bg-base text-white text-xs shadow-lg`,children:s}):s}function Un({title:e,titleMode:t,onTitleSave:n,executionStatus:r,sandboxStatus:i}){let a=dt(i);return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0 overflow-hidden`,children:[r!==void 0&&(0,X.jsx)(`div`,{className:`flex w-[18px] shrink-0 items-center justify-center`,children:(0,X.jsx)(Hn,{executionStatus:r,sandboxStatus:i})}),(0,X.jsx)(Rn,{title:e,titleMode:t,onSave:n,isConversationArchived:a})]})}var Wn=e(m(),1);function Gn({onClose:e,onDelete:t,onStop:n,onEdit:r,onDisplayCost:i,onShowAgentTools:a,onShowSkills:o,onDownloadViaVSCode:s,onDownloadConversation:c,position:l=`bottom`,floatingStyle:u,ignoreOutsideClickRef:d}){let{t:f}=S(`openhands`),{backend:p}=Ce(),m=It(e,d),h=p.kind===`cloud`?y.COMMON$CLOSE_CONVERSATION_STOP_RUNTIME:y.COMMON$STOP_CONVERSATION,g=(0,Y.useCallback)((e,t,n)=>{let r=e.filter(e=>e!=null);return r.length>0?n?(0,X.jsx)(Y.Fragment,{children:r},t):(0,X.jsxs)(Y.Fragment,{children:[r,(0,X.jsx)(St,{inset:`menu`})]},t):null},[]),_=u!=null;return(0,X.jsxs)(Gt,{ref:m,testId:`context-menu`,style:_?u:void 0,theme:_?`popover`:`default`,position:_?`none`:l,alignment:_?`none`:`right`,spacing:_?`none`:`default`,className:_?`mt-0 min-w-[200px] w-max max-w-[min(280px,100vw-16px)]`:`z-[200] mt-0`,children:[g([r&&(0,X.jsx)(q,{testId:`edit-button`,onClick:r,children:(0,X.jsx)(J,{icon:(0,X.jsx)(Jt,{width:16,height:16}),text:f(y.BUTTON$RENAME)})},`edit-button`)],`edit-section`),g([a&&(0,X.jsx)(q,{testId:`show-agent-tools-button`,onClick:a,children:(0,X.jsx)(J,{icon:(0,X.jsx)(ft,{width:16,height:16}),text:f(y.BUTTON$SHOW_AGENT_TOOLS_AND_METADATA)})},`show-agent-tools-button`),o&&(0,X.jsx)(q,{testId:`show-skills-button`,onClick:o,children:(0,X.jsx)(J,{icon:(0,X.jsx)(Yt,{width:16,height:16,className:`stroke-[1.75]`,"aria-hidden":!0}),text:f(y.CONVERSATION$SHOW_SKILLS)})},`show-skills-button`)],`tools-section`),g([n&&(0,X.jsx)(q,{testId:`stop-button`,onClick:n,children:(0,X.jsx)(J,{icon:(0,X.jsx)(ht,{width:16,height:16}),text:f(h)})},`stop-button`),s&&(0,X.jsx)(q,{testId:`download-vscode-button`,onClick:s,children:(0,X.jsx)(J,{icon:(0,X.jsx)(N,{width:16,height:16}),text:f(y.BUTTON$DOWNLOAD_VIA_VSCODE)})},`download-vscode-button`),c&&(0,X.jsx)(q,{testId:`download-trajectory-button`,onClick:c,children:(0,X.jsx)(J,{icon:(0,X.jsx)(N,{width:16,height:16}),text:f(y.BUTTON$EXPORT_CONVERSATION)})},`download-trajectory-button`)],`control-section`),g([i&&(0,X.jsx)(q,{testId:`display-cost-button`,onClick:i,children:(0,X.jsx)(J,{icon:(0,X.jsx)(te,{width:16,height:16}),text:f(y.BUTTON$DISPLAY_COST)})},`display-cost-button`),t&&(0,X.jsx)(q,{testId:`delete-button`,onClick:t,children:(0,X.jsx)(J,{icon:(0,X.jsx)(Kt,{width:16,height:16}),text:f(y.COMMON$DELETE_CONVERSATION)})},`delete-button`)],`info-section`,!0)]})}function Kn({contextMenuOpen:e,onContextMenuToggle:t,onDelete:n,onStop:r,onEdit:i,onDownloadViaVSCode:a,onDownloadConversation:o,executionStatus:s,conversationId:c,showOptions:l}){let u=be(s),d=xe(s),f=(0,Y.useRef)(null),[,p]=(0,Y.useReducer)(e=>e+1,0);(0,Y.useLayoutEffect)(()=>{if(!e)return;p();let t=0,n=()=>{t||=window.requestAnimationFrame(()=>{t=0,p()})};return window.addEventListener(`resize`,n),window.addEventListener(`scroll`,n,!0),()=>{t&&window.cancelAnimationFrame(t),window.removeEventListener(`resize`,n),window.removeEventListener(`scroll`,n,!0)}},[e]);let m=(()=>{if(!e||!f.current)return;let t=f.current.getBoundingClientRect(),n=Number(window.innerWidth)||0,r=Number(window.innerHeight)||0,i=Number(t.bottom)||0,a=Number(t.right)||0;return{position:`fixed`,top:i+280+8>r?Math.max(8,t.top-280-4):i+4,right:Math.max(8,n-a),zIndex:1e5}})(),h=typeof document<`u`?document.body:null;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(qt,{ref:f,onClick:n=>{n.preventDefault(),n.stopPropagation(),t(!e)},className:V(u&&`opacity-60`)}),e&&m&&h?(0,Wn.createPortal)((0,X.jsx)(Gn,{ignoreOutsideClickRef:f,floatingStyle:m,onClose:()=>t(!1),onDelete:n,onStop:d?r:void 0,onEdit:i,onDownloadViaVSCode:c&&l?a:void 0,onDownloadConversation:c?o:void 0,position:`bottom`}),h):null]})}var qn={bitbucket:Qt,bitbucket_data_center:Qt,github:Xt,gitlab:Zt};function Jn({selectedRepository:e}){let t=e.git_provider?qn[e.git_provider]:null;return(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2 overflow-hidden`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[t&&(0,X.jsx)(t,{size:14,className:`shrink-0 text-[var(--oh-muted)]`}),e.git_provider===`azure_devops`&&(0,X.jsx)(vt,{className:`h-[14px] w-[14px] shrink-0 text-[var(--oh-muted)]`}),(0,X.jsx)(`span`,{"data-testid":`conversation-card-selected-repository`,className:`min-w-0 truncate text-xs text-[var(--oh-muted)]`,children:e.selected_repository})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,X.jsx)(Ut,{size:12,className:`shrink-0 text-[var(--oh-muted)]`}),(0,X.jsx)(`span`,{"data-testid":`conversation-card-selected-branch`,className:`min-w-0 truncate text-xs text-[var(--oh-muted)]`,children:e.selected_branch})]})]})}function Yn({workspaceWorkingDir:e}){let{t}=S(`openhands`),n=e?g(e).trim():``;return n?(0,X.jsx)(`span`,{className:`truncate min-w-0 text-xs text-[var(--oh-muted)] flex-1`,title:e??void 0,children:n}):(0,X.jsxs)(`div`,{className:`flex items-center gap-1 text-xs text-[var(--oh-muted)] flex-1 min-w-0 overflow-hidden`,children:[(0,X.jsx)(ut,{width:14,height:14,className:`text-[var(--oh-muted)]`}),(0,X.jsx)(`span`,{className:`truncate min-w-0`,children:t(y.COMMON$NO_REPOSITORY)})]})}function Xn({selectedRepository:e,lastUpdatedAt:t,createdAt:n,executionStatus:r,workspaceWorkingDir:i,showRepositoryMetadata:a=!0,showTimestamp:o=!0,llmModel:s,showAgentChip:c=!1,agentKind:l=null,acpServer:u=null}){let{t:d}=S(`openhands`),f=be(r),p=null;if(c)if(l===`acp`){let e=Mt(u)??d(y.CONVERSATION$ACP_AGENT_GENERIC),t=Pt(u,s),n=t??e;p={kind:Nt(u),text:n,tooltip:t?`${e} · ${t}`:e}}else s&&(p={kind:`openhands`,text:s,tooltip:s});let m=r===void 0?void 0:`pl-[26px]`;return(0,X.jsxs)(`div`,{className:V(`flex flex-col gap-0.5 mt-0.5 w-full min-w-0`,f&&`opacity-60`),children:[p?(0,X.jsx)(`div`,{className:m,children:(0,X.jsxs)(`span`,{"data-testid":`conversation-card-agent-chip`,className:`inline-flex items-center gap-1 text-xs text-[var(--oh-muted)] max-w-full min-w-0`,title:p.tooltip,children:[(0,X.jsx)(se,{kind:p.kind}),(0,X.jsx)(`span`,{className:`truncate`,children:p.text})]})}):null,(0,X.jsxs)(`div`,{className:V(`flex flex-row items-center gap-2 w-full min-w-0`,a&&m),children:[a&&(e?.selected_repository?(0,X.jsx)(Jn,{selectedRepository:e}):(0,X.jsx)(Yn,{workspaceWorkingDir:i})),(0,X.jsx)(`div`,{className:`flex items-center gap-2 shrink-0 ml-auto`,children:o&&(n??t)&&(0,X.jsx)(`p`,{className:`text-xs text-[var(--oh-muted)] text-right`,children:(0,X.jsx)(`time`,{children:`${Ln(t??n)} ${d(y.CONVERSATION$AGO)}`})})})]})]})}function Zn(){let{t:e}=S(`openhands`);return(0,X.jsxs)(`span`,{"data-testid":`error-badge`,className:`flex items-center gap-1 px-1.5 py-0.5 bg-[var(--oh-status-error)] text-white text-xs font-medium rounded-full`,children:[(0,X.jsx)(lt,{className:`text-white w-3 h-3`}),(0,X.jsx)(`span`,{children:e(y.COMMON$ERROR)})]})}function Qn({onClick:e,onDelete:t,onStop:n,onChangeTitle:r,showOptions:i,title:a,selectedRepository:o,lastUpdatedAt:s,createdAt:c,conversationId:l,executionStatus:u,sandboxStatus:d,contextMenuOpen:f=!1,onContextMenuToggle:p,isActive:m=!1,workspaceWorkingDir:h,showRepositoryMetadata:g=!0,llmModel:_=null,showLlmProfiles:v=!1,agentKind:y=null,acpServer:b=null}){let{trackDownloadVsCodeButtonClicked:x}=zt(),[S,C]=Y.useState(`view`),{mutateAsync:w}=bt(),T=e=>{e!==``&&e!==a&&r?.(e),C(`view`)},E=e=>{e.preventDefault(),e.stopPropagation(),t?.(),p?.(!1)},D=e=>{e.preventDefault(),e.stopPropagation(),n?.(),p?.(!1)},O=e=>{e.preventDefault(),e.stopPropagation(),C(`edit`),p?.(!1)},k=async e=>{if(e.preventDefault(),e.stopPropagation(),x(),l)try{let e=await Ht.getVSCodeUrl(l);if(e.vscode_url){let t=L(e.vscode_url);t&&window.open(t,`_blank`)}}catch{}p?.(!1)},A=async e=>{e.preventDefault(),e.stopPropagation(),l&&await w(l),p?.(!1)},j=!!(t||r||i),M=g||v&&(y===`acp`||!!_);return(0,X.jsxs)(`div`,{"data-testid":`conversation-card`,"data-context-menu-open":f.toString(),"data-active":m?`true`:`false`,onClick:e,className:V(`group relative h-auto w-full cursor-pointer rounded-md py-1 pl-2 pr-1 transition-colors`,`data-[context-menu-open=false]:hover:bg-[var(--oh-surface)]`,`data-[active=true]:bg-[var(--oh-surface)]`),children:[(0,X.jsxs)(`div`,{className:`flex items-center w-full min-w-0`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0 overflow-hidden`,children:[(0,X.jsx)(Un,{title:a,titleMode:S,onTitleSave:T,executionStatus:u,sandboxStatus:d}),d===`ERROR`&&(0,X.jsx)(Zn,{})]}),(0,X.jsxs)(`div`,{className:`relative ml-auto pl-2 flex items-center justify-end shrink-0`,children:[(c??s)&&(0,X.jsx)(`p`,{className:V(`text-xs text-[var(--oh-muted)] text-right whitespace-nowrap transition-opacity -translate-x-1.5`,j&&`group-hover:opacity-0 group-focus-within:opacity-0`,f&&`opacity-0`),children:(0,X.jsx)(`time`,{children:Ln(s??c)})}),j&&(0,X.jsx)(`div`,{className:V(`absolute right-0 top-1/2 -translate-y-1/2 transition-opacity`,`opacity-0 invisible group-hover:opacity-100 group-hover:visible`,f&&`visible opacity-100`),children:(0,X.jsx)(Kn,{contextMenuOpen:f,onContextMenuToggle:p||(()=>{}),onDelete:t&&E,onStop:n&&D,onEdit:r&&O,onDownloadViaVSCode:k,onDownloadConversation:A,executionStatus:u,conversationId:l,showOptions:i})})]})]}),M&&(0,X.jsx)(Xn,{selectedRepository:o,lastUpdatedAt:s,createdAt:c,executionStatus:u,workspaceWorkingDir:h,showRepositoryMetadata:g,showTimestamp:!1,llmModel:_,showAgentChip:v,agentKind:y,acpServer:b})]})}function $n({taskStatus:e}){return(0,X.jsx)(`div`,{className:V(`w-2 h-2 rounded-full flex-shrink-0`,(()=>{switch(e){case`READY`:return`bg-green-500`;case`ERROR`:return`bg-red-500`;case`WORKING`:case`WAITING_FOR_SANDBOX`:case`PREPARING_REPOSITORY`:case`RUNNING_SETUP_SCRIPT`:case`SETTING_UP_GIT_HOOKS`:case`SETTING_UP_SKILLS`:case`STARTING_CONVERSATION`:return`bg-yellow-500 animate-pulse`;default:return`bg-[var(--oh-interactive-selected)]`}})()),"aria-label":`Task status: ${e}`})}function er({taskStatus:e}){let{t}=S(`openhands`);return e===`WORKING`?null:(0,X.jsx)(`span`,{className:V(`text-xs font-medium px-2 py-0.5 rounded border flex-shrink-0`,(()=>{switch(e){case`READY`:return`bg-green-500/10 text-green-400 border-green-500/20`;case`ERROR`:return`bg-red-500/10 text-red-400 border-red-500/20`;default:return`bg-yellow-500/10 text-yellow-400 border-yellow-500/20`}})()),children:t(ye(e))})}function tr({title:e,taskStatus:t}){return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 flex-1 min-w-0 overflow-hidden mr-2`,children:[(0,X.jsx)(`div`,{className:`flex items-center`,children:(0,X.jsx)($n,{taskStatus:t})}),(0,X.jsx)(`h3`,{className:`text-sm font-medium text-content-2 truncate flex-1`,children:e}),(0,X.jsx)(er,{taskStatus:t})]})}function nr({selectedRepository:e,createdAt:t,detail:n}){let{t:r}=S(`openhands`);return(0,X.jsxs)(`div`,{className:V(`flex flex-col gap-1 mt-1`),children:[(0,X.jsxs)(`div`,{className:`flex flex-row justify-between items-center`,children:[e?(0,X.jsx)(Jn,{selectedRepository:e}):(0,X.jsx)(Yn,{}),t&&(0,X.jsx)(`p`,{className:`text-xs text-[var(--oh-muted)] flex-1 text-right`,children:(0,X.jsx)(`time`,{children:`${Ln(t)} ${r(y.CONVERSATION$AGO)}`})})]}),n&&(0,X.jsx)(`div`,{className:`text-xs text-[var(--oh-text-subtle)] truncate`,children:n})]})}function rr({task:e,onClick:t}){let{t:n}=S(`openhands`),r=e.request.title||e.detail||n(y.CONVERSATION$STARTING_CONVERSATION),i=e.request.selected_repository?{selected_repository:e.request.selected_repository,selected_branch:e.request.selected_branch||null,git_provider:e.request.git_provider||null}:null;return(0,X.jsxs)(`div`,{"data-testid":`start-task-card`,onClick:t,className:V(`relative h-auto w-full p-3.5 border-b border-[var(--oh-border)] cursor-pointer`,`hover:bg-tertiary`),children:[(0,X.jsx)(`div`,{className:`flex items-center justify-between w-full`,children:(0,X.jsx)(tr,{title:r,taskStatus:e.status})}),(0,X.jsx)(nr,{selectedRepository:i,createdAt:e.created_at,detail:e.detail})]})}function ir({compact:e=!1}){return e?(0,X.jsx)(`div`,{"data-testid":`conversation-card-skeleton-compact`,className:`skeleton-stagger flex flex-col items-center gap-1.5 py-1`,"aria-hidden":!0,children:[0,1,2].map(e=>(0,X.jsx)(`div`,{className:`h-1.5 w-7 shrink-0 skeleton`},`conversation-skeleton-compact-${e}`))}):(0,X.jsx)(`div`,{"data-testid":`conversation-card-skeleton`,className:`skeleton-stagger flex flex-col gap-1.5 py-0.5`,"aria-hidden":!0,children:[0,1,2].map(e=>(0,X.jsx)(`div`,{className:`h-6 min-h-6 w-full skeleton`},`conversation-skeleton-row-${e}`))})}function ar({conversationId:e,title:t,selectedRepository:n,executionStatus:r,sandboxStatus:i,lastUpdatedAt:a,createdAt:o,workspaceWorkingDir:s,isActive:c=!1,onClose:l,showRepositoryMetadata:u=!0,llmModel:d=null,showLlmProfiles:f=!1,agentKind:p=null,acpServer:m=null}){return(0,X.jsx)(Je,{content:(0,X.jsxs)(`div`,{className:`w-[260px] p-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,X.jsx)(Hn,{executionStatus:r,sandboxStatus:i,showTooltip:!1}),(0,X.jsx)(`span`,{className:`text-sm font-medium text-white truncate`,title:t,children:t||`(untitled)`})]}),(0,X.jsx)(Xn,{selectedRepository:n,lastUpdatedAt:a,createdAt:o,executionStatus:r,workspaceWorkingDir:s,showRepositoryMetadata:u,llmModel:d,showAgentChip:f,agentKind:p,acpServer:m})]}),placement:`right`,closeDelay:100,className:`bg-[var(--oh-surface)] text-white border border-[var(--oh-border-subtle)] shadow-xl p-0`,disableAnimation:!1,children:(0,X.jsx)(Fe,{to:`/conversations/${e}`,onClick:l,"data-testid":`compact-conversation-row`,"data-conversation-id":e,"aria-label":t||e,className:({isActive:e})=>V(`flex items-center justify-center w-10 h-9 mx-auto rounded-md`,`transition-colors cursor-pointer`,e||c?`bg-tertiary`:`hover:bg-[var(--oh-surface-raised)]`),children:(0,X.jsx)(Hn,{executionStatus:r,sandboxStatus:i,showTooltip:!1})})})}var or={showOlderConversations:!0,showRepoBranchMetadata:!1,showLlmProfiles:!1,organizeMode:`chronological`,conversationSort:`updated`,threadScope:`all`},Z=Et()(Dt(e=>({...or,setShowOlderConversations:t=>e(()=>({showOlderConversations:t})),toggleShowOlderConversations:()=>e(e=>({showOlderConversations:!e.showOlderConversations})),setShowRepoBranchMetadata:t=>e(()=>({showRepoBranchMetadata:t})),toggleShowRepoBranchMetadata:()=>e(e=>({showRepoBranchMetadata:!e.showRepoBranchMetadata})),setShowLlmProfiles:t=>e(()=>({showLlmProfiles:t})),toggleShowLlmProfiles:()=>e(e=>({showLlmProfiles:!e.showLlmProfiles})),setOrganizeMode:t=>e(()=>({organizeMode:t})),setConversationSort:t=>e(()=>({conversationSort:t})),setThreadScope:t=>e(()=>({threadScope:t}))}),{name:`conversation-panel-preferences`,storage:Ot(()=>localStorage),partialize:e=>({showOlderConversations:e.showOlderConversations,showRepoBranchMetadata:e.showRepoBranchMetadata,showLlmProfiles:e.showLlmProfiles,organizeMode:e.organizeMode,conversationSort:e.conversationSort,threadScope:e.threadScope})})),sr=e=>e.length>0?e.charAt(0).toUpperCase()+e.slice(1):e,cr=`px-2 pb-1 pt-1`,lr=`text-[11px] font-semibold uppercase tracking-wide text-[var(--oh-muted)]`;function ur({children:e,suffix:t}){return t==null?(0,X.jsx)(`div`,{role:`presentation`,className:V(cr,lr),children:e}):(0,X.jsxs)(`div`,{role:`presentation`,className:V(`flex items-baseline justify-between gap-2`,cr),children:[(0,X.jsx)(`span`,{className:V(`min-w-0 truncate text-left`,lr),children:e}),t]})}function dr(){return(0,X.jsx)(St,{inset:`menu`})}function Q({icon:e,label:t,selected:n,onClick:r,testId:i,disabled:a}){return(0,X.jsxs)(`button`,{type:`button`,role:n===void 0?`menuitem`:`menuitemradio`,"aria-checked":n===void 0?void 0:!!n,"data-testid":i,disabled:a,onClick:r,className:V(`group`,tt,`text-[var(--oh-foreground)] disabled:opacity-50`),children:[(0,X.jsx)(e,{className:V(`h-3.5 w-3.5`,$e),"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t}),n?(0,X.jsx)(j,{className:`ml-auto h-3.5 w-3.5 shrink-0 text-white`,"aria-hidden":!0}):null]})}function fr({filterMenuOpen:e,setFilterMenuOpen:t,menuRef:n,backendKind:r,organizeMode:i,setOrganizeMode:a,conversationSort:o,setConversationSort:s,threadScope:c,setThreadScope:l,showOlderConversations:u,toggleShowOlderConversations:d,showRepoBranchMetadata:f,toggleShowRepoBranchMetadata:p,showLlmProfiles:m,toggleShowLlmProfiles:h,totalConversationsCount:g,onRequestDeleteAll:_}){let{t:v}=S(`openhands`),b=v(r===`local`?y.CONVERSATION_PANEL$BY_WORKSPACE:y.CONVERSATION_PANEL$BY_REPOSITORY),x=Y.useRef(null),C=Y.useRef(null),w=Y.useRef(e);return Y.useEffect(()=>{e?(C.current?.querySelector(`[role="menuitem"], [role="menuitemradio"]`))?.focus():w.current&&x.current?.focus(),w.current=e},[e]),(0,X.jsxs)(`div`,{ref:n,className:`relative shrink-0 pr-0.5`,children:[(0,X.jsx)(`button`,{ref:x,type:`button`,"data-testid":`older-conversations-filter-toggle`,"aria-label":v(y.CONVERSATION_PANEL$FILTER_LABEL),"aria-haspopup":`menu`,"aria-expanded":e,onClick:()=>t(!e),className:V(`inline-flex h-7 w-7 items-center justify-center rounded-md text-[var(--oh-muted)] hover:text-white hover:bg-[var(--oh-surface-raised)]`,nt),children:(0,X.jsx)(dn,{className:`lucide lucide-list-filter shrink-0`,width:14,height:14,strokeWidth:2,"aria-hidden":!0})}),e?(0,X.jsxs)(`div`,{ref:C,role:`menu`,"aria-orientation":`vertical`,"aria-label":v(y.CONVERSATION_PANEL$FILTER_LABEL),tabIndex:-1,"data-testid":`older-conversations-filter-menu`,onKeyDown:e=>{if(e.key===`Escape`){e.preventDefault(),t(!1);return}if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`)return;let n=C.current;if(!n)return;let r=Array.from(n.querySelectorAll(`[role="menuitem"], [role="menuitemradio"]`)).filter(e=>!e.disabled);if(r.length===0)return;let i=r.indexOf(document.activeElement),a=e.key===`ArrowDown`?1:-1,o=((i===-1?0:i)+a+r.length)%r.length;e.preventDefault(),r[o]?.focus()},className:V(`absolute right-0 top-full z-50 mt-0 w-64 rounded-md border border-[var(--oh-border-subtle)] bg-tertiary px-1 py-1 text-[var(--oh-foreground)] shadow-lg`,Qe,Xe),children:[(0,X.jsx)(ur,{children:v(y.CONVERSATION_PANEL$ORGANIZE)}),(0,X.jsx)(Q,{icon:O,label:b,selected:i===`grouped`,onClick:()=>{a(`grouped`),t(!1)}}),(0,X.jsx)(Q,{icon:on,label:v(y.CONVERSATION_PANEL$CHRONOLOGICAL),selected:i===`chronological`,onClick:()=>{a(`chronological`),t(!1)}}),(0,X.jsx)(dr,{}),(0,X.jsx)(ur,{children:v(y.CONVERSATION_PANEL$SORT_BY)}),(0,X.jsx)(Q,{icon:an,label:v(y.CONVERSATION_PANEL$SORT_CREATED),selected:o===`created`,onClick:()=>{s(`created`),t(!1)}}),(0,X.jsx)(Q,{icon:sn,label:v(y.CONVERSATION_PANEL$SORT_UPDATED),selected:o===`updated`,onClick:()=>{s(`updated`),t(!1)}}),(0,X.jsx)(dr,{}),(0,X.jsx)(ur,{children:v(y.CONVERSATION_PANEL$SHOW)}),(0,X.jsx)(Q,{icon:fn,label:v(y.CONVERSATION_PANEL$ALL_THREADS),selected:c===`all`,onClick:()=>{l(`all`),t(!1)}}),(0,X.jsx)(Q,{icon:hn,label:v(y.CONVERSATION_PANEL$RELEVANT_THREADS),selected:c===`relevant`,onClick:()=>{l(`relevant`),t(!1)}}),(0,X.jsx)(dr,{}),(0,X.jsx)(ur,{children:v(y.CONVERSATION_PANEL$METADATA)}),(0,X.jsx)(Q,{icon:A,label:v(y.CONVERSATION_PANEL$LLM_MODEL),selected:m,testId:`toggle-llm-profiles`,onClick:()=>{h(),t(!1)}}),(0,X.jsx)(Q,{icon:k,label:v(y.CONVERSATION_PANEL$REPO_BRANCH),selected:f,testId:`toggle-repo-branch-metadata`,onClick:()=>{p(),t(!1)}}),(0,X.jsx)(dr,{}),(0,X.jsx)(ur,{suffix:(0,X.jsx)(`span`,{className:`shrink-0 text-right text-[10px] font-medium normal-case tracking-normal text-[var(--oh-muted)]/70`,children:v(y.CONVERSATION_PANEL$OLDER_OVER_ONE_HOUR)}),children:v(y.CONVERSATION_PANEL$OLDER_SECTION)}),(0,X.jsx)(Q,{testId:`toggle-older-conversations`,icon:u?cn:ln,label:sr(v(u?y.CONVERSATION$HIDE:y.CONVERSATION$SHOW_ALL)),onClick:()=>{d(),t(!1)}}),(0,X.jsx)(dr,{}),(0,X.jsx)(Q,{testId:`delete-all-conversations`,icon:_e,label:sr(v(y.CONVERSATION$DELETE_ALL)),disabled:g===0,onClick:()=>{g!==0&&(_(),t(!1))}})]}):null]})}var pr=V(`z-50 flex flex-col rounded-md border border-[var(--oh-border-subtle)] bg-tertiary px-1 py-1 text-white shadow-lg`,Ye);function mr(e,t){let{open:n,enabled:r,targetWidth:i=256}=t,[a,o]=Y.useState(null),s=Y.useCallback(()=>{let t=e.current;if(!t)return;let n=t.getBoundingClientRect(),r=Math.min(i,window.innerWidth-16),a=n.right-r;a<8&&(a=8),a+r>window.innerWidth-8&&(a=Math.max(8,window.innerWidth-8-r)),o({top:n.bottom+4,left:a,width:r})},[e,i]);return Y.useLayoutEffect(()=>{if(!n||!r){o(null);return}return s(),window.addEventListener(`resize`,s),window.addEventListener(`scroll`,s,!0),()=>{window.removeEventListener(`resize`,s),window.removeEventListener(`scroll`,s,!0)}},[n,r,s]),a}function hr({trigger:e,className:t,popoverClassName:n,popoverTestId:r=`new-conversation-popover`,useFixedPlacement:i=!1}){let{t:a}=S(`openhands`),{navigate:o}=Ne(),[s,c]=Y.useState(!1),l=Y.useRef(null),u=Y.useRef(null),d=mr(u,{open:s,enabled:i}),{data:f,error:p}=fe(),m=f?.workspaceParents??[],{mutate:h}=ce(),{mutate:g}=me(),{mutate:_}=ae(),{mutate:v}=oe(),{workspaces:b}=ue(),C=ie(p,a),[w,T]=Y.useState(!1),[E,D]=Y.useState(!1),{mutate:O,isPending:k}=Vt(),A=x(),j=k||A;Y.useEffect(()=>{if(!s||w||E)return;let e=e=>{l.current&&!l.current.contains(e.target)&&c(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[s,w,E]),Y.useEffect(()=>{if(!s||w||E)return;let e=e=>{e.key===`Escape`&&c(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[s,w,E]);let M=e=>{j||O({workingDir:e},{onSuccess:e=>{c(!1),o(`/conversations/${e.conversation_id}`)}})},N=tt,P=Y.useCallback(e=>{e.preventDefault(),e.stopPropagation()},[]),F=Y.useCallback(()=>{c(e=>!e)},[]),I=s&&(!i||d!==null),L=!!C,ee=i&&d?{position:`fixed`,top:d.top,left:d.left,width:d.width}:void 0,R=(0,X.jsx)(`button`,{type:`button`,"data-testid":`add-workspaces-button`,disabled:L,onMouseDown:P,onClick:e=>{e.preventDefault(),e.stopPropagation(),!L&&T(!0)},className:N,children:a(y.HOME$ADD_WORKSPACES)}),z=C?(0,X.jsx)(K,{content:C,placement:`top`,children:(0,X.jsx)(`span`,{className:`block`,children:R})}):R;return(0,X.jsxs)(`div`,{className:V(!i&&`relative`,t),ref:l,children:[(0,X.jsx)(`span`,{ref:u,className:`inline-flex`,children:e({onClick:F,"aria-expanded":s,"aria-haspopup":`menu`,disabled:j})}),I&&(0,X.jsxs)(`div`,{"data-testid":r,className:V(pr,!i&&V(`absolute top-full mt-0`,n)),style:ee,children:[(0,X.jsxs)(`ul`,{className:V(`max-h-[40vh] overflow-y-auto sm:max-h-[280px]`,Qe),children:[(0,X.jsx)(`li`,{children:(0,X.jsx)(`button`,{type:`button`,disabled:j,"data-testid":`launch-no-workspace`,onClick:()=>M(),className:N,children:(0,X.jsx)(`span`,{className:`text-[var(--oh-muted)]`,children:a(y.HOME$NO_WORKSPACE_OPTION)})})}),b.map(e=>(0,X.jsx)(`li`,{children:(0,X.jsxs)(`button`,{type:`button`,disabled:j,"data-testid":`launch-workspace`,"data-workspace-path":e.path,onClick:()=>M(e.path),className:N,children:[(0,X.jsx)(`span`,{className:rt,"aria-hidden":!0,children:(0,X.jsx)(mt,{width:14,height:14})}),(0,X.jsx)(`span`,{className:`truncate`,children:e.name})]})},e.id))]}),(0,X.jsxs)(`div`,{className:V(`flex flex-col`,Qe),"data-testid":`new-conversation-menu-footer`,children:[(0,X.jsx)(St,{inset:`menu`,testId:`new-conversation-menu-footer-divider`}),z,(b.length>0||m.length>0)&&(0,X.jsx)(`button`,{type:`button`,"data-testid":`manage-workspaces-button`,onMouseDown:P,onClick:e=>{e.preventDefault(),e.stopPropagation(),D(!0)},className:N,children:a(y.HOME$MANAGE_WORKSPACES)})]})]}),(0,X.jsx)(B,{isOpen:w,onClose:()=>T(!1),onAdd:e=>h(e),onAddParent:e=>_(e)}),(0,X.jsx)(de,{isOpen:E,workspaces:b,workspaceParents:m,onClose:()=>D(!1),onRemove:e=>g(e),onRemoveParent:e=>v(e)})]})}function gr({repo:e,disabled:t,onSelect:n,itemClass:r}){return(0,X.jsx)(`li`,{children:(0,X.jsxs)(`button`,{type:`button`,disabled:t,"data-testid":`launch-repository`,"data-repo-name":e.full_name,onClick:()=>n(e),className:r,children:[(0,X.jsx)(`span`,{className:rt,"aria-hidden":!0,children:(0,X.jsx)(mt,{width:14,height:14})}),(0,X.jsx)(`span`,{className:`truncate`,children:e.full_name})]})})}function _r({trigger:e,className:t,popoverClassName:n,popoverTestId:r=`new-conversation-popover`,useFixedPlacement:i=!1}){let{t:a}=S(`openhands`),{navigate:o}=Ne(),{providers:s}=ct(),{lastSelectedProvider:c,setLastSelectedProvider:l}=yt(),[u,d]=Y.useState(!1),f=Y.useRef(null),p=Y.useRef(null),m=mr(p,{open:u,enabled:i}),[h,g]=Y.useState(c??null),[_,v]=Y.useState(``),b=pt(_,300);Y.useEffect(()=>{if(s.length===0){h!==null&&g(null);return}h&&s.includes(h)||g(c&&s.includes(c)?c:s[0])},[s,h,c]);let{data:C,isLoading:w,isError:T,hasNextPage:E,isFetchingNextPage:D,fetchNextPage:O}=_t({provider:h}),{data:k,isLoading:A}=st(b,h),j=Y.useMemo(()=>C?.pages.flatMap(e=>e.items)??[],[C]),M=b?k??[]:j,{mutate:N,isPending:P}=Vt(),F=x(),I=P||F;Y.useEffect(()=>{if(!u)return;let e=e=>{f.current&&!f.current.contains(e.target)&&d(!1)};return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[u]),Y.useEffect(()=>{if(!u)return;let e=e=>{e.key===`Escape`&&d(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[u]);let L=e=>{I||N({repository:{name:e.full_name,gitProvider:e.git_provider,branch:e.main_branch??`main`}},{onSuccess:e=>{d(!1),o(`/conversations/${e.conversation_id}`)}})},ee=e=>{g(e),l(e),v(``)},R=tt;Y.useEffect(()=>{u&&(b||!E||D||w||M.length===0||M.length>=10||O())},[u,b,E,D,w,M.length,O]);let z=b?A:w,te=!b&&E&&M.length>0,ne=Y.useCallback(()=>{d(e=>!e)},[]),re=u&&(!i||m!==null),ie=i&&m?{position:`fixed`,top:m.top,left:m.left,width:m.width}:void 0;return(0,X.jsxs)(`div`,{className:V(!i&&`relative`,t),ref:f,children:[(0,X.jsx)(`span`,{ref:p,className:`inline-flex`,children:e({onClick:ne,"aria-expanded":u,"aria-haspopup":`menu`,disabled:I})}),re&&(0,X.jsxs)(`div`,{"data-testid":r,className:V(pr,!i&&V(`absolute top-full mt-0`,n)),style:ie,children:[s.length>1&&(0,X.jsx)(`div`,{className:`flex items-center gap-1 px-1 py-1`,"data-testid":`cloud-provider-tabs`,children:s.map(e=>{let t=e===h;return(0,X.jsxs)(`button`,{type:`button`,"data-testid":`cloud-provider-tab-${e}`,onClick:()=>ee(e),className:V(`flex items-center gap-1 rounded border px-2 py-1 text-xs`,`transition-none`,t?`border-[var(--oh-border-subtle)] bg-[var(--oh-interactive-hover)] text-white`:`border-transparent text-[var(--oh-text-secondary)] hover:text-white`),children:[(0,X.jsx)(gt,{gitProvider:e}),(0,X.jsx)(`span`,{className:`capitalize`,children:e})]},e)})}),(0,X.jsx)(`div`,{className:`px-2`,children:(0,X.jsxs)(`div`,{className:`relative`,children:[(0,X.jsx)($t,{width:16,height:16,"aria-hidden":!0,className:`pointer-events-none absolute left-0 top-1/2 -translate-y-1/2 text-[var(--oh-muted)]`}),(0,X.jsx)(`input`,{type:`text`,"data-testid":`cloud-repo-search-input`,value:_,onChange:e=>v(e.target.value),placeholder:a(y.COMMON$SEARCH_REPOSITORIES),disabled:!h,className:V(`w-full border-0 bg-transparent py-1.5 pl-6 pr-0 text-sm text-white`,`outline-none placeholder:text-[var(--oh-muted)]`,`focus:outline-none focus:ring-0`,`disabled:cursor-not-allowed disabled:opacity-60`)})]})}),(0,X.jsx)(St,{inset:`menu`}),(0,X.jsxs)(`ul`,{className:V(`max-h-[40vh] overflow-y-auto custom-scrollbar-always sm:max-h-[280px]`,Qe),children:[z&&M.length===0&&(0,X.jsx)(`li`,{className:`px-2 py-2 text-sm text-[var(--oh-muted)] italic`,"data-testid":`cloud-repo-loading`,children:a(y.HOME$LOADING_REPOSITORIES)}),T&&(0,X.jsx)(`li`,{className:`px-2 py-2 text-sm text-[#F87171]`,"data-testid":`cloud-repo-error`,children:a(y.HOME$FAILED_TO_LOAD_REPOSITORIES)}),!z&&!T&&M.length===0&&!!h&&(0,X.jsx)(`li`,{className:`px-2 py-2 text-sm text-[var(--oh-muted)] italic`,"data-testid":`cloud-repo-empty`,children:a(y.GITHUB$NO_RESULTS)}),M.map(e=>(0,X.jsx)(gr,{repo:e,disabled:I,onSelect:L,itemClass:R},`${e.git_provider}:${e.id}`)),te&&(0,X.jsx)(`li`,{children:(0,X.jsx)(`button`,{type:`button`,"data-testid":`cloud-repo-load-more`,disabled:D,onClick:()=>O(),className:R,children:(0,X.jsx)(`span`,{className:`text-[var(--oh-text-secondary)]`,children:a(D?y.HOME$LOADING_MORE_REPOSITORIES:y.CONVERSATION$LOAD_MORE)})})})]})]})]})}var vr=V(`inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md`,`text-[var(--oh-muted)] transition-colors`,`hover:bg-[var(--oh-surface-raised)] hover:text-white`,`focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--oh-border)]`,`disabled:cursor-not-allowed disabled:opacity-50`);function yr({backendKind:e}){let{t}=S(`openhands`),n=t(y.CONVERSATION_PANEL$NEW_THREAD_FOLDER_ARIA),r=(0,X.jsx)(un,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0,strokeWidth:2});return e===`local`?(0,X.jsx)(hr,{useFixedPlacement:!0,popoverTestId:`conversation-panel-new-thread-popover`,popoverClassName:``,trigger:({onClick:e,"aria-expanded":t,disabled:i,"aria-haspopup":a})=>(0,X.jsx)(`button`,{type:`button`,className:vr,"aria-label":n,"aria-expanded":t,"aria-haspopup":a,disabled:i,"data-testid":`conversation-panel-new-thread-picker`,onClick:e,children:r})}):(0,X.jsx)(_r,{useFixedPlacement:!0,popoverTestId:`conversation-panel-new-thread-popover`,popoverClassName:``,trigger:({onClick:e,"aria-expanded":t,disabled:i,"aria-haspopup":a})=>(0,X.jsx)(`button`,{type:`button`,className:vr,"aria-label":n,"aria-expanded":t,"aria-haspopup":a,disabled:i,"data-testid":`conversation-panel-new-thread-picker`,onClick:e,children:r})})}function br(e,t){let n=t.limit??5;if(t.expanded||e.length<=n)return{visibleConversations:[...e],isPreviewTruncated:e.length>n,isShowingAll:!0};let r=t.activeConversationId==null?-1:e.findIndex(e=>e.id===t.activeConversationId);if(r>=n){let t=e[r];return{visibleConversations:[...e.slice(0,n-1),t],isPreviewTruncated:!0,isShowingAll:!1}}return{visibleConversations:e.slice(0,n),isPreviewTruncated:e.length>n,isShowingAll:!1}}function xr(e,t,n){if(t===`local`)return e===`__none_workspace`?{}:e.startsWith(`ws:`)?{workingDir:e.slice(3)}:{};if(e===`__none_repo`)return{};if(e.startsWith(`repo:`)){let t=e.slice(5),r=n[0];return{repository:{name:t,gitProvider:r?.git_provider??`github`,branch:r?.selected_branch??`main`}}}return{}}function Sr(e){if(!e)return 0;let t=Date.parse(e);return Number.isFinite(t)?t:0}function Cr(e,t){let n=t===`created`?`created_at`:`updated_at`;return[...e].sort((e,t)=>Sr(t[n])-Sr(e[n]))}function wr(e){let t=e.selected_workspace?.trim().replace(/\/+$/,``);if(!t)return{id:`__none_workspace`,label:``};let n=t.split(`/`).filter(Boolean).pop()??t;return{id:`ws:${t}`,label:n}}function Tr(e){let t=e.selected_repository?.trim().replace(/\/+$/,``);if(!t)return{id:`__none_repo`,label:``};let n=t.split(`/`).filter(Boolean),r=n.length?(n[n.length-1]??t).replace(/\.git$/,``):t.replace(/\.git$/,``);return{id:`repo:${t}`,label:r}}function Er(e,t,n,r){let i=new Map;for(let n of e){let{id:e,label:a}=t===`local`?wr(n):Tr(n),o=e===`__none_workspace`?r.emptyWorkspace:e===`__none_repo`?r.emptyRepository:a,s=i.get(e);s?s.conversations.push(n):i.set(e,{label:o,conversations:[n]})}let a=[...i.entries()].map(([e,r])=>{let i=Cr(r.conversations,n);return{id:e,label:r.label,conversations:i,launch:xr(e,t,i)}}),o=e=>e.conversations.reduce((e,t)=>Math.max(e,Sr(n===`created`?t.created_at:t.updated_at)),0);return a.sort((e,t)=>o(t)-o(e)),a}var Dr=()=>{},Or=3600*1e3,kr=e=>{let t=Date.now()-Or,n=[],r=[];for(let i of e){let e=i.updated_at?Date.parse(i.updated_at):NaN;Number.isFinite(e)&&e<t?r.push(i):n.push(i)}return{recent:n,older:r}};function Ar({onClose:e,compact:t=!1}){let{t:n}=S(`openhands`),{conversationId:r,navigate:i}=Ne(),{backend:a}=Ce(),o=It(e??Dr),[s,c]=Y.useState(!1),[l,u]=Y.useState(!1),[d,f]=Y.useState(!1),[p,m]=Y.useState(!1),h=Z(e=>e.showOlderConversations),g=Z(e=>e.toggleShowOlderConversations),_=Z(e=>e.showRepoBranchMetadata),v=Z(e=>e.toggleShowRepoBranchMetadata),b=Z(e=>e.showLlmProfiles),T=Z(e=>e.toggleShowLlmProfiles),E=Z(e=>e.organizeMode),D=Z(e=>e.setOrganizeMode),k=Z(e=>e.conversationSort),A=Z(e=>e.setConversationSort),j=Z(e=>e.threadScope),M=Z(e=>e.setThreadScope),[N,I]=Y.useState(!1),[L,ee]=Y.useState(!1),R=It(()=>{I(!1)}),[z,te]=Y.useState(()=>new Set),[ne,ie]=Y.useState(()=>new Set),ae=Y.useCallback(e=>{te(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),oe=Y.useCallback(e=>{ie(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]);Y.useEffect(()=>{E!==`grouped`&&(te(new Set),ie(new Set))},[E]);let se=Y.useRef(null),[B,ce]=Y.useState(null),[le,ue]=Y.useState(null),[de,fe]=Y.useState(null),{data:pe,isLoading:me,isFetched:ge,hasNextPage:_e,isFetchingNextPage:ve,fetchNextPage:ye}=Nn(),{data:be}=Pn(),H=Y.useMemo(()=>pe?.pages.flatMap(e=>e.items)??[],[pe]),Se=Y.useMemo(()=>j===`relevant`?H.filter(e=>xe(e.execution_status)):H,[H,j]),{recent:U,older:W}=Y.useMemo(()=>kr(Se),[Se]),we=Y.useMemo(()=>Cr(h?[...U,...W]:U,k),[U,W,h,k]),Te=Y.useMemo(()=>({emptyWorkspace:n(y.CONVERSATION_PANEL$NO_WORKSPACE),emptyRepository:n(y.CONVERSATION_PANEL$NO_REPOSITORY)}),[n]),G=Y.useMemo(()=>t||E!==`grouped`?null:Er([...U,...h?W:[]],a.kind,k,Te),[a.kind,t,k,Te,W,E,U,h]),Ee=Y.useMemo(()=>Cr(U.filter(e=>xe(e.execution_status)),k),[k,U]),De=we.length,Oe=Y.useMemo(()=>G?G.reduce((e,t)=>e+t.conversations.length,0):0,[G]),ke=E===`grouped`&&!t?Oe===0:De===0,{mutate:je,mutateAsync:Me}=xt(),{mutate:Pe}=ot(),{mutate:Ie}=re(),Le=W.length>0&&!h,Re=!!_e&&!Le&&!t&&!ke,{mutate:ze}=Vt(),Be=x(),Ve=Y.useCallback(e=>{Be||ze({workingDir:e.workingDir,repository:e.repository},{onSuccess:e=>{i(`/conversations/${e.conversation_id}`)}})},[ze,Be,i]),He=Y.useCallback((e,t)=>{c(!0),ce(e),ue(t)},[]),Ue=Y.useCallback(e=>{u(!0),ce(e)},[]),We=Y.useCallback((e,t)=>{Ie({conversationId:e,newTitle:t},{onSuccess:()=>{C(n(y.CONVERSATION$TITLE_UPDATED))}})},[n,Ie]),Ge=()=>{B&&je({conversationId:B},{onSuccess:()=>{B===r&&i(`/conversations`)}})},Ke=()=>{B&&Pe({conversationId:B})},qe=async()=>{let e=H.map(e=>e.id),t=await Promise.allSettled(e.map(e=>Me({conversationId:e}))),n=t.flatMap((t,n)=>t.status===`fulfilled`?[e[n]]:[]),a=t.length-n.length;r!==null&&n.includes(r)&&i(`/conversations`),a>0&&w(`${a} conversation${a===1?``:`s`} could not be deleted.`)},Je=Y.useCallback(n=>t?(0,X.jsx)(ar,{conversationId:n.id,title:n.title??``,selectedRepository:{selected_repository:n.selected_repository,selected_branch:n.selected_branch,git_provider:n.git_provider},executionStatus:n.execution_status,sandboxStatus:n.sandbox_status,lastUpdatedAt:n.updated_at,createdAt:n.created_at,workspaceWorkingDir:n.selected_workspace??n.workspace?.working_dir,isActive:n.id===r,onClose:e,showRepositoryMetadata:_,llmModel:n.llm_model,showLlmProfiles:b,agentKind:n.agent_kind,acpServer:n.acp_server},n.id):(0,X.jsx)(Fe,{to:`/conversations/${n.id}`,onClick:e,className:`block`,children:(0,X.jsx)(Qn,{onDelete:()=>He(n.id,n.title??``),onStop:()=>Ue(n.id),onChangeTitle:e=>We(n.id,e),title:n.title??``,selectedRepository:{selected_repository:n.selected_repository,selected_branch:n.selected_branch,git_provider:n.git_provider},lastUpdatedAt:n.updated_at,createdAt:n.created_at,executionStatus:n.execution_status,sandboxStatus:n.sandbox_status,conversationId:n.id,contextMenuOpen:de===n.id,onContextMenuToggle:e=>fe(e?n.id:null),isActive:n.id===r,workspaceWorkingDir:n.selected_workspace??n.workspace?.working_dir,showRepositoryMetadata:_,llmModel:n.llm_model,showLlmProfiles:b,agentKind:n.agent_kind,acpServer:n.acp_server})},n.id),[t,r,We,He,Ue,e,de,_,b]),K=me||!ge,Ye=ge&&!me&&!t&&ke&&!be?.length;return(0,X.jsxs)(`div`,{ref:o,"data-testid":`conversation-panel`,className:`flex h-full min-h-0 w-full flex-col`,children:[!t&&(0,X.jsx)(`div`,{className:V(`-ml-2.5 w-[calc(100%+0.625rem)] max-w-none box-border border-b`,L?`border-[var(--oh-border)]`:`border-transparent`),children:(0,X.jsxs)(`div`,{"data-testid":`older-conversations-summary`,className:`flex min-w-0 flex-nowrap items-center gap-x-2 py-2 pl-4 pr-2.5 text-[var(--oh-muted)]`,children:[(0,X.jsx)(`span`,{className:`min-w-0 truncate text-sm font-medium text-[var(--oh-muted)]`,children:n(y.SIDEBAR$CONVERSATIONS)}),(0,X.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-0.5`,children:[(0,X.jsx)(yr,{backendKind:a.kind}),(0,X.jsx)(fr,{filterMenuOpen:N,setFilterMenuOpen:I,menuRef:R,backendKind:a.kind,organizeMode:E,setOrganizeMode:D,conversationSort:k,setConversationSort:A,threadScope:j,setThreadScope:M,showOlderConversations:h,toggleShowOlderConversations:g,showRepoBranchMetadata:_,toggleShowRepoBranchMetadata:v,showLlmProfiles:b,toggleShowLlmProfiles:T,totalConversationsCount:H.length,onRequestDeleteAll:()=>m(!0)})]})]})}),(0,X.jsxs)(`div`,{ref:se,"data-testid":`conversation-panel-list-scroll`,onScroll:e=>{ee(e.currentTarget.scrollTop>0)},className:V(`flex min-h-0 flex-1 flex-col overflow-y-auto overflow-x-hidden overscroll-contain custom-scrollbar-always`,!t&&`conversation-panel-list-scroll`),children:[K&&(0,X.jsx)(ir,{compact:t}),!t&&Ye&&(0,X.jsx)(`div`,{"data-testid":`conversation-panel-empty-state`,className:`flex min-h-0 flex-1 flex-col items-center justify-center px-4 py-8`,children:(0,X.jsx)(`p`,{className:`text-xs text-[var(--oh-muted)]`,children:n(y.CONVERSATION$NO_CONVERSATIONS)})}),!t&&be?.map(t=>(0,X.jsx)(Fe,{to:`/conversations/task-${t.id}`,onClick:e,className:`block`,children:(0,X.jsx)(rr,{task:t})},t.id)),!K&&t?Ee.map(Je):null,!K&&!t&&E===`grouped`&&G&&G.length>0?(0,X.jsx)(`nav`,{"aria-label":n(y.SIDEBAR$CONVERSATIONS),className:`space-y-1 md:space-y-0.5 pb-1`,children:G.map(e=>{let t=`thread-folder-${e.id.replace(/[^a-zA-Z0-9_-]/g,`-`)}`,i=e.id.replace(/[^a-zA-Z0-9_-]/g,`-`),a=!z.has(e.id),o=ne.has(e.id),{visibleConversations:s,isPreviewTruncated:c,isShowingAll:l}=br(e.conversations,{expanded:o,activeConversationId:r});return(0,X.jsxs)(`section`,{"aria-labelledby":t,children:[(0,X.jsxs)(`div`,{className:V(`flex h-8 w-full min-w-0 items-center gap-0.5 rounded-md pl-2 pr-1 text-sm font-normal`,`text-[var(--oh-muted)] transition-colors`,`hover:bg-[var(--oh-surface-raised)] hover:text-white`),children:[(0,X.jsxs)(`button`,{type:`button`,id:t,"aria-expanded":a,onClick:()=>ae(e.id),className:`flex min-h-8 min-w-0 flex-1 items-center gap-2 rounded-md py-1 text-left text-inherit outline-none transition-colors focus-visible:ring-1 focus-visible:ring-[var(--oh-border)]`,children:[(0,X.jsx)(O,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,X.jsx)(`span`,{className:`truncate`,children:e.label})]}),(0,X.jsx)(`button`,{type:`button`,className:V(`inline-flex h-6 w-6 shrink-0 cursor-pointer items-center justify-center rounded-md`,`text-inherit transition-colors`,`hover:bg-white/10 hover:text-white`,`focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--oh-border)]`,`disabled:cursor-not-allowed disabled:opacity-50`),disabled:Be,"aria-label":n(y.CONVERSATION_PANEL$ADD_CONVERSATION_TO_GROUP,{label:e.label}),"data-testid":`add-conversation-to-group-${e.id.replace(/[^a-zA-Z0-9_-]/g,`-`)}`,onClick:t=>{t.preventDefault(),t.stopPropagation(),Ve(e.launch)},children:(0,X.jsx)(he,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0,strokeWidth:2})})]}),a?(0,X.jsxs)(`div`,{className:`mt-0.5 space-y-0.5`,children:[s.map(Je),c?(0,X.jsx)(`div`,{className:`pl-2`,children:(0,X.jsx)(`button`,{type:`button`,"data-testid":`thread-folder-view-more-${i}`,onClick:()=>oe(e.id),className:`ml-[26px] cursor-pointer text-xs text-[var(--oh-text-dim)] hover:text-white`,children:n(l?y.CONVERSATION_PANEL$LESS:y.CONVERSATION_PANEL$MORE)})}):null]}):null]},e.id)})}):null,!K&&!t&&E===`chronological`?(0,X.jsx)(`div`,{className:`space-y-0.5`,children:we.map(Je)}):null,Re&&(0,X.jsx)(`div`,{className:`flex justify-center py-4`,children:ve?(0,X.jsx)(Ae,{size:`small`}):(0,X.jsx)(`button`,{type:`button`,"data-testid":`load-more-conversations`,onClick:()=>ye(),className:`text-xs text-[var(--oh-muted)] hover:text-white`,children:n(y.CONVERSATION$LOAD_MORE)})})]}),s&&(0,X.jsx)(F,{onConfirm:()=>{Ge(),c(!1),ue(null)},onCancel:()=>{c(!1),ue(null)},conversationTitle:le??void 0}),p&&(0,X.jsx)(F,{title:n(y.CONVERSATION$CONFIRM_DELETE_ALL_TITLE),description:n(y.CONVERSATION$CONFIRM_DELETE_ALL_DESC,{count:H.length}),onConfirm:async()=>{await qe(),m(!1)},onCancel:()=>m(!1)}),l&&(0,X.jsx)(P,{onConfirm:()=>{Ke(),u(!1)},onCancel:()=>u(!1)}),d&&(0,X.jsx)(Fn,{onConfirm:()=>{e?.()},onClose:()=>f(!1),onCancel:()=>f(!1)})]})}function jr({collapsed:e}){return e?null:(0,X.jsx)(`div`,{className:`flex flex-col flex-1 min-h-0`,children:(0,X.jsx)(`div`,{className:`flex min-h-0 w-full flex-1 flex-col`,children:(0,X.jsx)(Ar,{})})})}var Mr=e=>(0,X.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 20 20`,fill:`none`,...e,children:[(0,X.jsx)(`mask`,{id:`mask0_18339_1445`,style:{maskType:`luminance`},maskUnits:`userSpaceOnUse`,x:1,y:1,width:18,height:18,children:(0,X.jsx)(`path`,{d:`M19 1H1V19H19V1Z`,fill:`white`})}),(0,X.jsxs)(`g`,{mask:`url(#mask0_18339_1445)`,children:[(0,X.jsx)(`path`,{d:`M10 18.1818V16.5454`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M10 1.81836V3.45472`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M1.81824 10H3.4546`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M18.1818 10H16.5454`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M5.93359 17.1019L6.74359 15.6782`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M14.0663 2.89844L13.2563 4.32208`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M2.89819 5.93359L4.32183 6.74359`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M17.1019 14.0663L15.6782 13.2563`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M5.92542 2.90625L6.7436 4.3217`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M14.0909 17.0854L13.2727 15.6699`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M17.0855 5.90918L15.67 6.72736`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M2.91455 14.0911L4.33001 13.2729`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M10 16.5455C13.615 16.5455 16.5455 13.615 16.5455 10C16.5455 6.38509 13.615 3.45459 10 3.45459C6.38509 3.45459 3.45459 6.38509 3.45459 10C3.45459 13.615 6.38509 16.5455 10 16.5455Z`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`}),(0,X.jsx)(`path`,{d:`M12.5854 9.77916L8.80545 7.59461C8.63363 7.49643 8.41272 7.61916 8.41272 7.81552V12.1846C8.41272 12.381 8.62545 12.5119 8.80545 12.4055L12.5854 10.221C12.7573 10.1228 12.7573 9.86916 12.5854 9.77098V9.77916Z`,fill:`currentColor`,stroke:`currentColor`,strokeWidth:1.67,strokeLinecap:`round`,strokeLinejoin:`round`})]})]}),$=18,Nr=34,Pr=Math.round(Nr*30/46);function Fr({collapsed:e,showCollapseToggle:t,showMobileCloseButton:n=!1,onCloseMobile:r,linkDisabled:i,collapseToggleLabel:a,onCollapse:o,onExpand:s,showCollapsedExpandButton:c,isExtensionsActive:l,currentPath:u,activeBackendHealth:d,collapsedBackendPopoverOpen:f,setCollapsedBackendPopoverOpen:p,collapsedBackendPopoverRef:m,collapsedBackendCloseTimer:h,onOpenAddBackend:g,onOpenManageBackends:v}){let{t:b}=S(`openhands`),x=h;return(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,X.jsxs)(`div`,{className:Le(e),children:[(0,X.jsxs)(`div`,{className:V(e&&t?ze:`flex min-w-0 shrink-0 items-center`),children:[(0,X.jsx)(`div`,{className:V(e&&t&&`flex h-full w-full items-center justify-start pl-2.5 transition-opacity duration-150`,e&&c&&`opacity-0`),children:(0,X.jsx)(vn,{logoWidth:Nr,logoHeight:Pr,logoClassName:`max-w-none`,className:V(We,`overflow-visible`)})}),e&&t?(0,X.jsx)(`button`,{type:`button`,"data-testid":`sidebar-collapse-toggle`,"aria-pressed":e,"aria-label":a,onClick:s,className:V(Ie,c?`opacity-100 pointer-events-auto`:`opacity-0 pointer-events-none`),children:(0,X.jsx)(_,{width:14,height:14})}):null]}),!e&&t?(0,X.jsx)(`button`,{type:`button`,"data-testid":`sidebar-collapse-toggle`,"aria-pressed":e,"aria-label":a,onClick:o,className:V(`hidden md:inline-flex ml-auto`,He,`text-[var(--oh-muted)] hover:text-white hover:bg-[var(--oh-surface-raised)]`),children:(0,X.jsx)(R,{width:14,height:14})}):null,!e&&n?(0,X.jsx)(`button`,{type:`button`,"data-testid":`sidebar-mobile-drawer-close`,onClick:r,"aria-label":b(y.SIDEBAR$CLOSE_MENU),className:V(`inline-flex ml-auto`,He,`text-[var(--oh-muted)] hover:text-white hover:bg-[var(--oh-surface-raised)]`),children:(0,X.jsx)(R,{width:14,height:14})}):null]}),(0,X.jsxs)(`nav`,{className:Ue(e),children:[(0,X.jsx)(qe,{to:`/conversations`,end:!0,label:`New Chat`,testId:`sidebar-conversations-link`,disabled:i,collapsed:e,icon:(0,X.jsx)(he,{width:$,height:$})}),(0,X.jsx)(qe,{to:`/customize`,label:`Customize`,testId:`sidebar-skills-link`,disabled:i,collapsed:e,forceActive:l,icon:(0,X.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:$,height:$,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,X.jsx)(`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`}),(0,X.jsx)(`path`,{d:`m7 16.5-4.74-2.85`}),(0,X.jsx)(`path`,{d:`m7 16.5 5-3`}),(0,X.jsx)(`path`,{d:`M7 16.5v5.17`}),(0,X.jsx)(`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`}),(0,X.jsx)(`path`,{d:`m17 16.5-5-3`}),(0,X.jsx)(`path`,{d:`m17 16.5 4.74-2.85`}),(0,X.jsx)(`path`,{d:`m17 16.5v5.17`}),(0,X.jsx)(`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`}),(0,X.jsx)(`path`,{d:`M12 8 7.26 5.15`}),(0,X.jsx)(`path`,{d:`m12 8 4.74-2.85`}),(0,X.jsx)(`path`,{d:`M12 13.5V8`})]})}),(0,X.jsx)(qe,{to:`/automations`,label:b(y.SIDEBAR$AUTOMATIONS),testId:`sidebar-automations-link`,disabled:i,collapsed:e,icon:(0,X.jsx)(Mr,{width:$,height:$})})]}),(0,X.jsx)(jr,{collapsed:e}),e&&t?(0,X.jsxs)(`nav`,{className:V(Ue(e),`mt-auto pb-2 cursor-pointer`),children:[(0,X.jsx)(K,{content:b(y.SIDEBAR$SETTINGS),placement:`right`,children:(0,X.jsxs)(Fe,{to:`/settings`,"data-testid":`collapsed-settings-link`,"aria-label":b(y.SIDEBAR$SETTINGS),className:Be({collapsed:!0}),children:[(0,X.jsx)(Ke,{active:u.startsWith(`/settings`),children:(0,X.jsx)(mn,{width:$,height:$})}),(0,X.jsx)(`span`,{className:Re(!0),children:b(y.SIDEBAR$SETTINGS)})]})}),(0,X.jsxs)(`div`,{className:`relative`,ref:m,onMouseEnter:()=>{x.current&&=(clearTimeout(x.current),null),p(!0)},onMouseLeave:()=>{x.current=setTimeout(()=>p(!1),150)},children:[(0,X.jsxs)(`button`,{type:`button`,"data-testid":`collapsed-backend-selector-link`,"aria-label":b(y.BACKEND$MANAGE),"aria-expanded":f,onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onMouseUp:e=>e.stopPropagation(),className:V(Be({collapsed:!0}),`relative`),children:[(0,X.jsx)(Ke,{active:f,children:(0,X.jsxs)(`span`,{className:`relative inline-flex size-[18px] shrink-0 items-center justify-center`,children:[(0,X.jsx)(wt,{isConnected:d?.isConnected??null,className:`absolute -left-0.5 -top-0.5 z-[1] pointer-events-none`}),(0,X.jsx)(pn,{width:$,height:$})]})}),(0,X.jsx)(`span`,{className:Re(!0),children:b(y.BACKEND$MANAGE)})]}),f?(0,X.jsx)(`div`,{className:`absolute bottom-[-4px] left-full pl-2.5 z-40 w-[272px]`,onClick:e=>e.stopPropagation(),children:(0,X.jsx)(Mn,{sidebarCollapsed:e,hideTrigger:!0,defaultOpen:!0,openUpward:!0,onSelectOption:()=>p(!1),onOpenAddBackend:g,onOpenManageBackends:v})}):null]})]}):null,e?null:(0,X.jsx)(`div`,{className:V(`flex flex-col items-stretch max-w-none box-border shrink-0`,`-ml-2.5 w-[calc(100%+0.625rem)] border-t border-[var(--oh-border)] pt-2 px-2.5`),children:(0,X.jsx)(Mn,{sidebarCollapsed:e,openUpward:!0})})]})}var Ir=`openhands-sidebar`,Lr=`openhands-sidebar-collapsed`,Rr=Et()(Dt(e=>({collapsed:!1,setCollapsed:t=>e(e=>({collapsed:typeof t==`function`?t(e.collapsed):t})),toggleCollapsed:()=>e(e=>({collapsed:!e.collapsed}))}),{name:Ir,storage:Ot(()=>localStorage),partialize:e=>({collapsed:e.collapsed})}));if(typeof window<`u`)try{let e=window.localStorage.getItem(Lr);window.localStorage.getItem(Ir)===null&&(e===`true`||e===`false`)&&Rr.setState({collapsed:e===`true`}),e!==null&&window.localStorage.removeItem(Lr)}catch{}var zr=Y.lazy(()=>n(()=>import(`./settings-modal-Cth7Zb-I.js`).then(e=>({default:e.SettingsModal})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49]))),Br=Y.lazy(()=>n(()=>import(`./add-backend-modal-lG8XDYjr.js`).then(e=>e.n).then(e=>({default:e.AddBackendModal})),__vite__mapDeps([50,1,9,51,13,38,10,39,40,16,41,24,7,25,52,17,18,22,21,15,19,20,23,31,35,12,33,53,36,34]))),Vr=Y.lazy(()=>n(()=>import(`./manage-backends-modal-v5POMal5.js`).then(e=>e.n).then(e=>({default:e.ManageBackendsModal})),__vite__mapDeps([54,1,13,38,9,10,39,40,16,41,24,7,25,15,17,18,55,56,57,19,20,51,52,22,21,23,31,35,12,33,53,36,34,58]))),Hr=250;function Ur(){let{t:e}=S(`openhands`),{currentPath:t}=Ne(),{data:n}=je(),{data:r,error:i,isError:a,isFetching:o}=Lt(),{backends:s,active:c}=U(),l=Ct(s)[c.backend.id],u=Rr(e=>e.collapsed),d=Rr(e=>e.setCollapsed),[f,p]=Y.useState(!1),[m,h]=Y.useState(!1),g=Y.useRef(null),[_,v]=Y.useState(!1),[b,x]=Y.useState(!1),[C,T]=Y.useState(!1),E=Y.useRef(!1),[,D]=Y.useReducer(e=>e+1,0),{isOpen:O,close:k}=ee(),[A,j]=Y.useState(!1),[M,N]=Y.useState(!1),P=It(()=>h(!1)),F=Rt(i);Y.useEffect(()=>{k()},[t,k]),Y.useEffect(()=>{if(O){j(!0);let e=requestAnimationFrame(()=>{N(!0)});return()=>cancelAnimationFrame(e)}N(!1);let e=window.setTimeout(()=>{j(!1)},Hr);return()=>window.clearTimeout(e)},[O]),Y.useEffect(()=>{if(!O)return;let e=e=>{e.key===`Escape`&&k()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[O,k]),Y.useEffect(()=>{t===`/settings`?p(!1):!o&&a&&F!==404?w(e(y.SETTINGS$FETCH_ERROR)):F===404&&!n?.feature_flags?.hide_llm_settings&&p(!0)},[t,o,a,F,n?.feature_flags?.hide_llm_settings,e]);let I=r?.email_verified===!1,L=e(u?y.SIDEBAR$EXPAND:y.SIDEBAR$COLLAPSE),R=Y.useCallback(e=>{if(!u)return;let t=e.target;t instanceof HTMLElement&&(t.closest(`a,button,input,textarea,select,[role='button'],[role='link']`)||d(!1))},[u,d]),z={linkDisabled:I,collapseToggleLabel:L,onCollapse:Y.useCallback(()=>{T(!1),E.current=!0,D(),d(!0),window.setTimeout(()=>{E.current=!1,D()},250)},[d]),onExpand:()=>d(!1),showCollapsedExpandButton:u&&C&&!E.current,isExtensionsActive:t===`/customize`||t.startsWith(`/skills`)||t===`/plugins`||t===`/mcp`,currentPath:t,activeBackendHealth:l,collapsedBackendPopoverOpen:m,setCollapsedBackendPopoverOpen:h,collapsedBackendPopoverRef:P,collapsedBackendCloseTimer:g,onOpenAddBackend:()=>v(!0),onOpenManageBackends:()=>x(!0)};return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`aside`,{"aria-label":e(y.SIDEBAR$NAVIGATION_LABEL),"data-collapsed":u?`true`:`false`,onClick:R,onMouseEnter:()=>{u&&T(!0)},onMouseLeave:()=>{T(!1)},className:V(`max-md:hidden flex bg-base flex-col min-h-0 transition-[width,min-width] duration-200`,`md:border-r md:border-[var(--oh-border)] md:h-full`,u?`md:w-[60px] md:min-w-[60px] md:px-2.5`:`md:w-[300px] md:min-w-[300px] pb-2 md:pl-2.5 md:pr-0`,t===`/`&&`md:pb-3`),children:(0,X.jsx)(Fr,{collapsed:u,showCollapseToggle:!0,...z})}),A?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:V(`fixed inset-0 z-40 bg-black/50 md:hidden`,`transition-opacity ease-in-out motion-reduce:transition-none`,M?`opacity-100`:`pointer-events-none opacity-0`),style:{transitionDuration:`${Hr}ms`},onClick:k,"aria-hidden":!M}),(0,X.jsx)(`aside`,{"aria-label":e(y.SIDEBAR$NAVIGATION_LABEL),"data-testid":`sidebar-mobile-drawer`,"aria-hidden":!M,className:V(`fixed inset-y-0 left-0 z-50 flex min-h-0 w-[min(300px,85vw)] flex-col bg-base`,`border-r border-[var(--oh-border)] pb-2 pl-2.5 pr-0 md:hidden`,`transition-transform ease-in-out motion-reduce:transition-none`,M?`translate-x-0`:`-translate-x-full`),style:{transitionDuration:`${Hr}ms`},children:(0,X.jsx)(Fr,{collapsed:!1,showCollapseToggle:!1,showMobileCloseButton:!0,onCloseMobile:k,...z})})]}):null,f&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(zr,{settings:r,onClose:()=>p(!1)})}),_&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(Br,{onClose:()=>v(!1)})}),b&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(Vr,{onClose:()=>x(!1)})})]})}var Wr=`/settings`,Gr=`/customize`,Kr=[`/skills`,`/mcp`,`/plugins`];function qr(e){return e===Wr?{mode:`menu`}:e.startsWith(`${Wr}/`)&&e.length>9?{mode:`back`,backTo:Wr,backLabelKey:y.SETTINGS$TITLE}:e===Gr?{mode:`menu`}:Kr.some(t=>e===t||e.startsWith(`${t}/`))?{mode:`back`,backTo:Gr,backLabelKey:y.NAV$CUSTOMIZE}:{mode:`menu`}}function Jr(){let{t:e}=S(`openhands`),{currentPath:t,navigate:n}=Ne(),r=qr(t);return(0,X.jsxs)(`header`,{className:`flex md:hidden h-12 shrink-0 items-center gap-2 px-2.5`,"aria-label":e(y.SIDEBAR$NAVIGATION_LABEL),children:[(0,X.jsx)(ne,{}),r.mode===`back`&&r.backTo?(0,X.jsx)(`button`,{type:`button`,"data-testid":`sidebar-mobile-back-button`,onClick:()=>n(r.backTo),"aria-label":e(r.backLabelKey??y.COMMON$BACK),className:z,children:(0,X.jsx)(R,{size:20,className:I,"aria-hidden":!0,strokeWidth:2})}):null]})}var Yr=()=>{let e=we(),{mutate:t}=tn();return{migrateUserConsent:Y.useCallback(async n=>{let r=localStorage.getItem(`analytics-consent`);r&&(n?.handleAnalyticsWasPresentInLocalStorage(),t({user_consents_to_analytics:r===`true`},{onSuccess:()=>{en(e,r===`true`)}}),localStorage.removeItem(`analytics-consent`))},[e,t])}};function Xr(){let{backend:e}=Ce(),t=e.kind===`local`,{data:n}=Bt(),{mutate:r,isPending:i}=ge(),a=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{a.current=null},[e.id]),(0,Y.useEffect)(()=>{if(!t||i||!n)return;let{profiles:e,active_profile:o}=n,s=o!=null&&e.some(e=>e.name===o);if(e.length===0||s){a.current=null;return}let c=e.find(e=>e.api_key_set)??e[0];a.current!==c.name&&(a.current=c.name,r(c.name))},[t,n,i,r])}var Zr=()=>{let e=we(),{data:t}=Lt();Y.useEffect(()=>{!e||t===void 0||en(e,t.user_consents_to_analytics===!0)},[e,t])},Qr=()=>{let e=we(),{backend:t}=Ce(),{data:n}=Lt(),r=Ge(),i=Y.useRef(!1),a=t.kind===`cloud`,o=a?r[t.id]?.userId??null:null,s=n?.user_consents_to_analytics;Y.useEffect(()=>{if(!(!e||!a||n===void 0)){if(s===!0&&o){e.identify(o,{email:n.email??n.git_user_email??void 0}),i.current=!0;return}(s===!1||i.current&&!o)&&(e.reset(),i.current=!1)}},[e,a,s,o,n?.email,n])};function $r(e){switch(e){case H.RUNNING:return`🟢`;case H.FINISHED:case H.IDLE:case H.WAITING_FOR_CONFIRMATION:return`✅`;case H.PAUSED:return`⚪`;case H.ERROR:case H.STUCK:return`🔴`;default:return null}}var ei=`OpenHands`,ti=()=>{let{conversationId:e}=l(),{data:t}=nn(e??null),n=rn(e=>e.execution_status),r=t?.title,i=e&&r?`${r} | ${ei}`:ei;if(!e)return i;let a=$r(n??t?.execution_status??null);return a?`${a} ${i}`:i};function ni({children:e}){let{pathname:t}=p(),n=s(),r=c(),i=f(),a=Y.useMemo(()=>{for(let e=i.length-1;e>=0;--e){let t=i[e]?.params?.conversationId;if(t)return t}return null},[i]);return(0,X.jsx)(Pe,{value:Y.useMemo(()=>({currentPath:t,conversationId:a,isNavigating:!!r.location,navigate:(e,t)=>n(e,t)}),[t,a,r.location,n]),children:e})}var ri=Y.lazy(()=>n(()=>import(`./environment-switch-overlay-wB5LxfYZ.js`),__vite__mapDeps([59,1,12,10,9,19,20,60]))),ii=Y.lazy(()=>n(()=>import(`./analytics-consent-form-modal-Cujm1lCj.js`).then(e=>({default:e.AnalyticsConsentFormModal})),__vite__mapDeps([61,47,1,48,10,9,19,20,62,4,23,24,7,25,32,33,34,35,12,37,38,13,39,40,16,41,42,18,43,21,22,44,45,15,17,46,63]))),ai=Y.lazy(()=>n(()=>import(`./alert-banner-Bsvys-hT.js`).then(e=>({default:e.AlertBanner})),__vite__mapDeps([64,1,65,10,9,19,20,66,67,24,7,25,36,68,69,28]))),oi=u(function(){let e=a(),{t}=S(`openhands`);return i(e)?(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h1`,{children:e.status}),(0,X.jsx)(`p`,{children:e.statusText}),(0,X.jsx)(`pre`,{children:e.data instanceof Object?JSON.stringify(e.data):e.data})]}):e instanceof Error?(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h1`,{children:t(y.ERROR$GENERIC)}),(0,X.jsx)(`pre`,{children:e.message})]}):(0,X.jsx)(`div`,{children:(0,X.jsx)(`h1`,{children:t(y.ERROR$UNKNOWN)})})}),si=o(function(){let e=p(),t=ti(),{data:n}=Lt(),{migrateUserConsent:r}=Yr(),i=je(),[a,o]=Y.useState(!1);if(Zr(),Qr(),Xr(),Y.useEffect(()=>{n?.language&&T.changeLanguage(n.language)},[n?.language]),Y.useEffect(()=>{o(n?.user_consents_to_analytics===null)},[n?.user_consents_to_analytics]),Y.useEffect(()=>{r({handleAnalyticsWasPresentInLocalStorage:()=>{o(!1)}})},[r]),i.isLoading)return(0,X.jsx)(`div`,{className:`min-h-screen flex items-center justify-center bg-base`,children:(0,X.jsx)(Ae,{size:`large`})});let s=/^\/conversations\/[^/]+/.test(e.pathname),c=le(e.search);return(0,X.jsx)(ni,{children:(0,X.jsxs)(M,{children:[(0,X.jsxs)(`div`,{"data-testid":`root-layout`,className:`h-screen lg:min-w-5xl flex flex-col md:flex-row bg-base overflow-hidden p-0`,children:[(0,X.jsx)(`title`,{children:t}),(0,X.jsx)(Ur,{}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-col w-full min-w-0 h-full gap-3`,children:[s?null:(0,X.jsx)(Jr,{}),i.data&&(i.data.maintenance_start_time||i.data.faulty_models&&i.data.faulty_models.length>0||i.data.error_message)&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(ai,{maintenanceStartTime:i.data.maintenance_start_time,faultyModels:i.data.faulty_models,errorMessage:i.data.error_message,updatedAt:i.data.updated_at})}),(0,X.jsx)(`div`,{id:`root-outlet`,className:`relative flex-1 overflow-auto px-0 custom-scrollbar`,children:(0,X.jsx)(d,{})})]}),a&&(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(ii,{onClose:()=>{o(!1)}})})]}),(0,X.jsx)(Y.Suspense,{fallback:null,children:(0,X.jsx)(ri,{})}),c?(0,X.jsx)(pe,{}):null]})})});export{oi as ErrorBoundary,si as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{o as n,t as r}from"./declaration-D9ucT0fq.js";import{t as i}from"./useTranslation-CL6FTf1b.js";import{g as a,m as o,p as s}from"./query-client-config-Ca3tW1AH.js";import{t as c}from"./utils-eXk6yerZ.js";import{c as l,g as u,m as d,t as ee}from"./brand-button-9SOzmqPP.js";import{t as f}from"./vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-_LydBB1e.js";import{n as p,t as m}from"./settings-input-BM8ANxDb.js";import{r as te}from"./use-settings-CNsxccvQ.js";import{t as ne}from"./use-save-settings-7_MLft-Y.js";import{a as re,c as ie,d as h,l as ae,n as oe,o as se,r as ce,s as le,t as ue}from"./sdk-settings-schema-Big50zDH.js";import{n as de,t as fe}from"./use-agent-settings-schema-Lf_lBAky.js";import{n as g,t as _}from"./switch-skeleton-BbIWemkK.js";import{o as pe}from"./extension-module-card-classes-DP5J6ngE.js";import{i as v,n as y,r as b,t as x}from"./sdk-settings-field-metadata-p2GVlft7.js";import{t as S}from"./settings-dropdown-input-BP-arqjU.js";import{t as C}from"./settings-switch-xa6q4M6j.js";import{r as w}from"./typography-BLSEGjph.js";var T=e(t(),1),E=n();function D(){return(0,E.jsx)(`div`,{className:`w-[250px] h-[20px] skeleton`})}function O(){return(0,E.jsxs)(`div`,{"data-testid":`app-settings-skeleton`,className:`px-11 py-9 flex flex-col gap-6`,children:[(0,E.jsx)(_,{}),(0,E.jsx)(g,{}),(0,E.jsx)(g,{}),(0,E.jsx)(g,{}),(0,E.jsx)(D,{}),(0,E.jsx)(_,{}),(0,E.jsx)(_,{}),(0,E.jsx)(g,{})]})}var k={"llm.api_key":{textKey:`SCHEMA$LLM$API_KEY$HELP_TEXT`,linkTextKey:`SCHEMA$LLM$API_KEY$HELP_LINK_TEXT`,href:`https://docs.openhands.dev/usage/local-setup#getting-an-api-key`},"verification.critic_api_key":{textKey:`SCHEMA$VERIFICATION$CRITIC_API_KEY$HELP_TEXT`,linkTextKey:`SETTINGS$NAV_API_KEYS`,suffixKey:`SCHEMA$VERIFICATION$CRITIC_API_KEY$HELP_SUFFIX`,href:`https://app.all-hands.dev/settings/api-keys`,hideDescription:!0}},me=new Set([`verification.critic_api_key`]);function A({field:e}){let{t}=i(`openhands`),n=k[e.key],r=b(t,e.key,e.description);return(0,E.jsxs)(E.Fragment,{children:[r&&!n?.hideDescription?(0,E.jsx)(w.Paragraph,{className:`text-tertiary-alt text-xs leading-5`,children:r}):null,n?(0,E.jsx)(h,{testId:`help-link-${e.key}`,text:t(n.textKey),linkText:t(n.linkTextKey),href:n.href,suffix:n.suffixKey?` ${t(n.suffixKey)}`:void 0,size:`settings`,linkColor:`white`}):null]})}function j(e){return e.choices.length>0}function M(e){return e.value_type===`boolean`&&!j(e)}function N(e){return e.value_type===`array`||e.value_type===`object`}function P(e){return e.key.endsWith(`url`)||e.key.endsWith(`_url`)}function F(e){return e.secret?`password`:e.value_type===`integer`||e.value_type===`number`?`number`:e.value_type===`string`&&P(e)?`url`:`text`}function he({field:e,value:t,isDisabled:n,onChange:r}){let{t:a}=i(`openhands`),o=v(a,e.key,e.label),s=x(e.key);return M(e)?(0,E.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,E.jsx)(C,{testId:`sdk-settings-${e.key}`,isToggled:!!t,isDisabled:n,onToggle:r,children:o}),(0,E.jsx)(`div`,{className:d,children:(0,E.jsx)(A,{field:e})})]}):j(e)?(0,E.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,E.jsx)(S,{testId:`sdk-settings-${e.key}`,name:e.key,label:o,items:e.choices.map(t=>({key:String(t.value),label:y(a,e.key,t.value,t.label)})),selectedKey:t===``?void 0:String(t),isClearable:!e.required,required:e.required,showOptionalTag:!e.required,isDisabled:n,onSelectionChange:e=>r(String(e??``))}),(0,E.jsx)(A,{field:e})]}):N(e)?(0,E.jsxs)(`label`,{className:`flex flex-col gap-2.5 w-full`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`text-sm`,children:o}),e.required?null:(0,E.jsx)(p,{})]}),(0,E.jsx)(`textarea`,{"data-testid":`sdk-settings-${e.key}`,name:e.key,value:String(t??``),required:e.required,disabled:n,onChange:e=>r(e.target.value),className:c(l,`min-h-32 font-mono placeholder:italic`,`disabled:bg-[var(--oh-surface-raised)] disabled:border-[var(--oh-border-subtle)]`)}),(0,E.jsx)(A,{field:e})]}):(0,E.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,E.jsx)(m,{testId:`sdk-settings-${e.key}`,name:e.key,label:o,type:F(e),value:String(t??``),required:e.required,showOptionalTag:!e.required,isDisabled:n,onChange:r,className:`w-full`,min:s?.min,max:s?.max,step:s?.step}),(0,E.jsx)(A,{field:e})]})}var I=(e,t)=>c(`w-fit px-2 py-2 text-sm cursor-pointer rounded-none bg-transparent`,u,`border-b-2 pb-2`,e?`text-white border-white`:`text-[var(--oh-muted)] border-transparent hover:text-white`,t&&`pointer-events-none opacity-30 cursor-not-allowed`);function ge({view:e,setView:t,showAdvanced:n,showAll:a,isDisabled:o=!1}){let{t:s}=i(`openhands`);return!n&&!a?null:(0,E.jsxs)(`div`,{role:`tablist`,"aria-orientation":`horizontal`,className:`mb-6 flex items-center gap-2`,children:[(0,E.jsx)(`button`,{"data-testid":`sdk-section-basic-toggle`,type:`button`,role:`tab`,"aria-selected":e===`basic`,disabled:o,className:I(e===`basic`,o),onClick:()=>t(`basic`),children:s(r.SETTINGS$BASIC)}),n?(0,E.jsx)(`button`,{"data-testid":`sdk-section-advanced-toggle`,type:`button`,role:`tab`,"aria-selected":e===`advanced`,disabled:o,className:I(e===`advanced`,o),onClick:()=>t(`advanced`),children:s(r.SETTINGS$ADVANCED)}):null,a?(0,E.jsx)(`button`,{"data-testid":`sdk-section-all-toggle`,type:`button`,role:`tab`,"aria-selected":e===`all`,disabled:o,className:I(e===`all`,o),onClick:()=>t(`all`),children:s(r.SETTINGS$ALL)}):null]})}var _e=new Set,L={basic:0,advanced:1,all:2},ve=(e,t)=>L[t]<L[e]?t:e,ye=(e,t)=>L[t]>L[e]?t:e,be=(e,{showAdvanced:t,showAll:n})=>e===`all`?n?`all`:t?`advanced`:`basic`:e===`advanced`?t?`advanced`:n?`all`:`basic`:`basic`,xe={agent_settings:`agent_settings_diff`,conversation_settings:`conversation_settings_diff`},Se=(e,t)=>e instanceof f?e.response?.status===401?`${t} This agent server requires X-Session-API-Key. Set VITE_SESSION_API_KEY in the frontend to the same value used by the backend SESSION_API_KEY or OH_SESSION_API_KEYS_0.`:e.response?.status===404?`${t} This backend does not expose /api/settings/* schema endpoints. Upgrade to a recent openhands-agent-server release.`:t:t;function R({settingsSources:e,scope:t=`personal`,header:n,extraDirty:c=!1,buildPayload:l,onSaveSuccess:u,getInitialView:d,forceShowAdvancedView:f=!1,allowAllView:p=!0,initialValueOverrides:m,embedded:h=!1,hideSaveButton:g=!1,suppressSuccessToast:_=!1,onSaveControlChange:v,testId:y=`sdk-section-settings-screen`}){let{t:b}=i(`openhands`),{mutate:x,isPending:S}=ne(t),{data:C,isLoading:w,isFetching:D}=te(t),k=fe(C?.agent_settings_schema),A=de(C?.conversation_settings_schema),j=T.useMemo(()=>JSON.stringify(e.map(e=>({source:e.settingsSource,sectionKeys:e.sectionKeys,excludeKeys:e.excludeKeys?Array.from(e.excludeKeys).sort():null}))),[e]),M=T.useMemo(()=>JSON.parse(j).map(e=>({settingsSource:e.source,sectionKeys:e.sectionKeys,excludeKeys:e.excludeKeys?new Set(e.excludeKeys):void 0})),[j]),N=T.useCallback(e=>e===`conversation_settings`?A.data:k.data,[k.data,A.data]),P=M.some(e=>e.settingsSource===`conversation_settings`?A.isLoading:k.isLoading),F=T.useMemo(()=>M.map(e=>{let t=N(e.settingsSource);if(!ae(t))return{...e,filteredSchema:null};let n=new Set(e.sectionKeys),r={...t,sections:t.sections.filter(e=>n.has(e.key))};return{...e,filteredSchema:r}}),[M,N]),I=f||F.some(e=>se(e.filteredSchema)),L=p&&F.some(e=>le(e.filteredSchema)),R=T.useMemo(()=>Se(M.reduce((e,t)=>e??(t.settingsSource===`conversation_settings`?A.error:k.error),null),b(r.SETTINGS$SDK_SCHEMA_UNAVAILABLE)),[M,k.error,A.error,b]),Ce=T.useMemo(()=>m?JSON.stringify(m):``,[m]),[z,B]=T.useState(`basic`),[V,H]=T.useState({}),[U,W]=T.useState({}),G=T.useRef(!1),K=T.useMemo(()=>{if(!C)return null;let e={};for(let t of F){if(!t.filteredSchema)return null;e[t.settingsSource]={...e[t.settingsSource]??{},...ue(C,t.filteredSchema,t.settingsSource)}}if(m){let t=F[0]?.settingsSource;t&&e[t]&&(e[t]={...e[t],...m})}return e},[C,F,Ce]),q=T.useMemo(()=>{if(!C)return null;let e=null;for(let t of F){if(!t.filteredSchema)return null;let n=d?d(C,t.filteredSchema):ie(C,t.filteredSchema,t.settingsSource);e=e?ye(e,n):n}return e?be(e,{showAdvanced:I,showAll:L}):null},[C,F,d,I,L]);T.useEffect(()=>{G.current=!1,B(`basic`),H({}),W({})},[t,j]),T.useEffect(()=>{if(!(!K||!q)){if(H(K),m){let e=F[0]?.settingsSource;if(e){let t=Object.fromEntries(Object.keys(m).map(e=>[e,!0]));W({[e]:t})}else W({})}else W({});B(e=>G.current?ve(e,q):(G.current=!0,q))}},[K,q]);let J=T.useMemo(()=>{let e=new Map;for(let t of F)if(t.filteredSchema)for(let n of t.filteredSchema.sections)for(let r of n.fields)e.has(r.key)||e.set(r.key,t.settingsSource);return e},[F]),Y=T.useMemo(()=>{let e={};for(let t of F)Object.assign(e,V[t.settingsSource]??{});return e},[F,V]),X=T.useMemo(()=>{let e={};for(let t of F)Object.assign(e,U[t.settingsSource]??{});return e},[F,U]),Z=T.useCallback((e,t)=>{let n=J.get(e);n&&(H(r=>({...r,[n]:{...r[n]??{},[e]:t}})),W(t=>({...t,[n]:{...t[n]??{},[e]:!0}})))},[J]),we=T.useCallback(e=>{s(a(e)||b(r.ERROR$GENERIC))},[b]),Q=T.useRef(()=>{}),Te=T.useCallback(()=>{Q.current()},[]),$=T.useRef(()=>({})),Ee=T.useCallback(()=>$.current(),[]),De=()=>{if(F.some(e=>!e.filteredSchema))return;let e;try{let t={};for(let e of F){let n=e.filteredSchema,r=ce(n,V[e.settingsSource]??{},U[e.settingsSource]??{},z);if(Object.keys(r).length>0){let n=xe[e.settingsSource];t[n]={...t[n]??{},...r}}}e=l?l(t,{values:Y,dirty:X,view:z}):t}catch(e){s(e instanceof Error?e.message:b(r.ERROR$GENERIC));return}Object.keys(e).length!==0&&x(e,{onError:we,onSuccess:()=>{_||o(b(r.SETTINGS$SAVED_WARNING)),W({}),u?.()}})};Q.current=De,$.current=()=>{let e={};for(let t of F){if(!t.filteredSchema)continue;let n=V[t.settingsSource]??{},r=U[t.settingsSource]??{};Object.assign(e,oe(t.filteredSchema,n,r))}return e};let Oe=Object.keys(X).length>0,ke=Oe||c;return T.useEffect(()=>{v&&v({save:Te,isSaving:S,isDirty:ke,values:Y,view:z,getDirtyPayload:Ee})},[S,ke,Y,z]),(w||D)&&!C||P?(0,E.jsx)(O,{}):F.some(e=>e.filteredSchema&&e.filteredSchema.sections.length>0)?Object.keys(Y).length===0?(0,E.jsx)(O,{}):(0,E.jsxs)(`div`,{"data-testid":y,className:h?`relative flex min-h-0 w-full flex-1 flex-col`:`relative w-full min-h-0`,children:[(0,E.jsx)(ge,{view:z,setView:B,showAdvanced:I,showAll:L,isDisabled:!1}),(0,E.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[n?.({values:Y,isDisabled:!1,view:z,onChange:Z}),F.map(e=>{if(!e.filteredSchema)return null;let t=V[e.settingsSource]??{};return re(e.filteredSchema,{...Y,...t},z,e.excludeKeys??_e).map(n=>(0,E.jsx)(`section`,{className:`flex flex-col gap-4`,children:(0,E.jsx)(`div`,{className:`grid gap-4 xl:grid-cols-2`,children:n.fields.map(e=>(0,E.jsx)(`div`,{className:me.has(e.key)?`xl:col-span-2`:void 0,children:(0,E.jsx)(he,{field:e,value:t[e.key],isDisabled:!1,onChange:t=>Z(e.key,t)})},e.key))})},`${e.settingsSource}:${n.key}`))}),g?null:(0,E.jsx)(`div`,{className:`flex justify-start pt-2`,children:(0,E.jsx)(ee,{testId:`save-button`,type:`button`,variant:`primary`,isDisabled:S||!Oe&&!c,onClick:De,children:b(S?r.SETTINGS$SAVING:r.SETTINGS$SAVE_CHANGES)})})]})]}):(0,E.jsx)(`div`,{"data-testid":`sdk-schema-unavailable`,className:pe,children:(0,E.jsx)(`p`,{className:`text-sm text-[var(--oh-muted)]`,children:R})})}export{R as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./declaration-D9ucT0fq.js";import{t}from"./utils-eXk6yerZ.js";import{t as n}from"./dist-5dObF4p4.js";import{t as r}from"./sdk-settings-field-metadata-p2GVlft7.js";var i=e(),a=n(``,{variants:{size:{default:`text-xs`,settings:`text-sm text-[var(--oh-muted)] font-normal leading-5.5`},linkColor:{default:``,white:`text-white`}},defaultVariants:{size:`default`,linkColor:`default`}});function o({testId:e,text:n,linkText:r,href:o,suffix:s,size:c,linkColor:l,className:u,linkTextClassName:d,suffixClassName:f}){return(0,i.jsxs)(`p`,{"data-testid":e,className:t(a({size:c}),u),children:[n,` `,(0,i.jsx)(`a`,{href:o,rel:`noreferrer noopener`,target:`_blank`,className:t(`underline underline-offset-2`,a({size:c,linkColor:l}),d),children:r}),s&&(0,i.jsx)(`span`,{className:f,children:s})]})}var s=new Set([`llm.model`,`llm.api_key`,`llm.base_url`]),c={basic:new Set([`critical`]),advanced:new Set([`critical`,`major`]),all:new Set([`critical`,`major`,`minor`])};function l(e){return!!e&&Array.isArray(e.sections)}function u(e){return l(e)?e.sections.flatMap(e=>e.fields):[]}function d(e,t){if(!e)return;let n=t.split(`.`),r=e;for(let e of n){if(typeof r!=`object`||!r)return;r=r[e]}return r}function f(e,t,n){let r=t.split(`.`),i=e;for(let e=0;e<r.length-1;e+=1){let t=r[e];(i[t]==null||typeof i[t]!=`object`||Array.isArray(i[t]))&&(i[t]={}),i=i[t]}i[r[r.length-1]]=n}function p(e,t,n=`agent_settings`){return d(e[n],t)??null}function m(e,t){return p(e,t,`agent_settings`)}function h(e){return e.choices.length>0}function g(e){return e.prominence===`critical`}function _(e){return e.prominence===`minor`}function v(e,t){let n=t??e.default;return h(e)?n==null?``:String(n):e.value_type===`boolean`?!!(n??!1):n==null?``:e.value_type===`array`||e.value_type===`object`?JSON.stringify(n,null,2):String(n)}function y(e,t){if(t===void 0)return null;if(e.value_type===`boolean`){if(typeof t==`string`){if(t===`true`)return!0;if(t===`false`)return!1}return t===null?null:!!t}if(e.value_type===`integer`||e.value_type===`number`){if(t===``||t===null)return null;let e=typeof t==`number`?t:Number(String(t));return Number.isNaN(e)?null:e}if(e.value_type===`array`||e.value_type===`object`){if(t===null||e.value_type===`object`&&typeof t==`object`&&!Array.isArray(t)&&Object.keys(t).length===0)return null;if(typeof t==`string`){let n=t.trim();if(!n)return null;try{let t=JSON.parse(n);return e.value_type===`object`&&typeof t==`object`&&t&&!Array.isArray(t)&&Object.keys(t).length===0?null:JSON.stringify(t)}catch{return n}}return JSON.stringify(t)}return t===null?null:String(t)}function b(e,t,n=`agent_settings`){let r=t??(n===`conversation_settings`?e.conversation_settings_schema:e.agent_settings_schema);return r?Object.fromEntries(u(r).map(t=>[t.key,v(t,p(e,t.key,n))])):{}}function x(e,t,n=`agent_settings`){let r=t??(n===`conversation_settings`?e.conversation_settings_schema:e.agent_settings_schema);if(!r)return`basic`;let i=!1,a=!1;for(let t of u(r))g(t)||y(t,p(e,t.key,n)??t.default??null)!==y(t,t.default??null)&&(_(t)?i=!0:a=!0);return i?`all`:a?`advanced`:`basic`}function S(e,t){return e.depends_on.every(e=>t[e]===!0)}function C(e){if(typeof e==`boolean`)return e;let t=e.trim().toLowerCase();if(!t)return null;if(t===`true`)return!0;if(t===`false`)return!1;throw Error(`Expected a boolean value, received: ${e}`)}function w(e,t){if(e.value_type===`boolean`)return C(t);if(e.value_type===`integer`||e.value_type===`number`){let n=String(t).trim();if(!n)return null;let i=Number(n);if(Number.isNaN(i))throw Error(`Expected a numeric value, received: ${n}`);if(e.value_type===`integer`&&!Number.isInteger(i))throw Error(`Expected an integer value, received: ${n}`);let a=r(e.key);if(a?.min!=null&&i<a.min)throw Error(`${e.label} must be at least ${a.min}`);if(a?.max!=null&&i>a.max)throw Error(`${e.label} must be at most ${a.max}`);return i}if(e.value_type===`array`||e.value_type===`object`){let n=String(t).trim();if(!n)return null;let r;try{r=JSON.parse(n)}catch{throw Error(`Invalid JSON for ${e.label}`)}if(e.value_type===`array`){if(!Array.isArray(r))throw Error(`${e.label} must be a JSON array`);return r}if(r===null||Array.isArray(r)||typeof r!=`object`)throw Error(`${e.label} must be a JSON object`);return r}let n=String(t);return n===``&&!e.secret?null:n}function T(e,t,n){let r={};for(let i of u(e))n[i.key]&&f(r,i.key,w(i,t[i.key]));return r}function E(e,t){return c[t].has(e.prominence)}function D(e,t,n,r){let i=T(e,t,n);for(let t of u(e))E(t,r)||f(i,t.key,t.default??null);return i}function O(e,t,n,r=s){return l(e)?e.sections.map(e=>({...e,fields:e.fields.filter(e=>!r.has(e.key)&&E(e,n)&&S(e,t))})).filter(e=>e.fields.length>0):[]}function k(e){return e?u(e).some(e=>e.prominence===`major`):!1}function A(e){return e?u(e).some(e=>e.prominence===`minor`):!1}export{O as a,x as c,o as d,m as i,l,T as n,k as o,D as r,A as s,b as t,v as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{L as n}from"./vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js";import{t as r}from"./useMutation-Dm84WAKR.js";import{o as i,t as a}from"./declaration-D9ucT0fq.js";import{n as o}from"./QueryClientProvider-XcSjsfpb.js";import{t as s}from"./useTranslation-CL6FTf1b.js";import{t as c}from"./back-nav-button-D20Avel_.js";import{t as l}from"./pencil-DPEtl5QD.js";import{t as u}from"./trash-2-C-RvV8WA.js";import{t as d}from"./utils-eXk6yerZ.js";import{c as f,d as p,t as m}from"./brand-button-9SOzmqPP.js";import{t as h}from"./loading-spinner-D7bOU6I7.js";import{n as g,t as _}from"./settings-input-BM8ANxDb.js";import{t as v}from"./confirmation-modal-Cq3eqvqH.js";import"./extension-module-card-classes-DP5J6ngE.js";import{r as y}from"./typography-BLSEGjph.js";import{a as b,c as x,i as S,l as C,o as w,r as T,s as E}from"./settings-list-classes-B9uo5WES.js";import{t as D}from"./secrets-service-Skzza9sx.js";import{n as O,t as k}from"./use-create-secret-LObNBU3M.js";var A=e(t(),1),j=()=>r({mutationFn:e=>D.deleteSecret(e)}),M=()=>r({mutationFn:({secretToEdit:e,name:t,description:n})=>D.updateSecret(e,t,n)}),N=i();function P({mode:e,selectedSecret:t,onCancel:n}){let r=o(),{t:i}=s(`openhands`),{data:c}=O(),{mutate:l}=k(),{mutate:u}=M(),[h,v]=A.useState(null),y=e===`edit`&&t&&c?.find(e=>e.name===t)?.description?.trim()||``,b=()=>{r.invalidateQueries({queryKey:[`secrets-search`]}),r.invalidateQueries({queryKey:[`secrets`]})},x=(e,t,r)=>{l({name:e,value:t,description:r},{onSettled:n,onSuccess:b})},S=(e,t,r)=>{u({secretToEdit:e,name:t,description:r},{onSettled:n,onSuccess:b})};return(0,N.jsxs)(`form`,{"data-testid":e===`add`?`add-secret-form`:`edit-secret-form`,onSubmit:n=>{n.preventDefault();let r=new FormData(n.currentTarget),o=r.get(`secret-name`)?.toString(),s=r.get(`secret-value`)?.toString().trim(),l=r.get(`secret-description`)?.toString();if(o){if(v(null),c?.some(e=>e.name===o&&e.name!==t)){v(i(a.SECRETS$SECRET_ALREADY_EXISTS));return}if(e===`add`){if(!s){v(i(a.SECRETS$SECRET_VALUE_REQUIRED));return}x(o,s,l||void 0)}else e===`edit`&&t&&S(t,o,l||void 0)}},className:`flex flex-col items-start gap-6`,children:[(0,N.jsx)(_,{testId:`name-input`,name:`secret-name`,type:`text`,label:`Name`,className:`w-full min-w-0`,required:!0,defaultValue:e===`edit`&&t?t:``,placeholder:i(a.SECRETS$API_KEY_EXAMPLE),pattern:`^[a-zA-Z][a-zA-Z0-9_]{0,63}$`,title:`Must start with a letter, contain only letters/numbers/underscores, and be 1-64 characters`}),h&&(0,N.jsx)(`p`,{className:`text-red-500 text-sm`,children:h}),e===`add`&&(0,N.jsxs)(`label`,{className:`flex flex-col gap-2.5 w-full min-w-0`,children:[(0,N.jsx)(`span`,{className:`text-sm`,children:i(a.FORM$VALUE)}),(0,N.jsx)(`textarea`,{"data-testid":`value-input`,name:`secret-value`,required:!0,className:d(`resize-none`,f,`placeholder:italic`,`disabled:bg-[var(--oh-surface-raised)] disabled:border-[var(--oh-border-subtle)] disabled:cursor-not-allowed`),rows:8})]}),(0,N.jsxs)(`label`,{className:`flex flex-col gap-2.5 w-full min-w-0`,children:[(0,N.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.jsx)(`span`,{className:`text-sm`,children:i(a.FORM$DESCRIPTION)}),(0,N.jsx)(g,{})]}),(0,N.jsx)(`input`,{"data-testid":`description-input`,name:`secret-description`,defaultValue:y,className:d(p,`disabled:bg-[var(--oh-surface-raised)] disabled:border-[var(--oh-border-subtle)]`)})]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,N.jsx)(m,{testId:`cancel-button`,type:`button`,variant:`secondary`,onClick:n,children:i(a.BUTTON$CANCEL)}),(0,N.jsxs)(m,{testId:`submit-button`,type:`submit`,variant:`primary`,children:[e===`add`&&i(a.SECRETS$ADD_SECRET),e===`edit`&&i(a.SECRETS$EDIT_SECRET)]})]})]})}function F(){return(0,N.jsxs)(`div`,{className:d(S,`justify-between border-t border-[var(--oh-border)] first:border-t-0`),children:[(0,N.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-4`,children:[(0,N.jsx)(`span`,{className:`skeleton h-4 w-1/4`}),(0,N.jsx)(`span`,{className:`skeleton h-4 w-1/2`})]}),(0,N.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,N.jsx)(`span`,{className:`skeleton h-4 w-4`}),(0,N.jsx)(`span`,{className:`skeleton h-4 w-4`})]})]})}function I({title:e,description:t,onEdit:n,onDelete:r}){return(0,N.jsxs)(`tr`,{"data-testid":`secret-item`,className:C,children:[(0,N.jsx)(`td`,{className:d(w,`text-content-2 truncate`),title:e,children:e}),(0,N.jsx)(`td`,{className:d(w,`truncate text-content-2 opacity-80`),title:t||``,children:t||``}),(0,N.jsx)(`td`,{className:w,children:(0,N.jsxs)(`div`,{className:`flex items-center justify-end gap-0.5`,children:[(0,N.jsx)(`button`,{"data-testid":`edit-secret-button`,type:`button`,onClick:n,"aria-label":`Edit ${e}`,className:T,children:(0,N.jsx)(l,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})}),(0,N.jsx)(`button`,{"data-testid":`delete-secret-button`,type:`button`,onClick:r,"aria-label":`Delete ${e}`,className:T,children:(0,N.jsx)(u,{"aria-hidden":!0,className:`size-4`,strokeWidth:2})})]})})]})}var L={hideTitle:!0};function R(){let e=o(),{t}=s(`openhands`),n=(0,A.useRef)(null),{data:r,isLoading:i,hasNextPage:l,isFetchingNextPage:u,onLoadMore:f}=O(),{mutate:p}=j(),[g,_]=A.useState(`list`),[S,C]=A.useState(null),[w,T]=A.useState(!1),D=(0,A.useCallback)(e=>{let t=e.currentTarget;t.scrollHeight-t.scrollTop<=t.clientHeight+100&&l&&!u&&f()},[l,u,f]),k=()=>{e.invalidateQueries({queryKey:[`secrets-search`]}),e.invalidateQueries({queryKey:[`secrets`]})},M=e=>{p(e,{onSettled:()=>{T(!1)},onSuccess:k,onError:k})},L=()=>{S&&M(S)},R=()=>{T(!1)},z=()=>{_(`list`),C(null)},B=g===`add-secret-form`||g===`edit-secret-form`,V=t(g===`add-secret-form`?a.SECRETS$ADD_A_SECRET:a.SECRETS$EDIT_A_SECRET);return(0,N.jsxs)(`div`,{"data-testid":`secrets-settings-screen`,className:`flex flex-col gap-6`,children:[g===`list`?(0,N.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,N.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,N.jsx)(y.H2,{children:t(a.SETTINGS$NAV_SECRETS)}),(0,N.jsx)(`p`,{"data-testid":`settings-page-subtitle`,className:`text-sm leading-5 text-tertiary-light`,children:t(a.SETTINGS$PAGE_SECRETS_SUBLINE)})]}),(0,N.jsx)(m,{testId:`add-secret-button`,type:`button`,variant:`primary`,className:`shrink-0 whitespace-nowrap`,onClick:()=>_(`add-secret-form`),isDisabled:i,children:t(a.SECRETS$ADD_NEW_SECRET)})]}):null,B?(0,N.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,N.jsx)(c,{testId:`back-to-secrets`,onClick:z,children:t(a.BUTTON$BACK)}),(0,N.jsx)(y.H2,{testId:`secret-editor-title`,children:V})]}):null,i&&g===`list`&&(0,N.jsxs)(`ul`,{children:[(0,N.jsx)(F,{}),(0,N.jsx)(F,{}),(0,N.jsx)(F,{})]}),g===`list`&&!i&&r?.length===0&&(0,N.jsx)(`div`,{"data-testid":`secrets-empty`,className:`rounded-xl border border-[var(--oh-border)] p-8 text-center`,children:(0,N.jsx)(`p`,{className:`text-sm text-[var(--oh-muted)]`,children:t(a.SECRETS$EMPTY)})}),g===`list`&&!i&&(r?.length??0)>0&&(0,N.jsxs)(`div`,{ref:n,className:b,onScroll:D,children:[(0,N.jsxs)(`table`,{className:`w-full min-w-full table-fixed`,children:[(0,N.jsx)(`thead`,{className:E,children:(0,N.jsxs)(`tr`,{children:[(0,N.jsx)(`th`,{className:d(x,`w-1/4`),children:t(a.SETTINGS$NAME)}),(0,N.jsx)(`th`,{className:d(x,`w-1/2`),children:t(a.SECRETS$DESCRIPTION)}),(0,N.jsx)(`th`,{className:d(x,`w-1/4 text-right`),children:t(a.SETTINGS$ACTIONS)})]})}),(0,N.jsx)(`tbody`,{children:r?.map(e=>(0,N.jsx)(I,{title:e.name,description:e.description,onEdit:()=>{_(`edit-secret-form`),C(e.name)},onDelete:()=>{T(!0),C(e.name)}},e.name))})]}),u&&(0,N.jsx)(`div`,{className:`flex justify-center p-4`,children:(0,N.jsx)(h,{size:`small`})})]}),(g===`add-secret-form`||g===`edit-secret-form`)&&(0,N.jsx)(P,{mode:g===`add-secret-form`?`add`:`edit`,selectedSecret:S,onCancel:z}),w&&(0,N.jsx)(v,{text:t(a.SECRETS$CONFIRM_DELETE_KEY),onConfirm:L,onCancel:R})]})}var z=n(R);export{z as default,L as handle};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{E as n,L as r,c as i,j as a,k as o}from"./vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js";import{o as s,t as c}from"./declaration-D9ucT0fq.js";import{t as l}from"./useTranslation-CL6FTf1b.js";import{r as u}from"./query-client-config-Ca3tW1AH.js";import{n as d,t as f}from"./use-settings-nav-items-ykMjd_NG.js";import{t as p}from"./utils-eXk6yerZ.js";import{a as m}from"./agent-server-client-options-wXLeJYeM.js";import{c as h,i as g,s as _}from"./active-backend-context-B2OSC-qe.js";import{t as v}from"./option-service.api-CdYnKVsu.js";import"./navigation-link-Dci7Nuyf.js";import"./use-cloud-current-user-id-CSm3kgqy.js";import{t as y}from"./sidebar-nav-link-BekRAssb.js";import{n as b}from"./use-settings-CNsxccvQ.js";import"./close--W-tHn1h.js";import{r as x}from"./typography-BLSEGjph.js";import{t as S}from"./settings-section-header-context-Cid25HM2.js";import"./settings-gear-f-zWpxfI.js";import{n as C,r as w}from"./settings-utils--H_EvFjx.js";import{t as T}from"./use-breakpoint-DpxHDmuH.js";import{t as E}from"./backend-synced-settings-badge-Da0G6Lwv.js";import{t as D}from"./settings-like-page-layout-classes-C335ikW2.js";var O=e(t(),1),k=s();function A({navigationItems:e}){let{t}=l(`openhands`),n=e.filter(e=>e.type===`item`);return(0,k.jsxs)(`aside`,{"data-testid":`settings-navbar-desktop`,className:p(`hidden md:flex md:w-[260px] md:shrink-0 md:flex-col md:gap-2`,`md:sticky md:top-8 md:self-start md:pl-8`),children:[(0,k.jsx)(x.Text,{className:`px-2 text-sm font-normal text-white`,children:t(c.SETTINGS$TITLE)}),(0,k.jsx)(`div`,{className:`flex flex-col gap-0.5 pt-0.5`,children:n.map(e=>(0,k.jsx)(y,{to:e.item.to,label:t(e.item.text),end:!0,testId:`sidebar-settings-${e.item.to}`,icon:e.item.icon,disabled:e.disabled,disabledReason:e.disabled&&e.disabledAgentName?t(c.SETTINGS$AGENT_DISABLED_TOOLTIP,{agentName:e.disabledAgentName}):void 0},e.item.to))}),(0,k.jsx)(`div`,{className:`px-2 pt-3`,children:(0,k.jsx)(E,{})})]})}function j({children:e,navigationItems:t}){return(0,k.jsx)(`div`,{className:`flex h-full flex-col md:pt-8`,children:(0,k.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-10 md:items-start`,children:[(0,k.jsx)(A,{navigationItems:t}),(0,k.jsx)(`main`,{className:D,children:(0,k.jsx)(`div`,{className:`mx-auto w-full min-w-0 max-w-[800px]`,children:e})})]})})}async function M(){try{let e=m();if((await u.fetchQuery({queryKey:[...h.byScope(`personal`),e.backend.id,e.orgId],queryFn:()=>b(`personal`),staleTime:0}))?.agent_settings?.agent_kind===`acp`)return n(`/settings/agent`)}catch{}return null}var N=async({request:e})=>{let{pathname:t}=new URL(e.url),r=(await u.fetchQuery({queryKey:_.WEB_CLIENT_CONFIG,queryFn:v.getConfig,...g}))?.feature_flags;if(w(t,r)){let e=C(r);if(e&&e!==t)return n(e)}if(d.find(e=>e.to===t)?.disabledByAcp){let e=await M();if(e)return e}return null};function P(){let{t:e}=l(`openhands`),t=o(),n=a(),r=f(),s=T(768),[c,u]=(0,O.useState)(!1),{currentSectionTitle:d,currentSectionSubtitle:p}=(0,O.useMemo)(()=>{let e=r.find(e=>e.type===`item`&&e.item.to===t.pathname);if(e?.type===`item`)return{currentSectionTitle:e.item.text,currentSectionSubtitle:e.item.subtitle};let n=r.find(e=>e.type===`item`);return n?.type===`item`?{currentSectionTitle:n.item.text,currentSectionSubtitle:n.item.subtitle}:{currentSectionTitle:`SETTINGS$TITLE`,currentSectionSubtitle:null}},[r,t.pathname]),m=n.find(e=>e.pathname===t.pathname)?.handle,h=s&&t.pathname===`/settings`;return(0,k.jsx)(`main`,{"data-testid":`settings-screen`,className:`min-h-0`,children:(0,k.jsx)(S,{setHideSectionHeader:u,children:(0,k.jsx)(j,{navigationItems:r,children:(0,k.jsxs)(`div`,{className:`flex flex-col gap-6 pb-8`,children:[!(m?.hideTitle===!0||h||c)&&(0,k.jsxs)(`header`,{className:`space-y-1`,children:[(0,k.jsx)(x.H2,{children:e(d)}),p?(0,k.jsx)(`p`,{"data-testid":`settings-page-subtitle`,className:`text-sm leading-5 text-tertiary-light`,children:e(p)}):null]}),(0,k.jsx)(i,{})]})})})})}var F=r(P);export{N as clientLoader,F as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{o as n,t as r}from"./declaration-D9ucT0fq.js";import{t as i}from"./useTranslation-CL6FTf1b.js";import{N as a,t as o}from"./utils-eXk6yerZ.js";import{t as s}from"./modal-backdrop-_VbcKk5K.js";import{r as c,t as l}from"./modal-body-Cd-PtMHr.js";import{t as u}from"./base-modal-DvuGYyu1.js";import{t as d}from"./modal-classes-CNm4ovfm.js";import{t as f}from"./brand-button-9SOzmqPP.js";import{n as p}from"./navigation-context-BpAOh_t5.js";import{t as m}from"./model-selector-CdZs21EZ.js";import{t as h}from"./settings-input-BM8ANxDb.js";import{t as g}from"./settings-wh2sLLJM.js";import{t as _}from"./use-tracking-C9P88zSo.js";import{t as v}from"./use-save-settings-7_MLft-Y.js";import{d as y,i as b}from"./sdk-settings-schema-Big50zDH.js";import{t as x}from"./settings-utils--H_EvFjx.js";var S=e(t(),1),C=n();function w({testId:e,title:t,description:n,buttons:r}){return(0,C.jsx)(u,{testId:e,title:t,description:n,buttons:[{text:r.danger.text,onClick:r.danger.onClick,className:`bg-danger`},{text:r.cancel.text,onClick:r.cancel.onClick,className:`bg-[var(--oh-interactive-selected)]`}]})}function T({settings:e,onClose:t}){let{trackSettingsSaved:n}=_(),{mutate:o}=v(),{currentPath:c}=p(),{t:l}=i(`openhands`),u=S.useRef(null),[d,g]=S.useState(!1),T=async e=>{let r=x(e);await o(r,{onSuccess:()=>{t();let e=r.agent_settings_diff?.llm??{};n({llmModel:e.model,llmApiKeySet:e.api_key?`SET`:`UNSET`,searchApiKeySet:r.search_api_key?`SET`:`UNSET`,remoteRuntimeResourceFactor:r.remote_runtime_resource_factor})}})},E=()=>{T(new FormData(u.current??void 0))},D=e=>{e.preventDefault();let t=new FormData(e.currentTarget);c.startsWith(`/conversations/`)?g(!0):T(t)},O=e.llm_api_key_set,k=b(e,`llm.model`),A=b(e,`llm.base_url`);return(0,C.jsxs)(`div`,{children:[(0,C.jsxs)(`form`,{ref:u,"data-testid":`settings-form`,className:`flex flex-col gap-6`,onSubmit:D,children:[(0,C.jsxs)(`div`,{className:`flex flex-col gap-[17px]`,children:[(0,C.jsx)(m,{currentModel:typeof k==`string`?k:void 0,currentBaseUrl:typeof A==`string`?A:void 0,wrapperClassName:`!flex-col !gap-[17px]`,labelClassName:a.LABEL_CLASSNAME}),(0,C.jsx)(h,{testId:`llm-api-key-input`,name:`llm-api-key-input`,label:l(r.SETTINGS_FORM$API_KEY),type:`password`,className:`w-full`,placeholder:O?`<hidden>`:``,labelClassName:a.LABEL_CLASSNAME}),(0,C.jsx)(y,{testId:`llm-api-key-help-anchor`,text:l(r.SETTINGS$DONT_KNOW_API_KEY),linkText:l(r.SETTINGS$CLICK_FOR_INSTRUCTIONS),href:`https://docs.openhands.dev/usage/local-setup#getting-an-api-key`,size:`settings`,linkColor:`white`})]}),(0,C.jsx)(`div`,{className:`flex flex-col gap-2`,children:(0,C.jsx)(f,{testId:`save-settings-button`,type:`submit`,variant:`primary`,className:`w-full`,children:l(r.BUTTON$SAVE)})})]}),d&&(0,C.jsx)(s,{children:(0,C.jsx)(w,{title:l(r.MODAL$END_SESSION_TITLE),description:l(r.MODAL$END_SESSION_MESSAGE),buttons:{danger:{text:l(r.BUTTON$END_SESSION),onClick:E},cancel:{text:l(r.BUTTON$CANCEL),onClick:()=>g(!1)}}})})]})}function E({onClose:e,settings:t}){let{t:n}=i(`openhands`);return(0,C.jsx)(s,{children:(0,C.jsxs)(`div`,{"data-testid":`ai-config-modal`,className:o(`bg-[var(--oh-surface)] m-4 p-6 rounded-xl flex flex-col gap-[17px] border border-[var(--oh-border)] api-configuration-modal`,c(`md`),l),children:[(0,C.jsx)(`span`,{className:d,children:n(r.AI_SETTINGS$TITLE)}),(0,C.jsx)(y,{testId:`advanced-settings-link`,text:`${n(r.SETTINGS$DESCRIPTION)}. ${n(r.SETTINGS$FOR_OTHER_OPTIONS)} ${n(r.COMMON$SEE)}`,linkText:n(r.COMMON$ADVANCED_SETTINGS),href:`/settings`,suffix:`.`,size:`settings`,linkColor:`white`,suffixClassName:`text-white`}),(0,C.jsx)(T,{settings:t||g,onClose:e})]})})}export{E as SettingsModal};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{D as e,a as t,n}from"./agent-server-client-options-wXLeJYeM.js";import{t as r}from"./proxy-Bx3NeKeo.js";import{t as i}from"./settings-wh2sLLJM.js";function a(){let e=t().backend;if(e.kind!==`cloud`)throw Error(`Cloud settings call requires a cloud backend.`);return e}function o(e){if(e.agent_settings&&Object.keys(e.agent_settings).length>0)return e.agent_settings;let t={},n={};typeof e.llm_model==`string`&&(n.model=e.llm_model),typeof e.llm_base_url==`string`&&(n.base_url=e.llm_base_url),typeof e.llm_api_key==`string`&&(n.api_key=e.llm_api_key),Object.keys(n).length>0&&(t.llm=n);let r={};return typeof e.enable_default_condenser==`boolean`&&(r.enabled=e.enable_default_condenser),typeof e.condenser_max_size==`number`&&(r.max_size=e.condenser_max_size),Object.keys(r).length>0&&(t.condenser=r),typeof e.agent==`string`&&(t.agent=e.agent),t}function s(e){if(e.conversation_settings&&Object.keys(e.conversation_settings).length>0)return e.conversation_settings;let t={};return typeof e.confirmation_mode==`boolean`&&(t.confirmation_mode=e.confirmation_mode),(typeof e.security_analyzer==`string`||e.security_analyzer===null)&&(t.security_analyzer=e.security_analyzer),typeof e.max_iterations==`number`&&(t.max_iterations=e.max_iterations),t}async function c(){let e=await r({backend:a(),method:`GET`,path:`/api/v1/settings`});return{...e,agent_settings:o(e),conversation_settings:s(e),llm_api_key_set:!!e.llm_api_key_set,search_api_key_set:!!e.search_api_key_set,provider_tokens_set:e.provider_tokens_set}}async function l(e){let t=a(),n={};if(e.agent_settings_diff){let t={...e.agent_settings_diff};t.agent_context===null&&delete t.agent_context,Object.keys(t).length>0&&(n.agent_settings_diff=t)}if(e.conversation_settings_diff&&Object.keys(e.conversation_settings_diff).length>0&&(n.conversation_settings_diff=e.conversation_settings_diff),e.app_preferences)for(let[t,r]of Object.entries(e.app_preferences))r!==void 0&&(n[t]=r);await r({backend:t,method:`POST`,path:`/api/v1/settings`,body:n})}async function u(){return r({backend:a(),method:`GET`,path:`/api/v1/settings/agent-schema`})}async function d(){return r({backend:a(),method:`GET`,path:`/api/v1/settings/conversation-schema`})}var f=`openhands-agent-server-app-preferences`,p=`openhands-agent-server-disabled-skills`,m=()=>typeof window<`u`,h=()=>{if(!m())return null;try{let e=window.localStorage.getItem(f);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`||Array.isArray(t)?null:t}catch{return null}},g=()=>{if(!m())return null;try{let e=window.localStorage.getItem(p);if(!e)return null;let t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>typeof e==`string`):null}catch{return null}},_=()=>{if(m())try{window.localStorage.removeItem(f),window.localStorage.removeItem(p)}catch{}},v=[`language`,`user_consents_to_analytics`,`enable_sound_notifications`,`git_user_name`,`git_user_email`],y=(e,t)=>{let n={};if(e)for(let t of v){let r=e[t];r!==void 0&&(n[t]=r)}return t&&(n.disabled_skills=t),Object.keys(n).length>0?n:null},b=async(e,t)=>{if(!e.misc_settings)return!1;let n=y(h(),g());if(!n)return!1;try{return await t(n),_(),!0}catch{return!1}},x=[`language`,`user_consents_to_analytics`,`enable_sound_notifications`,`git_user_name`,`git_user_email`,`disabled_skills`],S=new Set(x),C=e=>S.has(e),w=e=>{let t={},n={};for(let[r,i]of Object.entries(e))C(r)?t[r]=i:n[r]=i;return{extracted:t,rest:n}},T=e=>JSON.parse(JSON.stringify(e)),E=(e,t)=>({...e??{},...t??{}});async function D(e,t=3,n=500){for(let r=0;r<t;r+=1)try{return await e()}catch(e){if(r>=t-1)throw e;let i=n*2**r;await new Promise(e=>{setTimeout(e,i)})}throw Error(`Retry attempts exhausted`)}var O={redacted:null,encrypted:null,timestamp:0},k=300*1e3,A=()=>Date.now()-O.timestamp<k,j=()=>{O={redacted:null,encrypted:null,timestamp:0}},M=e=>{let t={agent_settings:e.agent_settings??{},conversation_settings:e.conversation_settings??{},llm_api_key_set:e.llm_api_key_is_set},n=e.misc_settings?.app_preferences;if(n)for(let e of x){let r=n[e];r!==void 0&&(t[e]=r)}return t},N=e=>{let t=E(i.agent_settings??{},e.agent_settings??{}),n=E(i.conversation_settings??{},e.conversation_settings??{}),r={...T(i),...e,provider_tokens_set:{...i.provider_tokens_set??{},...e.provider_tokens_set??{}},agent_settings:t,conversation_settings:n},a=t.llm,o=t.condenser;return typeof t.agent==`string`&&(r.agent=t.agent),typeof a?.model==`string`&&a.model.length>0&&(r.llm_model=a.model),typeof a?.base_url==`string`&&(r.llm_base_url=a.base_url),typeof o?.enabled==`boolean`&&(r.enable_default_condenser=o.enabled),typeof o?.max_size==`number`&&(r.condenser_max_size=o.max_size),t.mcp_config&&(r.mcp_config=t.mcp_config),typeof n.confirmation_mode==`boolean`&&(r.confirmation_mode=n.confirmation_mode),(typeof n.security_analyzer==`string`||n.security_analyzer===null)&&(r.security_analyzer=n.security_analyzer),typeof n.max_iterations==`number`&&(r.max_iterations=n.max_iterations),r.search_api_key_set=!!r.search_api_key,r},P=class r{static async fetchSettingsFromApi(t){return D(()=>new e(n()).getSettings({exposeSecrets:t}))}static async getSettings(){if(t().backend.kind===`cloud`)try{return N(await D(()=>c()))}catch(e){return console.warn(`Failed to fetch cloud settings, using defaults:`,e),N({})}if(A()&&O.redacted)return N(M(O.redacted));try{let t=await this.fetchSettingsFromApi();return await b(t,t=>new e(n()).updateSettings({misc_settings_diff:{app_preferences:t}}))&&(t=await this.fetchSettingsFromApi()),O.redacted=t,O.timestamp=Date.now(),N(M(t))}catch(e){return console.warn(`Failed to fetch settings from API, using defaults:`,e),N({})}}static async getSettingsForConversation(){if(A()&&O.encrypted)return{agentSettings:O.encrypted.agent_settings,conversationSettings:O.encrypted.conversation_settings,secretsEncrypted:!0};let e=await this.fetchSettingsFromApi(`encrypted`);return O.encrypted=e,O.timestamp||=Date.now(),{agentSettings:e.agent_settings,conversationSettings:e.conversation_settings,secretsEncrypted:!0}}static async getSettingsSchema(){return t().backend.kind===`cloud`?await u():await new e(n()).getAgentSchema()}static async getConversationSettingsSchema(){return t().backend.kind===`cloud`?await d():await new e(n()).getConversationSchema()}static async saveSettings(i){let{extracted:a,rest:o}=w(i),s=Object.keys(a).length>0,u={},d=o.agent_settings_diff;d&&Object.keys(d).length>0&&(u.agent_settings_diff=d);let f=o.conversation_settings_diff;f&&Object.keys(f).length>0&&(u.conversation_settings_diff=f),s&&(u.misc_settings_diff={app_preferences:a});let p=t().backend.kind===`cloud`,m=u.agent_settings_diff,h=!!m&&`mcp_config`in m&&m.mcp_config!==null,g;if(h)try{g=p?(await c())?.agent_settings?.mcp_config:(await r.fetchSettingsFromApi())?.agent_settings?.mcp_config}catch{}if(p){if(!(u.agent_settings_diff||u.conversation_settings_diff||s))return!0;h&&await D(()=>l({agent_settings_diff:{mcp_config:null}}));let e={};u.agent_settings_diff&&(e.agent_settings_diff=u.agent_settings_diff),u.conversation_settings_diff&&(e.conversation_settings_diff=u.conversation_settings_diff),s&&(e.app_preferences=a);try{await D(()=>l(e))}catch(e){if(h&&g)try{await l({agent_settings_diff:{mcp_config:g}})}catch{}throw e}}else{if(!(u.agent_settings_diff||u.conversation_settings_diff||u.misc_settings_diff))return!0;h&&await D(()=>new e(n()).updateSettings({agent_settings_diff:{mcp_config:null}}));try{await D(()=>new e(n()).updateSettings(u))}catch(t){if(h&&g)try{await new e(n()).updateSettings({agent_settings_diff:{mcp_config:g}})}catch{}throw t}}return j(),!0}static invalidateCache(){j()}};export{P as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{L as n,P as r,r as i}from"./vendor~entry.client~root~root-layout~index-redirect~home~conversation-panel~conversation~la~cnj3raoq-BjMt2JeR.js";import{d as a}from"./path-utils-DKu3CNkH.js";import{o,t as s}from"./declaration-D9ucT0fq.js";import{t as c}from"./useQuery-DGRSm7IT.js";import{t as l}from"./useTranslation-CL6FTf1b.js";import{t as u}from"./messages-Dq6AQ8mp.js";import{n as d}from"./agent-server-client-options-wXLeJYeM.js";import{s as f}from"./vendor~root-layout~home~conversation-panel~conversation~launch~mcp~settings~settings-index~~m3acswdn-DQE89epK.js";import{t as p}from"./loading-spinner-D7bOU6I7.js";import{t as m}from"./openhands-logo-Dzm-d_V_.js";import{c as h}from"./lesson-plan-y520IDs6.js";import{n as g}from"./use-event-store-DNSmyzUh.js";var _=e(t(),1),v=e=>c({queryKey:[`shared-conversation`,e],queryFn:()=>{if(!e)throw Error(`Conversation ID is required`);return new f(d()).getSharedConversation(e)},enabled:!!e,retry:!1}),y=e=>a({queryKey:[`shared-conversation-events`,e],queryFn:({pageParam:t})=>{if(!e)throw Error(`Conversation ID is required`);return new f(d()).searchSharedEvents({conversationId:e,limit:100,pageId:t})},initialPageParam:void 0,getNextPageParam:e=>e.next_page_id??void 0,enabled:!!e,retry:!1}),b=({hasNextPage:e,isFetchingNextPage:t,fetchNextPage:n,threshold:r=100})=>{let i=(0,_.useRef)(null),a=(0,_.useCallback)(()=>{if(!i.current||t||!e)return;let{scrollTop:a,scrollHeight:o,clientHeight:s}=i.current;a+s>=o-r&&n()},[e,t,n,r]);return(0,_.useEffect)(()=>{let e=i.current;if(e)return e.addEventListener(`scroll`,a),()=>{e.removeEventListener(`scroll`,a)}},[a]),i},x=o(),S=n(function(){let{t:e}=l(`openhands`),{conversationId:t}=r(),{data:n,isLoading:a,error:o}=v(t),{data:c,isLoading:d,error:f,hasNextPage:S,fetchNextPage:C,isFetchingNextPage:w}=y(t),T=a||d,E=o||f,D=_.useMemo(()=>c?.pages?c.pages.flatMap(e=>e.items):[],[c?.pages]),O=_.useMemo(()=>D.reduce((e,t)=>g(t,e),[]).filter(h),[D]),k=b({hasNextPage:!!S,isFetchingNextPage:w,fetchNextPage:C});return T?(0,x.jsx)(`div`,{className:`flex items-center justify-center h-screen bg-base`,children:(0,x.jsx)(p,{size:`large`})}):E||!n?(0,x.jsx)(`div`,{className:`flex items-center justify-center h-screen bg-base`,children:(0,x.jsx)(`div`,{className:`text-white`,children:e(s.CONVERSATION$NOT_FOUND)})}):(0,x.jsxs)(`div`,{className:`h-screen bg-base text-white flex flex-col`,children:[(0,x.jsx)(`div`,{className:`border-b border-[var(--oh-border-subtle)] p-4 flex-shrink-0`,children:(0,x.jsxs)(`div`,{className:`max-w-4xl mx-auto flex items-start gap-4`,children:[(0,x.jsx)(i,{to:`/conversations`,className:`flex-shrink-0`,"aria-label":e(s.BRANDING$OPENHANDS_LOGO),children:(0,x.jsx)(m,{width:46,height:30})}),(0,x.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,x.jsx)(`h1`,{className:`text-xl font-medium mb-2`,children:n?.title||e(s.CONVERSATION$SHARED_CONVERSATION)}),n?.selected_branch&&(0,x.jsxs)(`div`,{className:`text-sm text-[var(--oh-muted)]`,children:[e(s.CONVERSATION$BRANCH),`: `,n.selected_branch]}),n?.selected_repository&&(0,x.jsxs)(`div`,{className:`text-sm text-[var(--oh-muted)]`,children:[e(s.CONVERSATION$REPOSITORY),`:`,` `,n.selected_repository]}),n?.llm_model&&(0,x.jsxs)(`div`,{className:`text-sm text-[var(--oh-muted)]`,children:[e(s.LLM$MODEL),`: `,n.llm_model]})]})]})}),(0,x.jsx)(`div`,{ref:k,className:`flex-1 overflow-y-auto custom-scrollbar-always px-4 pt-4 gap-2`,children:(0,x.jsxs)(`div`,{className:`max-w-4xl mx-auto p-4 border border-[var(--oh-border-subtle)] rounded`,children:[O.length>0?(0,x.jsx)(u,{messages:O,allEvents:D}):(0,x.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,x.jsx)(`div`,{className:`text-center text-[var(--oh-muted)] py-8`,children:e(s.CONVERSATION$NO_HISTORY_AVAILABLE)})}),w&&(0,x.jsx)(`div`,{className:`flex justify-center py-4`,children:(0,x.jsx)(p,{size:`small`})})]})})]})});export{S as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{t as n}from"./useMutation-Dm84WAKR.js";import{o as r,t as i}from"./declaration-D9ucT0fq.js";import{n as a}from"./QueryClientProvider-XcSjsfpb.js";import{t as o}from"./Trans-sy4l4TyQ.js";import{t as s}from"./useTranslation-CL6FTf1b.js";import{t as c}from"./createLucideIcon-CkGTf9Qj.js";import{t as l}from"./utils-eXk6yerZ.js";import{t as u}from"./agent-server-conversation-service.api-C4Fc9Jnp.js";import{t as d}from"./modal-backdrop-_VbcKk5K.js";import{n as f}from"./modal-body-Cd-PtMHr.js";import{n as p,r as m}from"./base-modal-DvuGYyu1.js";import{g as h,l as g,t as _}from"./brand-button-9SOzmqPP.js";var v=c(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),y=e(t(),1),b=r();function x({onConfirm:e,onCancel:t,conversationTitle:n,title:r,description:a}){let{t:c}=s(`openhands`),l;return l=a??(n?(0,b.jsx)(o,{ns:`openhands`,i18nKey:i.CONVERSATION$DELETE_WARNING_WITH_TITLE,values:{title:n},components:{title:(0,b.jsx)(`span`,{className:`text-white`})}}):c(i.CONVERSATION$DELETE_WARNING)),(0,b.jsx)(d,{onClose:t,children:(0,b.jsxs)(f,{className:`items-start border border-[var(--oh-border)]`,children:[(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsx)(m,{title:r??c(i.CONVERSATION$CONFIRM_DELETE)}),(0,b.jsx)(p,{children:l})]}),(0,b.jsxs)(`div`,{className:`flex justify-end gap-2 w-full`,onClick:e=>e.stopPropagation(),children:[(0,b.jsx)(_,{type:`button`,variant:`secondary`,onClick:t,"data-testid":`cancel-button`,children:c(i.BUTTON$CANCEL)}),(0,b.jsx)(_,{type:`button`,variant:`primary`,onClick:e,"data-testid":`confirm-button`,children:c(i.ACTION$CONFIRM_DELETE)})]})]})})}function S({onConfirm:e,onCancel:t}){let{t:n}=s(`openhands`);return(0,b.jsx)(d,{onClose:t,children:(0,b.jsxs)(f,{className:`items-start border border-[var(--oh-border)]`,children:[(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsx)(m,{title:n(i.CONVERSATION$CONFIRM_CLOSE_CONVERSATION)}),(0,b.jsx)(p,{description:n(i.CONVERSATION$CLOSE_CONVERSATION_WARNING)})]}),(0,b.jsxs)(`div`,{className:`flex justify-end gap-2 w-full`,onClick:e=>e.stopPropagation(),children:[(0,b.jsx)(_,{type:`button`,variant:`secondary`,onClick:t,"data-testid":`cancel-button`,children:n(i.BUTTON$CANCEL)}),(0,b.jsx)(_,{type:`button`,variant:`primary`,onClick:e,"data-testid":`confirm-button`,children:n(i.ACTION$CONFIRM_CLOSE)})]})]})})}var C=()=>{let e=a();return n({mutationFn:e=>u.updateConversationTitle(e.conversationId,e.newTitle),onMutate:async t=>{await e.cancelQueries({queryKey:[`user`,`conversations`]});let n=e.getQueryData([`user`,`conversations`]);return e.setQueryData([`user`,`conversations`],e=>e?.map(e=>e.id===t.conversationId?{...e,title:t.newTitle}:e)),e.setQueryData([`user`,`conversation`,t.conversationId],e=>e&&{...e,title:t.newTitle}),{previousConversations:n}},onError:(t,n,r)=>{r?.previousConversations&&e.setQueryData([`user`,`conversations`],r.previousConversations)},onSettled:(t,n,r)=>{e.invalidateQueries({queryKey:[`user`,`conversations`]}),e.invalidateQueries({queryKey:[`user`,`conversation`,r.conversationId]})}})};function w(e){if(!e)return null;try{let t=new URL(e);return t.hostname===`localhost`&&window.location.hostname!==`localhost`?(t.hostname=window.location.hostname,t.toString()):e}catch{return e}}var T=e=>(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,b.jsx)(`path`,{d:`M12 2C12.5523 2 13 2.44772 13 3V13.5858L15.2929 11.2929C15.6834 10.9024 16.3166 10.9024 16.7071 11.2929C17.0976 11.6834 17.0976 12.3166 16.7071 12.7071L12.7071 16.7071C12.3166 17.0976 11.6834 17.0976 11.2929 16.7071L7.29289 12.7071C6.90237 12.3166 6.90237 11.6834 7.29289 11.2929C7.68342 10.9024 8.31658 10.9024 8.70711 11.2929L11 13.5858V3C11 2.44772 11.4477 2 12 2ZM5 17C5.55228 17 6 17.4477 6 18V20H18V18C18 17.4477 18.4477 17 19 17C19.5523 17 20 17.4477 20 18V20C20 21.1046 19.1046 22 18 22H6C4.89543 22 4 21.1046 4 20V18C4 17.4477 4.44772 17 5 17Z`,fill:`currentColor`})}),E=e=>(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,b.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M21 7.5V9H3V7.5H21ZM3 10.5H21V18H3V10.5ZM21 6H3C2.60218 6 2.22064 6.15804 1.93934 6.43934C1.65804 6.72064 1.5 7.10218 1.5 7.5V18C1.5 18.3978 1.65804 18.7794 1.93934 19.0607C2.22064 19.342 2.60218 19.5 3 19.5H21C21.3978 19.5 21.7794 19.342 22.0607 19.0607C22.342 18.7794 22.5 18.3978 22.5 18V7.5C22.5 7.10218 22.342 6.72064 22.0607 6.43934C21.7794 6.15804 21.3978 6 21 6ZM16.5 15H19.5V16.5H16.5V15Z`,fill:`currentColor`})}),D=y.createContext(null);function O({children:e}){let[t,n]=y.useState(!1),r=y.useCallback(()=>n(!0),[]),i=y.useCallback(()=>n(!1),[]),a=y.useCallback(()=>n(e=>!e),[]),o=y.useMemo(()=>({isOpen:t,open:r,close:i,toggle:a}),[t,r,i,a]);return(0,b.jsx)(D.Provider,{value:o,children:e})}function k(){let e=y.useContext(D);if(!e)throw Error(`useSidebarMobileNav must be used within SidebarMobileNavProvider`);return e}var A=l(`inline-flex shrink-0 cursor-pointer items-center justify-center rounded-md p-1`,`text-[var(--oh-muted)]`,h,g),j=`size-5 shrink-0`,M=e=>(0,b.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,b.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M10 5.5H18C18.2761 5.5 18.5 5.72386 18.5 6V18C18.5 18.2761 18.2761 18.5 18 18.5H10L10 5.5ZM8.5 5.5H6C5.72386 5.5 5.5 5.72386 5.5 6V18C5.5 18.2761 5.72386 18.5 6 18.5H8.5L8.5 5.5ZM18 4H6C4.89543 4 4 4.89543 4 6V18C4 19.1046 4.89543 20 6 20H18C19.1046 20 20 19.1046 20 18V6C20 4.89543 19.1046 4 18 4Z`,fill:`currentColor`})});function N(){let{t:e}=s(`openhands`),{isOpen:t,toggle:n}=k();return(0,b.jsx)(`button`,{type:`button`,"data-testid":`sidebar-mobile-menu-toggle`,onClick:n,"aria-expanded":t,"aria-label":e(t?i.SIDEBAR$CLOSE_MENU:i.SIDEBAR$OPEN_MENU),className:A,children:(0,b.jsx)(M,{className:j,"aria-hidden":!0})})}export{O as a,T as c,S as d,x as f,j as i,w as l,M as n,k as o,v as p,A as r,E as s,N as t,C as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{C as n,D as r,E as i,O as a,S as o,_ as s,c,k as l,l as u,m as d,n as f,u as p,w as m,x as h,y as g}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js";import{o as _}from"./declaration-D9ucT0fq.js";var v=class extends l{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=u(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),b(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return x(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return x(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,r=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof h(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!n(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let i=this.hasListeners();i&&S(this.#t,r,this.options,t)&&this.#h(),this.updateResult(),i&&(this.#t!==r||h(this.options.enabled,this.#t)!==h(t.enabled,this.#t)||o(this.options.staleTime,this.#t)!==o(t.staleTime,this.#t))&&this.#g();let a=this.#_();i&&(this.#t!==r||h(this.options.enabled,this.#t)!==h(t.enabled,this.#t)||a!==this.#p)&&this.#v(a)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return w(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(s)),t}#g(){this.#b();let e=o(this.options.staleTime,this.#t);if(p.isServer()||this.#r.isStale||!d(e))return;let t=i(this.#r.dataUpdatedAt,e)+1;this.#d=r.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(p.isServer()||h(this.options.enabled,this.#t)===!1||!d(this.#p)||this.#p===0)&&(this.#f=r.setInterval(()=>{(this.options.refetchIntervalInBackground||a.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(r.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(r.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},d=!1,p;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&b(e,t),o=i&&S(e,n,t,r);(a||o)&&(l={...l,...f(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:m,errorUpdatedAt:_,status:v}=l;p=l.data;let y=!1;if(t.placeholderData!==void 0&&p===void 0&&v===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,y=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(v=`success`,p=g(i?.data,e,t),d=!0)}if(t.select&&p!==void 0&&!y)if(i&&p===a?.data&&t.select===this.#c)p=this.#l;else try{this.#c=t.select,p=t.select(p),p=g(i?.data,p,t),this.#l=p,this.#s=null}catch(e){this.#s=e}this.#s&&(m=this.#s,p=this.#l,_=Date.now(),v=`error`);let x=l.fetchStatus===`fetching`,w=v===`pending`,T=v===`error`,E=w&&x,D=p!==void 0,O={status:v,fetchStatus:l.fetchStatus,isPending:w,isSuccess:v===`success`,isError:T,isInitialLoading:E,isLoading:E,data:p,dataUpdatedAt:l.dataUpdatedAt,error:m,errorUpdatedAt:_,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:x,isRefetching:x&&!w,isLoadingError:T&&!D,isPaused:l.fetchStatus===`paused`,isPlaceholderData:d,isRefetchError:T&&D,isStale:C(e,t),refetch:this.refetch,promise:this.#o,isEnabled:h(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=O.data!==void 0,r=O.status===`error`&&!t,i=e=>{r?e.reject(O.error):t&&e.resolve(O.data)},a=()=>{i(this.#o=O.promise=u())},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||O.data!==o.value)&&a();break;case`rejected`:(!r||O.error!==o.reason)&&a();break}}return O}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!n(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){c.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function y(e,t){return h(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&h(t.retryOnMount,e)===!1)}function b(e,t){return y(e,t)||e.state.data!==void 0&&x(e,t,t.refetchOnMount)}function x(e,t,n){if(h(t.enabled,e)!==!1&&o(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&C(e,t)}return!1}function S(e,t,n,r){return(e!==t||h(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&C(e,n)}function C(e,t){return h(t.enabled,e)!==!1&&e.isStaleByTime(o(t.staleTime,e))}function w(e,t){return!n(e.getCurrentResult(),t)}var T=e(t(),1),E=T.createContext(!1),D=()=>T.useContext(E);E.Provider,_();function O(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var k=T.createContext(O()),A=()=>T.useContext(k),j=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?m(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},M=e=>{T.useEffect(()=>{e.clearReset()},[e])},N=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||m(n,[e.error,r])),P=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},F=(e,t)=>e.isLoading&&e.isFetching&&!t,I=(e,t)=>e?.suspense&&t.isPending,L=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});export{j as a,A as c,F as i,D as l,L as n,N as o,I as r,M as s,P as t,v as u};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~lpdshwee-Cl4h-NSi.js","assets/rolldown-runtime-BFRubm34.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{t as e}from"./preload-helper-CT1Z6Pdu.js";var t={name:`@openhands/agent-canvas`,version:`1.0.0-rc.9`,description:`Agent Canvas UI for OpenHands - run AI coding agents with a visual interface`,license:`MIT`,private:!1,type:`module`,repository:{type:`git`,url:`https://github.com/OpenHands/agent-canvas`},homepage:`https://github.com/OpenHands/agent-canvas#readme`,bugs:{url:`https://github.com/OpenHands/agent-canvas/issues`},bin:{"agent-canvas":`bin/agent-canvas.mjs`},engines:{node:`>=22.12.0`},dependencies:{"@heroui/react":`2.8.10`,"@microlink/react-json-view":`1.31.20`,"@monaco-editor/react":`4.7.0`,"@openhands/extensions":`0.4.1`,"@openhands/typescript-client":`1.24.3`,"@react-router/node":`7.17.0`,"@react-router/serve":`7.17.0`,"@tailwindcss/vite":`4.2.4`,"@tanstack/react-query":`5.100.9`,"@types/shell-quote":`^1.7.5`,"@uidotdev/usehooks":`2.4.1`,"@xterm/addon-fit":`0.11.0`,"@xterm/xterm":`6.0.0`,axios:`1.16.0`,"class-variance-authority":`0.7.1`,clsx:`2.1.1`,downshift:`9.3.2`,"framer-motion":`12.38.0`,i18next:`26.0.8`,"i18next-browser-languagedetector":`8.2.1`,"i18next-http-backend":`4.0.0`,isbot:`5.1.39`,"lucide-react":`1.14.0`,"monaco-editor":`0.55.1`,"posthog-js":`1.372.6`,react:`19.2.5`,"react-dom":`19.2.5`,"react-hot-toast":`2.6.0`,"react-i18next":`17.0.6`,"react-icons":`5.6.0`,"react-markdown":`10.1.0`,"react-router":`7.17.0`,"react-syntax-highlighter":`16.1.1`,"rehype-raw":`7.0.0`,"rehype-sanitize":`6.0.0`,"remark-breaks":`4.0.0`,"remark-gfm":`4.0.1`,"shell-quote":`^1.8.3`,"sirv-cli":`3.0.1`,"socket.io-client":`4.8.3`,"tailwind-merge":`3.5.0`,"tailwind-scrollbar":`4.0.2`,"unist-util-visit":`5.1.0`,uuid:`14.0.0`,vite:`8.0.10`,winston:`^3.19.0`,"winston-daily-rotate-file":`^5.0.0`,zustand:`5.0.12`},scripts:{dev:`node --env-file-if-exists=.env scripts/dev-with-automation.mjs`,"dev:static":`node --env-file-if-exists=.env scripts/dev-static.mjs`,"dev:extra-backend":`node --env-file-if-exists=.env scripts/dev-extra-backend.mjs`,"dev:minimal":`node --env-file-if-exists=.env scripts/dev-safe.mjs`,"dev:frontend":`npm run make-i18n && cross-env VITE_MOCK_API=false react-router dev`,"dev:mock":`npm run make-i18n && cross-env VITE_MOCK_API=true react-router dev`,build:`npm run build:app`,"build:mock":`npm run make-i18n && cross-env VITE_MOCK_API=true react-router build`,start:`npx sirv-cli build/ --single`,test:`npm run make-i18n && vitest run`,"test:e2e":`playwright test --pass-with-no-tests`,"test:e2e:live":`node --env-file-if-exists=.env tests/e2e/live/scripts/run-live-e2e.mjs`,"test:e2e:mock-llm":`playwright test --config=playwright.mock-llm.config.ts`,"test:e2e:mock-llm:docker":`playwright test --config=playwright.mock-llm-docker.config.ts`,"test:e2e:snapshots":`playwright test tests/e2e/snapshots --project=chromium --retries=0`,"test:e2e:snapshots:update":`playwright test tests/e2e/snapshots --project=chromium --update-snapshots`,"test:coverage":`npm run make-i18n && vitest run --coverage`,dev_wsl:`VITE_WATCH_USE_POLLING=true vite`,preview:`vite preview`,"make-i18n":`node scripts/make-i18n-translations.cjs`,prelint:`npm run make-i18n`,lint:`npm run typecheck && eslint src && prettier --check src/**/*.{ts,tsx}`,"lint:fix":`eslint src --fix && prettier --write src/**/*.{ts,tsx}`,prepare:`husky`,typecheck:`react-router typegen && tsc`,"typecheck:staged":`react-router typegen && npx tsc --noEmit --skipLibCheck`,"check-translation-completeness":`node scripts/check-translation-completeness.cjs`,"build:app":`npm run make-i18n && react-router build`,"build:lib":`npm run make-i18n && react-router typegen && cross-env BUILD_LIB=true VITE_APP_ENV=production vite build && tsc -p tsconfig.lib.json`,"build:docker":`node scripts/docker-build.mjs`},"lint-staged":{"src/**/*.{ts,tsx,js}":[`eslint --fix`,`prettier --write`],"src/**/*.{ts,tsx}":[`bash -c 'npm run typecheck:staged'`],"src/**/*":[`npm run check-translation-completeness`]},devDependencies:{"@eslint/eslintrc":`3.3.1`,"@eslint/js":`9.39.4`,"@mswjs/socket.io-binding":`0.2.0`,"@playwright/test":`1.59.1`,"@react-router/dev":`7.17.0`,"@tailwindcss/typography":`0.5.19`,"@tanstack/eslint-plugin-query":`5.100.9`,"@testing-library/dom":`10.4.1`,"@testing-library/jest-dom":`6.9.1`,"@testing-library/react":`16.3.2`,"@testing-library/user-event":`14.6.1`,"@types/mdast":`4.0.4`,"@types/node":`25.6.0`,"@types/react":`19.2.14`,"@types/react-dom":`19.2.3`,"@types/react-syntax-highlighter":`15.5.13`,"@typescript-eslint/eslint-plugin":`8.59.2`,"@typescript-eslint/parser":`8.59.2`,"@vercel/react-router":`1.3.0`,"@vitest/coverage-v8":`4.1.5`,"cross-env":`10.1.0`,eslint:`9.39.4`,"eslint-config-prettier":`10.1.8`,"eslint-import-resolver-typescript":`4.4.4`,"eslint-plugin-i18next":`6.1.4`,"eslint-plugin-import-x":`4.16.2`,"eslint-plugin-jsx-a11y":`6.10.2`,"eslint-plugin-prettier":`5.5.5`,"eslint-plugin-react":`7.37.5`,"eslint-plugin-react-hooks":`7.1.1`,"eslint-plugin-unused-imports":`4.4.1`,globals:`16.5.0`,husky:`9.1.7`,jsdom:`29.1.1`,"lint-staged":`16.4.0`,msw:`2.14.2`,"postcss-prefix-selector":`2.1.1`,prettier:`3.8.3`,tailwindcss:`4.2.4`,typescript:`6.0.3`,"vite-plugin-svgr":`5.2.0`,vitest:`4.1.5`},packageManager:`npm@10.5.0`,volta:{node:`22.12.0`},msw:{workerDirectory:[`public`]},overrides:{"@vercel/static-config":{ajv:`8.20.0`},dompurify:`3.4.7`},main:`./dist/index.cjs`,module:`./dist/index.js`,types:`./dist/index.d.ts`,files:[`dist`,`bin`,`build`,`config`,`scripts`,`tools`],exports:{".":{types:`./dist/index.d.ts`,import:`./dist/index.js`,require:`./dist/index.cjs`},"./browser":{types:`./dist/components/browser/index.d.ts`,import:`./dist/components/browser/index.js`,require:`./dist/components/browser/index.cjs`},"./conversation":{types:`./dist/components/conversation/index.d.ts`,import:`./dist/components/conversation/index.js`,require:`./dist/components/conversation/index.cjs`},"./files":{types:`./dist/components/files/index.d.ts`,import:`./dist/components/files/index.js`,require:`./dist/components/files/index.cjs`},"./settings":{types:`./dist/components/settings/index.d.ts`,import:`./dist/components/settings/index.js`,require:`./dist/components/settings/index.cjs`},"./sidebar":{types:`./dist/components/sidebar/index.d.ts`,import:`./dist/components/sidebar/index.js`,require:`./dist/components/sidebar/index.cjs`},"./terminal":{types:`./dist/components/terminal/index.d.ts`,import:`./dist/components/terminal/index.js`,require:`./dist/components/terminal/index.cjs`},"./i18n":{types:`./dist/i18n/index.d.ts`,import:`./dist/i18n/index.js`,require:`./dist/i18n/index.cjs`},"./package.json":`./package.json`},peerDependencies:{react:`19.2.5`,"react-dom":`19.2.5`,"react-router":`7.17.0`}},n=`openhands-telemetry-consent`,r=`openhands-telemetry-first-use`,i=`openhands-telemetry-session`,a=`phc_kBtz5nKmxVRRQ7HtPwr2QX9eMC5j65zE86QKocVNwb4U`,o=`https://z.openhands.dev`,s=`https://us.posthog.com`,c=!1,l=null;function u(){return typeof window<`u`&&typeof localStorage<`u`}async function d(){if(!u())return null;if(l)return l;try{let{default:t}=await e(async()=>{let{default:e}=await import(`./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~skills-set~lpdshwee-Cl4h-NSi.js`).then(e=>e.n);return{default:e}},__vite__mapDeps([0,1]));return l=t,t}catch{return null}}function f(){return typeof process<`u`&&{}?.DO_NOT_TRACK===`1`||typeof navigator<`u`&&(navigator.doNotTrack===`1`||typeof window<`u`&&window.doNotTrack===`1`)}async function p(e=!1){if(c)return l;let n=await d();return n?(n.init(a,{api_host:o,ui_host:s,opt_out_capturing_by_default:!e,capture_pageview:!1,autocapture:!1,persistence:`localStorage`,disable_session_recording:!0,loaded:e=>{e.register({package_name:t.name,package_version:t.version})}}),c=!0,n):null}function m(){if(!u())return`pending`;if(f())return`denied`;try{let e=localStorage.getItem(n);if(e===`granted`||e===`denied`)return e}catch{}return`pending`}async function h(e){if(u())try{localStorage.setItem(n,e);let t=await p();if(!t)return;e===`granted`?t.opt_in_capturing():t.opt_out_capturing()}catch{}}function g(){return m()===`granted`}function _(){if(!u())return!1;try{return localStorage.getItem(r)===`true`}catch{return!1}}function v(){if(u())try{localStorage.setItem(r,`true`)}catch{}}async function y(){if(f()||_())return;let e=await p(!0);e&&((e.has_opted_out_capturing?.()??!1)&&e.opt_in_capturing(),e.capture(`canvas_install`,{platform:typeof navigator<`u`?navigator.platform:`unknown`,user_agent:typeof navigator<`u`?navigator.userAgent:`unknown`,referrer:typeof document<`u`?document.referrer:``,url_origin:typeof window<`u`?window.location.origin:``,embedded:typeof window<`u`&&window.self!==window.top}),v(),m()!==`granted`&&e.opt_out_capturing())}function b(){if(!u())return!1;try{return sessionStorage.getItem(i)===`true`}catch{return!1}}function x(){if(u())try{sessionStorage.setItem(i,`true`)}catch{}}async function S(){if(!g()||b())return;let e=await p();e&&(e.capture(`canvas_new_session`,{is_first_use:!_()}),x())}async function C(e,t={}){if(!g())return;let n=await p();n&&n.capture(e,t)}async function w(){if(u())try{localStorage.removeItem(n),localStorage.removeItem(r),sessionStorage.removeItem(i),c&&l&&l.reset()}catch{}}export{y as a,C as i,m as n,S as o,h as r,w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{o as n,t as r}from"./declaration-D9ucT0fq.js";import{n as i}from"./QueryClientProvider-XcSjsfpb.js";import{t as a}from"./useQuery-DGRSm7IT.js";import{t as o}from"./useTranslation-CL6FTf1b.js";import{g as s,h as c,m as l,p as u}from"./query-client-config-Ca3tW1AH.js";import{t as d}from"./check-BhnsMsWy.js";import{t as f}from"./loader-circle-1XB9nbwF.js";import{t as p}from"./utils-eXk6yerZ.js";import{n as m}from"./agent-server-client-options-wXLeJYeM.js";import{n as h}from"./active-backend-context-B2OSC-qe.js";import{f as g}from"./vendor~root-layout~home~conversation-panel~conversation~launch~mcp~settings~settings-index~~m3acswdn-DQE89epK.js";import{c as _}from"./brand-button-9SOzmqPP.js";import{n as v,t as y}from"./settings-input-BM8ANxDb.js";import{a as b,l as x}from"./acp-providers-Dzb4nxxB.js";import{n as S,t as C}from"./use-create-secret-LObNBU3M.js";var w=e(t(),1),T=n();function E({conflicts:e}){let{t}=o(`openhands`);return(0,T.jsx)(T.Fragment,{children:e.map(([e,n])=>(0,T.jsx)(`p`,{"data-testid":`acp-credential-conflict-warning`,className:`text-sm text-amber-300`,children:t(r.SETTINGS$ACP_CREDENTIAL_CONFLICT_WARNING,{credential:e,conflicting:n})},`${e}:${n}`))})}function D({status:e,isChecking:t,providerName:n,testIdPrefix:i}){let{t:a}=o(`openhands`);return e===`authenticated`?(0,T.jsxs)(`div`,{"data-testid":`${i}-detected`,className:`flex items-start gap-2 rounded-xl border border-green-500/40 bg-green-500/10 px-4 py-3 text-sm text-green-200`,children:[(0,T.jsx)(d,{className:`mt-0.5 size-4 shrink-0 text-green-400`,"aria-hidden":!0}),(0,T.jsx)(`span`,{children:a(r.ONBOARDING$ACP_AUTH_DETECTED,{provider:n})})]}):t?(0,T.jsxs)(`div`,{"data-testid":`${i}-checking`,className:`flex items-center gap-2 text-sm text-[var(--oh-muted)]`,children:[(0,T.jsx)(f,{className:`size-4 shrink-0 animate-spin`,"aria-hidden":!0}),(0,T.jsx)(`span`,{children:a(r.ONBOARDING$ACP_AUTH_CHECKING,{provider:n})})]}):null}function O({field:e,value:t,onChange:n,alreadySet:i,testId:a,showOptionalTag:s}){let{t:c}=o(`openhands`),l=i?c(r.ONBOARDING$ACP_SECRET_ALREADY_SET):``;return(0,T.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[e.multiline?(0,T.jsxs)(`label`,{className:`flex flex-col gap-2.5`,children:[(0,T.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,T.jsx)(`span`,{className:`text-sm font-mono text-white`,children:e.name}),s&&(0,T.jsx)(v,{})]}),(0,T.jsx)(`textarea`,{"data-testid":a,name:e.name,rows:4,spellCheck:!1,autoCapitalize:`off`,autoComplete:`off`,autoCorrect:`off`,value:t,placeholder:l,onChange:e=>n(e.target.value),className:p(_,`font-mono text-xs`)})]}):(0,T.jsx)(y,{testId:a,name:e.name,label:e.name,labelClassName:`font-mono`,type:e.secret?`password`:`text`,value:t,onChange:n,showOptionalTag:s,placeholder:l}),(0,T.jsx)(`span`,{className:`text-xs text-[var(--oh-muted)]`,children:c(e.hint_key,e.hint_values)})]})}var k=10;function A(e){return`${e.stdout??``}\n${e.stderr??``}`}function j(e){let t;try{t=JSON.parse((e.stdout??``).trim())}catch{return`unknown`}let n=t?.loggedIn;return typeof n==`boolean`?n?`authenticated`:`unauthenticated`:`unknown`}function M(e){let t=A(e).toLowerCase();return t.includes(`not logged in`)?`unauthenticated`:t.includes(`logged in`)?`authenticated`:`unknown`}function N(e){let t=(e.stdout??``).trim();return t===`present`?`authenticated`:t===`absent`?`unauthenticated`:`unknown`}var P={"claude-code":{command:`claude auth status --json`,classify:j},codex:{command:`codex login status`,classify:M},"gemini-cli":{command:`test -f "$HOME/.gemini/oauth_creds.json" && echo present || echo absent`,classify:N}},F=class{static async getAuthStatus(e){let t=P[e];if(!t)return`unknown`;let n=await new g(m()).executeCommand(t.command,void 0,k);return t.classify(n)}};async function I(e){try{return await F.getAuthStatus(e)}catch{return`unknown`}}function L(e,t={}){let{enabled:n=!0}=t,r=h(),i=r.backend.kind===`local`,o=n&&i&&!!e,s=a({queryKey:[`acp-auth-status`,r.backend.id,e],queryFn:()=>I(e),enabled:o,staleTime:1/0,gcTime:1e3*60*15,retry:!1,refetchOnWindowFocus:!1,refetchOnMount:!1});return{status:s.data??`unknown`,isChecking:o&&s.isFetching&&s.data===void 0,isSupported:i}}function R(e,t){let{t:n}=o(`openhands`),a=i(),{mutateAsync:d}=C(),[f,p]=w.useState(!1);return{saveFilled:async(i,{silent:o=!1}={})=>{let f=e.map(e=>({field:e,value:i[e.name]?.trim()})).filter(e=>!!e.value);if(f.length===0)return!0;p(!0);try{for(let{field:e,value:t}of f)await d({name:e.name,value:t});return await a.invalidateQueries({queryKey:[`secrets-search`]}),await a.invalidateQueries({queryKey:[`secrets`]}),!t&&f.some(({field:e})=>e.multiline)?c(n(r.ONBOARDING$ACP_SECRETS_ORPHANED_WARNING)):o||l(n(r.SETTINGS$SAVED)),!0}catch(e){return u(s(e)||n(r.ERROR$GENERIC)),!1}finally{p(!1)}},isSaving:f}}function z(e){let{data:t}=S(),n=w.useMemo(()=>x(e),[e]),[r,i]=w.useState({}),{saveFilled:a,isSaving:o}=R(n,!0);w.useEffect(()=>{i({})},[e]);let s=w.useCallback(e=>(t??[]).some(t=>t.name===e),[t]),c=w.useCallback(e=>!!r[e]?.trim()||s(e),[r,s]),l=w.useCallback((e,t)=>i(n=>({...n,[e]:t})),[]),u=w.useCallback(()=>i({}),[]);return{fields:n,values:r,setValue:l,secretExists:s,hasValueFor:c,conflicts:b(e,c),consumesFileCredentials:!0,isDirty:n.some(e=>!!r[e.name]?.trim()),save:e=>a(r,e),reset:u,isSaving:o}}export{E as a,D as i,L as n,O as r,z as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useQuery-DGRSm7IT.js";import{u as t}from"./agent-server-client-options-wXLeJYeM.js";import{n}from"./active-backend-context-B2OSC-qe.js";import{t as r}from"./settings-service.api-CcpckquT.js";import{t as i}from"./use-is-authed-B8eLO-Xq.js";var a=(a,o)=>{let{data:s}=i(),{backend:c,orgId:l}=n(),u=!t(c),{data:d,error:f,isLoading:p,isFetching:m}=e({queryKey:[`settings-schema`,a,c.id,l,c.kind,c.host,c.apiKey],queryFn:a===`conversation`?r.getConversationSettingsSchema:r.getSettingsSchema,retry:!1,refetchOnWindowFocus:!1,staleTime:1e3*60*5,gcTime:1e3*60*15,enabled:!o&&!!s&&u,meta:{disableToast:!0}});return o?{data:o,error:null,isLoading:!1,isFetching:!1}:{data:d,error:f,isLoading:p,isFetching:m}},o=e=>a(`agent`,e),s=e=>a(`conversation`,e);export{s as n,o as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useQuery-DGRSm7IT.js";import{f as t,i as n,s as r,u as i}from"./active-backend-context-B2OSC-qe.js";import{t as a}from"./option-service.api-CdYnKVsu.js";var o=o=>e({queryKey:r.WEB_CLIENT_CONFIG,queryFn:a.getConfig,retry:(e,n)=>!t(n)&&!i(n)&&e<3,meta:{disableToast:!0},...n,enabled:o?.enabled});export{o as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useMutation-Dm84WAKR.js";import{n as t}from"./QueryClientProvider-XcSjsfpb.js";import{t as n}from"./agent-server-conversation-service.api-C4Fc9Jnp.js";import{l as r,s as i}from"./agent-server-adapter-BPpZcLOE.js";import{t as a}from"./use-tracking-C9P88zSo.js";import{t as o}from"./use-llm-profiles-BBTR-OsK.js";var s=()=>{let s=t(),{trackConversationCreated:c}=a(),{data:l}=o();return e({mutationKey:[`create-conversation`],mutationFn:async e=>{let{query:t,conversationInstructions:a,plugins:o,repository:s,workingDir:c,workspaceMode:u,parentConversationId:d,agentType:f}=e,p=await n.createConversation(t,a,o,s?{selected_repository:s.name,selected_branch:s.branch??null,git_provider:s.gitProvider}:null,c,u,d,f),m=p.app_conversation_id;if(m&&l?.active_profile){let e=i(m);r(m,{selected_repository:e?.selected_repository??null,selected_branch:e?.selected_branch??null,git_provider:e?.git_provider??null,selected_workspace:e?.selected_workspace??null,workspace_mode:e?.workspace_mode??null,active_profile:l.active_profile})}return{conversation_id:p.app_conversation_id?p.app_conversation_id:`task-${p.id}`,session_api_key:null,url:p.agent_server_url,task_id:p.id}},onSuccess:async(e,{repository:t})=>{c({hasRepository:!!t}),s.invalidateQueries({queryKey:[`user`,`conversations`]}),s.invalidateQueries({queryKey:[`start-tasks`]})}})};export{s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{t as n}from"./declaration-D9ucT0fq.js";import{t as r}from"./useTranslation-CL6FTf1b.js";import{m as i}from"./query-client-config-Ca3tW1AH.js";import{t as a}from"./conversation-store-FQmakEd-.js";import{a as o,r as s}from"./conversation-local-storage-an3MiIiJ.js";import{t as c}from"./use-create-conversation-CJUAOf1q.js";import{t as l}from"./use-active-conversation-BkohEtaN.js";var u=e(t(),1),d=()=>{let{t:e}=r(`openhands`),{setConversationMode:t,setSubConversationTaskId:d,subConversationTaskId:f}=a(),{data:p}=l(),{mutate:m,isPending:h}=c();return(0,u.useEffect)(()=>{if(!p?.id)return;let e=s(p.id);e.subConversationTaskId&&!f&&d(e.subConversationTaskId)},[p?.id,f,d]),{handlePlanClick:(0,u.useCallback)(r=>{r?.preventDefault(),r?.stopPropagation(),t(`plan`),!(p?.sub_conversation_ids&&p.sub_conversation_ids.length>0||!p?.id||f)&&m({parentConversationId:p.id,agentType:`plan`},{onSuccess:t=>{i(e(n.PLANNING_AGENTT$PLANNING_AGENT_INITIALIZED)),t.task_id&&(d(t.task_id),o(p.id,{subConversationTaskId:t.task_id}))}})},[p,m,t,d,f,e]),isCreatingConversation:h}};export{d as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useQuery-DGRSm7IT.js";var t=()=>e({queryKey:[`user`,`authenticated`],queryFn:async()=>!0,staleTime:1e3*60*5,gcTime:1e3*60*15,retry:!1,meta:{disableToast:!0}});export{t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useQuery-DGRSm7IT.js";import{n as t}from"./agent-server-client-options-wXLeJYeM.js";import{a as n,i as r,n as i}from"./active-backend-context-B2OSC-qe.js";import{t as a}from"./profiles-client-BjUo3q05.js";var o=class{static async listProfiles(){return new a(t()).listProfiles()}static async getProfile(e,n){let r=n?{exposeSecrets:n}:{};return new a(t()).getProfile(e,r)}static async saveProfile(e,n){return new a(t()).saveProfile(e,n)}static async deleteProfile(e){return new a(t()).deleteProfile(e)}static async renameProfile(e,n){return new a(t()).renameProfile(e,n)}static async activateProfile(e){return new a(t()).activateProfile(e)}};function s(t={}){let{backend:a,orgId:s}=i();return e({queryKey:[...n.all,a.id,s],queryFn:o.listProfiles,...r,enabled:t.enabled??!0,meta:{disableToast:!0}})}export{o as n,s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{C as e,w as t,y as n}from"./utils-eXk6yerZ.js";import{t as r}from"./use-active-conversation-BkohEtaN.js";import{t as i}from"./use-agent-state-DITv5qV7.js";var a=({allowAgentError:a=!1}={})=>{let{data:o}=r(),{curAgentState:s}=i(),c=a?t:e;return n(o?.execution_status)&&!c.includes(s)};export{a as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useMutation-Dm84WAKR.js";import{n as t}from"./QueryClientProvider-XcSjsfpb.js";import{c as n}from"./active-backend-context-B2OSC-qe.js";import{t as r}from"./settings-service.api-CcpckquT.js";import{r as i}from"./use-settings-CNsxccvQ.js";import{t as a}from"./use-tracking-C9P88zSo.js";var o=async e=>{let t={...e};delete t.agent_settings_schema,delete t.conversation_settings_schema;let n={...t.conversation_settings_diff??{}};Object.keys(n).length>0?t.conversation_settings_diff=n:delete t.conversation_settings_diff,delete t.conversation_settings;let i=t.agent_settings_diff,a=i?.llm;if(a&&typeof a.api_key==`string`){let e=a.api_key.trim();a.api_key=e===``?``:e}i&&Object.keys(i).length>0?t.agent_settings_diff=i:delete t.agent_settings_diff,delete t.agent_settings,typeof t.search_api_key==`string`&&(t.search_api_key=t.search_api_key.trim()),typeof t.git_user_name==`string`&&(t.git_user_name=t.git_user_name.trim()),typeof t.git_user_email==`string`&&(t.git_user_email=t.git_user_email.trim()),await r.saveSettings(t)},s=(r=`personal`)=>{let{trackMcpConfigUpdated:s}=a(),c=t(),{data:l}=i(r);return e({mutationFn:async e=>{let t=e.mcp_config,n=l?.mcp_config;t&&n!==t&&s({sseServersCount:t.sse_servers?.length??0,stdioServersCount:t.stdio_servers?.length??0}),await o(e)},onSuccess:async()=>{await c.invalidateQueries({queryKey:n.byScope(r)})},meta:{disableToast:!0}})};export{s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./useQuery-DGRSm7IT.js";import{u as t}from"./agent-server-client-options-wXLeJYeM.js";import{c as n,n as r}from"./active-backend-context-B2OSC-qe.js";import{r as i}from"./vendor~root-layout~home~conversation-panel~conversation~launch~extensions-hub~skills-settin~bxn4ldi1-_LydBB1e.js";import{t as a}from"./settings-wh2sLLJM.js";import{t as o}from"./settings-service.api-CcpckquT.js";var s=(...e)=>e.find(e=>typeof e==`boolean`),c=(...e)=>e.find(e=>typeof e==`number`),l=(...e)=>{for(let t of e){if(typeof t==`string`)return t;if(t===null)return null}},u={sse_servers:[],stdio_servers:[],shttp_servers:[]},d=`https://mcp.linear.app/sse`,f=`https://mcp.linear.app/mcp`;function p(e,t){return t===`sse`?e.split(`?`)[0].replace(/\/+$/,``)===d:!1}function m(e){if(!e||typeof e!=`object`)return{...u};let t=e;if(!(`mcpServers`in t)||!t.mcpServers||typeof t.mcpServers!=`object`)return{...u};let n=[],r=[],i=[],a=[],o=t.mcpServers;for(let[e,t]of Object.entries(o)){if(!t||typeof t!=`object`)continue;let o=t.url;if(o){let e=t.transport,r=t.auth,s=typeof r==`string`&&r!==`oauth`?r:void 0;if(p(o,e)){let e={url:f};s&&(e.api_key=s),a.push(e)}else if(e===`sse`){let e={url:o};s&&(e.api_key=s),n.push(e)}else{let e={url:o};s&&(e.api_key=s),t.timeout!=null&&(e.timeout=t.timeout),i.push(e)}}else{let n={name:e,command:t.command};t.args&&(n.args=t.args),t.env&&(n.env=t.env),r.push(n)}}let s=e=>e.replace(/\/+$/,``);for(let e of a)i.some(t=>s(typeof t==`string`?t:t.url)===s(e.url))||i.push(e);return{sse_servers:n,stdio_servers:r,shttp_servers:i}}function h(e){let t={},n=e=>{if(!(e in t))return e;let n=1;for(;`${e}_${n}`in t;)n+=1;return`${e}_${n}`};for(let r of e.sse_servers){let e={};typeof r==`string`?e.url=r:(e.url=r.url,r.api_key&&(e.auth=r.api_key)),e.transport=`sse`,t[n(`sse`)]=e}for(let r of e.shttp_servers){let e={};typeof r==`string`?e.url=r:(e.url=r.url,r.api_key&&(e.auth=r.api_key),r.timeout!=null&&(e.timeout=r.timeout)),t[n(`shttp`)]=e}for(let r of e.stdio_servers){let e={command:r.command};r.args&&(e.args=r.args),r.env&&(e.env=r.env),t[n(r.name||`stdio`)]=e}return Object.keys(t).length>0?{mcpServers:t}:null}var g=e=>{if(typeof e==`object`&&e&&`status`in e){let{status:t}=e;if(typeof t==`number`)return t}if(i.isAxiosError(e))return e.response?.status},_=(e,t)=>{let n=t.split(`.`),r=e;for(let e of n){if(typeof r!=`object`||!r)return;r=r[e]}return r},v=(e,t,n,r=!1)=>{let i=_(e,t);return typeof i==`string`&&(i.length>0||r)?i:n},y=e=>{let t=e.agent_settings??{},n={...a.conversation_settings??{},...e.conversation_settings??{}};return{...a,...e,llm_model:v(t,`llm.model`,a.llm_model),llm_base_url:v(t,`llm.base_url`,a.llm_base_url,!0),agent:v(t,`agent`,a.agent),llm_api_key:e.llm_api_key??null,llm_api_key_set:e.llm_api_key_set??!1,confirmation_mode:s(n.confirmation_mode)??a.confirmation_mode,security_analyzer:l(n.security_analyzer)??a.security_analyzer,max_iterations:c(n.max_iterations)??a.max_iterations,enable_default_condenser:s(_(t,`condenser.enabled`))??a.enable_default_condenser,condenser_max_size:c(_(t,`condenser.max_size`))??a.condenser_max_size,mcp_config:m(e.mcp_config??t.mcp_config),search_api_key:e.search_api_key||``,email:e.email||``,git_user_name:e.git_user_name||a.git_user_name,git_user_email:e.git_user_email||a.git_user_email,is_new_user:!1,disabled_skills:e.disabled_skills??a.disabled_skills,agent_settings_schema:e.agent_settings_schema??null,agent_settings:e.agent_settings??a.agent_settings,conversation_settings_schema:e.conversation_settings_schema??a.conversation_settings_schema,conversation_settings:n}},b=async(e=`personal`)=>{if(e!==`personal`)throw Error(`Unsupported settings scope: ${e}`);return y(await o.getSettings())},x=(i=`personal`)=>{let o=r(),s=!t(o.backend),c=e({queryKey:[...n.byScope(i),o.backend.id,o.orgId],queryFn:()=>b(i),retry:(e,t)=>g(t)!==404,enabled:s,refetchOnWindowFocus:!1,staleTime:1e3*60*5,gcTime:1e3*60*15,meta:{disableToast:!0}});return s?g(c.error)===404?{data:a,error:c.error,isError:c.isError,isLoading:c.isLoading,isFetching:c.isFetching,isFetched:c.isFetched,isSuccess:c.isSuccess,status:c.status,fetchStatus:c.fetchStatus,refetch:c.refetch}:c:{data:a,error:null,isError:!1,isLoading:!1,isFetching:!1,isFetched:!1,isSuccess:!0,status:`success`,fetchStatus:`idle`,refetch:c.refetch}};export{h as a,m as i,b as n,x as r,g as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{C as n,_ as r,c as i,f as a,k as o,w as s}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js";import{d as c}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~jfbjdnyv-C5ZIbuq8.js";import{n as l}from"./QueryClientProvider-XcSjsfpb.js";var u=class extends o{#e;#t=void 0;#n;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),n(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&a(t.mutationKey)!==a(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#a(e)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#a()}mutate(e,t){return this.#r=t,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(e)}#i(){let e=this.#n?.state??c();this.#t={...e,isPending:e.status===`pending`,isSuccess:e.status===`success`,isError:e.status===`error`,isIdle:e.status===`idle`,mutate:this.mutate,reset:this.reset}}#a(e){i.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,n=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type===`success`){try{this.#r.onSuccess?.(e.data,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(e.data,null,t,n,r)}catch(e){Promise.reject(e)}}else if(e?.type===`error`){try{this.#r.onError?.(e.error,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(void 0,e.error,t,n,r)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#t)})})}},d=e(t(),1);function f(e,t){let n=l(t),[a]=d.useState(()=>new u(n,e));d.useEffect(()=>{a.setOptions(e)},[a,e]);let o=d.useSyncExternalStore(d.useCallback(e=>a.subscribe(i.batchCalls(e)),[a]),()=>a.getCurrentResult(),()=>a.getCurrentResult()),c=d.useCallback((e,t)=>{a.mutate(e,t).catch(r)},[a]);if(o.error&&s(a.options.throwOnError,[o.error]))throw o.error;return{...o,mutate:c,mutateAsync:o.mutate}}export{f as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-BFRubm34.js";import{t}from"./react-CM_dJw1Z.js";import{_ as n,c as r,u as i}from"./vendor~entry.client~root~root-layout~home~conversation-panel~conversation~launch~extensions~dqseey1n-D_BSEDk4.js";import{a,c as o,i as s,l as c,n as l,o as u,r as d,s as f,t as p,u as m}from"./suspense-Bqb0V0q1.js";import{n as h}from"./QueryClientProvider-XcSjsfpb.js";var g=e(t(),1);function _(e,t,m){let _=c(),v=o(),y=h(m),b=y.defaultQueryOptions(e);y.getDefaultOptions().queries?._experimental_beforeQuery?.(b);let x=y.getQueryCache().get(b.queryHash);b._optimisticResults=_?`isRestoring`:`optimistic`,p(b),a(b,v,x),f(v);let S=!y.getQueryCache().get(b.queryHash),[C]=g.useState(()=>new t(y,b)),w=C.getOptimisticResult(b),T=!_&&e.subscribed!==!1;if(g.useSyncExternalStore(g.useCallback(e=>{let t=T?C.subscribe(r.batchCalls(e)):n;return C.updateResult(),t},[C,T]),()=>C.getCurrentResult(),()=>C.getCurrentResult()),g.useEffect(()=>{C.setOptions(b)},[b,C]),d(b,w))throw l(b,C,v);if(u({result:w,errorResetBoundary:v,throwOnError:b.throwOnError,query:x,suspense:b.suspense}))throw w.error;return y.getDefaultOptions().queries?._experimental_afterQuery?.(b,w),b.experimental_prefetchInRender&&!i.isServer()&&s(w,_)&&(S?l(b,C,v):x?.promise)?.catch(n).finally(()=>{C.updateResult()}),b.notifyOnChangeProps?w:C.trackResult(w)}function v(e,t){return _(e,m,t)}export{_ as n,v as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,t}from"./rolldown-runtime-BFRubm34.js";import{t as n}from"./react-CM_dJw1Z.js";import{i as r,r as i}from"./declaration-D9ucT0fq.js";import{n as a,t as o}from"./context-CI9FqkUp.js";var s=e(n()),c=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);h(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},l={},u=(e,t,n,r)=>{h(n)&&l[n]||(h(n)&&(l[n]=new Date),c(e,t,n,r))},d=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},f=(e,t,n)=>{e.loadNamespaces(t,d(e,n))},p=(e,t,n,r)=>{if(h(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return f(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,d(e,r))},m=(e,t,n={})=>!t.languages||!t.languages.length?(u(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),h=e=>typeof e==`string`,g=e=>typeof e==`object`&&!!e,_=t((e=>{var t=n();function r(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var i=typeof Object.is==`function`?Object.is:r,a=t.useState,o=t.useEffect,s=t.useLayoutEffect,c=t.useDebugValue;function l(e,t){var n=t(),r=a({inst:{value:n,getSnapshot:t}}),i=r[0].inst,l=r[1];return s(function(){i.value=n,i.getSnapshot=t,u(i)&&l({inst:i})},[e,n,t]),o(function(){return u(i)&&l({inst:i}),e(function(){u(i)&&l({inst:i})})},[e]),c(n),n}function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!i(e,n)}catch{return!0}}function d(e,t){return t()}var f=typeof window>`u`||window.document===void 0||window.document.createElement===void 0?d:l;e.useSyncExternalStore=t.useSyncExternalStore===void 0?f:t.useSyncExternalStore})),v=t(((e,t)=>{t.exports=_()}))(),y={t:(e,t)=>{if(h(t))return t;if(g(t)&&h(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},b=()=>()=>{},x=(e,t={})=>{let{i18n:n}=t,{i18n:c,defaultNS:l}=(0,s.useContext)(o)||{},d=n||c||i();d&&!d.reportNamespaces&&(d.reportNamespaces=new a),d||u(d,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next`);let g=(0,s.useMemo)(()=>({...r(),...d?.options?.react,...t}),[d,t]),{useSuspense:_,keyPrefix:x}=g,S=e||l||d?.options?.defaultNS,C=h(S)?[S]:S||[`translation`],w=(0,s.useMemo)(()=>C,C);d?.reportNamespaces?.addUsedNamespaces?.(w);let T=(0,s.useRef)(0),E=(0,s.useCallback)(e=>{if(!d)return b;let{bindI18n:t,bindI18nStore:n}=g,r=()=>{T.current+=1,e()};return t&&d.on(t,r),n&&d.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>d.off(e,r)),n&&n.split(` `).forEach(e=>d.store.off(e,r))}},[d,g]),D=(0,s.useRef)(),O=(0,s.useCallback)(()=>{if(!d)return y;let e=!!(d.isInitialized||d.initializedStoreOnce)&&w.every(e=>m(e,d,g)),n=t.lng||d.language,r=T.current,i=D.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===x&&i.revision===r)return i;let a={t:d.getFixedT(n,g.nsMode===`fallback`?w:w[0],x),ready:e,lng:n,keyPrefix:x,revision:r};return D.current=a,a},[d,w,x,g,t.lng]),[k,A]=(0,s.useState)(0),{t:j,ready:M}=(0,v.useSyncExternalStore)(E,O,O);(0,s.useEffect)(()=>{if(d&&!M&&!_){let e=()=>A(e=>e+1);t.lng?p(d,t.lng,w,e):f(d,w,e)}},[d,t.lng,w,M,_,k]);let N=d||{},P=(0,s.useRef)(null),F=(0,s.useRef)(),I=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,`__original`,{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},L=(0,s.useMemo)(()=>{let e=N,t=e?.language,n=e;e&&(P.current&&P.current.__original===e&&F.current===t?n=P.current:(n=I(e),P.current=n,F.current=t));let r=!M&&!_?(...e)=>(u(d,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),j(...e)):j,i=[r,n,M];return i.t=r,i.i18n=n,i.ready=M,i},[j,N,M,N.resolvedLanguage,N.language,N.languages]);if(d&&_&&!M)throw new Promise(e=>{let n=()=>e();t.lng?p(d,t.lng,w,n):f(d,w,n)});return L};export{u as a,c as i,g as n,h as r,x as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},t=new class extends e{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},n={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},r=new class{#e=n;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function i(e){setTimeout(e,0)}var a=typeof window>`u`||`Deno`in globalThis;function o(){}function s(e,t){return typeof e==`function`?e(t):e}function c(e){return typeof e==`number`&&e>=0&&e!==1/0}function l(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t){return typeof e==`function`?e(t):e}function d(e,t){return typeof e==`function`?e(t):e}function f(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==m(o,t.options))return!1}else if(!g(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function p(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(h(t.options.mutationKey)!==h(a))return!1}else if(!g(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function m(e,t){return(t?.queryKeyHashFn||h)(e)}function h(e){return JSON.stringify(e,(e,t)=>x(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function g(e,t){return e===t?!0:typeof e==typeof t&&e&&t&&typeof e==`object`&&typeof t==`object`?Object.keys(t).every(n=>g(e[n],t[n])):!1}var _=Object.prototype.hasOwnProperty;function v(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=b(e)&&b(t);if(!r&&!(x(e)&&x(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:_.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=v(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function y(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function b(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function x(e){if(!S(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!S(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function S(e){return Object.prototype.toString.call(e)===`[object Object]`}function C(e){return new Promise(t=>{r.setTimeout(t,e)})}function w(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:v(e,t)}function T(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function E(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var D=Symbol();function O(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===D?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function k(e,t){return typeof e==`function`?e(...t):!!e}function A(e,t,n){let r=!1,i;return Object.defineProperty(e,`signal`,{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var j=(()=>{let e=()=>a;return{isServer(){return e()},setIsServer(t){e=t}}})();function M(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var N=i;function P(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=N,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var F=P(),I=new class extends e{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function L(e){return Math.min(1e3*2**e,3e4)}function R(e){return(e??`online`)===`online`?I.isOnline():!0}var z=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function B(e){let n=!1,r=0,i,a=M(),o=()=>a.status!==`pending`,s=t=>{if(!o()){let n=new z(t);p(n),e.onCancel?.(n)}},c=()=>{n=!0},l=()=>{n=!1},u=()=>t.isFocused()&&(e.networkMode===`always`||I.isOnline())&&e.canRun(),d=()=>R(e.networkMode)&&e.canRun(),f=e=>{o()||(i?.(),a.resolve(e))},p=e=>{o()||(i?.(),a.reject(e))},m=()=>new Promise(t=>{i=e=>{(o()||u())&&t(e)},e.onPause?.()}).then(()=>{i=void 0,o()||e.onContinue?.()}),h=()=>{if(o())return;let t,i=r===0?e.initialPromise:void 0;try{t=i??e.fn()}catch(e){t=Promise.reject(e)}Promise.resolve(t).then(f).catch(t=>{if(o())return;let i=e.retry??(j.isServer()?0:3),a=e.retryDelay??L,s=typeof a==`function`?a(r,t):a,c=i===!0||typeof i==`number`&&r<i||typeof i==`function`&&i(r,t);if(n||!c){p(t);return}r++,e.onFail?.(r,t),C(s).then(()=>u()?void 0:m()).then(()=>{n?p(t):h()})})};return{promise:a,status:()=>a.status,cancel:s,continue:()=>(i?.(),a),cancelRetry:c,continueRetry:l,canStart:d,start:()=>(d()?h():m().then(h),a)}}var V=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),c(this.gcTime)&&(this.#e=r.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(j.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(r.clearTimeout(this.#e),this.#e=void 0)}};function H(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{A(e,()=>t.signal,()=>n=!0)},u=O(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=await u((()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})()),{maxPages:o}=t.options,s=i?E:T;return{pages:s(e.pages,a,o),pageParams:s(e.pageParams,r,o)}};if(i&&a.length){let e=i===`backward`,t=e?W:U,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:U(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function U(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function W(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function G(e,t){return t?U(e,t)!=null:!1}function K(e,t){return!t||!e.getPreviousPageParam?!1:W(e,t)!=null}var q=class extends V{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=X(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=X(this.options);e.data!==void 0&&(this.setState(Y(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=w(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(o).catch(o):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>d(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===D||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>u(e.options.staleTime,this)===`static`):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!l(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}let n=new AbortController,r=e=>{Object.defineProperty(e,`signal`,{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=O(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?H(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=B({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof z&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof z){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...J(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Y(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),F.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function J(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:R(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Y(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function X(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}export{y as C,r as D,l as E,t as O,u as S,D as T,o as _,V as a,v as b,F as c,s as d,h as f,f as g,p as h,K as i,e as k,M as l,c as m,J as n,B as o,m as p,G as r,I as s,q as t,j as u,g as v,k as w,d as x,w as y};
|