@vellumai/web 0.12.1-dev.202609141913.5e16607 → 0.12.1-dev.202609142113.d1590bc
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/dist/assets/{a2a-invite-Cj6bQz4C.js → a2a-invite-i8AQXl-z.js} +1 -1
- package/dist/assets/{about-page-BJVPM7Dq.js → about-page-CGkqxxBs.js} +1 -1
- package/dist/assets/{account-page-CIJjk5V4.js → account-page-DiSzOSwh.js} +1 -1
- package/dist/assets/{account-shell-sZRHf1fP.js → account-shell-BPmj200S.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-Ds9ArOpr.js → acp-run-detail-panel-BvRCFEzJ.js} +1 -1
- package/dist/assets/activation-list-route-CZq__gAN.js +1 -0
- package/dist/assets/{activity-redirect-page-DKNwRtHD.js → activity-redirect-page-BGqsNed4.js} +1 -1
- package/dist/assets/{activity-steps-panel-CJx0BfwS.js → activity-steps-panel-Bxl-qjae.js} +1 -1
- package/dist/assets/{add-credits-modal-CI7VP806.js → add-credits-modal-C0fiphmD.js} +1 -1
- package/dist/assets/add-credits-modal-DRX2CS6S.js +1 -0
- package/dist/assets/ai-page-cwJUbrS-.js +1 -0
- package/dist/assets/android-billing-handoff-C7Jmvp33.js +1 -0
- package/dist/assets/{api-key-screen-DfiREoeU.js → api-key-screen-7KsJUidH.js} +1 -1
- package/dist/assets/{app-DxMy0jwj.js → app-BTYvw9j7.js} +67 -67
- package/dist/assets/{app-info-Dgv7SkZ8.js → app-info-CiNBYe6p.js} +1 -1
- package/dist/assets/archive-redirect-page-bU67mNRe.js +1 -0
- package/dist/assets/assistant-status-panel-BR0fiwFx.js +1 -0
- package/dist/assets/auth-store-B3-zv38u.js +1 -0
- package/dist/assets/{auth-welcome-screen-B0dWyC6l.js → auth-welcome-screen-aYDHX6pt.js} +1 -1
- package/dist/assets/avatar-bundled-components-DBQdWt-_.js +1 -0
- package/dist/assets/avatar-random-DgTCtLWm.js +2 -0
- package/dist/assets/{await-org-header-settled-B94pxaLq.js → await-org-header-settled-BjDbOuPX.js} +1 -1
- package/dist/assets/{background-task-detail-panel-BW1meZPo.js → background-task-detail-panel-D3m2Rx3u.js} +1 -1
- package/dist/assets/billing-page-0fBEtVDQ.js +3 -0
- package/dist/assets/{billing-redirect-page-CnXiJrt4.js → billing-redirect-page-DEXNagS2.js} +1 -1
- package/dist/assets/{bookmarks-page-BQuBfJ7j.js → bookmarks-page-DLnn921J.js} +1 -1
- package/dist/assets/{bundle-confirm-page-kq5S_bwo.js → bundle-confirm-page-CWAZtbPt.js} +1 -1
- package/dist/assets/channel-transcript-panel-D8fVXqxj.js +1 -0
- package/dist/assets/channels-page-route-D7uKwArB.js +1 -0
- package/dist/assets/{chat-C5PndB-4.js → chat-DCVj3tsl.js} +1 -1
- package/dist/assets/{chat-D73b777k.js → chat-DToye7va.js} +1 -1
- package/dist/assets/{chat-BOA6lhRW.js → chat-DmxEcQrf.js} +1 -1
- package/dist/assets/{chat-acUsZfEJ.js → chat-gLL6ftZg.js} +1 -1
- package/dist/assets/chat-info-panel-OqamJ2nl.js +1 -0
- package/dist/assets/{checkout-continuation-Dee-mMCT.js → checkout-continuation-CpF06k20.js} +1 -1
- package/dist/assets/{checkout-page-0c4KiLCm.js → checkout-page-BNakh1SR.js} +1 -1
- package/dist/assets/checkout-return-target-CmeBFKz5.js +1 -0
- package/dist/assets/command-palette-CWUEICjD.js +1 -0
- package/dist/assets/{command-palette-CuYxot_s.js → command-palette-CeS6dSCr.js} +1 -1
- package/dist/assets/{command-palette-window-page-C1nSbisX.js → command-palette-window-page-C46VPZtx.js} +1 -1
- package/dist/assets/{community-page-BeXM3LH-.js → community-page-8lniGwq6.js} +1 -1
- package/dist/assets/{companion-accent-eO1EGNi2.js → companion-accent-zKEHhBKk.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-DsacQUQP.js → companion-dock-zones-page-4WLUZHQE.js} +1 -1
- package/dist/assets/{companion-layout-35k06GTE.js → companion-layout-Bz-abbs8.js} +1 -1
- package/dist/assets/{companion-surface-page-iIN786Vv.js → companion-surface-page-DL6NFXHp.js} +1 -1
- package/dist/assets/{companion-watch-frame-page-dabAlX34.js → companion-watch-frame-page-BgCq6Sum.js} +1 -1
- package/dist/assets/connect-page-dv3-s0yW.js +1 -0
- package/dist/assets/{consent-controls-nPLL-Vy1.js → consent-controls-ByVwHg9G.js} +1 -1
- package/dist/assets/{contacts-gateway-BvTzBPQl.js → contacts-gateway-BmoYU5P_.js} +1 -1
- package/dist/assets/contacts-page-route-BVvZDosS.js +1 -0
- package/dist/assets/{credential-entry-page-Dg7Iprxn.js → credential-entry-page-Cno3_YB6.js} +1 -1
- package/dist/assets/credentials-page-DXcTJXr-.js +1 -0
- package/dist/assets/{csv-preview-CmzA2Sku.js → csv-preview-Cr_CfhY7.js} +1 -1
- package/dist/assets/danger-zone-redirect-page-DA342PL2.js +1 -0
- package/dist/assets/debug-page-CXtFJUMQ.js +4 -0
- package/dist/assets/deploy-dialogs-CrOYEk5m.js +1 -0
- package/dist/assets/{deploy-dialogs-DmW-zLPB.js → deploy-dialogs-D46kbIA6.js} +1 -1
- package/dist/assets/{desktop-panel-DUYr64PK.js → desktop-panel-Cbmf8F-n.js} +2 -2
- package/dist/assets/{desktop-viewer-C0e921iW.js → desktop-viewer-tB0-zRzf.js} +1 -1
- package/dist/assets/{detail-card-Dmr5t1GN.js → detail-card-CaD43ZrD.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-BLVFDcnl.js → detail-panel-stop-button-gNXi_Ts9.js} +1 -1
- package/dist/assets/{detail-primitives-B5ncGbHT.js → detail-primitives-D_WliBqV.js} +1 -1
- package/dist/assets/developer-page-CFIgU8la.js +1 -0
- package/dist/assets/devices-redirect-page-Bhg49OQn.js +1 -0
- package/dist/assets/{dictation-overlay-page-C1kV226n.js → dictation-overlay-page-BsMvl2sj.js} +1 -1
- package/dist/assets/document-load-BFz4XrJ2.js +1 -0
- package/dist/assets/document-load-DcSrXXmj.js +1 -0
- package/dist/assets/{document-viewer-page-BtIzoS1f.js → document-viewer-page-CuM-JsaR.js} +1 -1
- package/dist/assets/emails-page-BhqMGA1p.js +1 -0
- package/dist/assets/{environment-store-CB5ErBSJ.js → environment-store-zuQZDtiM.js} +1 -1
- package/dist/assets/{file-diff-view-CAhMJUai.js → file-diff-view-BiYjBoFT.js} +1 -1
- package/dist/assets/{file-editor-CwN2HFdU.js → file-editor-3inLdtc5.js} +1 -1
- package/dist/assets/general-page-C2yaUqME.js +2 -0
- package/dist/assets/hatching-screen-B2e835Ah.js +1 -0
- package/dist/assets/{hosting-screen-D8ZIsJoR.js → hosting-screen-kZfC0Eub.js} +1 -1
- package/dist/assets/identity-page-route-Ck1Zk5s7.js +7 -0
- package/dist/assets/{inspect-page-CJpOMRNp.js → inspect-page-B0_V5Vg5.js} +5 -5
- package/dist/assets/integrations-page-BoRUHOyC.js +1 -0
- package/dist/assets/intelligence-layout-CArs93NG.js +1 -0
- package/dist/assets/intelligence-layout-slots-store-CCudenSv.js +1 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-CemhKPXj.js +1 -0
- package/dist/assets/{latest-assistant-text-B4u2AiE9.js → latest-assistant-text-C0oJe4mD.js} +1 -1
- package/dist/assets/library-detail-page-D9VLB-K7.js +1 -0
- package/dist/assets/library-page-C2vkWQpe.js +1 -0
- package/dist/assets/local-mode-CNRBGm_3.js +1 -0
- package/dist/assets/login-page-BRBpEBSu.js +1 -0
- package/dist/assets/{logout-page-B8hgZoc9.js → logout-page-ClnC5wEN.js} +1 -1
- package/dist/assets/{logs-layout-DUysuL3y.js → logs-layout-Bw0NQs7l.js} +1 -1
- package/dist/assets/{markdown-preview-DyR2BqGw.js → markdown-preview-DIQceAug.js} +1 -1
- package/dist/assets/{media-preview-Em8syzWu.js → media-preview-Cb_GSGUr.js} +1 -1
- package/dist/assets/{memory-page-route-DzOOlirE.js → memory-page-route-O7F5djFJ.js} +2 -2
- package/dist/assets/memory-router-playground-page-VQyH9fRL.js +1 -0
- package/dist/assets/{message-files-panel-CamSxR4B.js → message-files-panel-CjzHcVvK.js} +1 -1
- package/dist/assets/{metric-card-BuuwtBVI.js → metric-card-CtfHyEHi.js} +1 -1
- package/dist/assets/native-attachment-pickers-CoTqYobC.js +1 -0
- package/dist/assets/native-file-C0eFlRbH.js +1 -0
- package/dist/assets/{notifications-page-D8viomi2.js → notifications-page-a51nGqvZ.js} +1 -1
- package/dist/assets/{oauth-complete-page-Dsm4C9hD.js → oauth-complete-page-Bxvev6zU.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-BupxRxrP.js → oauth-popup-complete-page-drLfs7y-.js} +2 -2
- package/dist/assets/paired-platform-identity-D41L_sNl.js +1 -0
- package/dist/assets/{pairing-page-BbRSlVwS.js → pairing-page-CKIaZfv1.js} +1 -1
- package/dist/assets/password-reset-page-X5fRMCls.js +1 -0
- package/dist/assets/{pdf-file-preview-DCb3ZrgB.js → pdf-file-preview-yruALmHe.js} +1 -1
- package/dist/assets/personality-page-Brq0Ff_Y.js +1 -0
- package/dist/assets/personality-page-xEToUSjw.js +1 -0
- package/dist/assets/personality-sliders-DlOEoZnC.js +1 -0
- package/dist/assets/{plans-page-DmlUsSWE.js → plans-page-D-1GTGmg.js} +1 -1
- package/dist/assets/{platform-loopback-page-BzVt_Muk.js → platform-loopback-page-H7EDPk5C.js} +1 -1
- package/dist/assets/{plugin-detail-page-CrjPj9Ny.js → plugin-detail-page-DG-dqW8Y.js} +1 -1
- package/dist/assets/{plugins-page-DaOlK_74.js → plugins-page-CEG_SE2-.js} +1 -1
- package/dist/assets/plugins-surface-CzTPuG2D.js +1 -0
- package/dist/assets/{preview-error-vNKC-_Ku.js → preview-error-BxxJs_Br.js} +1 -1
- package/dist/assets/privacy-page-BWCQOVuJ.js +1 -0
- package/dist/assets/{privacy-screen-DimQtrs8.js → privacy-screen-ENSxkpiX.js} +1 -1
- package/dist/assets/{provider-callback-page-RbApw_Fy.js → provider-callback-page-uhtnQ4vd.js} +1 -1
- package/dist/assets/{provider-key-DpPX7wVh.js → provider-key-GYC3h_ua.js} +1 -1
- package/dist/assets/{provider-signup-page-CJaJXoJf.js → provider-signup-page-HhyksJMZ.js} +1 -1
- package/dist/assets/{quick-input-page-B3HuqceO.js → quick-input-page-D7EX9WYI.js} +1 -1
- package/dist/assets/{research-mock-page-DMCjkxzO.js → research-mock-page-BMvwJewz.js} +1 -1
- package/dist/assets/research-onboarding-route-DPvupxVy.js +50 -0
- package/dist/assets/{review-terms-screen-Bd-HjWsQ.js → review-terms-screen-QkqfPclc.js} +1 -1
- package/dist/assets/routes-BGrnInRM.js +1 -0
- package/dist/assets/schedules-QsvJ9EAJ.js +1 -0
- package/dist/assets/schedules-page-hqkSwdek.js +1 -0
- package/dist/assets/security-redirect-page-D7uKQ2Mg.js +1 -0
- package/dist/assets/select-assistant-screen-CAYP7ba-.js +1 -0
- package/dist/assets/{self-hosted-servers-B3u9o3gv.js → self-hosted-servers-DDnxxI2_.js} +1 -1
- package/dist/assets/{service-form-controls-DK08HJHP.js → service-form-controls-C1cOQ-im.js} +1 -1
- package/dist/assets/{setting-row-DCNMIFOK.js → setting-row-C0Q_Fq2j.js} +1 -1
- package/dist/assets/{settings-divider-CrsTYYA8.js → settings-divider-BQN825Ck.js} +1 -1
- package/dist/assets/{settings-layout-Db7d5Mos.js → settings-layout-Dh9atc0e.js} +1 -1
- package/dist/assets/share-feedback-modal-CpXF_isk.js +1 -0
- package/dist/assets/{share-feedback-modal-D7GARR0f.js → share-feedback-modal-DRM49ZB6.js} +1 -1
- package/dist/assets/{sidebar-tree-CB3bELX6.js → sidebar-tree-a6N3epHy.js} +1 -1
- package/dist/assets/{signup-page-BpvoG6nX.js → signup-page-BMzlbRGq.js} +1 -1
- package/dist/assets/{signup-shell-6tfevxfj.js → signup-shell-BHXUidkH.js} +1 -1
- package/dist/assets/{skill-detail-page-DgN34ik5.js → skill-detail-page-CjhFsmTB.js} +2 -2
- package/dist/assets/{skill-detail-panel-B_RwRP5K.js → skill-detail-panel-DF7eV_M1.js} +1 -1
- package/dist/assets/{skill-removal-dialog-DFwTH584.js → skill-removal-dialog-BsjFId9V.js} +1 -1
- package/dist/assets/{skills-page-D54HQhjb.js → skills-page-DDhCEWsE.js} +1 -1
- package/dist/assets/sounds-page-BOscbT2g.js +1 -0
- package/dist/assets/{start-screen-JZxJJdOW.js → start-screen-BTcwn0Rq.js} +1 -1
- package/dist/assets/{stt-language-picker-modal-D7x8NqJd.js → stt-language-picker-modal-Cb0Rbnsg.js} +1 -1
- package/dist/assets/subagent-detail-panel-BtBuhr1c.js +1 -0
- package/dist/assets/superpowers-page-BW_6ZBW0.js +1 -0
- package/dist/assets/system-events-page-B6HWfF1o.js +1 -0
- package/dist/assets/system-events-redirect-page-DB2YFarv.js +1 -0
- package/dist/assets/{text-preview-C1NMKaAU.js → text-preview-CjURWwWf.js} +1 -1
- package/dist/assets/{theme-stage-page-CQrjXQDR.js → theme-stage-page-BOTIsKUX.js} +1 -1
- package/dist/assets/{tiptap-document-editor-BHRei95S.js → tiptap-document-editor-DNbRDmaM.js} +1 -1
- package/dist/assets/tool-detail-panel-6Dca1KnP.js +1 -0
- package/dist/assets/tool-detail-panel-DcaXQLTc.js +15 -0
- package/dist/assets/{trait-cycle-row-DQhdJCJ-.js → trait-cycle-row-CeKchpD2.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-C6C4dMOJ.js → upgrade-cancel-page-DX9x5pYM.js} +1 -1
- package/dist/assets/{upgrade-success-page-CC8Q1etX.js → upgrade-success-page-DZPHun5r.js} +1 -1
- package/dist/assets/{usage-redirect-page--upJECGD.js → usage-redirect-page-B4XwvrF5.js} +1 -1
- package/dist/assets/{use-app-delete-B6SYqeZ7.js → use-app-delete-CTAC12GU.js} +1 -1
- package/dist/assets/use-assistant-identity-details-DwY-UTbv.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-BFsz2VQH.js +1 -0
- package/dist/assets/{use-edge-swipe-back-BD_Ah2bU.js → use-edge-swipe-back-yu9lVyqu.js} +1 -1
- package/dist/assets/{use-hotkey-recorder-DbV6Cyhk.js → use-hotkey-recorder-BdOIjDrJ.js} +1 -1
- package/dist/assets/use-invite-link-dialog-Dtpx79a6.js +1 -0
- package/dist/assets/{use-platform-assistant-id-BF4WUv0T.js → use-platform-assistant-id-CN0kUO7z.js} +1 -1
- package/dist/assets/{use-return-to-short-circuit-CvAy4AQQ.js → use-return-to-short-circuit-DSRiJl-E.js} +1 -1
- package/dist/assets/{use-side-list-room-yQSI40sv.js → use-side-list-room-CHDictwl.js} +1 -1
- package/dist/assets/{use-skill-actions-nsr480LX.js → use-skill-actions-B_lZHEC6.js} +1 -1
- package/dist/assets/{use-skill-detail-files-MdjMAlCe.js → use-skill-detail-files-N2V2C8HC.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-sDA9skW6.js +1 -0
- package/dist/assets/{use-transcript-message-by-id-sQ_bR9wX.js → use-transcript-message-by-id-D7Llb7KM.js} +1 -1
- package/dist/assets/voice-page-DO8QCdsO.js +1 -0
- package/dist/assets/{wake-detail-panel-Bd36PxOK.js → wake-detail-panel-BRlSf86W.js} +1 -1
- package/dist/assets/{weather-forecast-display-C93-n3xN.js → weather-forecast-display-BIb_fU7z.js} +1 -1
- package/dist/assets/{welcome-screen-CKVwXjBE.js → welcome-screen-VtflUAbg.js} +1 -1
- package/dist/assets/{workflow-detail-panel-BLoKwML7.js → workflow-detail-panel-BIuisJbg.js} +1 -1
- package/dist/assets/workspace-B0l6JUfL.js +1 -0
- package/dist/assets/workspace-B7Vd5NRL.js +1 -0
- package/dist/assets/workspace-BjrEylvz.js +1 -0
- package/dist/assets/workspace-DR2tWF9N.js +1 -0
- package/dist/assets/workspace-page-CGRLvetX.js +1 -0
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/activation-list-route-B30qKxxA.js +0 -1
- package/dist/assets/add-credits-modal-hieez1oi.js +0 -1
- package/dist/assets/ai-page-COCv3iDh.js +0 -1
- package/dist/assets/android-billing-handoff-Do_yAgW0.js +0 -1
- package/dist/assets/archive-redirect-page-DMWMCMyY.js +0 -1
- package/dist/assets/assistant-status-panel-CLZ_RbJF.js +0 -1
- package/dist/assets/auth-store-DNmjNVVJ.js +0 -1
- package/dist/assets/avatar-bundled-components-D02Cc9qY.js +0 -1
- package/dist/assets/avatar-random-BUg7IWMp.js +0 -2
- package/dist/assets/billing-page-xuhzUOlJ.js +0 -3
- package/dist/assets/channel-transcript-panel-BJPFnqaR.js +0 -1
- package/dist/assets/channels-page-route-CfYjH2LF.js +0 -1
- package/dist/assets/chat-info-panel-D0qexb8N.js +0 -1
- package/dist/assets/checkout-return-target-B0GyRUat.js +0 -1
- package/dist/assets/command-palette-Cx7yIXQ_.js +0 -1
- package/dist/assets/connect-page-B60uN-ZC.js +0 -1
- package/dist/assets/contacts-page-route-DzndMePQ.js +0 -1
- package/dist/assets/credentials-page-i7J7SwsS.js +0 -1
- package/dist/assets/danger-zone-redirect-page-B5Tl0pgh.js +0 -1
- package/dist/assets/debug-page-GKgG-G0m.js +0 -4
- package/dist/assets/deploy-dialogs-BKnTLmik.js +0 -1
- package/dist/assets/developer-page-Dbq0603s.js +0 -1
- package/dist/assets/devices-redirect-page-C_y8UcR5.js +0 -1
- package/dist/assets/document-load-BnrvE-C_.js +0 -1
- package/dist/assets/document-load-XHdVVQyo.js +0 -1
- package/dist/assets/emails-page-BmjIvU4y.js +0 -1
- package/dist/assets/general-page-C2U-DG-m.js +0 -2
- package/dist/assets/hatching-screen-BU8TigBJ.js +0 -1
- package/dist/assets/identity-page-route-CR_lDoMi.js +0 -7
- package/dist/assets/integrations-page-CjcidO1m.js +0 -1
- package/dist/assets/intelligence-layout-C3RKPmg0.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-Cc8q31-1.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-BTaXxkyv.js +0 -1
- package/dist/assets/library-detail-page-vjxO6rCt.js +0 -1
- package/dist/assets/library-page-DMca0L7D.js +0 -1
- package/dist/assets/local-mode-Di1vm0TR.js +0 -1
- package/dist/assets/login-page-Bz2m5Zih.js +0 -1
- package/dist/assets/memory-router-playground-page-DqQgUpVI.js +0 -1
- package/dist/assets/native-attachment-pickers-Co-6a_p5.js +0 -1
- package/dist/assets/native-file-DVLbtjDu.js +0 -1
- package/dist/assets/paired-platform-identity-CblGKBB2.js +0 -1
- package/dist/assets/password-reset-page-1lN0ZVQi.js +0 -1
- package/dist/assets/personality-page-CRhoMs2K.js +0 -1
- package/dist/assets/personality-page-CufOsQwH.js +0 -1
- package/dist/assets/personality-sliders-wbkdQqh4.js +0 -1
- package/dist/assets/plugins-surface-DDTktJOZ.js +0 -1
- package/dist/assets/privacy-page-Dk3CbfNJ.js +0 -1
- package/dist/assets/research-onboarding-route-BbKHByvB.js +0 -50
- package/dist/assets/routes-CipnZZkn.js +0 -1
- package/dist/assets/schedules-l9yD8l1M.js +0 -1
- package/dist/assets/schedules-page-Djqt9Vja.js +0 -1
- package/dist/assets/security-redirect-page-DjXWbz9T.js +0 -1
- package/dist/assets/select-assistant-screen-C-FSTaZC.js +0 -1
- package/dist/assets/share-feedback-modal-CtZMQEye.js +0 -1
- package/dist/assets/sounds-page-Cw8SWT1c.js +0 -1
- package/dist/assets/subagent-detail-panel-buxSyEAP.js +0 -1
- package/dist/assets/superpowers-page-cPWfA0se.js +0 -1
- package/dist/assets/system-events-page-8K2GCQdQ.js +0 -1
- package/dist/assets/system-events-redirect-page-DBbcQGWP.js +0 -1
- package/dist/assets/tool-detail-panel-BmP7AMGA.js +0 -15
- package/dist/assets/tool-detail-panel-JVXpN3YM.js +0 -1
- package/dist/assets/use-assistant-identity-details-CnmR7Be9.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-DwlaNKB9.js +0 -1
- package/dist/assets/use-invite-link-dialog-B8DtFj1u.js +0 -1
- package/dist/assets/use-supports-credentials-settings-Db6r5haR.js +0 -1
- package/dist/assets/voice-page-Cfg787uE.js +0 -1
- package/dist/assets/workspace-B7H-ZqBy.js +0 -1
- package/dist/assets/workspace-CU8OrPZ7.js +0 -1
- package/dist/assets/workspace-Cfz5TGM8.js +0 -1
- package/dist/assets/workspace-YGLhaK9w.js +0 -1
- package/dist/assets/workspace-page-HE84odf5.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Bo as t,C as n,Cc as r,Fg as i,Ig as a,Lg as o,Od as s,Pg as c,S as l,Sc as u,Sx as d,T_ as f,Tc as p,Vm as m,Vo as h,Wd as g,_b as _,af as v,b as y,bb as b,cf as ee,fd as x,fx as S,ix as C,kd as te,lf as ne,nx as w,of as T,uf as re,vb as E,x as ie,xx as D,y as ae}from"./app-DxMy0jwj.js";import{Jn as O,Zn as k,er as A,j}from"./vendor-B2dSzLzU.js";import{t as M,x as N}from"./react-B9IgSVeK.js";import{$n as P,Ki as F,qn as I,si as L}from"./icons-bnwMda87.js";import{t as R}from"./a2a-invite-Cj6bQz4C.js";var z=e(N(),1),B=M(),V=[`no_one`,`guardian_only`,`trusted_contacts`,`any_contact`,`strangers`],H=`trusted_contacts`,U=new Set([`platform`,`a2a`]),W=new Set([`vellum`,`whatsapp`]);function G(e){return W.has(e)}function K(e){return t=>{w.error(t instanceof Error?t.message:e)}}function q(e){return typeof e==`string`&&V.includes(e)}function J(e){return U.has(e)}function Y(e){return(e?.policies??[]).filter(e=>!J(e.channelType)&&!G(e.channelType)).map(e=>({...e,policy:q(e.policy)?e.policy:`trusted_contacts`}))}async function X(e,t,n,r){if(J(t))throw new _(403,`Channel "${t}" is internal and is not user-configurable.`);let{data:i,error:a,response:o}=await x({path:{assistant_id:e,channel_type:t},body:{policy:n,note:r??null},throwOnError:!1});if(E(o,a,`Failed to save channel policy.`),!o.ok)throw new _(o.status,b(a,o,`Failed to save channel policy.`));if(!i?.policy)throw new _(500,`Gateway returned no policy in response.`);return i.policy}var oe=`0.10.0`;function Z(){return m(oe)}function se(e){let t=e-Date.now();if(t<=0)return`Expired`;let n=Math.ceil(t/(1e3*60*60*24));return n===1?`Expires in 1 day`:`Expires in ${n} days`}function ce({open:e,assistantId:t,onClose:n}){let{t:r}=j(),[i,a]=(0,z.useState)(!1),o=(0,z.useRef)(null),s=(0,z.useRef)(!1),c=O({...v({path:{assistant_id:t}})}),l=(0,z.useRef)(c.mutate);(0,z.useLayoutEffect)(()=>{l.current=c.mutate});let u=(0,z.useRef)(c.reset);(0,z.useLayoutEffect)(()=>{u.current=c.reset}),(0,z.useEffect)(()=>{e&&!s.current&&l.current({path:{assistant_id:t}}),s.current=e},[e,t]),(0,z.useEffect)(()=>()=>{o.current&&clearTimeout(o.current)},[]);let p=(0,z.useCallback)(()=>{u.current(),a(!1),o.current&&=(clearTimeout(o.current),null),n()},[n]),m=(0,z.useCallback)(e=>{f(e,{errorMessage:`Couldn't copy the invite link.`,onCopied:()=>{a(!0),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>a(!1),2e3)}})},[]),h=c.isSuccess&&c.data.token?R({senderAssistantId:t,token:c.data.token}):``;return(0,B.jsx)(C.Root,{open:e,onOpenChange:e=>{e||p()},children:(0,B.jsxs)(C.Content,{size:`sm`,children:[(0,B.jsx)(C.Header,{children:(0,B.jsx)(C.Title,{children:r(`generateInviteLinkDialog.title`)})}),(0,B.jsx)(C.Body,{children:c.isPending?(0,B.jsxs)(`div`,{className:`flex items-center gap-2 py-2 text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[(0,B.jsx)(I,{className:`h-4 w-4 animate-spin`}),r(`generateInviteLinkDialog.creating`)]}):c.isError?(0,B.jsxs)(`div`,{className:`space-y-3`,children:[(0,B.jsx)(`p`,{role:`alert`,className:`!m-0 text-body-medium-lighter`,style:{color:`var(--system-negative-strong)`},children:r(`generateInviteLinkDialog.createFailed`)}),(0,B.jsx)(d,{variant:`outlined`,onClick:()=>c.mutate({path:{assistant_id:t}}),children:r(`generateInviteLinkDialog.tryAgain`)})]}):c.isSuccess?(0,B.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,B.jsx)(D,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:r(`generateInviteLinkDialog.shareHint`)}),(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,B.jsx)(S,{type:`text`,readOnly:!0,value:h,fullWidth:!0,wrapperClassName:`flex-1`,className:`font-mono`,onFocus:e=>e.currentTarget.select()}),(0,B.jsx)(`button`,{type:`button`,onClick:()=>m(h),"aria-label":r(`generateInviteLinkDialog.copyAriaLabel`),className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-md border border-[var(--border-base)] hover:bg-[var(--surface-hover)]`,children:i?(0,B.jsx)(F,{className:`h-4 w-4`}):(0,B.jsx)(L,{className:`h-4 w-4`})})]}),c.data.expiresAt!=null&&(0,B.jsx)(D,{variant:`body-small-default`,style:{color:`var(--content-tertiary)`},children:se(c.data.expiresAt)})]}):null}),(0,B.jsx)(C.Footer,{children:(0,B.jsx)(d,{variant:`outlined`,onClick:p,children:r(`generateInviteLinkDialog.done`)})})]})})}function le({onClick:e}){let{t}=j();return(0,B.jsx)(d,{variant:`outlined`,size:`compact`,leftIcon:(0,B.jsx)(P,{className:`h-3.5 w-3.5`}),onClick:e,children:t(`shareConnectionLinkButton.label`)})}function ue(e){let n=A(),i=Z(),a=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),o=(0,z.useMemo)(()=>h(a),[a]),s=k({...t(a),enabled:i,select:Y}),c=(0,z.useMemo)(()=>{let e={};for(let t of s.data??[])r(t.channelType)&&(e[t.channelType]=t.policy);return e},[s.data]),l=O({mutationFn:({channelKey:t,policy:n})=>X(e,t,n),onSuccess:()=>n.invalidateQueries({queryKey:o}),onError:K(`Failed to save channel policy`)}),u=(0,z.useCallback)((e,t)=>{l.mutate({channelKey:e,policy:t})},[l]);return i?{policies:c,savingKey:l.isPending?l.variables?.channelKey??null:null,isLoading:s.isPending,isError:s.isError,onChange:u}:{policies:void 0,savingKey:null,isLoading:!1,isError:!1,onChange:void 0}}var de=`0.11.5-dev.202608242314.38e0513`;function fe(){return m(de)}var pe=`0.11.5-dev.202608252008.65007aa`;function me(){return m(pe)}var Q={slack:i,telegram:a,discord:c,email:void 0,phone:o},he={slack:`useAssistantChannels.setupPrompt.slack`,telegram:`useAssistantChannels.setupPrompt.telegram`,discord:`useAssistantChannels.setupPrompt.discord`,email:`useAssistantChannels.setupPrompt.email`,phone:`useAssistantChannels.setupPrompt.phone`},$={slack:`useAssistantChannels.finishPrompt.slack`,telegram:`useAssistantChannels.finishPrompt.telegram`,discord:`useAssistantChannels.finishPrompt.discord`,email:`useAssistantChannels.finishPrompt.email`,phone:`useAssistantChannels.finishPrompt.phone`},ge=15e3;function _e({assistantId:e,onStartSetupConversation:t}){let{t:r}=j(`common`),i=A(),a=(0,z.useMemo)(()=>({path:{assistant_id:e}}),[e]),o=(0,z.useMemo)(()=>te(a),[a]),c=fe(),u=me(),d=(0,z.useMemo)(()=>ve(c),[c]),f=k({...s(a),enabled:!!e,refetchInterval:ge,select:e=>e.snapshots}),p=(0,z.useMemo)(()=>ye(f.data??[],d,u),[f.data,d,u]),m=p.some(e=>e.key===`slack`&&e.configured),h=k({...ee(a),enabled:m,select:e=>e.threadMode}),g=ue(e),_=(0,z.useCallback)(()=>i.invalidateQueries({queryKey:o}),[i,o]),v=O({mutationFn:async t=>{let n=Q[t];if(!n)throw Error(`No route clears ${t} credentials.`);await n({path:{assistant_id:e},throwOnError:!0})},onSettled:(t,r,a)=>{_(),a===`slack`&&n(i,e)}}),b=y({assistantId:e}),x=ie({assistantId:e}),S=k({...T(a),enabled:!!e&&u}),C=l({assistantId:e}),w=ae({assistantId:e}),E=O({...re(),onSuccess:()=>{i.invalidateQueries({queryKey:ne(a)})}}),D=x.mutate,M=(0,z.useCallback)(e=>{D(e)},[D]),N=b.mutate,P=(0,z.useCallback)(e=>{N(e)},[N]),F=C.mutate,I=(0,z.useCallback)((e,t)=>{F({botToken:e,appToken:t})},[F]),L=E.mutate,R=(0,z.useCallback)(t=>{L({path:{assistant_id:e},body:{threadMode:t}})},[L,e]),B=w.mutateAsync,V=(0,z.useCallback)(async(e,t)=>{await B({accountSid:e,authToken:t})},[B]),H=(0,z.useCallback)((e,n=!1)=>{t&&t(r(n?$[e]:he[e]))},[t,r]),U=v.mutate,W=(0,z.useCallback)(e=>{U(e)},[U]);return{channels:p,pendingChannelKey:v.isPending?v.variables??null:null,slackThreadMode:h.data,slackThreadModePending:E.isPending,channelPolicies:g.policies,policySavingKey:g.savingKey,policiesLoading:g.isLoading,policiesError:g.isError,onChannelPolicyChange:g.onChange,onSetup:t?H:void 0,onDisconnect:W,onSaveTelegramToken:P,telegramSaveStatus:b.status,telegramSaveError:b.error?.message??null,onSaveDiscordToken:M,discordSaveStatus:x.status,discordSaveError:x.error?.message??null,discordInviteUrl:x.data?.data?.inviteUrl??S.data?.inviteUrl,onSaveSlackConfig:I,slackSaveStatus:C.status,slackSaveError:C.error?.message??null,onSlackThreadModeChange:R,onSaveTwilioCredentials:V}}function ve(e){return e?u:u.filter(e=>e!==`discord`)}function ye(e,t,n){let r=new Map;for(let t of e)r.set(t.channel,t);return t.map(e=>{let t=r.get(e);return{key:e,status:be(t),configured:t?.setupStatus===`ready`,canDisconnect:Q[e]!==void 0&&(e!==`discord`||n),canManualEntry:p[e].credentialForm!==void 0&&(e!==`discord`||n),health:t?.health,address:t?.channelHandle??void 0}})}function be(e){return e?e.ready?`ready`:e.setupStatus===`not_configured`?`not_configured`:`incomplete`:`not_configured`}function xe(e){let t=A(),[n,r]=(0,z.useState)(!1);return{isOpen:n,open:(0,z.useCallback)(()=>{r(!0)},[]),close:(0,z.useCallback)(()=>{r(!1),t.invalidateQueries({queryKey:g({path:{assistant_id:e}})})},[t,e])}}export{Z as a,K as c,ce as i,H as l,_e as n,X as o,le as r,Y as s,xe as t,V as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Bm as e}from"./app-DxMy0jwj.js";var t=`0.10.8`;function n(n){return e(t,n)}export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$a as t,As as n,Ba as r,Bc as i,Bt as a,Cu as o,Eb as s,Es as c,Gt as l,Ha as u,Jt as d,Kb as f,Md as p,Qa as m,Qb as h,Sx as g,Ts as _,Ua as v,Uf as y,Uy as b,Va as x,Vb as S,Vc as C,Vt as w,Wa as T,ab as E,ao as D,ax as O,dx as k,eo as A,io as j,it as M,ix as N,jd as P,nm as ee,no as F,nt as I,nx as te,ob as ne,ot as re,ox as ie,ro as L,rt as ae,to as oe,wb as se,xu as ce,yg as le,za as ue}from"./app-DxMy0jwj.js";import{Zn as R,er as de,j as z}from"./vendor-B2dSzLzU.js";import{_ as fe,n as pe,r as B,t as me,x as he}from"./react-B9IgSVeK.js";import{Fa as ge,ur as V}from"./icons-bnwMda87.js";import{t as H}from"./detail-card-Dmr5t1GN.js";import{t as _e}from"./stt-language-picker-modal-D7x8NqJd.js";import{t as ve}from"./use-hotkey-recorder-DbV6Cyhk.js";var U=e(he(),1),W=me();function G({label:e,selected:t,recording:n=!1,onClick:r}){return(0,W.jsxs)(`button`,{type:`button`,onClick:r,className:[`inline-flex items-center gap-2 rounded-lg border px-3 py-1.5 text-body-medium-lighter transition-colors`,`border-[var(--border-subtle)]`,t?`bg-[var(--surface-active)]`:`bg-[var(--surface-lift)] hover:bg-[var(--surface-hover)]`,n?`animate-pulse`:``].filter(Boolean).join(` `),children:[(0,W.jsx)(`span`,{className:[`inline-block h-2.5 w-2.5 rounded-full border`,t?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)]`].join(` `)}),(0,W.jsx)(`span`,{className:`text-[var(--content-default)]`,children:e})]})}function ye(){let{t:e}=z(`settings`),{available:t,currentCode:n,configuredProviderId:r,selectLanguage:i,selecting:a}=M(I()),[o,s]=(0,U.useState)(!1);return t?(0,W.jsxs)(H,{title:e(`listeningLanguageCard.title`),subtitle:e(`listeningLanguageCard.subtitle`),children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(`span`,{className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`,children:re(n,r)}),(0,W.jsx)(g,{variant:`outlined`,onClick:()=>s(!0),className:`shrink-0`,children:e(`listeningLanguageCard.change`)})]}),(0,W.jsx)(_e,{open:o,onOpenChange:s,title:e(`listeningLanguageCard.title`),currentCode:n,configuredProviderId:r,selectLanguage:i,selecting:a})]}):null}var K=`flux`;function be(e){return e===`vellum`}function xe(e,t){let n=e?.trim().toLowerCase();return!n||n===`multi`||t===void 0?!0:t.includes(n.split(`-`)[0]??n)}function Se(){let{t:e}=z(`settings`),t=de(),n=ee(),r=I(),[i,a]=(0,U.useState)(!1),{data:o}=R({...P({path:{assistant_id:r}}),enabled:n,staleTime:3e4}),s=o?.services?.stt,{data:c}=R({...y({path:{assistant_id:r}}),enabled:n,staleTime:5*6e4}),l=s?.roles?.liveVoice?.provider??s?.provider,u=c?.providers?.find(e=>e.id===l),d=u?.modelFamilies?.includes(K)??!1;if(!l||!d)return null;let f=xe(s?.language,u?.turnDetectionLanguages),m=s?.roles?.liveVoice,h=m?m.model:s?.providers?.[l]?.model,g=h===void 0?be(l)&&f:h===K,_=async n=>{a(!0);try{let{response:e}=await le({path:{assistant_id:r},body:{services:{stt:{roles:{liveVoice:{provider:l,model:n?K:u?.baseModelFamily}}}}},throwOnError:!1});if(!e?.ok)throw Error(String(e?.status??``));await t.invalidateQueries({queryKey:p({path:{assistant_id:r}})})}catch{te.error(e(`voicePage.turnDetectionFailed`))}finally{a(!1)}};return(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`voicePage.turnDetectionLabel`)}),(0,W.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(f?`voicePage.turnDetectionDescription`:`voicePage.turnDetectionLanguageUnsupported`)}),(0,W.jsx)(k,{checked:g,disabled:i||!f&&!g,onChange:e=>void _(e),"aria-label":e(`voicePage.turnDetectionLabel`)})]})}var q=`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,J=`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,Ce=2;function Y(e){let t=[];return e.ctrlKey&&t.push(`control`),e.altKey&&t.push(`option`),e.shiftKey&&t.push(`shift`),e.metaKey&&t.push(`command`),D(t)}function we(){let{t:e}=z(`settings`),n=A(),r=ue(e=>e.registered)===!1,[i,a]=(0,U.useState)(null),[s,c]=(0,U.useState)(!1),[l,u]=(0,U.useState)([]),[d,f]=(0,U.useState)(!1),p=(0,U.useRef)(null),h=(0,U.useCallback)(async()=>{a((await ce())?.inputMonitoring.status??null)},[]);(0,U.useEffect)(()=>{h();let e=setInterval(()=>{h()},2e3);return()=>{clearInterval(e)}},[h]);let _=(0,U.useCallback)(()=>{o(`inputMonitoring`).then(h)},[h]),v=(0,U.useCallback)(e=>{oe(e),c(!1),u([]),f(!1),e.kind!==`off`&&_()},[_]),y=(0,U.useCallback)(()=>{c(!0),u([]),f(!1),requestAnimationFrame(()=>{p.current?.focus()})},[]),b=(0,U.useCallback)(()=>{c(!1),u([]),f(!1)},[]),x=(0,U.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){b();return}u(Y(e))},[b]),S=(0,U.useCallback)(e=>{if(s&&!(Y(e).length>0)){if(l.length>=Ce){v({kind:`modifierOnly`,modifiers:l});return}u([]),f(!0)}},[v,l,s]);(0,U.useEffect)(()=>{if(!s)return;let e=e=>{p.current&&!p.current.contains(e.target)&&b()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[b,s]);let C=t(n),w=n.kind===`modifierOnly`&&!C,T=n.kind!==`off`,E=n.kind===`modifierOnly`&&n.modifiers.includes(`control`)&&n.modifiers.includes(`option`),D=i===`granted`;return(0,W.jsx)(H,{title:e(`voiceKeyCard.title`),subtitle:e(`voiceKeyCard.subtitle`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsxs)(`div`,{ref:p,tabIndex:s?0:-1,onKeyDown:s?x:void 0,onKeyUp:s?S:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[(0,W.jsx)(G,{label:e(`voiceKeyCard.fnLabel`),selected:C,onClick:()=>v(m)}),s?(0,W.jsx)(G,{label:l.length>0?j(l):e(`voiceKeyCard.recordingPrompt`),selected:!0,recording:!0,onClick:b}):(0,W.jsx)(G,{label:n.kind===`modifierOnly`&&!C?j(n.modifiers):e(`voiceKeyCard.customLabel`),selected:w,onClick:y}),(0,W.jsx)(G,{label:e(`voiceKeyCard.offLabel`),selected:!T,onClick:()=>v({kind:`off`})})]}),d&&(0,W.jsxs)(`div`,{className:q,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voiceKeyCard.customHint`)})]}),T&&i!==null&&!D&&(0,W.jsxs)(`div`,{className:`flex flex-col items-start gap-2 pt-1`,children:[(0,W.jsxs)(`div`,{className:J,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voiceKeyCard.needsInputMonitoring`)})]}),(0,W.jsx)(g,{variant:`outlined`,onClick:_,children:e(`voiceKeyCard.allowInputMonitoring`)})]}),T&&D&&r&&(0,W.jsxs)(`div`,{className:J,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voiceKeyCard.refusedNote`)})]}),C&&(0,W.jsxs)(`div`,{className:q,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voiceKeyCard.fnDictationNote`)})]}),E&&(0,W.jsxs)(`div`,{className:q,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voiceKeyCard.voiceOverNote`)})]})]})})}function Te({assistantId:e,open:t,onOpenChange:n}){return(0,W.jsx)(N.Root,{open:t,onOpenChange:n,children:(0,W.jsx)(N.Content,{size:`md`,children:(0,W.jsx)(Ee,{assistantId:e,onDone:()=>n(!1)})})})}function Ee({assistantId:e,onDone:t}){let{t:n}=z(),{available:r,currentModel:i,selectModel:a,selecting:o}=l(e);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(N.Header,{children:[(0,W.jsx)(N.Title,{children:n(`voicePickerModal.title`)}),r&&(0,W.jsx)(N.Description,{children:`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`})]}),(0,W.jsx)(N.Body,{children:(0,W.jsx)(w,{assistantId:e,filterBySource:!0,value:i,onChange:a,autoScrollToSelected:!0})}),(0,W.jsxs)(N.Footer,{className:`items-center justify-between gap-3`,children:[(0,W.jsx)(ae,{}),(0,W.jsx)(g,{variant:`primary`,onClick:t,disabled:o,className:`shrink-0`,children:n(`voicePickerModal.done`)})]})]})}function De(){let{t:e}=z(`settings`),t=I(),{available:n,settled:r,voices:i,currentModel:o}=l(t),s=i.find(e=>e.model===o)??i[0],[c,u]=(0,U.useState)(!1),f=b.use.name(),p=f?e(`voicePickerCard.titleWithName`,{name:f}):e(`voicePickerCard.title`);return r?n&&s?(0,W.jsxs)(H,{title:p,subtitle:e(`voicePickerCard.creditsNote`),children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(a,{description:s.description,className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`}),(0,W.jsx)(g,{variant:`outlined`,onClick:()=>u(!0),className:`shrink-0`,children:e(`voicePickerCard.changeButton`)})]}),(0,W.jsx)(Te,{assistantId:t,open:c,onOpenChange:u})]}):(0,W.jsx)(H,{title:p,children:(0,W.jsx)(d,{})}):(0,W.jsx)(H,{title:p,children:(0,W.jsx)(S,{as:`span`,role:`status`,"aria-label":e(`voicePickerCard.loadingAria`),className:`block h-9 w-48`})})}var Oe=[{prefKey:`showUserTranscript`,label:`Show the words you say`,description:`Live transcription while you speak.`},{prefKey:`showAssistantTranscript`,label:`Show the words the assistant says`,description:`Text alongside the spoken response.`}],ke=`We recommend keeping both off to start. It feels more like a real conversation.`;function Ae(){let{t:e}=z();return(0,W.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:e(`voiceTranscriptToggles.recommendedOff`)})}function je({label:e,description:t,showBadge:n,checked:r,onChange:i}){return(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,W.jsxs)(`div`,{className:`min-w-0`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`truncate text-body-medium-lighter text-[var(--content-default)]`,children:e}),n?(0,W.jsx)(Ae,{}):null]}),t?(0,W.jsx)(`div`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t}):null]}),(0,W.jsx)(k,{checked:r,onChange:i,"aria-label":e})]})}function Me({showDescription:e=!1,showRecommendedBadge:t=!1}){let{t:n}=z(),r=C.use.showUserTranscript(),i=C.use.showAssistantTranscript(),a=C.use.setShowUserTranscript(),o=C.use.setShowAssistantTranscript(),s={showUserTranscript:{checked:r,onChange:a},showAssistantTranscript:{checked:i,onChange:o}},c=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptLabel`:`voiceTranscriptToggles.assistantTranscriptLabel`,t),l=(e,t)=>n(e===`showUserTranscript`?`voiceTranscriptToggles.userTranscriptDescription`:`voiceTranscriptToggles.assistantTranscriptDescription`,t);return(0,W.jsx)(W.Fragment,{children:Oe.map(n=>{let r=s[n.prefKey];return(0,W.jsx)(je,{label:c(n.prefKey,n.label),description:e?l(n.prefKey,n.description):void 0,showBadge:t,checked:r.checked,onChange:r.onChange},n.prefKey)})})}var X=`text-body-small-default text-[var(--content-tertiary)]`;function Ne(){let[e]=fe(),t=e.get(`tab`);return t===`sounds`?(0,W.jsx)(B,{replace:!0,to:E.settings.sounds}):t===`services`?(0,W.jsx)(B,{replace:!0,to:E.settings.ai}):(0,W.jsx)(Pe,{})}function Pe(){let{t:e}=z(`settings`);return(0,W.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,W.jsxs)(Z,{heading:e(`voicePage.sectionOutputHeading`),description:e(`voicePage.sectionOutputDescription`),children:[(0,W.jsx)(De,{}),(0,W.jsx)(Fe,{})]}),(0,W.jsxs)(Z,{heading:e(`voicePage.sectionInputHeading`),description:e(`voicePage.sectionInputDescription`),children:[(0,W.jsx)(Le,{}),(0,W.jsx)(ye,{}),n()?(0,W.jsx)(we,{}):(0,W.jsx)(Be,{}),(0,W.jsx)(Ve,{})]}),(0,W.jsx)(Z,{heading:e(`voicePage.sectionCaptionsHeading`),children:(0,W.jsx)(Ie,{})})]})}function Fe(){let{t:e}=z(`settings`),{available:t}=l(I());return t?(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:[(0,W.jsx)(V,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-quiet)]`}),(0,W.jsx)(`span`,{children:e(`voicePage.speechServicesBannerPrompt`)}),(0,W.jsxs)(pe,{to:`${E.settings.ai}#text-to-speech`,className:`inline-flex items-center gap-1 text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 hover:text-[var(--content-default)]`,children:[e(`voicePage.speechServicesBannerLink`),(0,W.jsx)(ge,{className:`h-3 w-3`})]})]}):null}function Z({heading:e,description:t,children:n}){return(0,W.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e}),t&&(0,W.jsx)(`p`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]}),n]})}function Ie(){let{t:e}=z(`settings`);return(0,W.jsx)(H,{title:e(`voicePage.captionsTitle`),subtitle:e(`voicePage.captionsSubtitle`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(Me,{showDescription:!0}),(0,W.jsx)(`p`,{className:`${X} pt-1`,children:e(`voicePage.captionsRecommendation`,ke)})]})})}var Q=``;function Le(){let{t:e}=z(`settings`),[t,n]=(0,U.useState)([]),[r,i]=(0,U.useState)(!1),[a,o]=(0,U.useState)(!1),[l,u]=(0,U.useState)(()=>c()),d=(0,U.useCallback)(async()=>{if(navigator.mediaDevices?.enumerateDevices)try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===`audioinput`);i(e.length>0&&e.every(e=>!e.label)),n(e.filter(e=>e.deviceId!==``&&e.deviceId!==`default`&&e.deviceId!==`communications`)),o(e.length===0||e.some(e=>!!e.label))}catch{n([]),i(!1),o(!1)}},[]),p=(0,U.useCallback)(async()=>{try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});for(let t of e.getTracks())t.stop()}catch{}d()},[d]);(0,U.useEffect)(()=>{d();let e=navigator.mediaDevices;if(!e?.addEventListener)return;let t=()=>void d();return e.addEventListener(`devicechange`,t),()=>e.removeEventListener(`devicechange`,t)},[d]);let m=(0,U.useMemo)(()=>{let n=t.map((t,n)=>({value:t.deviceId,label:t.label||e(`voicePage.microphoneFallbackLabel`,{index:n+1})})),r=l!==Q&&!n.some(e=>e.value===l);return[{value:null,label:e(`voicePage.systemDefault`)},...n,...r?[{value:l,label:e(a?`voicePage.savedMicrophoneNotConnected`:`voicePage.savedMicrophone`)}]:[]]},[t,l,a,e]),h=(0,U.useCallback)(e=>{u(e),e===Q?se(_):s(_,e)},[]),v=l===Q?null:l;return(0,W.jsx)(H,{title:e(`voicePage.microphoneTitle`),subtitle:e(`voicePage.microphoneSubtitle`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,W.jsx)(`div`,{className:`max-w-xs`,children:(0,W.jsx)(f,{options:m,value:v,onChange:h,onSelectNone:()=>h(Q),"aria-label":e(`voicePage.microphoneAriaLabel`)})}),r&&(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(g,{variant:`outlined`,onClick:p,children:e(`voicePage.allowMicrophoneAccess`)}),(0,W.jsx)(`span`,{className:X,children:e(`voicePage.grantMicrophoneAccessHint`)})]})]})})}var Re=new Set([`Control`,`Alt`,`Shift`,`Meta`]),$=`toggleVoice`,ze=[{label:`Ctrl+Shift`,activator:{kind:`modifierOnly`,modifiers:[`control`,`shift`]}},{label:`Alt`,activator:{kind:`modifierOnly`,modifiers:[`option`]}}];function Be(){let{t:e}=z(`settings`),t=ne(),[n,i]=(0,U.useState)(()=>u()),[a,o]=(0,U.useState)(!1),[s,c]=(0,U.useState)([]),[l,d]=(0,U.useState)(!1),f=(0,U.useRef)(null),p=(0,U.useMemo)(()=>{let e=x();return[{label:F(e),activator:e}]},[]),m=n.kind!==`off`,g=(0,U.useCallback)(e=>{i(e),T(e),o(!1),c([]),d(!1)},[]),_=ve({onBound:()=>g({kind:`off`})}),y=_.catalog.find(e=>e.key===$)?.accelerator??``,b=_.recordingKey===$,S=v()?ze:[],C=(0,U.useCallback)(e=>{g(e),_.removeHotkey($)},[_,g]),w=(0,U.useCallback)(()=>{g({kind:`off`}),_.removeHotkey($)},[_,g]),E=(0,U.useCallback)(()=>{o(!0),c([]),d(!1),requestAnimationFrame(()=>{f.current?.focus()})},[]),O=(0,U.useCallback)(()=>{o(!1),c([]),d(!1)},[]),A=(0,U.useCallback)(e=>{let t=[];return e.ctrlKey&&t.push(`control`),e.altKey&&t.push(`option`),e.shiftKey&&t.push(`shift`),e.metaKey&&t.push(`command`),t},[]),M=(0,U.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){O();return}let t=A(e);if(Re.has(e.key)){d(!1),c(D(t));return}if(t.length===0){d(!0);return}g({kind:`key`,label:e.key.length===1?e.key.toUpperCase():e.key,modifiers:D(t)})},[O,A,g]),N=(0,U.useCallback)(e=>{a&&A(e).length===0&&s.length>0&&(c([]),d(!0))},[A,a,s]);(0,U.useEffect)(()=>{if(!a)return;let e=e=>{f.current&&!f.current.contains(e.target)&&O()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[O,a]);let P=m&&!p.some(e=>L(e.activator,n));return t?(0,W.jsx)(H,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitleDesktop`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[S.map(e=>(0,W.jsx)(G,{label:e.label,selected:L(e.activator,n),onClick:()=>C(e.activator)},e.label)),(0,W.jsx)(G,{label:b?e(`voicePage.recordingPrompt`):y?(0,W.jsx)(h,{accelerator:y}):e(`voicePage.customKey`),selected:y!==``,recording:b,onClick:b?_.stopRecording:()=>_.startRecording($)}),(0,W.jsx)(G,{label:e(`voicePage.offKeyLabel`),selected:n.kind===`off`&&!y&&!b,onClick:w})]}),_.conflict?.key===$&&(0,W.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voicePage.shortcutConflict`,{command:_.conflict.label})})]})]})}):(0,W.jsx)(H,{title:e(`voicePage.voiceShortcutTitle`),subtitle:e(`voicePage.voiceShortcutSubtitle`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,W.jsx)(k,{checked:m,onChange:e=>{g(e?r():{kind:`off`})},label:e(`voicePage.enableVoiceShortcut`)}),m&&(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsx)(`span`,{className:X,children:e(`voicePage.activationKeyLabel`)}),(0,W.jsxs)(`div`,{ref:f,tabIndex:a?0:-1,onKeyDown:a?M:void 0,onKeyUp:a?N:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[p.map(e=>(0,W.jsx)(G,{label:e.label,selected:L(e.activator,n),onClick:()=>g(e.activator)},e.label)),a?(0,W.jsx)(G,{label:s.length>0?j(s):e(`voicePage.pressShortcut`),selected:!0,recording:!0,onClick:O}):(0,W.jsx)(G,{label:P?F(n):e(`voicePage.customKey`),selected:P,onClick:E})]}),l&&(0,W.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voicePage.shortcutChordHint`)})]}),m&&(0,W.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-lighter text-[var(--content-quiet)]`,children:[(0,W.jsx)(V,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,W.jsx)(`span`,{children:e(`voicePage.focusedTabNote`)})]})]})]})})}function Ve(){let{t:e}=z(`settings`),t=C.use.pauseBeforeReplyMs(),n=C.use.setPauseBeforeReplyMs(),r=C.use.interruptSensitivity(),a=C.use.setInterruptSensitivity(),o=(0,U.useMemo)(()=>[{value:`low`,label:e(`voicePage.interruptSensitivityLow`)},{value:`medium`,label:e(`voicePage.interruptSensitivityMedium`)},{value:`high`,label:e(`voicePage.interruptSensitivityHigh`)}],[e]),s=t!==null||r!==null;return(0,W.jsx)(H,{title:e(`voicePage.turnTakingTitle`),subtitle:e(`voicePage.turnTakingSubtitle`),children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,W.jsx)(Se,{}),(0,W.jsx)(He,{label:e(`voicePage.pauseBeforeReplyLabel`),description:e(`voicePage.pauseBeforeReplyDescription`),isDefault:t===null,children:(0,W.jsx)(`div`,{className:`max-w-xs`,children:(0,W.jsx)(O,{value:(t??1200)/1e3,onValueChange:e=>{typeof e==`number`&&n(Math.round(e*1e3))},min:500/1e3,max:i/1e3,step:.1,showValue:!0,formatValue:e=>`${(typeof e==`number`?e:e[0]).toFixed(1)}s`,"aria-label":e(`voicePage.pauseBeforeReplyAriaLabel`)})})}),(0,W.jsx)(He,{label:e(`voicePage.interruptSensitivityLabel`),description:e(`voicePage.interruptSensitivityDescription`),isDefault:r===null,children:(0,W.jsx)(`div`,{className:`max-w-xs`,children:(0,W.jsx)(ie,{items:o,value:r??`medium`,onChange:a,ariaLabel:e(`voicePage.interruptSensitivityAriaLabel`)})})}),s&&(0,W.jsx)(`div`,{children:(0,W.jsx)(g,{variant:`outlined`,onClick:()=>{n(null),a(null)},children:e(`voicePage.resetToDefaults`)})})]})})}function He({label:e,description:t,isDefault:n,children:r}){let{t:i}=z(`settings`);return(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e}),n&&(0,W.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:i(`voicePage.defaultBadge`)})]}),(0,W.jsx)(`p`,{className:X,children:t}),r]})}export{Ne as VoicePage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={heading:`文件`,newFile:`新建文件`,newFolder:`新建文件夹`,delete:`删除`,rename:`重命名`,renaming:`正在重命名…`,create:`创建`,creating:`正在创建…`,creatingHeading:`新建`,createTriggerAria:`创建新文件或文件夹`,createTriggerTitle:`新建文件或文件夹`,nameLabel:`名称`,nameError:`请输入不含斜杠的单个文件或文件夹名称。`,cancel:`取消`,sortByNameAria:`按名称排序`,sortBySizeAria:`按大小排序`,sortedBySizeTitle:`已按大小排序,切换为按名称排序`,sortedByNameTitle:`已按名称排序,切换为按大小排序`,hideHiddenAria:`隐藏隐藏文件`,showHiddenAria:`显示隐藏文件`,searchPlaceholder:`搜索文件`,clearSearchAria:`清除搜索`,noFilesFound:`未找到文件`,deleteFolderTitle:`删除文件夹`,deleteFileTitle:`删除文件`,deleteFileMessage:`确定要删除 <name>{name}</name> 吗?此操作无法撤消。`,deleteFolderMessage:`确定要删除 <name>{name}</name> 及其所有内容吗?此操作无法撤消。`,deleting:`正在删除…`},t={drawerTitle:`文件`},n={download:`下载`,downloading:`正在下载…`,downloadFailed:`下载失败。请重试。`,preview:`预览`,source:`源文件`,modifiedLabel:`修改时间:`,selectAFile:`选择一个文件以查看`,browseFiles:`浏览文件`,fileNotFound:`文件未找到`,saveFailed:`保存失败`,downloadAria:`下载 {name}`},r={workspaceTree:e,workspaceBrowser:t,workspaceFileViewer:n};export{r as default,t as workspaceBrowser,n as workspaceFileViewer,e as workspaceTree};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={heading:`Archivos`,newFile:`Nuevo archivo`,newFolder:`Nueva carpeta`,delete:`Eliminar`,rename:`Cambiar el nombre`,renaming:`Cambiando el nombre…`,create:`Crear`,creating:`Creando…`,creatingHeading:`Crear`,createTriggerAria:`Crear un archivo o una carpeta`,createTriggerTitle:`Nuevo archivo o carpeta`,nameLabel:`Nombre`,nameError:`Escribe el nombre de un solo archivo o carpeta, sin barras.`,cancel:`Cancelar`,sortByNameAria:`Ordenar por nombre`,sortBySizeAria:`Ordenar por tamaño`,sortedBySizeTitle:`Ordenado por tamaño, cambiar a nombre`,sortedByNameTitle:`Ordenado por nombre, cambiar a tamaño`,hideHiddenAria:`Ocultar los archivos ocultos`,showHiddenAria:`Mostrar los archivos ocultos`,searchPlaceholder:`Buscar archivos`,clearSearchAria:`Borrar la búsqueda`,noFilesFound:`No se han encontrado archivos`,deleteFolderTitle:`Eliminar la carpeta`,deleteFileTitle:`Eliminar el archivo`,deleteFileMessage:`¿Seguro que quieres eliminar <name>{name}</name>? Esto no se puede deshacer.`,deleteFolderMessage:`¿Seguro que quieres eliminar <name>{name}</name> y todo su contenido? Esto no se puede deshacer.`,deleting:`Eliminando…`},t={drawerTitle:`Archivos`},n={download:`Descargar`,downloading:`Descargando…`,downloadFailed:`No se pudo descargar. Inténtalo de nuevo.`,preview:`Vista previa`,source:`Código`,modifiedLabel:`Modificado:`,selectAFile:`Selecciona un archivo para verlo`,browseFiles:`Explorar archivos`,fileNotFound:`Archivo no encontrado`,saveFailed:`No se pudo guardar`,downloadAria:`Descargar {name}`},r={workspaceTree:e,workspaceBrowser:t,workspaceFileViewer:n};export{r as default,t as workspaceBrowser,n as workspaceFileViewer,e as workspaceTree};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={heading:`Файлы`,newFile:`Новый файл`,newFolder:`Новая папка`,delete:`Удалить`,rename:`Переименовать`,renaming:`Переименование…`,create:`Создать`,creating:`Создание…`,creatingHeading:`Создать`,createTriggerAria:`Создать файл или папку`,createTriggerTitle:`Новый файл или папка`,nameLabel:`Имя`,nameError:`Имя одного файла или папки без слэшей.`,cancel:`Отмена`,sortByNameAria:`Сортировать по имени`,sortBySizeAria:`Сортировать по размеру`,sortedBySizeTitle:`Сортировка по размеру, переключить на имя`,sortedByNameTitle:`Сортировка по имени, переключить на размер`,hideHiddenAria:`Скрыть скрытые файлы`,showHiddenAria:`Показать скрытые файлы`,searchPlaceholder:`Поиск файлов`,clearSearchAria:`Очистить поиск`,noFilesFound:`Файлы не найдены`,deleteFolderTitle:`Удалить папку`,deleteFileTitle:`Удалить файл`,deleteFileMessage:`Точно удалить <name>{name}</name>? Это нельзя отменить.`,deleteFolderMessage:`Точно удалить <name>{name}</name> и всё содержимое? Это нельзя отменить.`,deleting:`Удаление…`},t={drawerTitle:`Файлы`},n={download:`Скачать`,downloading:`Скачивание…`,downloadFailed:`Не удалось скачать. Повторите попытку.`,preview:`Просмотр`,source:`Исходник`,modifiedLabel:`Изменён:`,selectAFile:`Выбор файла для просмотра`,browseFiles:`Обзор файлов`,fileNotFound:`Файл не найден`,saveFailed:`Не удалось сохранить`,downloadAria:`Скачать {name}`},r={workspaceTree:e,workspaceBrowser:t,workspaceFileViewer:n};export{r as default,t as workspaceBrowser,n as workspaceFileViewer,e as workspaceTree};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e={heading:`檔案`,newFile:`新增檔案`,newFolder:`新增資料夾`,delete:`刪除`,rename:`重新命名`,renaming:`正在重新命名…`,create:`建立`,creating:`正在建立…`,creatingHeading:`建立新項目`,createTriggerAria:`建立新檔案或資料夾`,createTriggerTitle:`新檔案或資料夾`,nameLabel:`名稱`,nameError:`請輸入不含斜線的單一檔案或資料夾名稱。`,cancel:`取消`,sortByNameAria:`依名稱排序`,sortBySizeAria:`依大小排序`,sortedBySizeTitle:`已依大小排序,切換為依名稱排序`,sortedByNameTitle:`已依名稱排序,切換為依大小排序`,hideHiddenAria:`隱藏隱藏檔案`,showHiddenAria:`顯示隱藏檔案`,searchPlaceholder:`搜尋檔案`,clearSearchAria:`清除搜尋`,noFilesFound:`找不到檔案`,deleteFolderTitle:`刪除資料夾`,deleteFileTitle:`刪除檔案`,deleteFileMessage:`您確定要刪除 <name>{name}</name> 嗎?此操作無法復原。`,deleteFolderMessage:`您確定要刪除 <name>{name}</name> 及其所有內容嗎?此操作無法復原。`,deleting:`正在刪除…`},t={drawerTitle:`檔案`},n={download:`下載`,downloading:`正在下載…`,downloadFailed:`下載失敗。請再試一次。`,preview:`預覽`,source:`來源`,modifiedLabel:`修改時間:`,selectAFile:`選取檔案以檢視`,browseFiles:`瀏覽檔案`,fileNotFound:`找不到檔案`,saveFailed:`儲存失敗`,downloadAria:`下載 {name}`},r={workspaceTree:e,workspaceBrowser:t,workspaceFileViewer:n};export{r as default,t as workspaceBrowser,n as workspaceFileViewer,e as workspaceTree};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{An as t,Dn as n,En as r,Ni as i,S_ as a,Sx as o,Xb as s,Zb as c,__ as l,b_ as u,dr as d,fx as f,g_ as p,ix as m,kn as h,nt as g,qb as _,rx as v,tx as y,v_ as b,x_ as x,y_ as S}from"./app-DxMy0jwj.js";import{Jn as C,N as w,Xn as T,Zn as E,er as D,j as O}from"./vendor-B2dSzLzU.js";import{_ as k,t as A,x as j}from"./react-B9IgSVeK.js";import{Ar as ee,Dr as M,Gi as N,Ir as P,It as F,Jr as I,Rr as L,Ui as R,Vr as z,Xt as B,_t as te,fr as V,h as H,i as ne,k as re,kr as U,qa as W,qn as G,qr as ie,ti as K}from"./icons-bnwMda87.js";import{n as q,r as ae,t as oe}from"./use-side-list-room-yQSI40sv.js";import{t as J}from"./format-file-size-CEqN0m2h.js";import{i as Y,n as se,r as X,t as ce}from"./file-editor-CwN2HFdU.js";var le=W(`arrow-down-a-z`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M20 8h-5`,key:`1vsyxs`}],[`path`,{d:`M15 10V6.5a2.5 2.5 0 0 1 5 0V10`,key:`ag13bf`}],[`path`,{d:`M15 14h5l-5 6h5`,key:`ur5jdg`}]]),ue=W(`arrow-down-wide-narrow`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M11 4h10`,key:`1w87gc`}],[`path`,{d:`M11 8h7`,key:`djye34`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}]]),Z=e(j(),1);function de(e){if(!e)return``;let t=e.indexOf(`;`);return(t===-1?e:e.slice(0,t)).trim()}function fe(e,t){return de(t)===`application/json`?!0:(e??``).toLowerCase().endsWith(`.json`)}function pe(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function me(e){return e.split(`/`).some(e=>e.startsWith(`.`))}var Q=A();function he(e){let{assistantId:t,path:n,name:r,showHidden:i}=e,[a,o]=(0,Z.useState)(!1),[s,c]=(0,Z.useState)(!1);return{isDownloading:a,error:s,download:(0,Z.useCallback)(async()=>{c(!1),o(!0);try{await d({assistantId:t,path:n,filename:r,showHidden:i})}catch{c(!0)}finally{o(!1)}},[t,n,r,i])}}function ge({assistantId:e,path:t,name:n,showHidden:r}){let{t:i}=O(`workspace`),{isDownloading:a,error:s,download:c}=he({assistantId:e,path:t,name:n,showHidden:r});return(0,Q.jsx)(o,{variant:`ghost`,size:`regular`,iconOnly:a?(0,Q.jsx)(G,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(K,{"aria-hidden":!0}),onClick:()=>void c(),disabled:a,"aria-label":i(`workspaceFileViewer.downloadAria`,{name:n}),tooltip:i(s?`workspaceFileViewer.downloadFailed`:`workspaceFileViewer.download`)})}function _e(e){return T({queryFn:async()=>{let{data:t,error:n}=await b({path:e.path,query:{path:e.query.path,...e.query.showHidden?{showHidden:`true`}:{}}});if(n)throw n;return t},queryKey:[`assistantsWorkspaceFileRetrieve`,e]})}function ve({mimeType:e}){let t=e.indexOf(`;`),n=(t===-1?e:e.slice(0,t)).trim(),r=L;return n.startsWith(`image/`)?r=V:n.startsWith(`video/`)?r=H:!n.startsWith(`text/`)&&n!==`application/json`&&n!==`application/octet-stream`&&(r=P),(0,Q.jsx)(`span`,{className:`flex h-5 w-5 shrink-0 items-center justify-center rounded`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 10%, transparent)`},children:(0,Q.jsx)(r,{className:`h-3.5 w-3.5`,style:{color:`var(--content-default)`}})})}function ye({viewMode:e,onChange:t}){let{t:n}=O(`workspace`);return(0,Q.jsx)(`div`,{className:`inline-flex rounded-md p-0.5`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 6%, transparent)`},children:[`preview`,`source`].map(r=>{let i=e===r;return(0,Q.jsx)(o,{variant:`ghost`,onClick:()=>t(r),className:`h-auto rounded border-0 px-2.5 py-1 text-body-small-default hover:bg-transparent`,style:{backgroundColor:i?`var(--surface-lift)`:`transparent`,color:i?`var(--content-default)`:`var(--content-tertiary)`,boxShadow:i?`0 1px 2px rgba(0,0,0,0.15)`:void 0},children:n(r===`preview`?`workspaceFileViewer.preview`:`workspaceFileViewer.source`)},r)})})}function $({name:e,mimeType:t,size:n,rightContent:r}){return(0,Q.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,Q.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Q.jsx)(ve,{mimeType:t}),(0,Q.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),n!=null&&(0,Q.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:J(n)})]}),r]})}function be({assistantId:e,path:t,mimeType:n,showHidden:r}){let{data:i,isLoading:a}=E({queryFn:async()=>{let n=await l({path:{assistant_id:e},query:{path:t,...r?{showHidden:`true`}:{}},parseAs:`blob`});if(n.error)throw n.error;return n.data},queryKey:[`assistantsWorkspaceFileContentRetrieve`,{assistantId:e,path:t,showHidden:r}],enabled:!!t}),[o,s]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!i)return;let e=URL.createObjectURL(i);return s(e),()=>{URL.revokeObjectURL(e),s(null)}},[i]),a?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Q.jsx)(G,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):o?n.startsWith(`image/`)?(0,Q.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,Q.jsx)(`img`,{src:o,alt:t.split(`/`).pop()??`image`,className:`max-h-[70vh] max-w-full rounded object-contain`})}):n.startsWith(`video/`)?(0,Q.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,Q.jsx)(`video`,{src:o,controls:!0,className:`max-h-[70vh] max-w-full rounded`})}):null:null}function xe({assistantId:e,path:t,name:n,mimeType:r,size:i,modifiedAt:a,showHidden:s}){let{t:c}=O(`workspace`),{isDownloading:l,error:u,download:d}=he({assistantId:e,path:t,name:n,showHidden:s});return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:n,mimeType:r,size:i}),(0,Q.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-8`,children:(0,Q.jsxs)(`div`,{className:`w-full max-w-sm rounded-lg border p-6 text-center`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,Q.jsx)(P,{className:`mx-auto h-10 w-10`,style:{color:`var(--content-tertiary)`}}),(0,Q.jsx)(`p`,{className:`mt-3 text-body-medium-default`,style:{color:`var(--content-default)`},children:n}),(0,Q.jsxs)(`div`,{className:`mt-2 space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:r}),(0,Q.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:J(i,`Unknown size`)}),a&&(0,Q.jsxs)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:[c(`workspaceFileViewer.modifiedLabel`),` `,new Date(a).toLocaleString()]})]}),(0,Q.jsx)(o,{variant:`outlined`,size:`compact`,leftIcon:l?(0,Q.jsx)(G,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(K,{"aria-hidden":!0}),onClick:d,disabled:l,"aria-label":c(`workspaceFileViewer.downloadAria`,{name:n}),className:`mt-4`,children:c(l?`workspaceFileViewer.downloading`:`workspaceFileViewer.download`)}),u&&(0,Q.jsx)(`p`,{className:`mt-2 text-body-small-default`,style:{color:`var(--system-error)`},children:c(`workspaceFileViewer.downloadFailed`)})]})})]})}function Se({assistantId:e,selectedPath:n,showHidden:r,viewMode:i,onChangeViewMode:s,onBrowse:c,pathRename:l,pathDelete:u}){let{t:d}=O(`workspace`),f=D(),{data:p,isLoading:m}=E({..._e({path:{assistant_id:e},query:{path:n??``,showHidden:r}}),enabled:!!n}),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{if(!l)return;let{from:e,to:t}=l,n=n=>n===e?t:n.startsWith(`${e}/`)?t+n.slice(e.length):n;_(e=>e==null?e:n(e)),y(e=>e==null?e:{...e,path:n(e.path)})},[l]),(0,Z.useEffect)(()=>{if(!u)return;let{path:e}=u,t=t=>t===e||t.startsWith(`${e}/`);_(e=>e!=null&&t(e)?null:e),y(e=>e!=null&&t(e.path)?null:e)},[u]);let b=g!=null&&g===n,x=p?.content??``,S=v?.path===n?v.content:x,w=()=>{_(null),y(null)},T=C({mutationFn:async({path:t,content:n})=>{let{error:r,response:i}=await a({path:{assistant_id:e},body:{path:t,content:n,encoding:`utf8`},throwOnError:!1});if(!i?.ok||r)throw Error(`Failed to save file`)},onSuccess:(e,t)=>{_(e=>e===t.path?null:e),y(e=>e?.path===t.path?null:e),f.invalidateQueries({queryKey:[`assistantsWorkspaceFileRetrieve`]})}}),k=S!==x,A=(0,Z.useCallback)(()=>{n&&k&&!T.isPending&&T.mutate({path:n,content:S})},[n,k,T,S]);if(!n)return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3`,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`workspaceFileViewer.selectAFile`)}),c&&(0,Q.jsx)(o,{type:`button`,onClick:c,leftIcon:(0,Q.jsx)(ee,{"aria-hidden":!0}),children:d(`workspaceFileViewer.browseFiles`)})]});if(m)return(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsx)(G,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})});if(!p)return(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`workspaceFileViewer.fileNotFound`)})});let j=p.mimeType??`application/octet-stream`,M=p.name??n.split(`/`).pop()??n,N=t(M,j),P=fe(M,j),F=p.content!=null&&!N&&!P,I=n?me(n):!0,L=b&&(0,Q.jsx)(se,{isDirty:k,isSaving:T.isPending,error:T.isError?d(`workspaceFileViewer.saveFailed`):null,onSave:A,onDiscard:w});if(N&&p.content!=null){let e=b?S:p.content;return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:M,mimeType:j,rightContent:(0,Q.jsx)(ye,{viewMode:i,onChange:e=>{b&&w(),s(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(ce,{content:e,fileName:M,mimeType:j,showEdit:!I&&i===`source`,isEditing:b,onToggleEdit:()=>b?w():_(n)}),i===`preview`?(0,Q.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,Q.jsx)(h,{content:e})}):b?(0,Q.jsx)(X,{value:S,onChange:e=>y({path:n,content:e}),onSave:A}):(0,Q.jsx)(Y,{content:p.content,readOnly:I,onStartEdit:()=>_(n)})]}),L]})}if(P&&p.content!=null){let e=b?S:p.content,t=pe(e);return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:M,mimeType:j,rightContent:(0,Q.jsx)(ye,{viewMode:i,onChange:e=>{b&&w(),s(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(ce,{content:i===`preview`?t:e,downloadContent:e,fileName:M,mimeType:j,showEdit:!I&&i===`source`,isEditing:b,onToggleEdit:()=>b?w():_(n)}),i===`preview`?(0,Q.jsx)(Y,{content:t,readOnly:!0,whiteSpace:`pre`}):b?(0,Q.jsx)(X,{value:S,onChange:e=>y({path:n,content:e}),onSave:A}):(0,Q.jsx)(Y,{content:p.content,readOnly:I,onStartEdit:()=>_(n)})]}),L]})}return F?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:M,mimeType:j,size:p.size}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(ce,{content:b?S:p.content??``,fileName:M,mimeType:j,showEdit:!I,isEditing:b,onToggleEdit:()=>b?w():_(n)}),b?(0,Q.jsx)(X,{value:S,onChange:e=>y({path:n,content:e}),onSave:A}):(0,Q.jsx)(Y,{content:p.content??``,readOnly:I,onStartEdit:()=>_(n)})]}),L]}):j.startsWith(`image/`)||j.startsWith(`video/`)?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:M,mimeType:j,size:p.size,rightContent:(0,Q.jsx)(ge,{assistantId:e,path:n,name:M,showHidden:r})}),(0,Q.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,Q.jsx)(be,{assistantId:e,path:n,mimeType:j,showHidden:r})})]}):(0,Q.jsx)(xe,{assistantId:e,path:n,name:M,mimeType:j,size:p.size,modifiedAt:p.modifiedAt,showHidden:r})}function Ce(e,t){if(t===`name`)return e;let n=e.slice();return n.sort((e,t)=>{let n=e.size??null,r=t.size??null;return n===null&&r===null?(e.name??``).localeCompare(t.name??``):n===null?1:r===null?-1:n===r?(e.name??``).localeCompare(t.name??``):r-n}),n}async function we(e,t,n,r){let i=n.toLowerCase(),a=r?.toLowerCase(),{data:o}=await x({path:{assistant_id:e},query:t?{path:t}:{}});if(o?.entries?.some(e=>{let t=(e.name??``).toLowerCase();return t===i&&t!==a}))throw Error(`"${n}" already exists here.`)}function Te({entry:e}){return e.type===`directory`?(0,Q.jsx)(M,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`image/`)?(0,Q.jsx)(V,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`video/`)?(0,Q.jsx)(H,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,Q.jsx)(L,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})}function Ee({entry:e,assistantId:t,expandedPaths:r,selectedPath:i,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:u,onRequestRename:d,onRequestCreate:f,depth:p}){let{t:m}=O(`workspace`),h=e.path??``,g=e.name??``,v=e.type===`directory`,y=r.has(h),b=i===h,x=g.startsWith(`.`),S=!me(h),C=v&&(y||s.length>0),{data:w}=E({...n({assistantId:t,path:h,showHidden:a,includeDirSizes:o===`size`}),enabled:v&&C}),T=(0,Z.useMemo)(()=>Ce(w?.entries??[],o),[w?.entries,o]),D=s===``||g.toLowerCase().includes(s);if(s!==``&&!v&&!D)return null;let k=(0,Q.jsxs)(`button`,{onClick:()=>{v?c(h):l(h)},className:`flex w-full items-center gap-1.5 px-2 py-1 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{paddingLeft:`${p*14+8}px`,paddingRight:`8px`,color:b?`var(--content-default)`:x?`var(--content-tertiary)`:`var(--content-default)`,backgroundColor:b?`color-mix(in oklab, var(--primary-base) 12%, transparent)`:void 0,opacity:x&&!b?.7:1},children:[v?C?(0,Q.jsx)(N,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,Q.jsx)(R,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,Q.jsx)(`span`,{className:`h-3 w-3 shrink-0`}),(0,Q.jsx)(Te,{entry:e}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:g}),e.size!=null&&(0,Q.jsx)(`span`,{className:`shrink-0 text-label-medium-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:J(e.size)})]});return(0,Q.jsxs)(`div`,{children:[S?(0,Q.jsxs)(_.Root,{children:[(0,Q.jsx)(_.Trigger,{children:k}),(0,Q.jsxs)(_.Content,{children:[v&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(z,{className:`h-3.5 w-3.5`}),onSelect:()=>f({kind:`file`,parentPath:h}),children:m(`workspaceTree.newFile`)}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(U,{className:`h-3.5 w-3.5`}),onSelect:()=>f({kind:`folder`,parentPath:h}),children:m(`workspaceTree.newFolder`)}),(0,Q.jsx)(_.Separator,{})]}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(re,{className:`h-3.5 w-3.5`}),onSelect:()=>u({path:h,name:g,isDirectory:v}),children:m(`workspaceTree.delete`)}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(B,{className:`h-3.5 w-3.5`}),onSelect:()=>d({path:h,name:g,isDirectory:v}),children:m(`workspaceTree.rename`)})]})]}):k,v&&C&&T.length>0&&(0,Q.jsx)(`div`,{children:T.map(e=>(0,Q.jsx)(Ee,{entry:e,assistantId:t,expandedPaths:r,selectedPath:i,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:u,onRequestRename:d,onRequestCreate:f,depth:p+1},e.path))})]})}function De({title:e,placeholder:t,confirmLabel:n,pendingLabel:r,initialName:i,onCancel:a,onConfirm:s,pending:c,error:l}){let{t:u}=O(`workspace`),d=(0,Z.useRef)(null),[p,h]=(0,Z.useState)(i??``),g=p.trim(),_=g.length>0&&(/[/\\]/.test(g)||g===`.`||g===`..`),v=g.length>0&&!_&&!c;return(0,Q.jsx)(m.Root,{open:!0,onOpenChange:e=>{!e&&!c&&a()},children:(0,Q.jsx)(m.Content,{size:`sm`,hideCloseButton:!0,"aria-describedby":void 0,onOpenAutoFocus:e=>{e.preventDefault();let t=d.current;t&&(t.focus(),requestAnimationFrame(()=>{t.setSelectionRange(0,t.value.length)}))},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),c||a()},children:(0,Q.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),v&&s(g)},children:[(0,Q.jsx)(m.Header,{children:(0,Q.jsx)(m.Title,{children:e})}),(0,Q.jsx)(m.Body,{children:(0,Q.jsx)(f,{ref:d,label:u(`workspaceTree.nameLabel`),value:p,onChange:e=>h(e.target.value),placeholder:t,errorText:l??(_?u(`workspaceTree.nameError`):void 0),autoComplete:`off`,spellCheck:!1,fullWidth:!0})}),(0,Q.jsxs)(m.Footer,{children:[(0,Q.jsx)(o,{type:`button`,variant:`outlined`,onClick:a,disabled:c,children:u(`workspaceTree.cancel`)}),(0,Q.jsx)(o,{type:`submit`,variant:`primary`,disabled:!v,children:c?r:n})]})]})})})}function Oe({assistantId:e,expandedPaths:t,selectedPath:i,showHidden:s,sortMode:c,onToggleExpand:l,onExpandPath:d,onSelectPath:m,onToggleShowHidden:h,onChangeSortMode:g,onPathDeleted:_,onPathRenamed:v,search:b,onSearchChange:x}){let{t:T}=O(`workspace`),k=D(),A=b.trim().toLowerCase(),[j,ee]=(0,Z.useState)(!1),[M,N]=(0,Z.useState)(null),[P,F]=(0,Z.useState)(null),L=(0,Z.useCallback)(()=>{N(null),F(null)},[]),{data:R,isLoading:z}=E(n({assistantId:e,showHidden:s,includeDirSizes:c===`size`})),B=(0,Z.useMemo)(()=>Ce(R?.entries??[],c),[R?.entries,c]),V=(0,Z.useCallback)(()=>{for(let e of[r,`assistantsWorkspaceFileRetrieve`,`assistantsWorkspaceFileContentRetrieve`])k.invalidateQueries({queryKey:[e]})},[k]),H=C({mutationFn:async t=>{let n=t.parentPath?`${t.parentPath}/${t.name}`:t.name;await we(e,t.parentPath,t.name);let{error:r,response:i}=t.kind===`file`?await a({path:{assistant_id:e},body:{path:n,content:``,encoding:`utf8`},throwOnError:!1}):await S({path:{assistant_id:e},body:{path:n},throwOnError:!1});if(r||!i?.ok)throw Error(typeof r==`string`?r:`Failed to create — check the name and try again.`);return{...t,path:n}},onSuccess:e=>{L(),V(),e.parentPath&&d(e.parentPath),e.kind===`file`?m(e.path):d(e.path)},onError:e=>{F(e instanceof Error?e.message:`Failed to create.`)}}),re=C({mutationFn:async t=>{let n=t.oldPath.lastIndexOf(`/`),r=n===-1?``:t.oldPath.slice(0,n),i=t.oldPath.slice(n+1),a=r?`${r}/${t.newName}`:t.newName;await we(e,r,t.newName,i);let{error:o,response:s}=await u({path:{assistant_id:e},body:{oldPath:t.oldPath,newPath:a},throwOnError:!1});if(o||!s?.ok)throw Error(typeof o==`string`?o:`Failed to rename — check the name and try again.`);return{oldPath:t.oldPath,newPath:a}},onSuccess:({oldPath:e,newPath:t})=>{L(),V(),v(e,t)},onError:e=>{F(e instanceof Error?e.message:`Failed to rename.`)}}),U=(0,Z.useCallback)(e=>{F(null),N({type:`create`,...e})},[]),W=(0,Z.useCallback)(e=>{F(null),N({type:`rename`,path:e.path,name:e.name})},[]),[G,K]=(0,Z.useState)(null),q=C({mutationFn:async t=>{let{error:n,response:r}=await p({path:{assistant_id:e},body:{path:t.path},throwOnError:!1});if(n||!r?.ok)throw Error(typeof n==`string`?n:`Failed to delete — try again.`);return t},onSuccess:e=>{K(null),V(),_(e.path)}}),ae=(0,Z.useCallback)(e=>{q.reset(),K(e)},[q]);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`flex items-center justify-between border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:T(`workspaceTree.heading`)}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,Q.jsx)(o,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:c===`size`?(0,Q.jsx)(ue,{"aria-hidden":!0}):(0,Q.jsx)(le,{"aria-hidden":!0}),onClick:()=>g(c===`size`?`name`:`size`),"aria-label":T(c===`size`?`workspaceTree.sortByNameAria`:`workspaceTree.sortBySizeAria`),title:T(c===`size`?`workspaceTree.sortedBySizeTitle`:`workspaceTree.sortedByNameTitle`),tintColor:c===`size`?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(o,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:s?(0,Q.jsx)(ie,{"aria-hidden":!0}):(0,Q.jsx)(I,{"aria-hidden":!0}),onClick:h,"aria-label":T(s?`workspaceTree.hideHiddenAria`:`workspaceTree.showHiddenAria`),title:T(s?`workspaceTree.hideHiddenAria`:`workspaceTree.showHiddenAria`),tintColor:s?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(ke,{open:j,onOpenChange:ee,onSelectKind:e=>{ee(!1),U({kind:e,parentPath:``})}})]})]}),(0,Q.jsx)(`div`,{className:`px-3 py-2`,children:(0,Q.jsxs)(`div`,{className:`relative`,children:[(0,Q.jsx)(f,{type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:T(`workspaceTree.searchPlaceholder`),leftIcon:(0,Q.jsx)(te,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,spellCheck:!1,autoComplete:`off`}),b&&(0,Q.jsx)(o,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(ne,{"aria-hidden":!0}),onClick:()=>x(``),"aria-label":T(`workspaceTree.clearSearchAria`),className:`absolute right-1.5 top-1/2 -translate-y-1/2`,tintColor:`var(--content-tertiary)`})]})}),(0,Q.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto py-1`,children:z?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,Q.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`,style:{color:`var(--content-tertiary)`}})}):B.length?B.map(n=>(0,Q.jsx)(Ee,{entry:n,assistantId:e,expandedPaths:t,selectedPath:i,showHidden:s,sortMode:c,searchLower:A,onToggleExpand:l,onSelectPath:m,onRequestDelete:ae,onRequestRename:W,onRequestCreate:U,depth:0},n.path)):(0,Q.jsx)(`p`,{className:`px-3 py-4 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:T(`workspaceTree.noFilesFound`)})}),M?.type===`create`&&(0,Q.jsx)(De,{title:M.kind===`file`?T(`workspaceTree.newFile`):T(`workspaceTree.newFolder`),placeholder:M.kind===`file`?`filename.md`:`folder-name`,confirmLabel:T(`workspaceTree.create`),pendingLabel:T(`workspaceTree.creating`),onCancel:L,onConfirm:e=>{F(null),H.mutate({kind:M.kind,parentPath:M.parentPath,name:e})},pending:H.isPending,error:P},`create-${M.kind}-${M.parentPath}`),M?.type===`rename`&&(0,Q.jsx)(De,{title:T(`workspaceTree.rename`),placeholder:M.name,confirmLabel:T(`workspaceTree.rename`),pendingLabel:T(`workspaceTree.renaming`),initialName:M.name,onCancel:L,onConfirm:e=>{if(e===M.name){L();return}F(null),re.mutate({oldPath:M.path,newName:e})},pending:re.isPending,error:P},`rename-${M.path}`),(0,Q.jsx)(y,{open:G!==null,title:G?.isDirectory?T(`workspaceTree.deleteFolderTitle`):T(`workspaceTree.deleteFileTitle`),message:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(w,{i18nKey:G?.isDirectory?`workspaceTree.deleteFolderMessage`:`workspaceTree.deleteFileMessage`,ns:`workspace`,values:{name:G?.name??``},components:{name:(0,Q.jsx)(`span`,{style:{color:`var(--content-default)`}})}}),q.error&&(0,Q.jsx)(`span`,{className:`mt-2 block`,style:{color:`var(--system-negative-strong)`},children:q.error.message})]}),confirmLabel:q.isPending?T(`workspaceTree.deleting`):T(`workspaceTree.delete`),destructive:!0,isPending:q.isPending,onConfirm:()=>{G&&q.mutate(G)},onCancel:()=>K(null)})]})}function ke({open:e,onOpenChange:t,onSelectKind:n}){let{t:r}=O(`workspace`);return i()?(0,Q.jsxs)(v.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(v.Trigger,{asChild:!0,children:(0,Q.jsx)(o,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(F,{"aria-hidden":!0}),"aria-label":r(`workspaceTree.createTriggerAria`),title:r(`workspaceTree.createTriggerTitle`),tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(v.Content,{children:[(0,Q.jsx)(v.Header,{className:`sr-only`,children:(0,Q.jsx)(v.Title,{children:r(`workspaceTree.creatingHeading`)})}),(0,Q.jsxs)(v.Body,{className:`pt-0`,children:[(0,Q.jsx)(s,{icon:z,label:r(`workspaceTree.newFile`),onSelect:()=>n(`file`)}),(0,Q.jsx)(s,{icon:U,label:r(`workspaceTree.newFolder`),onSelect:()=>n(`folder`)})]})]})]}):(0,Q.jsxs)(c.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(c.Trigger,{asChild:!0,children:(0,Q.jsx)(o,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(F,{"aria-hidden":!0}),"aria-label":r(`workspaceTree.createTriggerAria`),title:r(`workspaceTree.createTriggerTitle`),tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(c.Content,{align:`end`,sideOffset:4,children:[(0,Q.jsx)(c.Item,{leftIcon:(0,Q.jsx)(z,{className:`h-3.5 w-3.5`}),onSelect:()=>n(`file`),children:r(`workspaceTree.newFile`)}),(0,Q.jsx)(c.Item,{leftIcon:(0,Q.jsx)(U,{className:`h-3.5 w-3.5`}),onSelect:()=>n(`folder`),children:r(`workspaceTree.newFolder`)})]})]})}function Ae(e){let t=e.split(`/`),n=new Set;for(let e=1;e<t.length;e++)n.add(t.slice(0,e).join(`/`));return n}function je({assistantId:e}){let{t}=O(`workspace`),[n,r]=k(),[i,a]=(0,Z.useState)(()=>{let e=n.get(`file`);return e?Ae(e):new Set}),[o,s]=(0,Z.useState)(()=>n.get(`file`)),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(()=>n.get(`sort`)===`size`?`size`:`name`),[f,p]=(0,Z.useState)(`preview`);(0,Z.useEffect)(()=>{let e=n.get(`file`);e&&(s(e),a(t=>{let n=new Set(t);for(let t of Ae(e))n.add(t);return n.size===t.size?t:n}),r(e=>{let t=new URLSearchParams(e);return t.delete(`file`),t},{replace:!0}))},[n,r]);let m=(0,Z.useCallback)(e=>{a(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),h=(0,Z.useCallback)(e=>{a(t=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n})},[]),{paneRef:g,hasRoomForList:_,drawerOpen:v,openDrawer:y,closeDrawer:b}=oe(),[x,S]=(0,Z.useState)(``),C=(0,Z.useCallback)(e=>{s(e),b()},[b]),[w,T]=(0,Z.useState)(null),E=(0,Z.useCallback)(e=>{let t=t=>t===e||t.startsWith(`${e}/`);s(e=>e!==null&&t(e)?null:e),a(e=>{let n=new Set([...e].filter(e=>!t(e)));return n.size===e.size?e:n}),T({path:e})},[]),[D,A]=(0,Z.useState)(null),j={assistantId:e,expandedPaths:i,selectedPath:o,showHidden:c,sortMode:u,onToggleExpand:m,onExpandPath:h,onSelectPath:C,onToggleShowHidden:()=>l(e=>!e),onChangeSortMode:d,onPathDeleted:E,onPathRenamed:(0,Z.useCallback)((e,t)=>{let n=n=>n===e?t:n.startsWith(`${e}/`)?t+n.slice(e.length):n;s(e=>e===null?e:n(e)),a(e=>{let t=!1,r=new Set;for(let i of e){let e=n(i);e!==i&&(t=!0),r.add(e)}return t?r:e}),A({from:e,to:t})},[]),search:x,onSearchChange:S};return(0,Q.jsxs)(`div`,{ref:g,className:`flex h-full min-h-0 flex-col gap-4`,children:[_?null:(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`div`,{className:`flex items-center`,children:(0,Q.jsx)(ae,{onClick:y})}),(0,Q.jsx)(q,{open:v,onClose:b,title:t(`workspaceBrowser.drawerTitle`),children:(0,Q.jsx)(Oe,{...j})})]}),(0,Q.jsxs)(`div`,{className:`grid min-h-0 flex-1 gap-4 ${_?`grid-cols-[320px_1fr]`:`grid-cols-1`}`,children:[_?(0,Q.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,Q.jsx)(Oe,{...j})}):null,(0,Q.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,Q.jsx)(Se,{assistantId:e,selectedPath:o,showHidden:c,viewMode:f,onChangeViewMode:p,onBrowse:_?void 0:y,pathRename:D,pathDelete:w})})]})]})}function Me(){return(0,Q.jsx)(je,{assistantId:g()})}export{Me as WorkspacePage};
|