@openhands/agent-canvas 1.13.0 → 1.14.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 +1 -1
- package/README.windows.md +2 -2
- package/build/assets/{acp-providers-D1PORKc0.js → acp-providers-CYy8qA2z.js} +1 -1
- package/build/assets/active-backend-context-BZDG15C0.js +2 -0
- package/build/assets/{agent-context-settings-DMrObcIS.js → agent-context-settings-DGWBBbcp.js} +1 -1
- package/build/assets/{agent-profiles-settings-DororXN5.js → agent-profiles-settings-DrkGdf4_.js} +1 -1
- package/build/assets/{agent-server-conversation-service.api-DWBe0rbX.js → agent-server-conversation-service.api-DK56YPTs.js} +7 -7
- package/build/assets/{agent-settings-BJVk92PU.js → agent-settings-DfcSgkLD.js} +2 -2
- package/build/assets/agent-settings-Lrc5-twS.js +1 -0
- package/build/assets/{alert-banner-CzZsm7ms.js → alert-banner-BgDHhL7b.js} +1 -1
- package/build/assets/api-error-message-BEIE_yD1.js +1 -0
- package/build/assets/{api-key-entry-screen-D8Fade_-.js → api-key-entry-screen-DaZnOlVo.js} +1 -1
- package/build/assets/{app-settings-CpyGB3AT.js → app-settings-BG5NAUbC.js} +1 -1
- package/build/assets/automation-detail-D4Hs831Z.js +3 -0
- package/build/assets/automation-export-n0X6FB0C.js +2 -0
- package/build/assets/automation-git-sync-CDrm8WV7.js +1 -0
- package/build/assets/automation-setup-route-CZCl4ONs.js +1 -0
- package/build/assets/{automation-templates-DgpCGOJV.js → automation-templates-DFF96AdL.js} +1 -1
- package/build/assets/automations-list-Bl-oGOrV.js +1 -0
- package/build/assets/{back-nav-button-HHEneWMw.js → back-nav-button-H_ThtDA0.js} +1 -1
- package/build/assets/{backend-form-modal-DiVrD4Cm.js → backend-form-modal-CbCemvHt.js} +1 -1
- package/build/assets/backend-not-configured-DP8KLNq_.js +1 -0
- package/build/assets/{backend-synced-settings-badge-7MIjpr8M.js → backend-synced-settings-badge-BBASWqsb.js} +1 -1
- package/build/assets/{badge-CpYmcVZV.js → badge-B-51h-SW.js} +1 -1
- package/build/assets/{base-modal-Fnh6Uln9.js → base-modal-BbjycA8X.js} +1 -1
- package/build/assets/{bot-BQZx8e2i.js → bot-CGPCg03p.js} +1 -1
- package/build/assets/{brand-button-swT1RyO0.js → brand-button-Blxv5nww.js} +1 -1
- package/build/assets/browser-CuW0nWvh.js +7 -0
- package/build/assets/{browser-tab-zAY12m_i.js → browser-tab-D5G0ORwt.js} +1 -1
- package/build/assets/{chat-send-button-DsJtivmL.js → chat-send-button-BD2tii1r.js} +1 -1
- package/build/assets/check-DSuS-lyr.js +1 -0
- package/build/assets/chevron-down-CgGcmtE2.js +1 -0
- package/build/assets/circle-check-CG5-NPw7.js +1 -0
- package/build/assets/{circle-plus-check-toggle-Cuzx55bo.js → circle-plus-check-toggle-ASbpB8vN.js} +1 -1
- package/build/assets/{cloud-funnel-analytics-86CwNdSh.js → cloud-funnel-analytics-GlCUG0gk.js} +1 -1
- package/build/assets/cog-CZiR80uT.js +1 -0
- package/build/assets/{combobox-caret-D0fRotFi.js → combobox-caret-DvpEsh2O.js} +1 -1
- package/build/assets/{command-menu-BXy03FBl.js → command-menu-DwUQzjYP.js} +1 -1
- package/build/assets/{condenser-settings-BmZa0ui_.js → condenser-settings-BptcoiLA.js} +1 -1
- package/build/assets/{confirmation-modal-BgoN6lbN.js → confirmation-modal-CiEwxZAA.js} +1 -1
- package/build/assets/{context-menu-list-item-Bq02tc-P.js → context-menu-list-item-CdcamfM1.js} +1 -1
- package/build/assets/conversation-DREHj4nT.js +1 -0
- package/build/assets/conversation-DotRfiDz.js +90 -0
- package/build/assets/conversation-panel-DREHj4nT.js +1 -0
- package/build/assets/conversation-state-store-DMLtlHbE.js +1 -0
- package/build/assets/{conversation-tab-empty-state-CMqo_0Bd.js → conversation-tab-empty-state-D-puECpY.js} +1 -1
- package/build/assets/{copy-to-clipboard-button-Cg1pF0xn.js → copy-to-clipboard-button-BGxcUbgy.js} +1 -1
- package/build/assets/{device-verify-BfQLgNyq.js → device-verify-CZJfWaJf.js} +1 -1
- package/build/assets/{dropdown-classes-BIqQr5mx.js → dropdown-classes-tLhpwtxS.js} +1 -1
- package/build/assets/{entry.client-CxFjRYqH.js → entry.client-D8GnI6GZ.js} +2 -2
- package/build/assets/{enum-filter-dropdown-C_yV4_bo.js → enum-filter-dropdown-Fk8k60nk.js} +1 -1
- package/build/assets/{environment-switch-overlay-Bi4qbh2g.js → environment-switch-overlay-DeztVYuL.js} +1 -1
- package/build/assets/{extensions-hub-BqUINAhp.js → extensions-hub-Cd6GCYzq.js} +1 -1
- package/build/assets/{extensions-navigation-lraj88Wk.js → extensions-navigation-C4sgZg-y.js} +1 -1
- package/build/assets/{external-link-CgtpA_a1.js → external-link-C0UpBgsE.js} +1 -1
- package/build/assets/{file-text-DEK4LSVw.js → file-text-C6WYtNdV.js} +1 -1
- package/build/assets/files-tab-BW_qzyAm.js +1 -0
- package/build/assets/{form-control-classes-7yFSQJq_.js → form-control-classes-CGXBLcn1.js} +1 -1
- package/build/assets/format-model-name-BNPKVsIq.js +1 -0
- package/build/assets/format-relative-time-ZhQD4rsl.js +1 -0
- package/build/assets/git-provider-icon-CaQ1yLPi.js +1 -0
- package/build/assets/{git-repo-dropdown-ByMzpNko.js → git-repo-dropdown-CgXR6M_E.js} +1 -1
- package/build/assets/git-repo-dropdown-D2Uei3CO.js +1 -0
- package/build/assets/{highlighted-source-view-C_sfncLZ.js → highlighted-source-view-C_YOp8Fo.js} +1 -1
- package/build/assets/home-DNzzJcMP.js +1 -0
- package/build/assets/home-aCos-5vc.js +1 -0
- package/build/assets/{home-store-CxqsY9Fi.js → home-store-DgzViC3f.js} +1 -1
- package/build/assets/index-home-DNzzJcMP.js +1 -0
- package/build/assets/info-CLoC1LRo.js +1 -0
- package/build/assets/install-server-modal-D7zIqNKz.js +1 -0
- package/build/assets/kebab-menu-item-content-DERMdnDv.js +1 -0
- package/build/assets/{launch-CkqiSCqi.js → launch-5PjKeLak.js} +1 -1
- package/build/assets/{list-todo-DNWlzfaM.js → list-todo-BF049YaY.js} +1 -1
- package/build/assets/llm-not-configured-banner-BK9z5eS0.js +27 -0
- package/build/assets/llm-settings-BLAMK2tR.js +1 -0
- package/build/assets/llm-settings-BWsbarGM.js +1 -0
- package/build/assets/{llm-subscription-service-BAdOl5Xx.js → llm-subscription-service-SfnEV9Uc.js} +1 -1
- package/build/assets/loader-circle-D7IagAyF.js +1 -0
- package/build/assets/{loading-spinner-xhnrGP4Y.js → loading-spinner-DBgXgra0.js} +1 -1
- package/build/assets/{manage-backends-modal-DhGk5mJt.js → manage-backends-modal-BTqNPhzc.js} +1 -1
- package/build/assets/manifest-abebca3c.js +1 -0
- package/build/assets/manifest-subpage-layout-Rn-glaxV.js +1 -0
- package/build/assets/{map-provider-Mx8mZuE-.js → map-provider-BK4HnqYz.js} +1 -1
- package/build/assets/markdown-renderer-Cp6DlHQN.js +8 -0
- package/build/assets/{mcp-DCkvl6K0.js → mcp-BC-Ixn4T.js} +2 -2
- package/build/assets/{mcp-marketplace-utils-DEbMXlQr.js → mcp-marketplace-utils-BJWJgbB6.js} +1 -1
- package/build/assets/{messages-DSXvyc21.js → messages-CzFKrzPG.js} +5 -5
- package/build/assets/{modal-body-gIe21fDv.js → modal-body-BdKfD3Hl.js} +1 -1
- package/build/assets/{modal-classes-D66dlgZ7.js → modal-classes-D5_b5vMi.js} +1 -1
- package/build/assets/{modal-close-button-B6iOGYpI.js → modal-close-button-objukxk_.js} +1 -1
- package/build/assets/{mouse-pointer-click-BYX1Pw5W.js → mouse-pointer-click-C_gXyLyD.js} +1 -1
- package/build/assets/{npm-DLckoeJc.js → npm-CHVHV1MC.js} +1 -1
- package/build/assets/{onboarding-D7WDG66N.js → onboarding-Diw0V51A.js} +1 -1
- package/build/assets/onboarding-modal-Da4yHzsA.js +1 -0
- package/build/assets/{organization-service.api-D-s9z18a.js → organization-service.api-BztSy69u.js} +1 -1
- package/build/assets/parse-git-remote-url-BkXN9jzl.js +1 -0
- package/build/assets/{pencil-BGOCPRyu.js → pencil-49avMHlD.js} +1 -1
- package/build/assets/{planner-tab-AKaXIIfg.js → planner-tab-CJiSpNax.js} +1 -1
- package/build/assets/{plugins-management-service-wtmY4QQw.js → plugins-management-service-lHdNKWNU.js} +1 -1
- package/build/assets/plus-C0BagBpV.js +1 -0
- package/build/assets/profiles-service.api-BLr7FXec.js +1 -0
- package/build/assets/providers-CWXnb7S3.js +1 -0
- package/build/assets/{proxy-9Z_WZggZ.js → proxy-DYDXxtje.js} +1 -1
- package/build/assets/{puzzle-BWLmN8z4.js → puzzle-Bt2B1rzf.js} +1 -1
- package/build/assets/recommended-automations-launcher-CcFMfJRR.js +1 -0
- package/build/assets/{refresh-cw-CXtFWpwv.js → refresh-cw-nmcesifB.js} +1 -1
- package/build/assets/root-CT4t7apy.css +1 -0
- package/build/assets/root-DnRgLKpU.js +2 -0
- package/build/assets/root-layout-2L9tr-BN.js +2 -0
- package/build/assets/{schema-field-OnM5Uob_.js → schema-field-C59lVZTA.js} +1 -1
- package/build/assets/{sdk-section-page-m5WQm2sy.js → sdk-section-page-BbBEQQjq.js} +1 -1
- package/build/assets/search-CYSDBczG.js +1 -0
- package/build/assets/secrets-service-BtsgYSlj.js +1 -0
- package/build/assets/secrets-settings-DJ0OKa4_.js +1 -0
- package/build/assets/{segmented-toggle-DCspm2U5.js → segmented-toggle-DiVfTZuN.js} +1 -1
- package/build/assets/{settings-BJQI_iBM.js → settings-CDqL_Uqh.js} +1 -1
- package/build/assets/{settings-CWFxymAf.js → settings-DcNPxz0v.js} +1 -1
- package/build/assets/{settings-dropdown-input-BI8V_Nov.js → settings-dropdown-input-Ba1UN5Du.js} +1 -1
- package/build/assets/{settings-index-BiTqJoH7.js → settings-index-Cz2cKt2K.js} +1 -1
- package/build/assets/{settings-input-Cz62hWVW.js → settings-input-CWUEHHvS.js} +1 -1
- package/build/assets/{settings-list-classes-z_3FW5H3.js → settings-list-classes-DdcLXDGn.js} +1 -1
- package/build/assets/{settings-modal-BIrIVn97.js → settings-modal-nEEK1Kh1.js} +1 -1
- package/build/assets/{settings-service.api--rJmnuLa.js → settings-service.api-3yAUFcaP.js} +1 -1
- package/build/assets/{settings-switch-BRsSI8Vs.js → settings-switch-Dk9hChx1.js} +1 -1
- package/build/assets/{settings-utils-Ba7vel6T.js → settings-utils-CxjtCSB3.js} +1 -1
- package/build/assets/{shared-conversation-CQK_PqHx.js → shared-conversation-DbAcrx3s.js} +1 -1
- package/build/assets/{shield-check-T3JsDJiM.js → shield-check-CiOTXxV2.js} +1 -1
- package/build/assets/{sidebar-layout-Bhi3hVcu.js → sidebar-layout-lrfPooIB.js} +1 -1
- package/build/assets/{sidebar-mobile-menu-toggle-YWJNRN4p.js → sidebar-mobile-menu-toggle-KERXfNu1.js} +1 -1
- package/build/assets/{sidebar-nav-link-BSUlY5Ml.js → sidebar-nav-link-B8lFD6Cb.js} +1 -1
- package/build/assets/{sidebar-store-Cl1cUv_F.js → sidebar-store-u6pUpxJ7.js} +1 -1
- package/build/assets/{skill-card-pill-row-BXz8L8Rn.js → skill-card-pill-row-dGIUzr_b.js} +1 -1
- package/build/assets/{skill-icon-badge-QgfKv31M.js → skill-icon-badge-kkOWZ89w.js} +1 -1
- package/build/assets/{skill-scope-Dc3JPW-8.js → skill-scope-DWN1PBPH.js} +1 -1
- package/build/assets/{skills-plugins-CpTV27n3.js → skills-plugins-DFjH2Nq6.js} +1 -1
- package/build/assets/{skills-settings-CSW__IW4.js → skills-settings-DIHpl3ol.js} +2 -2
- package/build/assets/{sparkles-TJ0mdECe.js → sparkles-ntyMLnbj.js} +1 -1
- package/build/assets/{styled-tooltip-BUMSbgrF.js → styled-tooltip-B6JXcsmL.js} +1 -1
- package/build/assets/{task-list-tab-mAHMOkUz.js → task-list-tab-aEJzEcHD.js} +1 -1
- package/build/assets/{terminal-BzxBaHx2.js → terminal-Dch7Ty5K.js} +1 -1
- package/build/assets/{toggle-switch-O5v1FgxW.js → toggle-switch-B2MLKsgt.js} +1 -1
- package/build/assets/{trash-2-C0xNVp9c.js → trash-2-yZnDM4Ji.js} +1 -1
- package/build/assets/{typography-NOKSk9_R.js → typography-DB5HoCk0.js} +1 -1
- package/build/assets/usage-tab-DrEtBmBT.js +1 -0
- package/build/assets/use-acp-credential-form-c8KXAa8A.js +1 -0
- package/build/assets/{use-activate-agent-profile-D9YRQPTF.js → use-activate-agent-profile-B0p34N3q.js} +1 -1
- package/build/assets/use-agent-profiles-CPIc6wLH.js +1 -0
- package/build/assets/{use-can-manage-org-profiles-Dxzq2AEd.js → use-can-manage-org-profiles-Dz_8Eqkv.js} +1 -1
- package/build/assets/{use-cloud-current-user-id-Co2eJk2A.js → use-cloud-current-user-id-DvUVqCle.js} +1 -1
- package/build/assets/use-config-C3PO4TBw.js +1 -0
- package/build/assets/{use-create-conversation-CoHTiCbI.js → use-create-conversation-DVrA_uLD.js} +1 -1
- package/build/assets/use-create-secret-DbBIpaCR.js +1 -0
- package/build/assets/use-get-secrets-6PBitf54.js +1 -0
- package/build/assets/use-has-permission-CQ31Cl8j.js +1 -0
- package/build/assets/use-is-authed-2UrDIziV.js +1 -0
- package/build/assets/use-is-creating-conversation-BvYpmb3v.js +1 -0
- package/build/assets/use-llm-profiles-diZS4FiN.js +1 -0
- package/build/assets/use-manifest-capabilities-HIWCtIUm.js +1 -0
- package/build/assets/{use-onboarding-completion-CCE8OQgV.js → use-onboarding-completion-Bs8PcXik.js} +1 -1
- package/build/assets/{use-plugins-marketplace-CEiak69h.js → use-plugins-marketplace-BCuNLFsr.js} +1 -1
- package/build/assets/use-save-agent-profile-BaMNSpBV.js +1 -0
- package/build/assets/{use-save-settings-DNmnbG6f.js → use-save-settings-BahvC2Gw.js} +1 -1
- package/build/assets/{use-settings-wCwPaSIv.js → use-settings-C6ZxpBDX.js} +1 -1
- package/build/assets/{use-settings-nav-items-BlFL7YhM.js → use-settings-nav-items-Bqn69Ggw.js} +2 -2
- package/build/assets/use-tracking-Bhu7gk2y.js +3 -0
- package/build/assets/{use-user-conversation-DVtfg0B_.js → use-user-conversation-BkNXpXrd.js} +1 -1
- package/build/assets/{useInfiniteQuery-p1xq35r2.js → useInfiniteQuery-c_OmS3lK.js} +1 -1
- package/build/assets/{useMutation-BFDQmgk9.js → useMutation-6ZsQCqAn.js} +1 -1
- package/build/assets/{useQueries-DF1NAAeC.js → useQueries-xDrGlTO_.js} +1 -1
- package/build/assets/{useQuery-DRv--6bK.js → useQuery-Bs5NFz2s.js} +1 -1
- package/build/assets/{utils-zxEjKE70.js → utils-DUD5ScdA.js} +1 -1
- package/build/assets/{vendor~entry.client-CgNUwtQL.js → vendor~entry.client-BFE7Llz9.js} +1 -1
- package/build/assets/{vendor~entry.client-zSIea5EO.js → vendor~entry.client-BaKt_PIp.js} +1 -1
- package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kv3pap4j-B8i84bh4.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js} +1 -1
- package/build/assets/{vendor~files-tab-D9wR9yM2.js → vendor~files-tab-B6POTS66.js} +1 -1
- package/build/assets/{vendor~index-home~home~conversation-panel~conversation-Ipoe6hvY.js → vendor~index-home~home~conversation-panel~conversation-53Q_U6uP.js} +1 -1
- package/build/assets/{vendor~root-layout-C-IgVx6e.js → vendor~root-layout-DeQACFVA.js} +1 -1
- package/build/assets/{vendor~root-layout~conversation-panel~conversation-Dhd_I4H4.js → vendor~root-layout~conversation-panel~conversation-bv7ooVgH.js} +1 -1
- package/build/assets/{vendor~root-layout~conversation-panel~conversation~skills-settings~automations-list~shared-~bovqqk8e-Cc0f9kPP.js → vendor~root-layout~conversation-panel~conversation~skills-settings~automations-list~shared-~bovqqk8e-e8pX05xf.js} +1 -1
- package/build/assets/{vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-d7svw-BB.js → vendor~root-layout~index-home~home~conversation-panel~conversation~shared-conversation-BvS6PCK2.js} +1 -1
- package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-4WsUP-tz.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-DOPLJMH9.js} +1 -1
- package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gxu4j2ea-D5DWZVc7.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz8NQve5.js} +1 -1
- package/build/assets/{verification-settings-B8UMQ7MG.js → verification-settings-COueVXmM.js} +1 -1
- package/build/assets/{wrench-DIka3hCq.js → wrench-C95ujnYo.js} +1 -1
- package/build/assets/x-86ZCfxKY.js +1 -0
- package/build/assets/{zap-DHddTPc0.js → zap-DRa-r-Tf.js} +1 -1
- package/build/index.html +4 -4
- package/build/locales/ar/openhands.json +60 -2
- package/build/locales/ca/openhands.json +60 -2
- package/build/locales/de/openhands.json +60 -2
- package/build/locales/en/openhands.json +60 -2
- package/build/locales/es/openhands.json +60 -2
- package/build/locales/fr/openhands.json +60 -2
- package/build/locales/it/openhands.json +60 -2
- package/build/locales/ja/openhands.json +60 -2
- package/build/locales/ko-KR/openhands.json +60 -2
- package/build/locales/no/openhands.json +60 -2
- package/build/locales/pt/openhands.json +60 -2
- package/build/locales/tr/openhands.json +60 -2
- package/build/locales/uk/openhands.json +60 -2
- package/build/locales/zh-CN/openhands.json +60 -2
- package/build/locales/zh-TW/openhands.json +60 -2
- package/config/defaults.json +1 -1
- package/dist/api/automation-service/automation-service.api.cjs +1 -1
- package/dist/api/automation-service/automation-service.api.cjs.map +1 -1
- package/dist/api/automation-service/automation-service.api.d.ts +10 -0
- package/dist/api/automation-service/automation-service.api.js +42 -0
- package/dist/api/automation-service/automation-service.api.js.map +1 -1
- package/dist/api/cloud/conversation-service.api.cjs +1 -1
- package/dist/api/cloud/conversation-service.api.cjs.map +1 -1
- package/dist/api/cloud/conversation-service.api.d.ts +9 -0
- package/dist/api/cloud/conversation-service.api.js +11 -1
- package/dist/api/cloud/conversation-service.api.js.map +1 -1
- package/dist/api/profiles-service/profiles-service.api.cjs +1 -1
- package/dist/api/profiles-service/profiles-service.api.cjs.map +1 -1
- package/dist/api/profiles-service/profiles-service.api.d.ts +15 -2
- package/dist/api/profiles-service/profiles-service.api.js +25 -2
- package/dist/api/profiles-service/profiles-service.api.js.map +1 -1
- package/dist/api/secrets-service.cjs +1 -1
- package/dist/api/secrets-service.cjs.map +1 -1
- package/dist/api/secrets-service.d.ts +5 -0
- package/dist/api/secrets-service.js +12 -6
- package/dist/api/secrets-service.js.map +1 -1
- package/dist/components/conversation-events/chat/event-message-components/index.d.ts +0 -1
- package/dist/components/features/automations/git-sync/git-sync-activity-row.d.ts +15 -0
- package/dist/components/features/automations/git-sync/git-sync-config-form.d.ts +13 -0
- package/dist/components/features/automations/git-sync/git-sync-error-banner.d.ts +6 -0
- package/dist/components/features/automations/git-sync/git-sync-not-local-state.d.ts +1 -0
- package/dist/components/features/automations/git-sync/git-sync-overview-section.d.ts +12 -0
- package/dist/components/features/automations/git-sync/git-sync-skeleton.d.ts +1 -0
- package/dist/components/features/automations/git-sync/git-sync-status-pill.d.ts +7 -0
- package/dist/components/features/automations/git-sync/git-sync-unsupported-state.d.ts +7 -0
- package/dist/components/features/automations/responder-deployment-modal.d.ts +2 -1
- package/dist/components/features/chat/chat-interface.cjs +2 -2
- package/dist/components/features/chat/chat-interface.cjs.map +1 -1
- package/dist/components/features/chat/chat-interface.js +177 -176
- package/dist/components/features/chat/chat-interface.js.map +1 -1
- package/dist/components/features/chat/error-message-banner.cjs +1 -1
- package/dist/components/features/chat/error-message-banner.cjs.map +1 -1
- package/dist/components/features/chat/error-message-banner.d.ts +3 -1
- package/dist/components/features/chat/error-message-banner.js +64 -58
- package/dist/components/features/chat/error-message-banner.js.map +1 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.cjs +1 -1
- package/dist/components/features/conversation-panel/compact-conversation-row.js +6 -6
- package/dist/components/features/conversation-panel/conversation-panel.cjs +1 -1
- package/dist/components/features/conversation-panel/conversation-panel.js +19 -19
- package/dist/components/features/onboarding/steps/setup-llm-step.d.ts +10 -7
- package/dist/components/shared/buttons/conversation-confirmation-buttons.cjs +1 -1
- package/dist/components/shared/buttons/conversation-confirmation-buttons.cjs.map +1 -1
- package/dist/components/shared/buttons/conversation-confirmation-buttons.js +1 -1
- package/dist/components/shared/buttons/conversation-confirmation-buttons.js.map +1 -1
- package/dist/config/defaults.cjs +1 -1
- package/dist/config/defaults.cjs.map +1 -1
- package/dist/config/defaults.js +1 -1
- package/dist/config/defaults.js.map +1 -1
- package/dist/contexts/conversation-websocket-context.cjs +2 -2
- package/dist/contexts/conversation-websocket-context.cjs.map +1 -1
- package/dist/contexts/conversation-websocket-context.js +12 -12
- package/dist/contexts/conversation-websocket-context.js.map +1 -1
- package/dist/hooks/query/use-commit-changes.cjs +1 -1
- package/dist/hooks/query/use-commit-changes.js +4 -4
- package/dist/hooks/query/use-git-sync.d.ts +19 -0
- package/dist/hooks/query/use-task-polling.cjs +1 -1
- package/dist/hooks/query/use-task-polling.cjs.map +1 -1
- package/dist/hooks/query/use-task-polling.js +12 -10
- package/dist/hooks/query/use-task-polling.js.map +1 -1
- package/dist/hooks/query/use-unified-get-git-changes.cjs +1 -1
- package/dist/hooks/query/use-unified-get-git-changes.js +4 -4
- package/dist/hooks/query/use-unified-git-commits.cjs +1 -1
- package/dist/hooks/query/use-unified-git-commits.js +4 -4
- package/dist/hooks/query/use-unified-git-diff.cjs +1 -1
- package/dist/hooks/query/use-unified-git-diff.js +4 -4
- package/dist/hooks/query/use-workspace-files.cjs +1 -1
- package/dist/hooks/query/use-workspace-files.cjs.map +1 -1
- package/dist/hooks/query/use-workspace-files.d.ts +14 -4
- package/dist/hooks/query/use-workspace-files.js +45 -32
- package/dist/hooks/query/use-workspace-files.js.map +1 -1
- package/dist/hooks/use-responder-url-secret.d.ts +5 -0
- package/dist/hooks/use-tracking.cjs +1 -1
- package/dist/hooks/use-tracking.cjs.map +1 -1
- package/dist/hooks/use-tracking.d.ts +6 -0
- package/dist/hooks/use-tracking.js +6 -0
- package/dist/hooks/use-tracking.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 +59 -1
- package/dist/i18n/declaration.js +1 -1
- package/dist/i18n/declaration.js.map +1 -1
- package/dist/i18n/translation.cjs +1 -1
- package/dist/i18n/translation.cjs.map +1 -1
- package/dist/i18n/translation.js +1001 -15
- package/dist/i18n/translation.js.map +1 -1
- package/dist/locales/ar/openhands.json +60 -2
- package/dist/locales/ca/openhands.json +60 -2
- package/dist/locales/de/openhands.json +60 -2
- package/dist/locales/en/openhands.json +60 -2
- package/dist/locales/es/openhands.json +60 -2
- package/dist/locales/fr/openhands.json +60 -2
- package/dist/locales/it/openhands.json +60 -2
- package/dist/locales/ja/openhands.json +60 -2
- package/dist/locales/ko-KR/openhands.json +60 -2
- package/dist/locales/no/openhands.json +60 -2
- package/dist/locales/pt/openhands.json +60 -2
- package/dist/locales/tr/openhands.json +60 -2
- package/dist/locales/uk/openhands.json +60 -2
- package/dist/locales/zh-CN/openhands.json +60 -2
- package/dist/locales/zh-TW/openhands.json +60 -2
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.cjs +2 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.cjs.map +1 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.js +27 -0
- package/dist/node_modules/lucide-react/dist/esm/icons/circle-alert.js.map +1 -0
- package/dist/package.cjs +1 -1
- package/dist/package.cjs.map +1 -1
- package/dist/package.js +1 -1
- package/dist/package.js.map +1 -1
- package/dist/routes/files-tab.cjs +1 -1
- package/dist/routes/files-tab.js +11 -11
- package/dist/routes/files-tab.js.map +1 -1
- package/dist/services/settings.cjs +1 -1
- package/dist/services/settings.cjs.map +1 -1
- package/dist/services/settings.js +2 -2
- package/dist/services/settings.js.map +1 -1
- package/dist/services/telemetry.cjs +1 -1
- package/dist/services/telemetry.cjs.map +1 -1
- package/dist/services/telemetry.js +47 -51
- package/dist/services/telemetry.js.map +1 -1
- package/dist/stores/error-message-store.cjs +1 -1
- package/dist/stores/error-message-store.cjs.map +1 -1
- package/dist/stores/error-message-store.d.ts +3 -1
- package/dist/stores/error-message-store.js +5 -3
- package/dist/stores/error-message-store.js.map +1 -1
- package/dist/types/git-sync.d.ts +51 -0
- package/dist/utils/error-handler.cjs +1 -1
- package/dist/utils/error-handler.cjs.map +1 -1
- package/dist/utils/error-handler.d.ts +3 -2
- package/dist/utils/error-handler.js +18 -5
- package/dist/utils/error-handler.js.map +1 -1
- package/dist/utils/format-model-name.cjs +1 -1
- package/dist/utils/format-model-name.cjs.map +1 -1
- package/dist/utils/format-model-name.d.ts +1 -0
- package/dist/utils/format-model-name.js +1 -0
- package/dist/utils/format-model-name.js.map +1 -1
- package/dist/utils/transcript-export/load-complete-events.cjs +1 -1
- package/dist/utils/transcript-export/load-complete-events.cjs.map +1 -1
- package/dist/utils/transcript-export/load-complete-events.js +24 -16
- package/dist/utils/transcript-export/load-complete-events.js.map +1 -1
- package/package.json +1 -1
- package/scripts/check-translation-completeness.cjs +3 -0
- package/scripts/dev-with-automation.mjs +98 -9
- package/build/assets/active-backend-context-IqOjobNK.js +0 -2
- package/build/assets/agent-settings-COfJsQ1d.js +0 -1
- package/build/assets/automation-detail-B-jQ39Mm.js +0 -3
- package/build/assets/automation-export-B1dywoqk.js +0 -2
- package/build/assets/automation-setup-route-C-bWUZBi.js +0 -1
- package/build/assets/automations-list-DnMxlxsL.js +0 -1
- package/build/assets/browser-B9AbV6kG.js +0 -7
- package/build/assets/check-WAFXrrs_.js +0 -1
- package/build/assets/chevron-down-CifNWzme.js +0 -1
- package/build/assets/circle-check-CtnimJa8.js +0 -1
- package/build/assets/conversation-BPo8SvLN.js +0 -1
- package/build/assets/conversation-CPCVsCUY.js +0 -90
- package/build/assets/conversation-panel-BPo8SvLN.js +0 -1
- package/build/assets/conversation-state-store-C5YpjMNy.js +0 -1
- package/build/assets/files-tab-DV0L-lFE.js +0 -1
- package/build/assets/format-model-name-BN_rx1Y3.js +0 -1
- package/build/assets/format-relative-time-DSErAuVr.js +0 -1
- package/build/assets/git-provider-icon-BvlLAche.js +0 -1
- package/build/assets/git-repo-dropdown-C6R7hgM8.js +0 -1
- package/build/assets/home-BOrlwLqG.js +0 -1
- package/build/assets/home-BvMNC6E-.js +0 -1
- package/build/assets/index-home-BvMNC6E-.js +0 -1
- package/build/assets/info-BRVcJAUg.js +0 -1
- package/build/assets/install-server-modal-Bl4G1zF4.js +0 -1
- package/build/assets/kebab-menu-item-content-BGoGFEAg.js +0 -1
- package/build/assets/llm-not-configured-banner-DLw_tu-G.js +0 -27
- package/build/assets/llm-settings-B-pkVCrt.js +0 -1
- package/build/assets/llm-settings-DSC0-IQ7.js +0 -1
- package/build/assets/loader-circle-B47W9XqT.js +0 -1
- package/build/assets/manifest-653b89aa.js +0 -1
- package/build/assets/manifest-subpage-layout-CKWvL2ig.js +0 -1
- package/build/assets/markdown-renderer-DUmk7pFc.js +0 -8
- package/build/assets/onboarding-modal-C_xVrFNv.js +0 -1
- package/build/assets/plus-zNEL8rcX.js +0 -1
- package/build/assets/profiles-service.api-DCMYxHMi.js +0 -1
- package/build/assets/providers-BjrtjX4L.js +0 -1
- package/build/assets/recommended-automations-launcher-CFlzhu1o.js +0 -1
- package/build/assets/root-CanxKlNV.css +0 -1
- package/build/assets/root-DkfG_UWR.js +0 -2
- package/build/assets/root-layout-D75LHYhh.js +0 -2
- package/build/assets/search-CycosyjN.js +0 -1
- package/build/assets/secrets-service-B26R61C1.js +0 -1
- package/build/assets/secrets-settings-CbLYCKOX.js +0 -1
- package/build/assets/usage-tab-tEmVN0KD.js +0 -1
- package/build/assets/use-acp-credential-form-BPNi0Zbm.js +0 -1
- package/build/assets/use-agent-profiles-Cb2zUW3l.js +0 -1
- package/build/assets/use-config-DKAMiI5R.js +0 -1
- package/build/assets/use-create-secret-2zBlCDsF.js +0 -1
- package/build/assets/use-is-authed-C52-ivnB.js +0 -1
- package/build/assets/use-is-creating-conversation-DdaAE6jV.js +0 -1
- package/build/assets/use-llm-profiles-C_BHue65.js +0 -1
- package/build/assets/use-manifest-capabilities-DPrQsaPP.js +0 -1
- package/build/assets/use-save-agent-profile-DK9idD6a.js +0 -1
- package/build/assets/use-tracking-CVwPmhlX.js +0 -3
- package/build/assets/x-BWKA2Ver.js +0 -1
- package/dist/api/cloud/suggestions-service.api.d.ts +0 -8
- package/dist/api/suggestions-service/suggestions-service.api.d.ts +0 -11
- package/dist/components/conversation-events/chat/event-message-components/observation-pair-event-message.d.ts +0 -7
- package/dist/components/conversation-events/index.d.ts +0 -1
- package/dist/components/features/automations/metadata-chip.d.ts +0 -6
- package/dist/components/features/chat/task-tracking/status-badge.d.ts +0 -5
- package/dist/components/features/chat/task-tracking/status-icon.d.ts +0 -5
- package/dist/components/features/chat/task-tracking/task-list-section.d.ts +0 -10
- package/dist/components/features/controls/tools.d.ts +0 -2
- package/dist/components/features/conversation-panel/new-conversation-button.d.ts +0 -23
- package/dist/components/features/home/home-header/guide-message.d.ts +0 -1
- package/dist/components/features/home/home-header/home-header.d.ts +0 -1
- package/dist/components/features/home/new-conversation/create-conversation-button.d.ts +0 -1
- package/dist/components/features/home/new-conversation/new-conversation.d.ts +0 -1
- package/dist/components/features/home/new-conversation.d.ts +0 -1
- package/dist/components/features/home/tasks/task-card.d.ts +0 -6
- package/dist/components/features/home/tasks/task-group.d.ts +0 -7
- package/dist/components/features/home/tasks/task-issue-number.d.ts +0 -6
- package/dist/components/features/home/tasks/task-item-title.d.ts +0 -1
- package/dist/components/features/home/tasks/task-suggestions-skeleton.d.ts +0 -1
- package/dist/components/features/home/tasks/task-suggestions.d.ts +0 -6
- package/dist/components/features/settings/agent-server-onboarding.d.ts +0 -10
- package/dist/components/features/settings/mcp-settings/mcp-server-list-item.d.ts +0 -6
- package/dist/components/features/settings/mcp-settings/mcp-server-list.d.ts +0 -8
- package/dist/hooks/query/use-suggested-tasks.d.ts +0 -1
- package/dist/hooks/use-should-show-user-features.d.ts +0 -1
- package/dist/ui/card-title.d.ts +0 -16
- package/dist/ui/card.d.ts +0 -14
- package/dist/utils/group-suggested-tasks.d.ts +0 -7
- /package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dh9v73sa-rfV8mQ9m.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js} +0 -0
- /package/build/assets/{vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~lq5hicxx-cHFhpUBq.js → vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~ox0jfsa0-cHFhpUBq.js} +0 -0
- /package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~9pstowjp-BOVIFA_g.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~eo2nf80n-BOVIFA_g.js} +0 -0
- /package/build/assets/{vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~ht43enc2-C0JXQb_q.js → vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~jz4f6vo2-C0JXQb_q.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{x as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{t}from"./useQuery-Bs5NFz2s.js";import{O as n,Q as r,j as i,k as a,n as o,st as s}from"./active-backend-context-BZDG15C0.js";import{t as c}from"./proxy-DYDXxtje.js";var l=`/api/agent-profiles`;function u(){let e=s().backend;if(e.kind!==`cloud`)throw Error(`Cloud agent-profile call requires a cloud backend.`);return e}async function d(){return c({backend:u(),method:`GET`,path:l})}async function f(e){return c({backend:u(),method:`GET`,path:`${l}/${encodeURIComponent(e)}`})}async function p(e,t){return c({backend:u(),method:`POST`,path:`${l}/${encodeURIComponent(e)}`,body:t})}async function m(e){return c({backend:u(),method:`DELETE`,path:`${l}/${encodeURIComponent(e)}`})}async function h(e,t){return c({backend:u(),method:`POST`,path:`${l}/${encodeURIComponent(e)}/rename`,body:{new_name:t}})}async function g(e){return c({backend:u(),method:`POST`,path:`${l}/${encodeURIComponent(e)}/activate`,body:{}})}function _(){return s().backend.kind===`cloud`}var v=`default`,y=class{static async listProfiles(){return _()?d():new e(r()).listAgentProfiles()}static async getProfile(t,n){if(_())return f(t);let i=n?{exposeSecrets:n}:{};return new e(r()).getAgentProfile(t,i)}static async saveProfile(t,n){return _()?p(t,n):new e(r()).saveAgentProfile(t,n)}static async deleteProfile(t){return _()?m(t):new e(r()).deleteAgentProfile(t)}static async renameProfile(t,n){return _()?h(t,n):new e(r()).renameAgentProfile(t,n)}static async activateProfile(t){return _()?g(t):new e(r()).activateAgentProfile(t)}};function b(e={}){let{backend:r,orgId:s}=o();return t({queryKey:[...n.all,r.id,s],queryFn:y.listProfiles,...i,...a,enabled:e.enabled??!0,meta:{disableToast:!0}})}export{y as n,v as r,b as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t,yt as n}from"./vendor-styling-Ck5D_A2Q.js";import{t as r}from"./useQuery-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t,yt as n}from"./vendor-styling-Ck5D_A2Q.js";import{t as r}from"./useQuery-Bs5NFz2s.js";import{n as i}from"./active-backend-context-BZDG15C0.js";import{t as a}from"./utils-DUD5ScdA.js";import{t as o}from"./organization-service.api-BztSy69u.js";import{_ as s,u as c}from"./form-control-classes-CGXBLcn1.js";import{c as l,u}from"./dropdown-classes-tLhpwtxS.js";var d=n();function f({icon:e,text:t,className:n}){return(0,d.jsxs)(`div`,{className:a(`flex min-w-0 w-full items-center`,l,n),children:[(0,d.jsx)(`span`,{className:u,"aria-hidden":!0,children:e}),(0,d.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t})]})}var p=e(t()),m=e=>(0,d.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,d.jsx)(`path`,{d:`M7 4C7 2.89543 7.89543 2 9 2H15C16.1046 2 17 2.89543 17 4V6H18.9897C18.9959 5.99994 19.0021 5.99994 19.0083 6H21C21.5523 6 22 6.44772 22 7C22 7.55228 21.5523 8 21 8H19.9311L19.0638 20.1425C18.989 21.1891 18.1182 22 17.0689 22H6.93112C5.88184 22 5.01096 21.1891 4.9362 20.1425L4.06888 8H3C2.44772 8 2 7.55228 2 7C2 6.44772 2.44772 6 3 6H4.99174C4.99795 5.99994 5.00414 5.99994 5.01032 6H7V4ZM9 6H15V4H9V6ZM6.07398 8L6.93112 20H17.0689L17.926 8H6.07398ZM10 10C10.5523 10 11 10.4477 11 11V17C11 17.5523 10.5523 18 10 18C9.44772 18 9 17.5523 9 17V11C9 10.4477 9.44772 10 10 10ZM14 10C14.5523 10 15 10.4477 15 11V17C15 17.5523 14.5523 18 14 18C13.4477 18 13 17.5523 13 17V11C13 10.4477 13.4477 10 14 10Z`,fill:`currentColor`})}),h=e=>(0,d.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,d.jsx)(`path`,{d:`M14.25 19.5C14.25 20.7426 13.2426 21.75 12 21.75C10.7574 21.75 9.75 20.7426 9.75 19.5C9.75 18.2574 10.7574 17.25 12 17.25C13.2426 17.25 14.25 18.2574 14.25 19.5ZM14.25 12C14.25 13.2426 13.2426 14.25 12 14.25C10.7574 14.25 9.75 13.2426 9.75 12C9.75 10.7574 10.7574 9.75 12 9.75C13.2426 9.75 14.25 10.7574 14.25 12ZM14.25 4.5C14.25 5.74264 13.2426 6.75 12 6.75C10.7574 6.75 9.75 5.74264 9.75 4.5C9.75 3.25736 10.7574 2.25 12 2.25C13.2426 2.25 14.25 3.25736 14.25 4.5Z`,fill:`currentColor`})}),g=p.forwardRef(function({onClick:e,className:t,iconClassName:n,ariaLabel:r,testId:i=`ellipsis-button`},o){return(0,d.jsx)(`button`,{ref:o,"data-testid":i,type:`button`,onClick:e,"aria-label":r,className:a(`p-1 rounded-md cursor-pointer`,s,`text-[var(--oh-muted)]`,c,`flex items-center justify-center`,t),children:(0,d.jsx)(h,{className:n??`w-4 h-4`})})}),_=`edit_org_settings`;function v(){let{backend:e,orgId:t}=i(),n=e.kind===`cloud`,{data:a}=r({queryKey:[`cloud-current-user`,e.id,t,e.connectionRevision??0],queryFn:()=>o(t,e),enabled:n&&!!t,staleTime:1e3*60*5,retry:!1,meta:{disableToast:!0}});return n?a?.permissions?a.permissions.includes(_):a?.role===`owner`||a?.role===`admin`:!0}export{f as a,m as i,g as n,h as r,v as t};
|
package/build/assets/{use-cloud-current-user-id-Co2eJk2A.js → use-cloud-current-user-id-DvUVqCle.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./useQueries-
|
|
1
|
+
import{t as e}from"./useQueries-xDrGlTO_.js";import{n as t,r as n}from"./active-backend-context-BZDG15C0.js";import{n as r,r as i,t as a}from"./organization-service.api-BztSy69u.js";function o(){let{backends:t}=n(),a=t.filter(e=>e.kind===`cloud`),o=e({queries:a.map(e=>({queryKey:[`cloud-organizations`,e.id,e.connectionRevision??0],queryFn:async()=>{let t=await r(e);if(e.authMode===`cookie`)return t;let n=await i(e);return n.isLegacyKey||n.orgId===null?t:{...t,items:t.items.filter(e=>e.id===n.orgId)}},staleTime:1e3*60*5,retry:!1,meta:{disableToast:!0}}))}),s={};return a.forEach((e,t)=>{let n=o[t];s[e.id]={backend:e,isLoading:n.isLoading,orgs:n.data?.items??[],currentOrgId:n.data?.currentOrgId??null}}),s}function s(){let{backends:r}=n(),i=t(),s=o(),c=[];for(let e of r)if(e.kind===`cloud`){let t=s[e.id],n=e.id===i.backend.id&&i.orgId?i.orgId:t?.orgs[0]?.id??null;n&&c.push({backendId:e.id,connectionRevision:e.connectionRevision??0,orgIdForMe:n})}let l=e({queries:c.map(({backendId:e,connectionRevision:t,orgIdForMe:n})=>{let i=r.find(t=>t.id===e);return{queryKey:[`cloud-current-user`,e,n,t],queryFn:async()=>i?a(n,i):{orgId:n,userId:``},enabled:!!i,staleTime:1e3*60*5,retry:!1,meta:{disableToast:!0}}})}),u={};return c.forEach((e,t)=>{let n=l[t];u[e.backendId]={isLoading:n.isLoading,userId:n.data?.userId??null}}),u}export{o as n,s as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{t}from"./useQuery-Bs5NFz2s.js";import{G as n,I as r,Q as i,X as a,j as o,q as s}from"./active-backend-context-BZDG15C0.js";var c=class{static async getModels(){let t=new e(i()),[n,r,a]=await Promise.all([t.getModels(),t.getVerifiedModels(),t.getProviders()]),o=Object.keys(r??{}).sort(),s=o.flatMap(e=>r[e]??[]);return{models:n??[],verified_models:s,verified_providers:a?.filter(e=>o.includes(e))??o,default_model:s[0]??n?.[0]??``}}static async getConfig(){return await a(),{feature_flags:{hide_llm_settings:!1,hide_users_page:!0},providers_configured:[],maintenance_start_time:null,recaptcha_site_key:null,faulty_models:[],error_message:null,updated_at:new Date().toISOString()}}},l=e=>t({queryKey:r.WEB_CLIENT_CONFIG,queryFn:c.getConfig,retry:(e,t)=>!s(t)&&!n(t)&&e<3,meta:{disableToast:!0},...o,enabled:e?.enabled});export{c as n,l as t};
|
package/build/assets/{use-create-conversation-CoHTiCbI.js → use-create-conversation-DVrA_uLD.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{n as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{t}from"./useMutation-6ZsQCqAn.js";import{F as n,M as r,O as i,k as a,n as o}from"./active-backend-context-BZDG15C0.js";import{t as s}from"./use-tracking-Bhu7gk2y.js";import{C as c,S as l,t as u,w as d}from"./agent-server-conversation-service.api-DK56YPTs.js";import{t as f}from"./profiles-service.api-BLr7FXec.js";import{t as p}from"./use-llm-profiles-diZS4FiN.js";import{n as m,t as h}from"./use-agent-profiles-CPIc6wLH.js";import{t as g}from"./plugins-management-service-lHdNKWNU.js";function _(e){if(e.name)return e.name;if(e.repo_path){let t=e.repo_path.split(`/`).filter(Boolean);if(t.length>0)return t[t.length-1]}let{source:t}=e;return t.startsWith(`github:`)?t.replace(`github:`,``):t.includes(`/`)&&t.split(`/`).pop()?.replace(/\.git$/,``)||t}function v(e){let{source:t}=e;return!(t.startsWith(`github:`)||/^[a-z][a-z0-9+.-]*:\/\//i.test(t))}function y(e){let t=e.source.startsWith(`github:`)?e.source.replace(`github:`,``):e.source;return e.ref?`${t} @ ${e.ref}`:t}function b(e){return[e.source,e.ref??``,e.repo_path??``].join(` `)}var x=[`create-conversation`],S=()=>{let _=e(),{trackConversationCreated:v}=s(),{data:y}=p(),{backend:S,orgId:C}=o();return h(),t({mutationKey:x,mutationFn:async e=>{let{query:t,conversationInstructions:o,plugins:s,repository:p,workingDir:h,workspaceMode:v,parentConversationId:x,agentType:w,agentProfileId:T}=e,E;try{E=await _.ensureQueryData({queryKey:[...i.all,S.id,C],queryFn:m.listProfiles,...a})}catch{}let D=T??E?.active_agent_profile_id??void 0,O=D?E?.profiles?.find(e=>e.id===D):void 0,k=S.kind===`cloud`,A=D;if(!k&&O?.name==="default"&&O?.agent_kind===`openhands`)A=void 0;else if(O?.agent_kind===`openhands`&&O.llm_profile_ref){let e=!1;try{e=(await _.ensureQueryData({queryKey:[...r.all,S.id,C],queryFn:f.listProfiles,retry:!1})).profiles.some(e=>e.name===O.llm_profile_ref)}catch{}e||(console.warn(`Agent profile "${O.name}" references missing LLM profile "${O.llm_profile_ref}"; launching from agent_settings instead.`),A=void 0)}let j=await u.createConversation({initialUserMsg:t,conversationInstructions:o,plugins:s,metadata:p?{selected_repository:p.name,selected_branch:p.branch??null,git_provider:p.gitProvider}:null,workingDirOverride:h,workspaceMode:v,parentConversationId:x,agentType:w,...A?{agentProfileId:A,agentProfileKind:O?.agent_kind}:{}}),M=j.app_conversation_id,N=s?.map(d)??[],P=N;if(M){let e=[];try{e=await _.ensureQueryData({queryKey:n.installed,queryFn:()=>g.listInstalledPlugins()})}catch{}let t=new Set(N.map(b)),r=e.filter(e=>e.enabled).map(e=>({source:e.source,ref:e.resolved_ref??null,repo_path:e.repo_path??null,name:e.name})).filter(e=>!t.has(b(e)));P=[...N,...r]}let F=A&&O?.agent_kind===`openhands`?O.llm_profile_ref:y?.active_profile??null;if(M&&(F||P.length)){let e=l(M);c(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:F??e?.active_profile??null,plugins:P.length?P:e?.plugins??null})}return{conversation_id:j.app_conversation_id?j.app_conversation_id:`task-${j.id}`,session_api_key:null,url:j.agent_server_url,task_id:j.id}},onSuccess:async(e,t)=>{v({conversationId:e.conversation_id,taskId:e.task_id,hasRepository:!!t.repository,gitProvider:t.repository?.gitProvider,hasWorkspace:!!t.workingDir,workspaceMode:t.workspaceMode,hasInitialQuery:!!t.query,agentType:t.agentType,hasParentConversation:!!t.parentConversationId,entryPoint:t.entryPoint}),_.invalidateQueries({queryKey:[`user`,`conversations`]}),_.invalidateQueries({queryKey:[`start-tasks`]})}})};export{v as a,y as i,S as n,b as o,_ as r,x as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./useMutation-6ZsQCqAn.js";import{t}from"./secrets-service-BtsgYSlj.js";var n=()=>e({mutationFn:({name:e,value:n,description:r})=>t.createSecret(e,n,r)});export{n as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{t as n}from"./useQuery-Bs5NFz2s.js";import{n as r}from"./active-backend-context-BZDG15C0.js";import{t as i}from"./secrets-service-BtsgYSlj.js";var a=e(t(),1),o=(e={})=>{let{nameContains:t,enabled:o=!0}=e,s=r(),c=n({queryKey:[`secrets`,s.backend.id,s.orgId],queryFn:i.getSecrets,enabled:o,staleTime:1e3*60*5,gcTime:1e3*60*15});return{data:(0,a.useMemo)(()=>{if(!c.data)return[];if(!t)return c.data;let e=t.toLowerCase();return c.data.filter(t=>t.name.toLowerCase().includes(e))},[c.data,t]),isLoading:c.isLoading,isError:c.isError,hasNextPage:!1,isFetchingNextPage:!1,fetchNextPage:()=>{},onLoadMore:()=>{},refetch:c.refetch}};export{o as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime-Cyuzqnbw.js";import{St as e,yt as t}from"./vendor-styling-Ck5D_A2Q.js";import{t as n}from"./useQuery-Bs5NFz2s.js";import{n as r}from"./active-backend-context-BZDG15C0.js";import{n as i}from"./use-tracking-Bhu7gk2y.js";var a=[`automation-health`];function o(){let e=r();return n({queryKey:[...a,e.backend.id,e.orgId],queryFn:()=>i.checkHealth(),staleTime:30*1e3,retry:!1})}e();var s=t(),c=e=>(0,s.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,stroke:`currentColor`,strokeWidth:2,...e,children:(0,s.jsx)(`path`,{strokeLinecap:`round`,strokeLinejoin:`round`,d:`M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z`})});function l(e){return!0}export{c as n,o as r,l as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./useQuery-Bs5NFz2s.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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{S as n,n as r,u as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{D as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{n as o}from"./navigation-context-CQZwH_tC.js";var s=e(t(),1);function c(e,t){let n=r(t);return u({filters:{...e,status:`pending`}},n).length}function l(e,t){return e.findAll(t.filters).map(e=>t.select?t.select(e):e.state)}function u(e={},t){let a=r(t).getMutationCache(),o=s.useRef(e),c=s.useRef(null);return c.current===null&&(c.current=l(a,e)),s.useEffect(()=>{o.current=e}),s.useSyncExternalStore(s.useCallback(e=>a.subscribe(()=>{let t=n(c.current,l(a,o.current));c.current!==t&&(c.current=t,i.schedule(e))}),[a]),()=>c.current,()=>c.current)}var d=a(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),f=()=>{let e=o(),t=c({mutationKey:[`create-conversation`]}),{isNavigating:n}=e;return t>0||n};export{d as n,c as r,f as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./useQuery-Bs5NFz2s.js";import{M as t,j as n,n as r}from"./active-backend-context-BZDG15C0.js";import{t as i}from"./profiles-service.api-BLr7FXec.js";function a(a={}){let{backend:o,orgId:s}=r();return e({queryKey:[...t.all,o.id,s],queryFn:i.listProfiles,...n,enabled:a.enabled??!0,meta:{disableToast:!0}})}export{a as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./useQuery-Bs5NFz2s.js";import{R as t,n}from"./active-backend-context-BZDG15C0.js";import{n as r}from"./use-tracking-Bhu7gk2y.js";function i(e,t){return t.filter(t=>!e.includes(t))}function a(e,t){if(!t.ready)return{supported:!1,unmet:[]};let n=[...i(t.features??[],e.requires.features??[]),...i(t.triggerKinds??[],Object.keys(e.setup.form.triggers??{}))];return{supported:n.length===0,unmet:n}}function o(){let{backend:i,orgId:a}=n();return e({queryKey:[...t.capabilities(),i.id,a],queryFn:()=>r.getCapabilities(),retry:!1,staleTime:1e3*60*5,meta:{disableToast:!0}})}function s(e){let t=o();if(t.isLoading)return{capabilities:null,supported:`unknown`,unmet:[],isLoading:!0};if(!t.data)return{capabilities:null,supported:`unknown`,unmet:[],isLoading:!1};let n=a(e,t.data);return{capabilities:t.data,supported:n.supported,unmet:n.unmet,isLoading:!1}}export{s as n,o as t};
|
package/build/assets/{use-onboarding-completion-CCE8OQgV.js → use-onboarding-completion-Bs8PcXik.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{C as n,M as r,b as i,f as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{C as n,M as r,b as i,f as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{t as o}from"./useQueries-xDrGlTO_.js";import{Dt as s,Et as c,Ot as l,Q as u,Rt as d,Y as f,kt as p,z as m,zt as h}from"./active-backend-context-BZDG15C0.js";import"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~hjcjabwg-DOPLJMH9.js";import{n as g,r as _}from"./organization-service.api-BztSy69u.js";var v=e(t(),1),y=1e4,b=4e3,x=`Invalid API key`,S=`API key required`,C=`Cloud API key or network issue`,w=`Logged out`;function T(e){return e===x}function E(e){return e===S}function D(e){return e===C}function O(e){return e.kind===`cloud`&&e.authMode!==`cookie`&&!e.apiKey.trim()}function k(e){return e===w}async function A(e){if(e.kind===`cloud`){if(e.authMode!==`cookie`&&!e.apiKey?.trim())throw Error(S);try{e.authMode===`cookie`?await g(e):await _(e)}catch(e){throw r.isAxiosError(e)&&e.response?.status===401||e instanceof n&&e.status===401?Error(w):d(e)?Error(C):e}return!0}try{let t=u({host:e.host,sessionApiKey:e.apiKey||null,timeout:b});await new a(t).getSettings(),m(await new i(t).getServerInfo())}catch(e){throw f(e,401)?Error(x):e}return!0}var j=2,M=300;function N(e){return e instanceof Error?e.message!==`Invalid API key`&&e.message!==`API key required`&&e.message!==`Logged out`:!0}async function P(e){for(let t=0;;t+=1)try{return await A(e)}catch(e){if(t>=j||!N(e))throw e;await new Promise(e=>{setTimeout(e,M)})}}function F(e,t={}){let{probeDisabledOnce:n=!1}=t,r=v.useSyncExternalStore(p,c,c),i=o({queries:e.map(e=>{let t=r[e.id],i=O(e),a=t?.disabled===!0,o=a&&e.kind===`cloud`&&h(t?.lastError),c=!i&&(!a||n||o);return{queryKey:[`backend-health`,e.id,e.kind,e.host,e.apiKey??``],queryFn:async()=>{try{let t=await P(e);return l(e.id),t}catch(t){throw s(e.id,t),t}},enabled:c,refetchInterval:a||i?!1:y,refetchIntervalInBackground:!1,refetchOnMount:a&&n?`always`:!0,refetchOnReconnect:!a&&!i,refetchOnWindowFocus:!a&&!i,retry:!1,staleTime:a?0:y,meta:{disableToast:!0}}})}),a={};return e.forEach((e,t)=>{let n=i[t],o=r[e.id],s=O(e),c=s?!1:o?.disabled===!0,l=s?0:o?.consecutiveFailures??0,u=s?S:o?.lastError??null,d;d=s||c?!1:n.isSuccess?!0:n.isError?!1:null,a[e.id]={isConnected:d,consecutiveFailures:l,lastError:u,disabled:c}}),a}var I=`openhands-onboarded`;function L(){if(typeof window>`u`)return!0;try{return window.localStorage.getItem(I)!==null}catch{return!0}}function R(){let[e,t]=v.useState(()=>L());return v.useEffect(()=>{let e=e=>{e.key===`openhands-onboarded`&&t(L())};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[]),{isCompleted:e,markCompleted:v.useCallback(()=>{try{window.localStorage.setItem(I,`1`)}catch{}t(!0)},[])}}export{E as a,T as i,D as n,F as o,k as r,R as t};
|
package/build/assets/{use-plugins-marketplace-CEiak69h.js → use-plugins-marketplace-BCuNLFsr.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,u as t}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{_ as e,u as t}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{t as n}from"./useQuery-Bs5NFz2s.js";import{Q as r,st as i}from"./active-backend-context-BZDG15C0.js";function a(e){let t=new Uint8Array(e,0,Math.min(e.byteLength,8e3));for(let e=0;e<t.length;e+=1)if(t[e]===0)return!0;return!1}var o=class{static async getPluginsMarketplace(){if(i().backend.kind===`cloud`)return[];try{return(await new t(r()).getPluginsMarketplace()).plugins??[]}catch{return[]}}static async getLocalPlugins(){if(i().backend.kind===`cloud`)return[];try{return(await new t(r()).getPlugins({load_user:!0,load_project:!1})).plugins??[]}catch{return[]}}static async getPluginFileContent(t,n){if(i().backend.kind===`cloud`)throw Error(`Reading plugin files is only available on a local backend.`);let o=await new e(r()).downloadFile(`${t}/${n}`);return a(o)?{kind:`binary`,text:null}:{kind:`text`,text:new TextDecoder(`utf-8`,{fatal:!1}).decode(o)}}},s=()=>n({queryKey:[`plugins-marketplace`],queryFn:()=>o.getPluginsMarketplace(),staleTime:1e3*60*10,refetchOnWindowFocus:!1});export{o as n,s as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{t}from"./useMutation-6ZsQCqAn.js";import{O as n}from"./active-backend-context-BZDG15C0.js";import{n as r}from"./use-agent-profiles-CPIc6wLH.js";function i(){let i=e();return t({mutationFn:({name:e,profile:t})=>r.saveProfile(e,t),onSuccess:async()=>{await i.invalidateQueries({queryKey:n.all})},meta:{disableToast:!0}})}export{i as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{n as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{t}from"./useMutation-6ZsQCqAn.js";import{L as n}from"./active-backend-context-BZDG15C0.js";import{t as r}from"./use-tracking-Bhu7gk2y.js";import{t as i}from"./settings-service.api-3yAUFcaP.js";import{n as a}from"./use-settings-C6ZxpBDX.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 r=t.agent_settings_diff,a=r?.llm;if(a&&typeof a.api_key==`string`){let e=a.api_key.trim();a.api_key=e===``?``:e}r&&Object.keys(r).length>0?t.agent_settings_diff=r: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 i.saveSettings(t)},s=(i=`personal`,{retry:s}={})=>{let{trackMcpConfigUpdated:c}=r(),l=e(),{data:u}=a(i);return t({...s===void 0?{}:{retry:s},mutationFn:async e=>{let t=e.mcp_config,n=u?.mcp_config;if(t&&n!==t){let e=Object.values(t);c({sseServersCount:e.filter(e=>e.transport===`sse`).length,stdioServersCount:e.filter(e=>e.transport===`stdio`).length})}await o(e)},onSuccess:async()=>{await l.invalidateQueries({queryKey:n.byScope(i)})},meta:{disableToast:!0}})};export{s as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{M as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{M as e}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{t}from"./useQuery-Bs5NFz2s.js";import{L as n,dt as r,n as i}from"./active-backend-context-BZDG15C0.js";import{t as a}from"./settings-DcNPxz0v.js";import{l as o,t as s}from"./settings-service.api-3yAUFcaP.js";var c=(...e)=>e.find(e=>typeof e==`boolean`),l=(...e)=>e.find(e=>typeof e==`number`),u=(...e)=>{for(let t of e){if(typeof t==`string`)return t;if(t===null)return null}},d=t=>{if(typeof t==`object`&&t&&`status`in t){let{status:e}=t;if(typeof e==`number`)return e}if(e.isAxiosError(t))return t.response?.status},f=(e,t)=>{let n=t.split(`.`),r=e;for(let e of n){if(typeof r!=`object`||!r)return;r=r[e]}return r},p=(e,t,n,r=!1)=>{let i=f(e,t);return typeof i==`string`&&(i.length>0||r)?i:n},m=e=>{let t=e.agent_settings??{},n={...a.conversation_settings??{},...e.conversation_settings??{}},r=t.mcp_config===void 0?e.mcp_config??a.mcp_config:o(t.mcp_config);return{...a,...e,llm_model:p(t,`llm.model`,a.llm_model),llm_base_url:p(t,`llm.base_url`,a.llm_base_url,!0),agent:p(t,`agent`,a.agent),llm_api_key:e.llm_api_key??null,llm_api_key_set:e.llm_api_key_set??!1,confirmation_mode:c(n.confirmation_mode)??a.confirmation_mode,security_analyzer:u(n.security_analyzer)??a.security_analyzer,max_iterations:l(n.max_iterations)??a.max_iterations,enable_default_condenser:c(f(t,`condenser.enabled`))??a.enable_default_condenser,condenser_max_size:l(f(t,`condenser.max_size`))??a.condenser_max_size,mcp_config:r,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}},h=async(e=`personal`)=>{if(e!==`personal`)throw Error(`Unsupported settings scope: ${e}`);return m(await s.getSettings())},g=(e=`personal`)=>{let o=i(),s=!r(o.backend),c=t({queryKey:[...n.byScope(e),o.backend.id,o.orgId],queryFn:()=>h(e),retry:(e,t)=>d(t)!==404,enabled:s,refetchOnWindowFocus:!1,staleTime:1e3*60*5,gcTime:1e3*60*15,meta:{disableToast:!0}});return s?d(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{g as n,d as t};
|
package/build/assets/{use-settings-nav-items-BlFL7YhM.js → use-settings-nav-items-Bqn69Ggw.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t,yt as n}from"./vendor-styling-Ck5D_A2Q.js";import{t as r}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~gxu4j2ea-D5DWZVc7.js";import{D as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kv3pap4j-B8i84bh4.js";import{D as a,H as o,dt as s,n as c,r as l,xt as u}from"./active-backend-context-IqOjobNK.js";import{t as d,z as f}from"./utils-zxEjKE70.js";import{t as p}from"./check-WAFXrrs_.js";import{a as m,i as h,n as g,o as _,r as v,t as y}from"./npm-DLckoeJc.js";import{t as b}from"./circle-check-CtnimJa8.js";import{r as x}from"./map-provider-Mx8mZuE-.js";import{t as S}from"./external-link-CgtpA_a1.js";import{t as C}from"./puzzle-BWLmN8z4.js";import{t as w}from"./refresh-cw-CXtFWpwv.js";import{t as T}from"./use-config-DKAMiI5R.js";import{t as E}from"./modal-backdrop-BSzNhM4r.js";import{n as D}from"./modal-body-gIe21fDv.js";import{r as O}from"./base-modal-Fnh6Uln9.js";import{t as k}from"./brand-button-swT1RyO0.js";import{a as A,f as j,o as M,u as N}from"./sidebar-layout-Bhi3hVcu.js";import{t as P}from"./modal-close-button-B6iOGYpI.js";import{t as F}from"./u-robot-BvAOA2ZD.js";import{r as I}from"./settings-utils-Ba7vel6T.js";var L=i(`app-window`,[[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}],[`path`,{d:`M10 4v4`,key:`pp8u80`}],[`path`,{d:`M2 8h20`,key:`d11cs7`}],[`path`,{d:`M6 4v4`,key:`1svtjw`}]]),R=i(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),z=i(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),B=i(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),V=e(t(),1),H=n(),U=2e3,W=[`npm`,`docker`];function G(e){return e===`npm`?f.SETTINGS$VERSION_NPM_RECOMMENDED:f.SETTINGS$VERSION_DOCKER}function K({tab:e}){return e===`npm`?(0,H.jsx)(y,{className:`size-4 shrink-0`,"aria-hidden":!0}):(0,H.jsx)(g,{className:`size-5 shrink-0`,"aria-hidden":!0})}function q(){let{t:e}=r(`openhands`),[t,n]=(0,V.useState)(`npm`),[i,a]=(0,V.useState)(!1),o=(0,V.useRef)(null),s=t===`npm`?m.npm:m.docker;(0,V.useEffect)(()=>()=>{o.current!==null&&window.clearTimeout(o.current)},[]),(0,V.useEffect)(()=>{a(!1),o.current!==null&&(window.clearTimeout(o.current),o.current=null)},[t]);let c=(0,V.useCallback)(()=>{navigator.clipboard?.writeText(s),a(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{a(!1),o.current=null},U)},[s]);return(0,H.jsxs)(`div`,{className:`w-full`,children:[(0,H.jsx)(`div`,{className:`flex justify-center`,children:W.map(r=>(0,H.jsxs)(`button`,{type:`button`,onClick:()=>n(r),className:d(`inline-flex items-center gap-1.5 px-3 pb-2 text-sm font-medium`,t===r?`border-b border-white text-white`:`text-[var(--oh-muted)] hover:text-white`),children:[(0,H.jsx)(K,{tab:r}),e(G(r))]},r))}),(0,H.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--oh-border)] bg-[var(--oh-surface-deep)] px-4 py-3`,children:[(0,H.jsx)(`code`,{"data-testid":t===`npm`?`agent-canvas-update-command-npm`:`agent-canvas-update-command-docker`,className:`min-w-0 flex-1 overflow-visible whitespace-nowrap font-mono text-sm text-white`,children:s}),(0,H.jsx)(`button`,{type:`button`,"data-testid":`copy-to-clipboard`,onClick:c,"aria-label":e(i?f.BUTTON$COPIED:f.SETTINGS$VERSION_COPY_COMMAND),disabled:i,className:`shrink-0 text-[var(--oh-muted)] hover:text-white disabled:hover:text-[var(--oh-muted)]`,children:i?(0,H.jsx)(p,{className:`size-4 text-[var(--oh-status-success)]`,"aria-hidden":!0}):(0,H.jsx)(x,{className:`size-4`,"aria-hidden":!0})})]})]})}function J({onClose:e,latestVersion:t,isPending:n,isFetching:i,updateAvailable:o,upToDate:s,onCheckForUpdates:c}){let{t:l}=r(`openhands`);return(0,H.jsx)(E,{onClose:e,children:(0,H.jsxs)(D,{width:`md`,className:`relative flex max-h-[80vh] flex-col items-start overflow-auto border border-[var(--oh-border)]`,testID:`agent-canvas-update-modal`,children:[(0,H.jsx)(P,{onClose:e,testId:`close-agent-canvas-update-modal`}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pr-10`,children:[(0,H.jsx)(O,{title:l(f.SETTINGS$APP_UPDATE_CARD_TITLE)}),(0,H.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs`,children:[(0,H.jsx)(`span`,{className:`text-[var(--oh-text-dim)]`,children:l(f.SETTINGS$APP_UPDATE_VERSION_LABEL)}),(0,H.jsx)(`span`,{className:`text-white`,children:a})]})]}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-3`,children:[(0,H.jsx)(k,{testId:`agent-canvas-update-check-button`,type:`button`,variant:`secondary`,className:`w-full`,isDisabled:i,"aria-busy":i,onClick:c,startContent:(0,H.jsx)(w,{className:d(`size-4`,i&&`animate-spin`),"aria-hidden":!0}),children:l(f.SETTINGS$APP_UPDATE_CHECK_BUTTON)}),(0,H.jsx)(`div`,{"data-testid":`agent-canvas-update-status`,className:`w-full`,children:n||i?(0,H.jsx)(`span`,{className:`text-xs text-[var(--oh-muted)]`,children:l(f.SETTINGS$APP_UPDATE_CHECKING)}):o?(0,H.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[#3B82F6]/30 bg-[#1E3A5F] px-3 py-2 text-xs text-[#3B82F6]`,children:[(0,H.jsx)(_,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,H.jsxs)(`span`,{children:[l(f.SETTINGS$APP_UPDATE_AVAILABLE_MESSAGE,{version:t}),` `,(0,H.jsxs)(`a`,{"data-testid":`agent-canvas-update-release-notes`,href:h,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 whitespace-nowrap font-medium text-white hover:text-[var(--oh-text)]`,children:[l(f.SETTINGS$VERSION_RELEASE_NOTES),(0,H.jsx)(S,{className:`size-3.5 shrink-0`,"aria-hidden":!0})]})]})]}):s?(0,H.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--oh-status-success)]/30 bg-[var(--oh-status-success)]/10 px-3 py-2 text-xs text-[var(--oh-status-success)]`,children:[(0,H.jsx)(b,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,H.jsxs)(`span`,{children:[l(f.SETTINGS$APP_UPDATE_LATEST_MESSAGE),` `,(0,H.jsxs)(`a`,{"data-testid":`agent-canvas-update-release-notes`,href:h,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 whitespace-nowrap font-medium text-white hover:text-[var(--oh-text)]`,children:[l(f.SETTINGS$VERSION_RELEASE_NOTES),(0,H.jsx)(S,{className:`size-3.5 shrink-0`,"aria-hidden":!0})]})]})]}):(0,H.jsx)(`span`,{className:`text-xs text-[var(--oh-muted)]`,children:l(f.SETTINGS$APP_UPDATE_CHECK_FAILED)})}),o?(0,H.jsxs)(`div`,{className:`flex w-full flex-col border-t border-[var(--oh-border)] pt-3`,children:[(0,H.jsx)(`span`,{className:`text-sm font-medium text-white`,children:l(f.SETTINGS$APP_UPDATE_HOW_TO_UPDATE)}),(0,H.jsx)(`span`,{className:`mt-1 mb-4 text-sm text-[var(--oh-text-dim)]`,children:l(f.SETTINGS$APP_UPDATE_RUN_COMMANDS)}),(0,H.jsx)(q,{})]}):null]})]})})}function Y({hideWhenUpToDate:e=!1}){let{t}=r(`openhands`),[n,i]=(0,V.useState)(!1),s=u()!==null,c=v({enabled:!s});if(s)return null;let l=c.data,p=l===void 0?null:o(l,a),m=p===1,h=p!==null&&p<=0;return e&&!m?null:(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`section`,{"data-testid":`agent-canvas-update-card`,children:(0,H.jsxs)(`button`,{type:`button`,onClick:()=>i(!0),"aria-haspopup":`dialog`,"data-testid":`agent-canvas-update-toggle`,className:`flex w-full cursor-pointer flex-col gap-1 rounded-md border border-[var(--oh-border)] bg-base-secondary px-3 py-2 text-left hover:bg-[var(--oh-surface-raised)]`,children:[(0,H.jsxs)(`span`,{className:`flex w-full items-center gap-2`,children:[(0,H.jsx)(`span`,{className:`flex-1 truncate text-sm font-semibold leading-5 text-white`,children:t(f.SETTINGS$APP_UPDATE_CARD_TITLE)}),p!==null&&(0,H.jsxs)(`span`,{"data-testid":`agent-canvas-update-badge`,className:d(`inline-flex shrink-0 items-center gap-1 text-[10px] font-medium leading-none`,m?`rounded-full border border-transparent bg-[#1E3A5F] px-1.5 py-0.5 text-[#3B82F6]`:`text-success`),children:[m?(0,H.jsx)(_,{className:`size-3 shrink-0`,"aria-hidden":!0}):(0,H.jsx)(b,{className:`size-3 shrink-0`,"aria-hidden":!0}),t(m?f.SETTINGS$APP_UPDATE_BADGE_UPDATE_AVAILABLE:f.SETTINGS$APP_UPDATE_BADGE_UP_TO_DATE)]})]}),(0,H.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs leading-5 text-[var(--oh-muted)]`,children:[(0,H.jsx)(`span`,{children:t(f.SETTINGS$APP_UPDATE_VERSION_LABEL)}),(0,H.jsx)(`span`,{className:`text-white`,children:a})]})]})}),n&&(0,H.jsx)(J,{onClose:()=>i(!1),latestVersion:l,isPending:c.isPending,isFetching:c.isFetching,updateAvailable:m,upToDate:h,onCheckForUpdates:()=>c.refetch()})]})}function X(){let{t:e}=r(`openhands`),{active:t}=l(),{backend:n}=t;return s(n)||n.kind!==`cloud`?null:(0,H.jsxs)(`a`,{"data-testid":`settings-cloud-link`,href:`${n.host.replace(/\/+$/,``)}/settings`,target:`_blank`,rel:`noopener noreferrer`,className:d(j({collapsed:!1}),M.idle),children:[(0,H.jsx)(`span`,{className:A,children:(0,H.jsx)(z,{className:`size-4 shrink-0`,"aria-hidden":!0})}),(0,H.jsx)(`span`,{className:d(N(!1),`flex-1`),children:e(f.SETTINGS$CLOUD_SETTINGS_LINK)}),(0,H.jsx)(S,{className:`size-4 shrink-0 text-[var(--oh-muted)]`,"aria-hidden":!0})]})}function Z(){let{t:e}=r(`openhands`),{active:t}=l(),{backend:n}=t;return s(n)||n.kind!==`cloud`?null:(0,H.jsxs)(`a`,{"data-testid":`settings-integrations-link`,href:`${n.host.replace(/\/+$/,``)}/settings/integrations`,target:`_blank`,rel:`noopener noreferrer`,className:d(j({collapsed:!1}),M.idle),children:[(0,H.jsx)(`span`,{className:A,children:(0,H.jsx)(C,{className:`size-4 shrink-0`,"aria-hidden":!0})}),(0,H.jsx)(`span`,{className:d(N(!1),`flex-1`),children:e(f.SETTINGS$INTEGRATIONS_SETTINGS_LINK)}),(0,H.jsx)(S,{className:`size-4 shrink-0 text-[var(--oh-muted)]`,"aria-hidden":!0})]})}var Q=[{icon:(0,H.jsx)(F,{width:16,height:16}),to:`/settings/agents`,text:`SETTINGS$NAV_AGENT`,subtitle:`SETTINGS$PAGE_AGENT_PROFILES_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,H.jsx)(`path`,{d:`M10 13C9.80222 13 9.60888 13.0586 9.44443 13.1685C9.27998 13.2784 9.15181 13.4346 9.07612 13.6173C9.00043 13.8 8.98063 14.0011 9.01921 14.1951C9.0578 14.3891 9.15304 14.5673 9.29289 14.7071C9.43275 14.847 9.61093 14.9422 9.80491 14.9808C9.99889 15.0194 10.2 14.9996 10.3827 14.9239C10.5654 14.8482 10.7216 14.72 10.8315 14.5556C10.9414 14.3911 11 14.1978 11 14C11 13.7348 10.8946 13.4804 10.7071 13.2929C10.5196 13.1054 10.2652 13 10 13ZM10 9C9.80222 9 9.60888 9.05865 9.44443 9.16853C9.27998 9.27841 9.15181 9.43459 9.07612 9.61732C9.00043 9.80004 8.98063 10.0011 9.01921 10.1951C9.0578 10.3891 9.15304 10.5673 9.29289 10.7071C9.43275 10.847 9.61093 10.9422 9.80491 10.9808C9.99889 11.0194 10.2 10.9996 10.3827 10.9239C10.5654 10.8482 10.7216 10.72 10.8315 10.5556C10.9414 10.3911 11 10.1978 11 10C11 9.73478 10.8946 9.48043 10.7071 9.29289C10.5196 9.10536 10.2652 9 10 9ZM14 9C13.8022 9 13.6089 9.05865 13.4444 9.16853C13.28 9.27841 13.1518 9.43459 13.0761 9.61732C13.0004 9.80004 12.9806 10.0011 13.0192 10.1951C13.0578 10.3891 13.153 10.5673 13.2929 10.7071C13.4327 10.847 13.6109 10.9422 13.8049 10.9808C13.9989 11.0194 14.2 10.9996 14.3827 10.9239C14.5654 10.8482 14.7216 10.72 14.8315 10.5556C14.9414 10.3911 15 10.1978 15 10C15 9.73478 14.8946 9.48043 14.7071 9.29289C14.5196 9.10536 14.2652 9 14 9ZM21 13C21.2652 13 21.5196 12.8946 21.7071 12.7071C21.8946 12.5196 22 12.2652 22 12C22 11.7348 21.8946 11.4804 21.7071 11.2929C21.5196 11.1054 21.2652 11 21 11H19V9H21C21.2652 9 21.5196 8.89464 21.7071 8.70711C21.8946 8.51957 22 8.26522 22 8C22 7.73478 21.8946 7.48043 21.7071 7.29289C21.5196 7.10536 21.2652 7 21 7H18.82C18.6707 6.5806 18.4299 6.19969 18.1151 5.8849C17.8003 5.57011 17.4194 5.32932 17 5.18V3C17 2.73478 16.8946 2.48043 16.7071 2.29289C16.5196 2.10536 16.2652 2 16 2C15.7348 2 15.4804 2.10536 15.2929 2.29289C15.1054 2.48043 15 2.73478 15 3V5H13V3C13 2.73478 12.8946 2.48043 12.7071 2.29289C12.5196 2.10536 12.2652 2 12 2C11.7348 2 11.4804 2.10536 11.2929 2.29289C11.1054 2.48043 11 2.73478 11 3V5H9V3C9 2.73478 8.89464 2.48043 8.70711 2.29289C8.51957 2.10536 8.26522 2 8 2C7.73478 2 7.48043 2.10536 7.29289 2.29289C7.10536 2.48043 7 2.73478 7 3V5.18C6.5806 5.32932 6.19969 5.57011 5.8849 5.8849C5.57011 6.19969 5.32932 6.5806 5.18 7H3C2.73478 7 2.48043 7.10536 2.29289 7.29289C2.10536 7.48043 2 7.73478 2 8C2 8.26522 2.10536 8.51957 2.29289 8.70711C2.48043 8.89464 2.73478 9 3 9H5V11H3C2.73478 11 2.48043 11.1054 2.29289 11.2929C2.10536 11.4804 2 11.7348 2 12C2 12.2652 2.10536 12.5196 2.29289 12.7071C2.48043 12.8946 2.73478 13 3 13H5V15H3C2.73478 15 2.48043 15.1054 2.29289 15.2929C2.10536 15.4804 2 15.7348 2 16C2 16.2652 2.10536 16.5196 2.29289 16.7071C2.48043 16.8946 2.73478 17 3 17H5.18C5.32932 17.4194 5.57011 17.8003 5.8849 18.1151C6.19969 18.4299 6.5806 18.6707 7 18.82V21C7 21.2652 7.10536 21.5196 7.29289 21.7071C7.48043 21.8946 7.73478 22 8 22C8.26522 22 8.51957 21.8946 8.70711 21.7071C8.89464 21.5196 9 21.2652 9 21V19H11V21C11 21.2652 11.1054 21.5196 11.2929 21.7071C11.4804 21.8946 11.7348 22 12 22C12.2652 22 12.5196 21.8946 12.7071 21.7071C12.8946 21.5196 13 21.2652 13 21V19H15V21C15 21.2652 15.1054 21.5196 15.2929 21.7071C15.4804 21.8946 15.7348 22 16 22C16.2652 22 16.5196 21.8946 16.7071 21.7071C16.8946 21.5196 17 21.2652 17 21V18.82C17.4194 18.6707 17.8003 18.4299 18.1151 18.1151C18.4299 17.8003 18.6707 17.4194 18.82 17H21C21.2652 17 21.5196 16.8946 21.7071 16.7071C21.8946 16.5196 22 16.2652 22 16C22 15.7348 21.8946 15.4804 21.7071 15.2929C21.5196 15.1054 21.2652 15 21 15H19V13H21ZM17 16C17 16.2652 16.8946 16.5196 16.7071 16.7071C16.5196 16.8946 16.2652 17 16 17H8C7.73478 17 7.48043 16.8946 7.29289 16.7071C7.10536 16.5196 7 16.2652 7 16V8C7 7.73478 7.10536 7.48043 7.29289 7.29289C7.48043 7.10536 7.73478 7 8 7H16C16.2652 7 16.5196 7.10536 16.7071 7.29289C16.8946 7.48043 17 7.73478 17 8V16ZM14 13C13.8022 13 13.6089 13.0586 13.4444 13.1685C13.28 13.2784 13.1518 13.4346 13.0761 13.6173C13.0004 13.8 12.9806 14.0011 13.0192 14.1951C13.0578 14.3891 13.153 14.5673 13.2929 14.7071C13.4327 14.847 13.6109 14.9422 13.8049 14.9808C13.9989 15.0194 14.2 14.9996 14.3827 14.9239C14.5654 14.8482 14.7216 14.72 14.8315 14.5556C14.9414 14.3911 15 14.1978 15 14C15 13.7348 14.8946 13.4804 14.7071 13.2929C14.5196 13.1054 14.2652 13 14 13Z`,fill:`currentColor`})}),{width:16,height:16}),to:`/settings/llm`,text:`SETTINGS$NAV_LLM`,subtitle:`SETTINGS$PAGE_LLM_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsxs)(`svg`,{id:`Layer_1`,xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 22.3 18.66`,...e,children:[(0,H.jsx)(`defs`,{children:(0,H.jsx)(`style`,{children:`
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t,yt as n}from"./vendor-styling-Ck5D_A2Q.js";import{t as r}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz8NQve5.js";import{D as i}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{E as a,St as o,V as s,dt as c,n as l,r as u}from"./active-backend-context-BZDG15C0.js";import{t as d,z as f}from"./utils-DUD5ScdA.js";import{t as p}from"./check-DSuS-lyr.js";import{a as m,i as h,n as g,o as _,r as v,t as y}from"./npm-CHVHV1MC.js";import{t as b}from"./circle-check-CG5-NPw7.js";import{r as x}from"./map-provider-BK4HnqYz.js";import{t as S}from"./external-link-C0UpBgsE.js";import{t as C}from"./puzzle-Bt2B1rzf.js";import{t as w}from"./refresh-cw-nmcesifB.js";import{t as T}from"./use-config-C3PO4TBw.js";import{t as E}from"./modal-backdrop-BSzNhM4r.js";import{n as D}from"./modal-body-BdKfD3Hl.js";import{r as O}from"./base-modal-BbjycA8X.js";import{t as k}from"./brand-button-Blxv5nww.js";import{a as A,f as j,o as M,u as N}from"./sidebar-layout-lrfPooIB.js";import{t as P}from"./modal-close-button-objukxk_.js";import{t as F}from"./u-robot-BvAOA2ZD.js";import{r as I}from"./settings-utils-CxjtCSB3.js";var L=i(`app-window`,[[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}],[`path`,{d:`M10 4v4`,key:`pp8u80`}],[`path`,{d:`M2 8h20`,key:`d11cs7`}],[`path`,{d:`M6 4v4`,key:`1svtjw`}]]),R=i(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),z=i(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),B=i(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),V=e(t(),1),H=n(),U=2e3,W=[`npm`,`docker`];function G(e){return e===`npm`?f.SETTINGS$VERSION_NPM_RECOMMENDED:f.SETTINGS$VERSION_DOCKER}function K({tab:e}){return e===`npm`?(0,H.jsx)(y,{className:`size-4 shrink-0`,"aria-hidden":!0}):(0,H.jsx)(g,{className:`size-5 shrink-0`,"aria-hidden":!0})}function q(){let{t:e}=r(`openhands`),[t,n]=(0,V.useState)(`npm`),[i,a]=(0,V.useState)(!1),o=(0,V.useRef)(null),s=t===`npm`?m.npm:m.docker;(0,V.useEffect)(()=>()=>{o.current!==null&&window.clearTimeout(o.current)},[]),(0,V.useEffect)(()=>{a(!1),o.current!==null&&(window.clearTimeout(o.current),o.current=null)},[t]);let c=(0,V.useCallback)(()=>{navigator.clipboard?.writeText(s),a(!0),o.current!==null&&window.clearTimeout(o.current),o.current=window.setTimeout(()=>{a(!1),o.current=null},U)},[s]);return(0,H.jsxs)(`div`,{className:`w-full`,children:[(0,H.jsx)(`div`,{className:`flex justify-center`,children:W.map(r=>(0,H.jsxs)(`button`,{type:`button`,onClick:()=>n(r),className:d(`inline-flex items-center gap-1.5 px-3 pb-2 text-sm font-medium`,t===r?`border-b border-white text-white`:`text-[var(--oh-muted)] hover:text-white`),children:[(0,H.jsx)(K,{tab:r}),e(G(r))]},r))}),(0,H.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--oh-border)] bg-[var(--oh-surface-deep)] px-4 py-3`,children:[(0,H.jsx)(`code`,{"data-testid":t===`npm`?`agent-canvas-update-command-npm`:`agent-canvas-update-command-docker`,className:`min-w-0 flex-1 overflow-visible whitespace-nowrap font-mono text-sm text-white`,children:s}),(0,H.jsx)(`button`,{type:`button`,"data-testid":`copy-to-clipboard`,onClick:c,"aria-label":e(i?f.BUTTON$COPIED:f.SETTINGS$VERSION_COPY_COMMAND),disabled:i,className:`shrink-0 text-[var(--oh-muted)] hover:text-white disabled:hover:text-[var(--oh-muted)]`,children:i?(0,H.jsx)(p,{className:`size-4 text-[var(--oh-status-success)]`,"aria-hidden":!0}):(0,H.jsx)(x,{className:`size-4`,"aria-hidden":!0})})]})]})}function J({onClose:e,latestVersion:t,isPending:n,isFetching:i,updateAvailable:o,upToDate:s,onCheckForUpdates:c}){let{t:l}=r(`openhands`);return(0,H.jsx)(E,{onClose:e,children:(0,H.jsxs)(D,{width:`md`,className:`relative flex max-h-[80vh] flex-col items-start overflow-auto border border-[var(--oh-border)]`,testID:`agent-canvas-update-modal`,children:[(0,H.jsx)(P,{onClose:e,testId:`close-agent-canvas-update-modal`}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-2 pr-10`,children:[(0,H.jsx)(O,{title:l(f.SETTINGS$APP_UPDATE_CARD_TITLE)}),(0,H.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs`,children:[(0,H.jsx)(`span`,{className:`text-[var(--oh-text-dim)]`,children:l(f.SETTINGS$APP_UPDATE_VERSION_LABEL)}),(0,H.jsx)(`span`,{className:`text-white`,children:a})]})]}),(0,H.jsxs)(`div`,{className:`flex w-full flex-col gap-3`,children:[(0,H.jsx)(k,{testId:`agent-canvas-update-check-button`,type:`button`,variant:`secondary`,className:`w-full`,isDisabled:i,"aria-busy":i,onClick:c,startContent:(0,H.jsx)(w,{className:d(`size-4`,i&&`animate-spin`),"aria-hidden":!0}),children:l(f.SETTINGS$APP_UPDATE_CHECK_BUTTON)}),(0,H.jsx)(`div`,{"data-testid":`agent-canvas-update-status`,className:`w-full`,children:n||i?(0,H.jsx)(`span`,{className:`text-xs text-[var(--oh-muted)]`,children:l(f.SETTINGS$APP_UPDATE_CHECKING)}):o?(0,H.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[#3B82F6]/30 bg-[#1E3A5F] px-3 py-2 text-xs text-[#3B82F6]`,children:[(0,H.jsx)(_,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,H.jsxs)(`span`,{children:[l(f.SETTINGS$APP_UPDATE_AVAILABLE_MESSAGE,{version:t}),` `,(0,H.jsxs)(`a`,{"data-testid":`agent-canvas-update-release-notes`,href:h,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 whitespace-nowrap font-medium text-white hover:text-[var(--oh-text)]`,children:[l(f.SETTINGS$VERSION_RELEASE_NOTES),(0,H.jsx)(S,{className:`size-3.5 shrink-0`,"aria-hidden":!0})]})]})]}):s?(0,H.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--oh-status-success)]/30 bg-[var(--oh-status-success)]/10 px-3 py-2 text-xs text-[var(--oh-status-success)]`,children:[(0,H.jsx)(b,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,H.jsxs)(`span`,{children:[l(f.SETTINGS$APP_UPDATE_LATEST_MESSAGE),` `,(0,H.jsxs)(`a`,{"data-testid":`agent-canvas-update-release-notes`,href:h,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 whitespace-nowrap font-medium text-white hover:text-[var(--oh-text)]`,children:[l(f.SETTINGS$VERSION_RELEASE_NOTES),(0,H.jsx)(S,{className:`size-3.5 shrink-0`,"aria-hidden":!0})]})]})]}):(0,H.jsx)(`span`,{className:`text-xs text-[var(--oh-muted)]`,children:l(f.SETTINGS$APP_UPDATE_CHECK_FAILED)})}),o?(0,H.jsxs)(`div`,{className:`flex w-full flex-col border-t border-[var(--oh-border)] pt-3`,children:[(0,H.jsx)(`span`,{className:`text-sm font-medium text-white`,children:l(f.SETTINGS$APP_UPDATE_HOW_TO_UPDATE)}),(0,H.jsx)(`span`,{className:`mt-1 mb-4 text-sm text-[var(--oh-text-dim)]`,children:l(f.SETTINGS$APP_UPDATE_RUN_COMMANDS)}),(0,H.jsx)(q,{})]}):null]})]})})}function Y({hideWhenUpToDate:e=!1}){let{t}=r(`openhands`),[n,i]=(0,V.useState)(!1),c=o()!==null,l=v({enabled:!c});if(c)return null;let u=l.data,p=u===void 0?null:s(u,a),m=p===1,h=p!==null&&p<=0;return e&&!m?null:(0,H.jsxs)(H.Fragment,{children:[(0,H.jsx)(`section`,{"data-testid":`agent-canvas-update-card`,children:(0,H.jsxs)(`button`,{type:`button`,onClick:()=>i(!0),"aria-haspopup":`dialog`,"data-testid":`agent-canvas-update-toggle`,className:`flex w-full cursor-pointer flex-col gap-1 rounded-md border border-[var(--oh-border)] bg-base-secondary px-3 py-2 text-left hover:bg-[var(--oh-surface-raised)]`,children:[(0,H.jsxs)(`span`,{className:`flex w-full items-center gap-2`,children:[(0,H.jsx)(`span`,{className:`flex-1 truncate text-sm font-semibold leading-5 text-white`,children:t(f.SETTINGS$APP_UPDATE_CARD_TITLE)}),p!==null&&(0,H.jsxs)(`span`,{"data-testid":`agent-canvas-update-badge`,className:d(`inline-flex shrink-0 items-center gap-1 text-[10px] font-medium leading-none`,m?`rounded-full border border-transparent bg-[#1E3A5F] px-1.5 py-0.5 text-[#3B82F6]`:`text-success`),children:[m?(0,H.jsx)(_,{className:`size-3 shrink-0`,"aria-hidden":!0}):(0,H.jsx)(b,{className:`size-3 shrink-0`,"aria-hidden":!0}),t(m?f.SETTINGS$APP_UPDATE_BADGE_UPDATE_AVAILABLE:f.SETTINGS$APP_UPDATE_BADGE_UP_TO_DATE)]})]}),(0,H.jsxs)(`span`,{className:`flex items-center gap-1.5 text-xs leading-5 text-[var(--oh-muted)]`,children:[(0,H.jsx)(`span`,{children:t(f.SETTINGS$APP_UPDATE_VERSION_LABEL)}),(0,H.jsx)(`span`,{className:`text-white`,children:a})]})]})}),n&&(0,H.jsx)(J,{onClose:()=>i(!1),latestVersion:u,isPending:l.isPending,isFetching:l.isFetching,updateAvailable:m,upToDate:h,onCheckForUpdates:()=>l.refetch()})]})}function X(){let{t:e}=r(`openhands`),{active:t}=u(),{backend:n}=t;return c(n)||n.kind!==`cloud`?null:(0,H.jsxs)(`a`,{"data-testid":`settings-cloud-link`,href:`${n.host.replace(/\/+$/,``)}/settings`,target:`_blank`,rel:`noopener noreferrer`,className:d(j({collapsed:!1}),M.idle),children:[(0,H.jsx)(`span`,{className:A,children:(0,H.jsx)(z,{className:`size-4 shrink-0`,"aria-hidden":!0})}),(0,H.jsx)(`span`,{className:d(N(!1),`flex-1`),children:e(f.SETTINGS$CLOUD_SETTINGS_LINK)}),(0,H.jsx)(S,{className:`size-4 shrink-0 text-[var(--oh-muted)]`,"aria-hidden":!0})]})}function Z(){let{t:e}=r(`openhands`),{active:t}=u(),{backend:n}=t;return c(n)||n.kind!==`cloud`?null:(0,H.jsxs)(`a`,{"data-testid":`settings-integrations-link`,href:`${n.host.replace(/\/+$/,``)}/settings/integrations`,target:`_blank`,rel:`noopener noreferrer`,className:d(j({collapsed:!1}),M.idle),children:[(0,H.jsx)(`span`,{className:A,children:(0,H.jsx)(C,{className:`size-4 shrink-0`,"aria-hidden":!0})}),(0,H.jsx)(`span`,{className:d(N(!1),`flex-1`),children:e(f.SETTINGS$INTEGRATIONS_SETTINGS_LINK)}),(0,H.jsx)(S,{className:`size-4 shrink-0 text-[var(--oh-muted)]`,"aria-hidden":!0})]})}var Q=[{icon:(0,H.jsx)(F,{width:16,height:16}),to:`/settings/agents`,text:`SETTINGS$NAV_AGENT`,subtitle:`SETTINGS$PAGE_AGENT_PROFILES_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,H.jsx)(`path`,{d:`M10 13C9.80222 13 9.60888 13.0586 9.44443 13.1685C9.27998 13.2784 9.15181 13.4346 9.07612 13.6173C9.00043 13.8 8.98063 14.0011 9.01921 14.1951C9.0578 14.3891 9.15304 14.5673 9.29289 14.7071C9.43275 14.847 9.61093 14.9422 9.80491 14.9808C9.99889 15.0194 10.2 14.9996 10.3827 14.9239C10.5654 14.8482 10.7216 14.72 10.8315 14.5556C10.9414 14.3911 11 14.1978 11 14C11 13.7348 10.8946 13.4804 10.7071 13.2929C10.5196 13.1054 10.2652 13 10 13ZM10 9C9.80222 9 9.60888 9.05865 9.44443 9.16853C9.27998 9.27841 9.15181 9.43459 9.07612 9.61732C9.00043 9.80004 8.98063 10.0011 9.01921 10.1951C9.0578 10.3891 9.15304 10.5673 9.29289 10.7071C9.43275 10.847 9.61093 10.9422 9.80491 10.9808C9.99889 11.0194 10.2 10.9996 10.3827 10.9239C10.5654 10.8482 10.7216 10.72 10.8315 10.5556C10.9414 10.3911 11 10.1978 11 10C11 9.73478 10.8946 9.48043 10.7071 9.29289C10.5196 9.10536 10.2652 9 10 9ZM14 9C13.8022 9 13.6089 9.05865 13.4444 9.16853C13.28 9.27841 13.1518 9.43459 13.0761 9.61732C13.0004 9.80004 12.9806 10.0011 13.0192 10.1951C13.0578 10.3891 13.153 10.5673 13.2929 10.7071C13.4327 10.847 13.6109 10.9422 13.8049 10.9808C13.9989 11.0194 14.2 10.9996 14.3827 10.9239C14.5654 10.8482 14.7216 10.72 14.8315 10.5556C14.9414 10.3911 15 10.1978 15 10C15 9.73478 14.8946 9.48043 14.7071 9.29289C14.5196 9.10536 14.2652 9 14 9ZM21 13C21.2652 13 21.5196 12.8946 21.7071 12.7071C21.8946 12.5196 22 12.2652 22 12C22 11.7348 21.8946 11.4804 21.7071 11.2929C21.5196 11.1054 21.2652 11 21 11H19V9H21C21.2652 9 21.5196 8.89464 21.7071 8.70711C21.8946 8.51957 22 8.26522 22 8C22 7.73478 21.8946 7.48043 21.7071 7.29289C21.5196 7.10536 21.2652 7 21 7H18.82C18.6707 6.5806 18.4299 6.19969 18.1151 5.8849C17.8003 5.57011 17.4194 5.32932 17 5.18V3C17 2.73478 16.8946 2.48043 16.7071 2.29289C16.5196 2.10536 16.2652 2 16 2C15.7348 2 15.4804 2.10536 15.2929 2.29289C15.1054 2.48043 15 2.73478 15 3V5H13V3C13 2.73478 12.8946 2.48043 12.7071 2.29289C12.5196 2.10536 12.2652 2 12 2C11.7348 2 11.4804 2.10536 11.2929 2.29289C11.1054 2.48043 11 2.73478 11 3V5H9V3C9 2.73478 8.89464 2.48043 8.70711 2.29289C8.51957 2.10536 8.26522 2 8 2C7.73478 2 7.48043 2.10536 7.29289 2.29289C7.10536 2.48043 7 2.73478 7 3V5.18C6.5806 5.32932 6.19969 5.57011 5.8849 5.8849C5.57011 6.19969 5.32932 6.5806 5.18 7H3C2.73478 7 2.48043 7.10536 2.29289 7.29289C2.10536 7.48043 2 7.73478 2 8C2 8.26522 2.10536 8.51957 2.29289 8.70711C2.48043 8.89464 2.73478 9 3 9H5V11H3C2.73478 11 2.48043 11.1054 2.29289 11.2929C2.10536 11.4804 2 11.7348 2 12C2 12.2652 2.10536 12.5196 2.29289 12.7071C2.48043 12.8946 2.73478 13 3 13H5V15H3C2.73478 15 2.48043 15.1054 2.29289 15.2929C2.10536 15.4804 2 15.7348 2 16C2 16.2652 2.10536 16.5196 2.29289 16.7071C2.48043 16.8946 2.73478 17 3 17H5.18C5.32932 17.4194 5.57011 17.8003 5.8849 18.1151C6.19969 18.4299 6.5806 18.6707 7 18.82V21C7 21.2652 7.10536 21.5196 7.29289 21.7071C7.48043 21.8946 7.73478 22 8 22C8.26522 22 8.51957 21.8946 8.70711 21.7071C8.89464 21.5196 9 21.2652 9 21V19H11V21C11 21.2652 11.1054 21.5196 11.2929 21.7071C11.4804 21.8946 11.7348 22 12 22C12.2652 22 12.5196 21.8946 12.7071 21.7071C12.8946 21.5196 13 21.2652 13 21V19H15V21C15 21.2652 15.1054 21.5196 15.2929 21.7071C15.4804 21.8946 15.7348 22 16 22C16.2652 22 16.5196 21.8946 16.7071 21.7071C16.8946 21.5196 17 21.2652 17 21V18.82C17.4194 18.6707 17.8003 18.4299 18.1151 18.1151C18.4299 17.8003 18.6707 17.4194 18.82 17H21C21.2652 17 21.5196 16.8946 21.7071 16.7071C21.8946 16.5196 22 16.2652 22 16C22 15.7348 21.8946 15.4804 21.7071 15.2929C21.5196 15.1054 21.2652 15 21 15H19V13H21ZM17 16C17 16.2652 16.8946 16.5196 16.7071 16.7071C16.5196 16.8946 16.2652 17 16 17H8C7.73478 17 7.48043 16.8946 7.29289 16.7071C7.10536 16.5196 7 16.2652 7 16V8C7 7.73478 7.10536 7.48043 7.29289 7.29289C7.48043 7.10536 7.73478 7 8 7H16C16.2652 7 16.5196 7.10536 16.7071 7.29289C16.8946 7.48043 17 7.73478 17 8V16ZM14 13C13.8022 13 13.6089 13.0586 13.4444 13.1685C13.28 13.2784 13.1518 13.4346 13.0761 13.6173C13.0004 13.8 12.9806 14.0011 13.0192 14.1951C13.0578 14.3891 13.153 14.5673 13.2929 14.7071C13.4327 14.847 13.6109 14.9422 13.8049 14.9808C13.9989 15.0194 14.2 14.9996 14.3827 14.9239C14.5654 14.8482 14.7216 14.72 14.8315 14.5556C14.9414 14.3911 15 14.1978 15 14C15 13.7348 14.8946 13.4804 14.7071 13.2929C14.5196 13.1054 14.2652 13 14 13Z`,fill:`currentColor`})}),{width:16,height:16}),to:`/settings/llm`,text:`SETTINGS$NAV_LLM`,subtitle:`SETTINGS$PAGE_LLM_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsxs)(`svg`,{id:`Layer_1`,xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 22.3 18.66`,...e,children:[(0,H.jsx)(`defs`,{children:(0,H.jsx)(`style`,{children:`
|
|
2
2
|
.st0 {
|
|
3
3
|
stroke-miterlimit: 10;
|
|
4
4
|
}
|
|
@@ -13,4 +13,4 @@ import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t,yt as n}from".
|
|
|
13
13
|
.st1 {
|
|
14
14
|
stroke-linejoin: round;
|
|
15
15
|
}
|
|
16
|
-
`})}),(0,H.jsx)(`path`,{className:`st1`,d:`M15.15,12.54h3.26c1.58,0,2.93-1.29,2.9-2.88-.03-1.53-1.28-2.77-2.82-2.77-.04,0-.08,0-.11,0,.13-.44.16-.92.04-1.43-.27-1.17-1.27-2.05-2.46-2.17-.74-.07-1.43.14-1.97.55,0,0,0-.02,0-.03,0-1.56-1.26-2.82-2.82-2.82s-2.82,1.26-2.82,2.82c0,0,0,.02,0,.03-.54-.4-1.23-.62-1.97-.55-1.19.12-2.19,1-2.46,2.17-.12.5-.09.99.04,1.43-.04,0-.08,0-.11,0-1.56,0-2.82,1.26-2.82,2.82s1.26,2.82,2.82,2.82l1.29.03c.41,0,.74.34.74.75v1.85c0,1.38,1.12,2.5,2.5,2.5h.29c1.44,0,2.6-1.17,2.6-2.6V6.49`}),(0,H.jsx)(`polyline`,{className:`st0`,points:`7.97 9.74 11.22 6.49 14.47 9.74`})]}),{width:16,height:16}),to:`/settings/condenser`,text:`SETTINGS$NAV_CONDENSER`,subtitle:`SETTINGS$PAGE_CONDENSER_SUBLINE`},{icon:(0,H.jsx)(R,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/agent-context`,text:`SETTINGS$NAV_AGENT_CONTEXT`,subtitle:`SETTINGS$PAGE_AGENT_CONTEXT_SUBLINE`},{icon:(0,H.jsx)(B,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/verification`,text:`SETTINGS$NAV_VERIFICATION`,subtitle:`SETTINGS$PAGE_VERIFICATION_SUBLINE`},{icon:(0,H.jsx)(L,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/app`,text:`SETTINGS$NAV_APPLICATION`,subtitle:`SETTINGS$PAGE_APPLICATION_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,H.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M17.0265 1.63647C18.2362 1.88301 19.3557 2.45458 20.2649 3.28974C21.1741 4.12489 21.8384 5.19205 22.1865 6.37647C22.509 7.46247 22.557 8.61147 22.326 9.72147C21.9921 11.2422 21.1518 12.6046 19.9428 13.5856C18.7337 14.5666 17.2274 15.1081 15.6705 15.1215C15.0135 15.1215 14.3595 15.027 13.731 14.8365L12.531 16.2435L11.9625 16.506H10.5V18.756L9.75 19.506H7.5V21.756L6.75 22.506H2.25L1.5 21.756V18.2955L1.719 17.766L9.18 10.305C8.96826 9.62297 8.86698 8.91148 8.88 8.19747C8.89367 7.19853 9.12754 6.2149 9.56495 5.3167C10.0024 4.4185 10.6325 3.62786 11.4105 3.00113C12.1885 2.3744 13.0952 1.92702 14.0659 1.69088C15.0367 1.45473 16.0475 1.43565 17.0265 1.63497V1.63647ZM19.0035 12.4365C19.9458 11.6734 20.6011 10.6131 20.862 9.42897L20.868 9.43647C21.0538 8.57068 21.0204 7.67216 20.7707 6.82258C20.521 5.97299 20.063 5.19926 19.4383 4.57169C18.8135 3.94412 18.0419 3.4826 17.1934 3.22908C16.345 2.97555 15.4466 2.93804 14.58 3.11997C13.4112 3.3794 12.3627 4.0224 11.6016 4.94661C10.8405 5.87082 10.4105 7.02309 10.38 8.21997C10.365 8.90397 10.485 9.58197 10.7385 10.215L10.5735 11.0295L3 18.606V21.006H6V18.756L6.75 18.006H9V15.756L9.75 15.006H11.6175L12.9315 13.482L13.773 13.272C14.3796 13.509 15.0253 13.6301 15.6765 13.629C16.8885 13.6197 18.0615 13.1992 19.0035 12.4365ZM17.7465 8.33847C17.8648 8.17505 17.9489 7.98945 17.9937 7.79277C18.0386 7.59609 18.0434 7.39239 18.0077 7.19384C17.972 6.99528 17.8967 6.80597 17.7861 6.63721C17.6756 6.46845 17.5322 6.32373 17.3644 6.21169C17.1967 6.09965 17.008 6.0226 16.8098 5.98514C16.6116 5.94769 16.4078 5.95061 16.2108 5.99372C16.0137 6.03683 15.8273 6.11925 15.6629 6.23605C15.4984 6.35285 15.3592 6.50162 15.2535 6.67347C15.0503 7.00406 14.983 7.40054 15.066 7.77963C15.1489 8.15872 15.3755 8.49093 15.6982 8.70645C16.0209 8.92198 16.4146 9.00405 16.7966 8.93543C17.1785 8.86682 17.519 8.65285 17.7465 8.33847Z`,fill:`currentColor`})}),{width:16,height:16}),to:`/settings/secrets`,text:`SETTINGS$NAV_SECRETS`,subtitle:`SETTINGS$PAGE_SECRETS_SUBLINE`}];function $(){let{data:e}=T(),{backend:t}=
|
|
16
|
+
`})}),(0,H.jsx)(`path`,{className:`st1`,d:`M15.15,12.54h3.26c1.58,0,2.93-1.29,2.9-2.88-.03-1.53-1.28-2.77-2.82-2.77-.04,0-.08,0-.11,0,.13-.44.16-.92.04-1.43-.27-1.17-1.27-2.05-2.46-2.17-.74-.07-1.43.14-1.97.55,0,0,0-.02,0-.03,0-1.56-1.26-2.82-2.82-2.82s-2.82,1.26-2.82,2.82c0,0,0,.02,0,.03-.54-.4-1.23-.62-1.97-.55-1.19.12-2.19,1-2.46,2.17-.12.5-.09.99.04,1.43-.04,0-.08,0-.11,0-1.56,0-2.82,1.26-2.82,2.82s1.26,2.82,2.82,2.82l1.29.03c.41,0,.74.34.74.75v1.85c0,1.38,1.12,2.5,2.5,2.5h.29c1.44,0,2.6-1.17,2.6-2.6V6.49`}),(0,H.jsx)(`polyline`,{className:`st0`,points:`7.97 9.74 11.22 6.49 14.47 9.74`})]}),{width:16,height:16}),to:`/settings/condenser`,text:`SETTINGS$NAV_CONDENSER`,subtitle:`SETTINGS$PAGE_CONDENSER_SUBLINE`},{icon:(0,H.jsx)(R,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/agent-context`,text:`SETTINGS$NAV_AGENT_CONTEXT`,subtitle:`SETTINGS$PAGE_AGENT_CONTEXT_SUBLINE`},{icon:(0,H.jsx)(B,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/verification`,text:`SETTINGS$NAV_VERIFICATION`,subtitle:`SETTINGS$PAGE_VERIFICATION_SUBLINE`},{icon:(0,H.jsx)(L,{className:`size-4`,strokeWidth:2,"aria-hidden":!0}),to:`/settings/app`,text:`SETTINGS$NAV_APPLICATION`,subtitle:`SETTINGS$PAGE_APPLICATION_SUBLINE`},{icon:(0,H.jsx)(e=>(0,H.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,...e,children:(0,H.jsx)(`path`,{fillRule:`evenodd`,clipRule:`evenodd`,d:`M17.0265 1.63647C18.2362 1.88301 19.3557 2.45458 20.2649 3.28974C21.1741 4.12489 21.8384 5.19205 22.1865 6.37647C22.509 7.46247 22.557 8.61147 22.326 9.72147C21.9921 11.2422 21.1518 12.6046 19.9428 13.5856C18.7337 14.5666 17.2274 15.1081 15.6705 15.1215C15.0135 15.1215 14.3595 15.027 13.731 14.8365L12.531 16.2435L11.9625 16.506H10.5V18.756L9.75 19.506H7.5V21.756L6.75 22.506H2.25L1.5 21.756V18.2955L1.719 17.766L9.18 10.305C8.96826 9.62297 8.86698 8.91148 8.88 8.19747C8.89367 7.19853 9.12754 6.2149 9.56495 5.3167C10.0024 4.4185 10.6325 3.62786 11.4105 3.00113C12.1885 2.3744 13.0952 1.92702 14.0659 1.69088C15.0367 1.45473 16.0475 1.43565 17.0265 1.63497V1.63647ZM19.0035 12.4365C19.9458 11.6734 20.6011 10.6131 20.862 9.42897L20.868 9.43647C21.0538 8.57068 21.0204 7.67216 20.7707 6.82258C20.521 5.97299 20.063 5.19926 19.4383 4.57169C18.8135 3.94412 18.0419 3.4826 17.1934 3.22908C16.345 2.97555 15.4466 2.93804 14.58 3.11997C13.4112 3.3794 12.3627 4.0224 11.6016 4.94661C10.8405 5.87082 10.4105 7.02309 10.38 8.21997C10.365 8.90397 10.485 9.58197 10.7385 10.215L10.5735 11.0295L3 18.606V21.006H6V18.756L6.75 18.006H9V15.756L9.75 15.006H11.6175L12.9315 13.482L13.773 13.272C14.3796 13.509 15.0253 13.6301 15.6765 13.629C16.8885 13.6197 18.0615 13.1992 19.0035 12.4365ZM17.7465 8.33847C17.8648 8.17505 17.9489 7.98945 17.9937 7.79277C18.0386 7.59609 18.0434 7.39239 18.0077 7.19384C17.972 6.99528 17.8967 6.80597 17.7861 6.63721C17.6756 6.46845 17.5322 6.32373 17.3644 6.21169C17.1967 6.09965 17.008 6.0226 16.8098 5.98514C16.6116 5.94769 16.4078 5.95061 16.2108 5.99372C16.0137 6.03683 15.8273 6.11925 15.6629 6.23605C15.4984 6.35285 15.3592 6.50162 15.2535 6.67347C15.0503 7.00406 14.983 7.40054 15.066 7.77963C15.1489 8.15872 15.3755 8.49093 15.6982 8.70645C16.0209 8.92198 16.4146 9.00405 16.7966 8.93543C17.1785 8.86682 17.519 8.65285 17.7465 8.33847Z`,fill:`currentColor`})}),{width:16,height:16}),to:`/settings/secrets`,text:`SETTINGS$NAV_SECRETS`,subtitle:`SETTINGS$PAGE_SECRETS_SUBLINE`}];function $(){let{data:e}=T(),{backend:t}=l(),n=e?.feature_flags;return Q.filter(e=>!I(e.to,n)).map(e=>({type:`item`,item:e.to===`/settings`?{...e,text:t.kind===`local`?f.SETTINGS$LLM_PROFILES:e.text,subtitle:t.kind===`local`?f.SETTINGS$PAGE_LLM_PROFILES_SUBLINE:e.subtitle}:e}))}export{Y as i,Z as n,X as r,$ as t};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{M as n}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";import{C as r,D as i,U as a,Z as o,a as s,b as c,ct as l,d as u,dt as ee,f as te,h as d,n as f,p as ne,st as p,w as re}from"./active-backend-context-BZDG15C0.js";import{t as m}from"./proxy-DYDXxtje.js";import{t as ie}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~jz4f6vo2-C0JXQb_q.js";import{n as ae,t as h}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~skills-setti~eo2nf80n-BOVIFA_g.js";var g=e(t(),1),oe=new Map(ie.map(e=>[e.name,e]));function se(e){return Object.keys(e.requires.integrations)}function ce(e){return Object.entries(e.requires.integrations).filter(([,e])=>e.required!==!1).map(([e])=>e)}function _(e){return oe.get(e.skill??e.id)?.triggers[0]??null}function le(e){return _(e)??`Set up the ${e.name} automation`}var ue=[`form`,`automation`],de=[`list`,`templates`],fe=[`layout-dashboard`,`sparkles`,`bot`,`circle-alert`,`activity`,`timer`],pe=[`automations`,`needs-attention`,`total-runs`,`average-duration`],me={automations:[`active`],"needs-attention":[],"total-runs":[],"average-duration":[]},he={status:[`all`,`active`,`failing`,`disabled`],trigger:[`all`,`schedule`,`event`]},ge=Object.keys(he),_e=[`last-run`,`runs`,`name`],ve=/<[A-Za-z/!]/,ye=/^[a-z0-9]+(-[a-z0-9]+)*$/,v=`https://docs.openhands.dev/`,be=/^[a-z][a-z-]*$/,xe=/^\.[a-z][a-z.]*json$/,Se=/^[a-z0-9][a-z0-9.-]*$/,Ce=/^\/[A-Za-z0-9/{}_-]*$/,we=/^[^{}]*\{id\}[^{}]*$/,Te=[`github`,`gitlab`,`bitbucket`],y={name:{type:`text`,required:!0},prompt:{type:`textarea`,required:!1},model:{type:`llm-profile`,required:!1},timeout:{type:`number`,required:!1},schedule:{type:`schedule`,required:!1}},Ee=Object.keys(y),b=[`list`,`health`,`capabilities`,`validate`,`createPrompt`,`createPlugin`],x=[`detail`,`dispatch`,`runs`,`tarball`];function S(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function C(e,t){return typeof e==`string`&&t.includes(e)}var De=class{errors=[];fail(e,t){return this.errors.push(`${e}: ${t}`),!1}copy(e,t){return typeof e!=`string`||e.length===0?this.fail(t,`must be a non-empty string`):ve.test(e)?this.fail(t,`must not contain markup`):!0}closed(e,t,n){Object.keys(e).filter(e=>!t.includes(e)).forEach(e=>this.fail(`${n}.${e}`,`is not allowed`))}record(e,t){return S(e)?!0:(this.fail(t,`must be an object`),!1)}};function Oe(e,t,n){e.record(t,`routes`)&&(e.closed(t,[`list`,`setup`,`detail`,`templates`],`routes`),[`list`,`setup`,`detail`].forEach(r=>{t[r]!==n[r]&&e.fail(`routes.${r}`,`must be "${n[r]}"`)}),t.templates!==void 0&&t.templates!==n.templates&&e.fail(`routes.templates`,n.templates===void 0?`is not a route this host mounts`:`must be "${n.templates}"`))}function ke(e,t){if(!Array.isArray(t)||t.length===0){e.fail(`navigation.subPages`,`must be a non-empty array`);return}let n=new Set;t.forEach((t,r)=>{let i=`navigation.subPages[${r}]`;if(!e.record(t,i))return;e.closed(t,[`page`,`label`,`icon`],i);let{page:a,label:o,icon:s}=t;C(a,de)?n.has(a)?e.fail(`${i}.page`,`repeats a page`):n.add(a):e.fail(`${i}.page`,`is not a sub-page this host serves`),e.copy(o,`${i}.label`),w(e,s,`${i}.icon`)})}function w(e,t,n){C(t,fe)||e.fail(n,`is not an icon this host ships`)}function Ae(e,t){if(e.record(t,`navigation`)){if(e.closed(t,[`sidebar`,`commandMenu`,`subPages`],`navigation`),e.record(t.sidebar,`navigation.sidebar`)&&(e.closed(t.sidebar,[`label`],`navigation.sidebar`),e.copy(t.sidebar.label,`navigation.sidebar.label`)),e.record(t.commandMenu,`navigation.commandMenu`)){let n=t.commandMenu;e.closed(n,[`title`,`description`,`keywords`],`navigation.commandMenu`),e.copy(n.title,`navigation.commandMenu.title`),e.copy(n.description,`navigation.commandMenu.description`),e.copy(n.keywords,`navigation.commandMenu.keywords`)}t.subPages!==void 0&&ke(e,t.subPages)}}function je(e,t){e.record(t,`pages`)&&(e.closed(t,[`list`,`detail`,`edit`,`templates`],`pages`),e.record(t.list,`pages.list`)&&(e.closed(t.list,[`title`,`subtitle`,`overview`,`filters`,`sort`,`insights`],`pages.list`),e.copy(t.list.title,`pages.list.title`),e.copy(t.list.subtitle,`pages.list.subtitle`),t.list.overview!==void 0&&Me(e,t.list.overview),t.list.filters!==void 0&&Fe(e,t.list.filters),t.list.sort!==void 0&&Re(e,t.list.sort),t.list.insights!==void 0&&ze(e,t.list.insights)),e.record(t.detail,`pages.detail`)&&(e.closed(t.detail,[`backLabel`],`pages.detail`),e.copy(t.detail.backLabel,`pages.detail.backLabel`)),e.record(t.edit,`pages.edit`)&&(e.closed(t.edit,[`title`],`pages.edit`),e.copy(t.edit.title,`pages.edit.title`)),t.templates!==void 0&&Be(e,t.templates))}function Me(e,t){let n=`pages.list.overview`;if(!e.record(t,n))return;e.closed(t,[`label`,`tiles`],n),e.copy(t.label,`${n}.label`);let{tiles:r}=t;if(!Array.isArray(r)||r.length===0){e.fail(`${n}.tiles`,`must be a non-empty array`);return}let i=new Set;r.forEach((t,r)=>{Ne(e,t,i,`${n}.tiles[${r}]`)})}function Ne(e,t,n,r){if(!e.record(t,r))return;e.closed(t,[`metric`,`label`,`detail`,`zeroDetail`,`icon`],r);let{metric:i,label:a,detail:o,zeroDetail:s,icon:c}=t;if(e.copy(a,`${r}.label`),w(e,c,`${r}.icon`),!C(i,pe)){e.fail(`${r}.metric`,`is not a metric this host computes`),e.copy(o,`${r}.detail`),s!==void 0&&e.copy(s,`${r}.zeroDetail`);return}n.has(i)?e.fail(`${r}.metric`,`repeats a metric`):n.add(i),Pe(e,o,i,`${r}.detail`),s!==void 0&&Pe(e,s,i,`${r}.zeroDetail`)}function Pe(e,t,n,r){if(!e.copy(t,r))return;let i=me[n];(i.length===0?/\{\{/:RegExp(`\\{\\{(?!(?:${i.join(`|`)})\\}\\})`)).test(t)&&e.fail(r,`uses a placeholder this metric does not expose`)}function Fe(e,t){let n=`pages.list.filters`;if(!Array.isArray(t)||t.length===0){e.fail(n,`must be a non-empty array`);return}let r=new Set;t.forEach((t,i)=>{Ie(e,t,r,`${n}[${i}]`)})}function Ie(e,t,n,r){if(!e.record(t,r))return;e.closed(t,[`id`,`label`,`options`],r);let{id:i,label:a,options:o}=t;if(e.copy(a,`${r}.label`),!C(i,ge)){e.fail(`${r}.id`,`is not a filter this host implements`);return}n.has(i)?e.fail(`${r}.id`,`repeats a filter`):n.add(i),Le(e,o,he[i],`${r}.options`)}function Le(e,t,n,r){if(!Array.isArray(t)||t.length<2){e.fail(r,`must offer at least two options`);return}let i=new Set;t.forEach((t,a)=>{let o=`${r}[${a}]`;if(!e.record(t,o))return;e.closed(t,[`value`,`label`],o);let{value:s,label:c}=t;C(s,n)?i.has(s)?e.fail(`${o}.value`,`repeats a value`):i.add(s):e.fail(`${o}.value`,`is not a value this host implements`),e.copy(c,`${o}.label`)}),i.has(`all`)||e.fail(r,`must offer the "all" option`)}function Re(e,t){let n=`pages.list.sort`;if(!e.record(t,n))return;e.closed(t,[`label`,`options`,`default`],n);let{label:r,options:i,default:a}=t;e.copy(r,`${n}.label`);let o=new Set;!Array.isArray(i)||i.length===0?e.fail(`${n}.options`,`must be a non-empty array`):i.forEach((t,r)=>{let i=`${n}.options[${r}]`;e.record(t,i)&&(e.closed(t,[`value`,`label`],i),C(t.value,_e)?o.has(t.value)?e.fail(`${i}.value`,`repeats a value`):o.add(t.value):e.fail(`${i}.value`,`is not a sort this host implements`),e.copy(t.label,`${i}.label`))}),(typeof a!=`string`||!o.has(a))&&e.fail(`${n}.default`,`must be one of the declared option values`)}var T={health:[`healthy`,`failing`,`running`,`disabled`,`neverRun`,`checking`],lastRun:[`label`,`never`,`justNow`],stats:[`runs`,`recentSuccess`,`averageDuration`]};function ze(e,t){let n=`pages.list.insights`;e.record(t,n)&&(e.closed(t,Object.keys(T),n),Object.keys(T).forEach(r=>{let i=`${n}.${r}`,a=t[r];if(!e.record(a,i))return;let o=T[r];e.closed(a,o,i),o.forEach(t=>{e.copy(a[t],`${i}.${t}`)})}))}function Be(e,t){let n=`pages.templates`;e.record(t,n)&&(e.closed(t,[`title`,`description`],n),e.copy(t.title,`${n}.title`),e.copy(t.description,`${n}.description`))}function Ve(e,t){let n=S(t.routes)?t.routes:{},r=S(t.navigation)?t.navigation:{},i=S(t.pages)?t.pages:{},a=S(i.list)?i.list:{},o=[[`routes.templates`,n.templates],[`navigation.subPages`,r.subPages],[`pages.templates`,i.templates],[`pages.list.overview`,a.overview],[`pages.list.filters`,a.filters],[`pages.list.sort`,a.sort],[`pages.list.insights`,a.insights]],s=o.filter(([,e])=>e===void 0).map(([e])=>e);s.length===0||s.length===o.length||e.fail(`interface`,`the sub-page surface must be declared whole; missing ${s.join(`, `)}`)}function He(e,t,n,r){if(!e.record(n,r))return;e.closed(n,[`type`,`label`,`help`,`required`,`constraints`],r);let{type:i,label:a,help:o,required:s,constraints:c}=n;if(i!==t.type&&e.fail(`${r}.type`,`must be "${t.type}", the control this host renders`),e.copy(a,`${r}.label`),o!==void 0&&e.copy(o,`${r}.help`),s!==t.required&&e.fail(`${r}.required`,`must be ${t.required}, what this host enforces`),c!==void 0){if(t.type!==`number`)e.fail(`${r}.constraints`,`is only allowed on a number attribute`);else if(e.record(c,`${r}.constraints`)){e.closed(c,[`min`,`max`],`${r}.constraints`);let{min:t,max:n}=c;t!==void 0&&t!==1&&e.fail(`${r}.constraints.min`,`must be the 1 this host enforces`),n!==void 0&&(!Number.isInteger(n)||n<1)&&e.fail(`${r}.constraints.max`,`must be a positive integer`)}}}function Ue(e,t){if(!e.record(t,`attributes`))return;let n=Object.keys(t);n.length===0&&e.fail(`attributes`,`must declare at least one attribute`),n.forEach(n=>{if(!Ee.includes(n)){e.fail(`attributes.${n}`,`is not a settable attribute`);return}He(e,y[n],t[n],`attributes.${n}`)})}function We(e,t){if(!e.record(t,`importExport`))return;e.closed(t,[`fileKind`,`fileVersion`,`filenameSuffix`,`importDefaults`],`importExport`);let{fileKind:n,fileVersion:r,filenameSuffix:i,importDefaults:a}=t;(typeof n!=`string`||!be.test(n))&&e.fail(`importExport.fileKind`,`must be a lowercase slug`),r!==1&&e.fail(`importExport.fileVersion`,`must be 1`),(typeof i!=`string`||!xe.test(i))&&e.fail(`importExport.filenameSuffix`,`must be a .json suffix`),e.record(a,`importExport.importDefaults`)&&(e.closed(a,[`repoProvider`,`placeholderEventSource`],`importExport.importDefaults`),(typeof a.repoProvider!=`string`||!Te.includes(a.repoProvider))&&e.fail(`importExport.importDefaults.repoProvider`,`is not a supported provider`),(typeof a.placeholderEventSource!=`string`||!Se.test(a.placeholderEventSource))&&e.fail(`importExport.importDefaults.placeholderEventSource`,`must be a lowercase event source`))}function Ge(e,t){if(!e.record(t,`endpoints`))return;let n=[...b,...x];e.closed(t,n,`endpoints`);let r=n=>{let r=t[n];return typeof r!=`string`||!Ce.test(r)||r.includes(`//`)?(e.fail(`endpoints.${n}`,`must be a rooted service-relative path`),null):r};b.forEach(t=>{let n=r(t);n!==null&&/[{}]/.test(n)&&e.fail(`endpoints.${t}`,`must not carry a substitution`)}),x.forEach(t=>{let n=r(t);n!==null&&!we.test(n)&&e.fail(`endpoints.${t}`,`must carry exactly one {id}`)})}function E(e,t,n){if(!Array.isArray(t)||t.length===0)return e.fail(n,`must be a non-empty array`),[];let r=t.filter(t=>typeof t==`string`&&ye.test(t)?!0:(e.fail(n,`must contain only lowercase slugs`),!1));return new Set(r).size!==r.length&&e.fail(n,`must not repeat an id`),r}var Ke=[`version`,`routes`,`navigation`,`pages`,`docsUrl`,`attributes`,`importExport`,`endpoints`,`featuredAutomationIds`,`responderIntegrationIds`];function qe(e,t){if(!S(e))return{valid:!1,errors:[`interface: must be an object`]};if(e.version!==`1.0`)return{valid:!1,errors:[`interface.version: must be "1.0"`]};let n=new De;return n.closed(e,Ke,`interface`),Oe(n,e.routes,t.mountedRoutes),Ae(n,e.navigation),je(n,e.pages),(typeof e.docsUrl!=`string`||!e.docsUrl.startsWith(v))&&n.fail(`docsUrl`,`must start with ${v}`),Ue(n,e.attributes),We(n,e.importExport),Ge(n,e.endpoints),E(n,e.featuredAutomationIds,`featuredAutomationIds`).forEach(e=>{t.catalogIds.has(e)||n.fail(`featuredAutomationIds`,`${e} is not a catalog entry`)}),E(n,e.responderIntegrationIds,`responderIntegrationIds`),Ve(n,e),{valid:n.errors.length===0,errors:n.errors}}var D=/^[a-z0-9]+(-[a-z0-9]+)*$/,Je=/^[a-z][A-Za-z0-9]*$/,Ye=/<[A-Za-z/!]/,Xe=RegExp(`\\{\\{(?!(?:${ue.join(`|`)})\\.[A-Za-z0-9_.]+\\}\\})`),Ze=[`direct`,`assisted`],Qe=[`text`,`textarea`,`select`,`cron`,`timezone`,`repo-picker`],$e=[`github`,`gitlab`,`bitbucket`],et=[`cron`,`event`],tt=[`safeExpressionLiteral`],nt=2e3;function O(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function k(e,t){return typeof e==`string`&&t.includes(e)}function rt(e,t){return typeof e==`number`&&Number.isInteger(e)&&e>=t}var it=class{errors=[];fail(e,t){return this.errors.push(`${e}: ${t}`),!1}copy(e,t){return typeof e!=`string`||e.length===0?this.fail(t,`must be a non-empty string`):Ye.test(e)?this.fail(t,`must not contain markup`):!0}placeholders(e,t){return Xe.test(e)?this.fail(t,`uses an unknown placeholder namespace`):!0}templateCopy(e,t){return this.copy(e,t)&&this.placeholders(e,t)}templateValue(e,t){return typeof e!=`string`||e.length===0?this.fail(t,`must be a non-empty string`):this.placeholders(e,t)}absent(e,t,n,r){return t in e?this.fail(`${n}.${t}`,r):!0}};function at(e,t){if(!O(t)){e.fail(`requires`,`must be an object`);return}let{integrations:n,features:r}=t;!O(n)||Object.keys(n).length===0?e.fail(`requires.integrations`,`must be a non-empty object`):Object.entries(n).forEach(([t,n])=>{let r=`requires.integrations.${t}`;if(!O(n)){e.fail(r,`must be an object`);return}e.copy(n.message,`${r}.message`),`required`in n&&n.required!==!1&&e.fail(`${r}.required`,`may only be false`);let i=[`message`,`required`];Object.keys(n).filter(e=>!i.includes(e)).forEach(t=>e.fail(`${r}.${t}`,`is not allowed`))}),r!==void 0&&(!Array.isArray(r)||r.length===0?e.fail(`requires.features`,`must be a non-empty array`):r.forEach((t,n)=>{(typeof t!=`string`||t.length===0)&&e.fail(`requires.features[${n}]`,`must be a non-empty string`)}))}function ot(e,t,n){if(!O(t)||Object.keys(t).length===0){e.fail(n,`must be a non-empty object`);return}let{minLength:r,maxLength:i,format:a}=t;r!==void 0&&!rt(r,0)&&e.fail(`${n}.minLength`,`must be a non-negative integer`),i!==void 0&&!rt(i,1)&&e.fail(`${n}.maxLength`,`must be a positive integer`),a!==void 0&&!k(a,tt)&&e.fail(`${n}.format`,`is not a supported format`)}function st(e,t,n){if(!O(t)){e.fail(n,`must be an object`);return}let{type:r,label:i,help:a,placeholder:o,required:s,provider:c,options:l}=t;k(r,Qe)||e.fail(`${n}.type`,`is not a supported field type`),e.copy(i,`${n}.label`),e.copy(a,`${n}.help`),o!==void 0&&e.copy(o,`${n}.placeholder`),t.default!==void 0&&typeof t.default!=`string`&&e.fail(`${n}.default`,`must be a string`),typeof s!=`boolean`&&e.fail(`${n}.required`,`must be a boolean`),c!==void 0&&!k(c,$e)&&e.fail(`${n}.provider`,`is not a supported provider`),r===`repo-picker`&&c===void 0&&e.fail(`${n}.provider`,`is required for a repository field`),l!==void 0&&(r===`select`?!Array.isArray(l)||l.length===0?e.fail(`${n}.options`,`must be a non-empty array`):l.forEach((t,r)=>{let i=`${n}.options[${r}]`;if(!O(t)){e.fail(i,`must be an object`);return}(typeof t.value!=`string`||t.value.length===0)&&e.fail(`${i}.value`,`must be a non-empty string`),e.copy(t.label,`${i}.label`)}):e.fail(`${n}.options`,`is only allowed on a select field`)),t.constraints!==void 0&&ot(e,t.constraints,`${n}.constraints`)}function ct(e,t,n){return!O(t)||Object.keys(t).length===0?(e.fail(n,`must be a non-empty object`),[]):Object.entries(t).map(([t,r])=>(Je.test(t)||e.fail(`${n}.${t}`,`is not a valid field name`),st(e,r,`${n}.${t}`),t))}function lt(e,t){if(!O(t))return e.fail(`setup.form`,`must be an object`),[];t.note!==void 0&&e.copy(t.note,`setup.form.note`);let n=ct(e,t.args,`setup.form.args`),r=[];t.triggers!==void 0&&(!O(t.triggers)||Object.keys(t.triggers).length===0?e.fail(`setup.form.triggers`,`must be a non-empty object`):Object.entries(t.triggers).forEach(([t,i])=>{if(!k(t,et)){e.fail(`setup.form.triggers.${t}`,`is not a trigger kind`);return}r.push(t),n.push(...ct(e,i,`setup.form.triggers.${t}`))}));let i=n.filter((e,t)=>n.indexOf(e)!==t);return Array.from(new Set(i)).forEach(t=>e.fail(`setup.form.${t}`,`is declared more than once`)),r}function ut(e){return O(e)?[e.args,...Object.values(O(e.triggers)?e.triggers:{})].some(e=>O(e)&&Object.values(e).some(e=>O(e)&&e.type===`repo-picker`)):!1}function dt(e,t){e.templateCopy(t,`setup.message`)&&t.length>nt&&e.fail(`setup.message`,`must be at most ${nt} characters`)}function ft(e,t,n){if(!k(t.mode,Ze)){e.fail(`setup.mode`,`is not a supported mode`);return}if(t.mode===`direct`){e.templateValue(t.prompt,`setup.prompt`),t.message!==void 0&&dt(e,t.message),n.length!==1&&e.fail(`setup.form.triggers`,`must declare exactly one trigger kind`),n.includes(`event`)&&!ut(t.form)&&e.fail(`setup.form`,`must declare a repository field for an event trigger`),t.filter!==void 0&&(n.includes(`event`)?e.templateValue(t.filter,`setup.filter`):e.fail(`setup.filter`,`is only allowed for an event trigger`));return}dt(e,t.message),e.absent(t,`prompt`,`setup`,`is only allowed for direct setup`),e.absent(t,`filter`,`setup`,`is only allowed for direct setup`)}function pt(e){return O(e)&&e.setup!==void 0}function mt(e){let t=new it;if(!O(e))return{valid:!1,errors:[`manifest: must be an object`]};let{setup:n}=e;return O(n)?n.version===`1.0`?((typeof e.id!=`string`||!D.test(e.id))&&t.fail(`id`,`must be a lowercase slug`),t.copy(e.name,`name`),t.copy(e.description,`description`),e.skill!==void 0&&(typeof e.skill!=`string`||!D.test(e.skill))&&t.fail(`skill`,`must be a lowercase slug`),at(t,e.requires),ft(t,n,lt(t,n.form)),{valid:t.errors.length===0,errors:t.errors}):{valid:!1,errors:[`setup.version: must be "1.0"`]}:{valid:!1,errors:[`setup: must be an object`]}}function ht(e){let t=[],n=new Map;return e.forEach(e=>{if(!pt(e))return;let{valid:r,errors:i}=mt(e);if(!r){console.warn(`Rejected a setup manifest:`,i.join(`; `));return}let a=e;if(n.has(a.id)){console.warn(`Rejected a setup manifest: id "${a.id}" is already registered`);return}t.push(a),n.set(a.id,a)}),{entries:t,findById:e=>n.get(e)??null}}var gt=ht(h),_t=ae,vt=`AUTOMATION_INTERFACE`in _t?_t.AUTOMATION_INTERFACE:void 0,A={list:`/automations`,setup:`/automations/new/:automationId`,detail:`/automations/:automationId`,templates:`/automations/templates`},yt={list:`/v1`,detail:`/v1/{id}`,dispatch:`/v1/{id}/dispatch`,runs:`/v1/{id}/runs`,tarball:`/v1/{id}/tarball`,health:`/health`,capabilities:`/v1/capabilities`,validate:`/v1/validate`,createPrompt:`/v1/preset/prompt`,createPlugin:`/v1/preset/plugin`},bt={fileKind:`automation`,fileVersion:1,filenameSuffix:`.automation.json`,importDefaults:{repoProvider:`github`,placeholderEventSource:`agent-canvas-import`}},xt=`https://docs.openhands.dev/openhands/usage/automations/overview`,St=[`github-pr-reviewer`,`github-repo-monitor`,`slack-channel-monitor`],Ct=[`github`,`slack`],wt={present:!1,label:null,help:null,required:!1,min:null,max:null},Tt={name:{present:!0,label:null,help:null,required:!0,min:null,max:null},prompt:{present:!0,label:null,help:null,required:!1,min:null,max:null},model:{present:!0,label:null,help:null,required:!1,min:null,max:null},timeout:{present:!0,label:null,help:null,required:!1,min:1,max:null},schedule:{present:!0,label:null,help:null,required:!1,min:null,max:null}};function Et(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Dt(){return new Set(h.flatMap(e=>Et(e)&&typeof e.id==`string`?[e.id]:[]))}function Ot(e){if(e===void 0)return null;let t=qe(e,{catalogIds:Dt(),mountedRoutes:A});return t.valid?e:(console.warn(`Rejected the automation interface manifest:`,t.errors.join(`; `)),null)}var j=Ot(vt);function kt(e,t){return e.replace(`:automationId`,encodeURIComponent(t))}function M(){return(j?.routes??A).list}function At(e){return kt((j?.routes??A).setup,e)}function jt(e){return kt((j?.routes??A).detail,e)}function Mt(){return j?.routes.templates??A.templates}function N(e){return(j?.endpoints??yt)[e]}function P(e,t){return N(e).replace(`{id}`,encodeURIComponent(t))}var Nt={sidebarLabel:null,commandMenuTitle:null,commandMenuDescription:null,commandMenuKeywords:null,listTitle:null,listSubtitle:null,detailBackLabel:null,editTitle:null};function Pt(){return j?{sidebarLabel:j.navigation.sidebar.label,commandMenuTitle:j.navigation.commandMenu.title,commandMenuDescription:j.navigation.commandMenu.description,commandMenuKeywords:j.navigation.commandMenu.keywords,listTitle:j.pages.list.title,listSubtitle:j.pages.list.subtitle,detailBackLabel:j.pages.detail.backLabel,editTitle:j.pages.edit.title}:Nt}function Ft(e){if(!j)return Tt[e];let t=j.attributes[e];return t?{present:!0,label:t.label,help:t.help??null,required:t.required,min:t.constraints?.min??null,max:t.constraints?.max??null}:wt}function F(){return j?.importExport??bt}function It(){return j?.docsUrl??xt}function Lt(){return j?.featuredAutomationIds??St}function Rt(){return j?.responderIntegrationIds??Ct}function zt(){let e=j?.navigation.subPages;return e?e.map(e=>({page:e.page,to:e.page===`templates`?Mt():M(),label:e.label,icon:e.icon})):null}function Bt(){let e=j?.pages.list;return!e?.overview||!e.filters||!e.sort||!e.insights?null:{overview:e.overview,filters:e.filters,sort:e.sort,insights:e.insights}}function Vt(){return j?.pages.templates??null}var Ht=/["'\\]/;function I(e){let t=Object.values(e.form.triggers??{});return Object.assign({},...t,e.form.args)}function Ut(e,t){let n=t?.triggers?.cron?.timezones;if(!n?.length)return{};let r=n.map(e=>({value:e,label:e}));return Object.fromEntries(Object.entries(I(e)).filter(([,e])=>e.type===`timezone`).map(([e])=>[e,{options:r}]))}function L(e,t,n={}){return n[e]?.options??t.options??[]}function Wt(e){return Object.fromEntries(Object.entries(I(e)).map(([e,t])=>[e,t.default??``]))}function Gt(e,t,n,r){let i=(n??``).trim();if(!i)return t.required?{code:`required`}:null;let{minLength:a,maxLength:o,format:s}=t.constraints??{};if(a!==void 0&&i.length<a)return{code:`minLength`,length:a};if(o!==void 0&&i.length>o)return{code:`maxLength`,length:o};if(s===`safeExpressionLiteral`&&Ht.test(i))return{code:`unsafeExpressionLiteral`};let c=L(e,t,r);return c.length>0&&!c.some(e=>e.value===i)?{code:`invalidOption`}:null}function Kt(e,t,n={}){return Object.entries(I(e)).reduce((e,[r,i])=>{let a=Gt(r,i,t[r],n);return a?{...e,[r]:a}:e},{})}var R=/\{\{([A-Za-z0-9_]+(?:\.[A-Za-z0-9_]+)*)\}\}/g;function qt(e,t){return t.split(`.`).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function z(e){return typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):``}function B(e,t){return e.replace(R,(e,n)=>z(qt(t,n)))}function Jt(e,t){return e.replace(R,(e,n)=>z(t[n]))}var V=N(`createPrompt`),Yt={cron:[`schedule`,`timezone`],event:[`on`]},Xt=[`ref`],Zt=/\{\{form\.([A-Za-z0-9_.]+)\}\}/g;function Qt(e){let t=Object.entries(I(e)).find(([,e])=>e.type===`repo-picker`);return t?{name:t[0],field:t[1]}:null}function $t(e){let t=Object.entries(e.form.triggers??{});if(t.length===0)return null;let[n,r]=t[0];return{kind:n,fields:r??{}}}function H(e,t){let{setup:n}=e;if(n.mode!==`direct`||!n.prompt)return null;let r={form:t,automation:e},i=Qt(n),a=i?t[i.name]:void 0,o={name:a?`${e.name} - ${a}`:e.name,prompt:B(n.prompt,r)};if(a&&i?.field.provider){let e=Xt.filter(e=>e in t);o.repos=[{url:a,...Object.fromEntries(e.map(e=>[e,t[e]])),provider:i.field.provider}]}let s=$t(n);if(s){let e=Yt[s.kind],a=Object.keys(s.fields).filter(t=>e.includes(t));o.trigger={type:s.kind,...Object.fromEntries(a.map(e=>[e,t[e]??``])),...s.kind===`event`&&{source:i?.field.provider??``,...n.filter&&{filter:B(n.filter,r)}}}}return o}function en(e,t){let n=H(e,t);return n?{automationId:e.id,endpoint:V,draft:n}:null}function tn(e,t){return[_(e),e.setup.message?B(e.setup.message,{form:t,automation:e}):``].filter(Boolean).join(`
|
|
2
|
+
|
|
3
|
+
`)}function nn(e){let t=Array.from(e.matchAll(Zt),e=>e[1]);return Array.from(new Set(t))}function rn(e){let t={},n=H(e,Object.fromEntries(Object.keys(I(e.setup)).map(e=>[e,`{{form.${e}}}`])));if(!n)return t;let r=(e,n)=>{if(Array.isArray(e)){e.forEach((e,t)=>r(e,`${n}[${t}]`));return}if(typeof e==`object`&&e){Object.entries(e).forEach(([e,t])=>r(t,n?`${n}.${e}`:e));return}if(typeof e==`string`){let r=nn(e);r.length>0&&(t[n]=r)}};return r(n,``),t}var U=`/api/automation`,W=n.create();async function G(e={}){let t=await te();return{...re,...t?{[i]:t}:{},...e}}W.interceptors.request.use(async e=>{let t=await G();if(Object.entries(t).forEach(([t,n])=>{e.headers.set(t,n)}),e.baseURL)return e;let n=l();if(!n)throw new o;e.baseURL=n.host;let r=n.apiKey?.trim();return r&&e.headers.set(`X-Session-API-Key`,r),e});function K(e){return typeof e==`string`&&e.trim()||null}function an(e){return typeof e==`string`?K(e):K(e.sdk_version)??K(e.version)}function on(e,t){let n=new URLSearchParams;return n.set(`limit`,String(e)),n.set(`offset`,String(t)),n.toString()}function sn(e){return e.trigger.type===`event`?{type:`event`,source:e.trigger.source,on:e.trigger.on,...e.trigger.filter&&{filter:e.trigger.filter}}:{type:`cron`,schedule:e.trigger.schedule,timezone:e.timezone??e.trigger.timezone??`UTC`}}function cn(){return typeof crypto<`u`&&typeof crypto.randomUUID==`function`?`pending.${crypto.randomUUID()}`:`pending.${Date.now()}.${Math.random().toString(36).slice(2,10)}`}function ln(e){if(!e.prompt)throw Error(`An automation prompt is required for import.`);let{importDefaults:t}=F(),n=e.repository?[{url:e.repository,...e.branch&&{ref:e.branch},...!e.repository.includes(`://`)&&!e.repository.startsWith(`git@`)&&{provider:t.repoProvider}}]:void 0;return{path:`${U}${N(e.plugins?.length?`createPlugin`:`createPrompt`)}`,body:{name:e.name,prompt:e.prompt,trigger:{type:`event`,source:t.placeholderEventSource,on:cn()},...e.model&&{model:e.model},...n&&{repos:n},...e.plugins?.length&&{plugins:e.plugins.map(e=>({source:e}))},...e.timeout!=null&&{timeout:e.timeout}}}}async function q(e){let t=e.apiKey.trim();return{baseURL:e.host,headers:await G(t?{"X-Session-API-Key":t}:{})}}async function J(e){return G(e.orgId?{"X-Org-Id":e.orgId}:{})}var Y=class e{static async syncTelemetryConsent(e=u()){if(p().backend.kind!==`local`)return;let t=await ne();await W.post(`${U}/v1/telemetry/consent`,{consent_granted:e===`granted`,frontend_distinct_id:t},{timeout:5e3}),e!==`granted`&&t&&s(t)}static async getSdkVersion(){let e=p(),t=`${U}/sdk-version`;try{let n;if(e.backend.kind===`cloud`)n=await m({backend:e.backend,method:`GET`,path:t,headers:await J(e),timeoutSeconds:5});else{let{data:e}=await W.get(t,{timeout:5e3});n=e}return an(n)}catch{return null}}static async listAutomations(e={}){let{limit:t=50,offset:n=0}=e,r=p().backend;if(r.kind===`cloud`)return m({backend:r,method:`GET`,path:`${U}${N(`list`)}?${on(t,n)}`,headers:await G()});let{data:i}=await W.get(`${U}${N(`list`)}`,{params:{limit:t,offset:n}});return i}static async getAutomations(t=50,n=0){return e.listAutomations({limit:t,offset:n})}static async getAutomation(e){let t=p().backend,n=`${U}${P(`detail`,e)}`;if(t.kind===`cloud`)return m({backend:t,method:`GET`,path:n,headers:await G()});let{data:r}=await W.get(n);return r}static async createAutomation(e){let t=p(),{path:n,body:r}=ln(e),i;if(t.backend.kind===`cloud`)i=await m({backend:t.backend,method:`POST`,path:n,body:r,headers:await J(t)});else{let{data:e}=await W.post(n,r,await q(t.backend));i=e}let a=`${U}${P(`detail`,i.id)}`,o={trigger:sn(e),enabled:!1};try{if(t.backend.kind===`cloud`)return await m({backend:t.backend,method:`PATCH`,path:a,body:o,headers:await J(t)});let{data:e}=await W.patch(a,o,await q(t.backend));return e}catch(e){try{t.backend.kind===`cloud`?await m({backend:t.backend,method:`DELETE`,path:a,headers:await J(t)}):await W.delete(a,await q(t.backend))}catch(t){throw AggregateError([e,t],`Failed to disable the imported automation and clean it up.`)}throw e}}static async updateAutomation(e,t){let n=p().backend,r=`${U}${P(`detail`,e)}`;if(n.kind===`cloud`)return m({backend:n,method:`PATCH`,path:r,body:t,headers:await G()});let{data:i}=await W.patch(r,t);return i}static async deleteAutomation(e){let t=p().backend,n=`${U}${P(`detail`,e)}`;if(t.kind===`cloud`){await m({backend:t,method:`DELETE`,path:n,headers:await G()});return}await W.delete(n)}static async dispatchAutomation(e){let t=p().backend,n=`${U}${P(`dispatch`,e)}`;if(t.kind===`cloud`)return m({backend:t,method:`POST`,path:n,headers:await G()});let{data:r}=await W.post(n);return r}static async cancelAutomationRun(e){let t=p().backend,n=`${U}/v1/runs/${encodeURIComponent(e)}/cancel`;if(t.kind===`cloud`)return m({backend:t,method:`POST`,path:n,headers:await G()});let{data:r}=await W.post(n);return r}static async listAutomationRuns(e,t={}){let{limit:n=50,offset:r=0}=t,i=p().backend,a=`${U}${P(`runs`,e)}`;if(i.kind===`cloud`)return m({backend:i,method:`GET`,path:`${a}?${on(n,r)}`,headers:await G()});let{data:o}=await W.get(a,{params:{limit:n,offset:r}});return o}static async getAutomationRuns(t,n=50,r=0){return e.listAutomationRuns(t,{limit:n,offset:r})}static async toggleAutomation(t,n){return e.updateAutomation(t,{enabled:n})}static async downloadTarball(e,t){let n=p().backend,r=`${U}${P(`tarball`,e)}`,i;if(n.kind===`cloud`)i=await m({backend:n,method:`GET`,path:r,responseType:`blob`,headers:await G()});else{let{data:e}=await W.get(r,{responseType:`blob`});i=e}let a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=`${t}.tar`,o.click(),URL.revokeObjectURL(a)}static async getCapabilities(){let e=p().backend,t=`${U}${N(`capabilities`)}`;if(e.kind===`cloud`)return m({backend:e,method:`GET`,path:t,headers:await G()});let{data:n}=await W.get(t);return n}static async validateDraft(e){let t=p().backend,n=`${U}${N(`validate`)}`;if(t.kind===`cloud`)return m({backend:t,method:`POST`,path:n,body:e,headers:await G()});let{data:r}=await W.post(n,e);return r}static async createAutomationDraft(e){let t=p().backend,n=`${U}${V}`;if(t.kind===`cloud`)return m({backend:t,method:`POST`,path:n,body:e,headers:await G()});let{data:r}=await W.post(n,e);return r}static async getGitSyncStatus(){let e=p().backend,t=`${U}/v1/git-sync/status`;if(e.kind===`cloud`)return m({backend:e,method:`GET`,path:t});let{data:n}=await W.get(t);return n}static async updateGitSyncConfig(e){let t=p().backend,n=`${U}/v1/git-sync/config`;if(t.kind===`cloud`)return m({backend:t,method:`PUT`,path:n,body:e});let{data:r}=await W.put(n,e);return r}static async checkGitSyncConfig(e){let t=p().backend,n=`${U}/v1/git-sync/check`;if(t.kind===`cloud`)return m({backend:t,method:`POST`,path:n,body:e});let{data:r}=await W.post(n,e);return r}static async triggerGitSync(){let e=p().backend,t=`${U}/v1/git-sync/sync`;if(e.kind===`cloud`)return m({backend:e,method:`POST`,path:t});let{data:n}=await W.post(t);return n}static async checkHealth(){let e=p().backend,t=`${U}${N(`health`)}`;try{if(e.kind===`cloud`)return await m({backend:e,method:`GET`,path:t,timeoutSeconds:5,headers:await G()});let{data:n}=await W.get(t,{timeout:5e3});return n}catch{return{status:`error`}}}},un=`automation-sdk-version`,dn=3600*1e3,fn=`\0`,X=new Map,Z=new Map;function Q(e){let t=X.get(e);if(t){if(t.expiresAt<=Date.now()){X.delete(e);return}return t.version}}function $(e,t){X.set(e,{expiresAt:Date.now()+dn,version:t})}function pn(e){let t=Q(e);if(t!==void 0)return Promise.resolve(t);let n=Z.get(e);if(n)return n;if(typeof Y.getSdkVersion!=`function`)return $(e,null),Promise.resolve(null);let r=Y.getSdkVersion().then(t=>($(e,t),t)).catch(()=>($(e,null),null)).finally(()=>{Z.delete(e)});return Z.set(e,r),r}function mn(){let e=f(),{backend:t}=e,n=[un,t.id,t.kind,t.host,e.orgId??``].join(fn),[r,i]=g.useState(()=>Q(n)??null);return g.useEffect(()=>{if(ee(t)){i(null);return}let e=Q(n);if(e!==void 0){i(e);return}let r=!0;return i(null),pn(n).then(e=>{r&&i(e)}),()=>{r=!1}},[t,n]),r}var hn=()=>{let{backend:e}=f(),t=mn(),n=g.useCallback(()=>({backendKind:e.kind,agentServerVersion:e.kind===`local`?a(e.host):null,automationSdkVersion:t??null}),[t,e.host,e.kind]);g.useEffect(()=>{d(n())},[n]);let i={current_url:window.location.href},o=(e,t={})=>{d(n()),c(e,{...i,...t})};return{trackLoginButtonClick:({provider:e})=>{o(`login_button_clicked`,{provider:e})},trackConversationCreated:({conversationId:e,taskId:t,hasRepository:n,gitProvider:r,hasWorkspace:i,workspaceMode:a,hasInitialQuery:s,agentType:c,hasParentConversation:l,entryPoint:u})=>{o(`conversation_start_requested`,{conversation_id:e,task_id:t,is_start_task:e.startsWith(`task-`),has_repository:n,git_provider:r,has_workspace:i,workspace_mode:a,has_initial_query:s,agent_type:c,has_parent_conversation:l,entry_point:u})},trackPushButtonClick:()=>{o(`push_button_clicked`)},trackPullButtonClick:()=>{o(`pull_button_clicked`)},trackCreatePrButtonClick:()=>{o(`create_pr_button_clicked`)},trackUserSignupCompleted:()=>{o(`user_signup_completed`,{signup_timestamp:new Date().toISOString()})},trackPrebuiltAutomationEnabled:({automationId:e,automationName:t,automationCategory:n})=>{o(`prebuilt_automation_enabled`,{automation_id:e,automation_name:t,automation_category:n})},trackAutomationSetupOpened:({automationId:e})=>{o(`automation_setup_opened`,{automation_id:e})},trackAutomationSetupValidated:({automationId:e})=>{o(`automation_setup_validated`,{automation_id:e})},trackAutomationSetupCreated:({automationId:e,setupMode:t})=>{o(`automation_setup_created`,{automation_id:e,setup_mode:t})},trackAutomationSetupFailed:({automationId:e,setupMode:t})=>{o(`automation_setup_failed`,{automation_id:e,setup_mode:t})},trackInitialQuerySubmitted:({entryPoint:e,queryCharacterLength:t,replayJsonSize:n})=>{o(`initial_query_submitted`,{entry_point:e,query_character_length:t,replay_json_size:n})},trackUserMessageSent:({sessionMessageCount:e,currentMessageLength:t})=>{o(`user_message_sent`,{session_message_count:e,current_message_length:t})},trackDownloadVsCodeButtonClicked:()=>{o(`download_via_vscode_button_clicked`)},trackSettingsSaved:({llmModel:e,llmApiKeySet:t,searchApiKeySet:n,remoteRuntimeResourceFactor:r})=>{o(`settings_saved`,{LLM_MODEL:e,LLM_API_KEY_SET:t,SEARCH_API_KEY_SET:n,REMOTE_RUNTIME_RESOURCE_FACTOR:r})},trackMcpConfigUpdated:({sseServersCount:e,stdioServersCount:t})=>{o(`mcp_config_updated`,{has_mcp_config:!0,sse_servers_count:e,stdio_servers_count:t})},trackDownloadTrajectoryButtonClicked:()=>{o(`download_trajectory_button_clicked`)},trackConversationExported:e=>{o(`conversation_exported`,{format:e})},trackAutomationCreatedButton:({backendKind:e})=>{o(`automation_created_button`,{backend_kind:e})},trackAutomationExecuted:({backendKind:e})=>{o(`automation_executed`,{backend_kind:e})},trackAutomationDeleted:({backendKind:e})=>{o(`automation_deleted`,{backend_kind:e})},trackAutomationDisableButton:({backendKind:e})=>{o(`automation_disable_button`,{backend_kind:e})},trackAutomationEdited:({backendKind:e})=>{o(`automation_edited`,{backend_kind:e})},trackAutomationExported:({backendKind:e})=>{o(`automation_exported`,{backend_kind:e})},trackAutomationActivityLogExported:({backendKind:e,format:t})=>{o(`automation_activity_log_exported`,{backend_kind:e,format:t})},trackAutomationImported:({backendKind:e})=>{o(`automation_imported`,{backend_kind:e})},trackGitSyncConfigUpdated:({backendKind:e})=>{o(`git_sync_config_updated`,{backend_kind:e})},trackGitSyncTriggered:({backendKind:e})=>{o(`git_sync_triggered`,{backend_kind:e})},trackBackendAdded:({backendKind:e,connectionMethod:t,hasApiKey:n,source:i,agentServerVersion:a,backendVersion:s})=>{o(`backend_added`,{...r({backendKind:e,agentServerVersion:a,backendVersion:s,connectionMethod:t}),has_api_key:n,source:i})},trackOnboardingStarted:()=>{o(`onboarding_started`)},trackOnboardingStepViewed:({step:e,stepIndex:t,totalSteps:n,agent:r})=>{o(`onboarding_step_viewed`,{step:e,step_index:t,total_steps:n,agent:r})},trackOnboardingCompleted:({agent:e})=>{o(`onboarding_completed`,{agent:e})},trackOnboardingSkipped:({step:e,stepIndex:t,totalSteps:n,agent:r})=>{o(`onboarding_skipped`,{step:e,step_index:t,total_steps:n,agent:r})}}};export{zt as C,le as D,_ as E,se as O,Rt as S,gt as T,It as _,en as a,F as b,I as c,Ut as d,Kt as f,Ft as g,At as h,H as i,ce as k,L as l,M as m,Y as n,rn as o,jt as p,tn as r,Jt as s,hn as t,Wt as u,Bt as v,Vt as w,Pt as x,Lt as y};
|
package/build/assets/{use-user-conversation-DVtfg0B_.js → use-user-conversation-BkNXpXrd.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{t as n}from"./useQuery-
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{t as n}from"./useQuery-Bs5NFz2s.js";import{n as r}from"./active-backend-context-BZDG15C0.js";import{t as i}from"./agent-server-conversation-service.api-DK56YPTs.js";var a=e(t(),1),o=1e3*60*5,s=1e3*60*15,c=(e,t)=>{let c=r(),l=(0,a.useRef)({cid:e,backendId:c.backend.id});l.current.cid!==e&&(l.current={cid:e,backendId:c.backend.id});let u=l.current.backendId!==c.backend.id;return n({queryKey:[`user`,`conversation`,e,c.backend.id,c.orgId],queryFn:async()=>e?(await i.batchGetAppConversations([e]))[0]??null:null,enabled:!!e&&!e.startsWith(`task-`)&&!u,retry:!1,refetchInterval:t,staleTime:o,gcTime:s})};export{c as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,o as t}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{a as e,o as t}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{h as n}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz8NQve5.js";import{n as r}from"./useQuery-Bs5NFz2s.js";var i=class extends n{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){e._type=`infinite`,super.setOptions(e)}getOptimisticResult(e){return e._type=`infinite`,super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`forward`}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`backward`}}})}createResult(n,r){let{state:i}=n,a=super.createResult(n,r),{isFetching:o,isRefetching:s,isError:c,isRefetchError:l}=a,u=i.fetchMeta?.fetchMore?.direction,d=c&&u===`forward`,f=o&&u===`forward`,p=c&&u===`backward`,m=o&&u===`backward`;return{...a,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:e(r,i.data),hasPreviousPage:t(r,i.data),isFetchNextPageError:d,isFetchingNextPage:f,isFetchPreviousPageError:p,isFetchingPreviousPage:m,isRefetchError:l&&!d&&!p,isRefetching:s&&!f&&!m}}};function a(e,t){return r(e,i,t)}export{a as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{E as n,T as r,j as i,m as a,n as o,u as s,y as c}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{E as n,T as r,j as i,m as a,n as o,u as s,y as c}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{R as l}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~kepq2zme-D87mAf6K.js";var u=class extends i{#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),r(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??l();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){s.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 r=o(t),[i]=d.useState(()=>new u(r,e));d.useEffect(()=>{i.setOptions(e)},[i,e]);let a=d.useSyncExternalStore(d.useCallback(e=>i.subscribe(s.batchCalls(e)),[i]),()=>i.getCurrentResult(),()=>i.getCurrentResult()),l=d.useCallback((e,t)=>{i.mutate(e,t).catch(c)},[i]);if(a.error&&n(i.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:l,mutateAsync:a.mutate}}export{f as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{S as n,T as r,j as i,n as a,u as o,y as s}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{S as n,T as r,j as i,n as a,u as o,y as s}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{c,d as l,f as u,h as d,m as f,o as p,p as m,s as h,u as g}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz8NQve5.js";function _(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function v(e,t,n){let r=e.slice(0);return r[t]=n,r}var y=class extends i{#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=[];constructor(e,t,n){super(),this.#e=e,this.#r=n,this.#n=[],this.#i=[],this.#t=[],this.setQueries(t)}onSubscribe(){this.listeners.size===1&&this.#i.forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#i.forEach(e=>{e.destroy()})}setQueries(e,t){this.#n=e,this.#r=t,o.batch(()=>{let e=this.#i,t=this.#p(this.#n);t.forEach(e=>e.observer.setOptions(e.defaultedQueryOptions));let n=t.map(e=>e.observer),i=n.map(e=>e.getCurrentResult()),a=e.length!==n.length,o=n.some((t,n)=>t!==e[n]),s=a||o,c=s?!0:i.some((e,t)=>{let n=this.#t[t];return!n||!r(e,n)});!s&&!c||(s&&(this.#l=t,this.#i=n),this.#t=i,this.hasListeners()&&(s&&(_(e,n).forEach(e=>{e.destroy()}),_(n,e).forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})),this.#h()))})}getCurrentResult(){return this.#t}getQueries(){return this.#i.map(e=>e.getCurrentQuery())}getObservers(){return this.#i}getOptimisticResult(e,t){let n=this.#p(e),r=n.map(e=>e.observer.getOptimisticResult(e.defaultedQueryOptions)),i=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,i),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let i=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?i:n.observer.trackResult(i,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,r){if(t){let i=this.#c,a=r!==void 0&&i!==void 0&&(i.length!==r.length||r.some((e,t)=>e!==i[t]));return(!this.#a||this.#t!==this.#s||a||t!==this.#o)&&(this.#o=t,this.#s=this.#t,r!==void 0&&(this.#c=r),this.#a=n(this.#a,t(e))),this.#a}return e}#f(){return this.#r?.combine!==void 0&&this.#i.some((e,t)=>e.options.suspense&&this.#t[t]?.data===void 0)}#p(e){let t=new Map;this.#i.forEach(e=>{let n=e.options.queryHash;if(!n)return;let r=t.get(n);r?r.push(e):t.set(n,[e])});let n=[];return e.forEach(e=>{let r=this.#e.defaultQueryOptions(e),i=t.get(r.queryHash)?.shift()??new d(this.#e,r);n.push({defaultedQueryOptions:r,observer:i})}),n}#m(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=v(this.#t,n,t),this.#h())}#h(){if(this.hasListeners()){let e=this.#u(this.#t,this.#l),t=this.#f(),n=this.#a,r=t?n:this.#d(e,this.#r?.combine);(t||n!==r)&&o.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}},b=e(t(),1);function x({queries:e,...t},n){let r=a(n),i=f(),_=m(),v=b.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=i?`isRestoring`:`optimistic`,t}),[e,r,i]);v.forEach(e=>{p(e),g(e,_,r.getQueryCache().get(e.queryHash))}),u(_);let[x]=b.useState(()=>new y(r,v,t)),[S,C,w]=x.getOptimisticResult(v,t.combine),T=!i&&t.subscribed!==!1;b.useSyncExternalStore(b.useCallback(e=>T?x.subscribe(o.batchCalls(e)):s,[x,T]),()=>x.getCurrentResult(),()=>x.getCurrentResult()),b.useEffect(()=>{x.setQueries(v,t)},[v,t,x]);let E=S.some((e,t)=>c(v[t],e))?S.flatMap((e,t)=>{let n=v[t];return n&&c(n,e)?h(n,new d(r,n),_):[]}):[];if(E.length>0)throw Promise.all(E);let D=S.find((e,t)=>{let n=v[t];return n&&l({result:e,errorResetBoundary:_,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(D?.error)throw D.error;return C(w())}export{x as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{f as n,n as r,u as i,y as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~
|
|
1
|
+
import{a as e}from"./rolldown-runtime-Cyuzqnbw.js";import{St as t}from"./vendor-styling-Ck5D_A2Q.js";import{f as n,n as r,u as i,y as a}from"./vendor~entry.client~root~root-layout~index-home~home~conversation-panel~conversation~launch~dcc51rps-rfV8mQ9m.js";import{c as o,d as s,f as c,h as l,l as u,m as d,o as f,p,s as m,u as h}from"./vendor~root~root-layout~index-home~home~conversation-panel~conversation~launch~extensions-h~iw7io29p-Dz8NQve5.js";var g=e(t(),1);function _(e,t,l){let _=d(),v=p(),y=r(l),b=y.defaultQueryOptions(e);y.getDefaultOptions().queries?._experimental_beforeQuery?.(b);let x=y.getQueryCache().get(b.queryHash),S=e.subscribed!==!1;b._optimisticResults=_?`isRestoring`:S?`optimistic`:void 0,f(b),h(b,v,x),c(v);let C=!y.getQueryCache().get(b.queryHash),[w]=g.useState(()=>new t(y,b)),T=w.getOptimisticResult(b),E=!_&&S;if(g.useSyncExternalStore(g.useCallback(e=>{let t=E?w.subscribe(i.batchCalls(e)):a;return w.updateResult(),t},[w,E]),()=>w.getCurrentResult(),()=>w.getCurrentResult()),g.useEffect(()=>{w.setOptions(b)},[b,w]),o(b,T))throw m(b,w,v);if(s({result:T,errorResetBoundary:v,throwOnError:b.throwOnError,query:x,suspense:b.suspense}))throw T.error;return y.getDefaultOptions().queries?._experimental_afterQuery?.(b,T),b.experimental_prefetchInRender&&!n.isServer()&&u(T,_)&&(C?m(b,w,v):x?.promise)?.catch(a).finally(()=>{w.updateResult()}),b.notifyOnChangeProps?T:w.trackResult(T)}function v(e,t){return _(e,l,t)}export{_ as n,v as t};
|