@vellumai/web 0.10.7-staging.1 → 0.10.7-staging.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AnimatePresence-CmYDLs_U.js → AnimatePresence-Oxz4BTMX.js} +1 -1
- package/dist/assets/{BundleConfirmPage-BBfjDFkJ.js → BundleConfirmPage-CASo0dJB.js} +1 -1
- package/dist/assets/{about-page-DuS6wGUi.js → about-page-m20KWWnD.js} +1 -1
- package/dist/assets/{account-page-BE_-T9sb.js → account-page-C9kqnBZO.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-MrPfWIKh.js → acp-run-detail-panel-ejAbzWHh.js} +1 -1
- package/dist/assets/{add-credits-modal-C91gOON5.js → add-credits-modal-wQTjoJNa.js} +1 -1
- package/dist/assets/{advanced-page-D7LhNJ6i.js → advanced-page-DbX0io-N.js} +1 -1
- package/dist/assets/{ai-page-BsawXNY5.js → ai-page-BTlZJXAR.js} +1 -1
- package/dist/assets/{animated-avatar-DmRY8KgY.js → animated-avatar-KEsxQUWX.js} +1 -1
- package/dist/assets/{api-DqXotrgH.js → api-DXLi4DU7.js} +1 -1
- package/dist/assets/api-bHQ_ZhgO.js +1 -0
- package/dist/assets/{api-key-screen-P9WyBwmg.js → api-key-screen-BjgFbffU.js} +1 -1
- package/dist/assets/{archive-page-B8nce6tC.js → archive-page-DzmwifQT.js} +1 -1
- package/dist/assets/{assistant-status-panel-Cl9p2-kW.js → assistant-status-panel-boGM54mS.js} +1 -1
- package/dist/assets/auth-store-CI4EhvE5.js +2 -0
- package/dist/assets/{background-task-detail-panel-B1QCVn0B.js → background-task-detail-panel-H6SgrcwV.js} +1 -1
- package/dist/assets/{billing-page-CYQeoFy8.js → billing-page-CSKtNdRU.js} +3 -3
- package/dist/assets/{bookmarks-page-CAU2a6U9.js → bookmarks-page-BagxvDUo.js} +1 -1
- package/dist/assets/{browser-C1qhxIRO.js → browser-CP3oEvln.js} +2 -2
- package/dist/assets/{build-state-Bdkg8KmL.js → build-state-D96tiPPg.js} +1 -1
- package/dist/assets/{channels-page-route-POtBBuBk.js → channels-page-route-lCrN_Eb7.js} +1 -1
- package/dist/assets/{client-identity-BsH7W9OY.js → client-identity-jhypHe7Y.js} +1 -1
- package/dist/assets/{command-palette-zm8MLLsB.js → command-palette-Cilb3mV5.js} +1 -1
- package/dist/assets/{command-palette-window-page-BSin67xX.js → command-palette-window-page-BuwBHkS3.js} +1 -1
- package/dist/assets/{community-page-CQ0-ffoM.js → community-page-D4Ndx5yu.js} +1 -1
- package/dist/assets/{connect-page-7ttzpPF7.js → connect-page-By7gD4Gi.js} +1 -1
- package/dist/assets/{consent-controls-Bz7B3N11.js → consent-controls-J9UujLtO.js} +1 -1
- package/dist/assets/{contacts-page-route-BzHLPFPI.js → contacts-page-route-BhYOstuw.js} +1 -1
- package/dist/assets/debug-page-DxE07_BI.js +4 -0
- package/dist/assets/{deploy-dialogs-CHEK1jmn.js → deploy-dialogs-RKq6sd1W.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-60yx5hed.js → detail-panel-stop-button-CB2htTrF.js} +1 -1
- package/dist/assets/{detail-shell-IAIYU5Nw.js → detail-shell-q6GjKJ6F.js} +2 -2
- package/dist/assets/{developer-page-BCxe1J2k.js → developer-page-Bp_bG62w.js} +1 -1
- package/dist/assets/{devices-page-DVoQN6vT.js → devices-page-B_fKe-cL.js} +1 -1
- package/dist/assets/{diagnostics-BeHaQeqH.js → diagnostics-BUlVBxem.js} +1 -1
- package/dist/assets/{dictation-overlay-page-C9wwzBCi.js → dictation-overlay-page-W4zqYMu-.js} +1 -1
- package/dist/assets/{document-viewer-page-BsFewvP7.js → document-viewer-page-Dj4eF78D.js} +1 -1
- package/dist/assets/{earn-credits-modal-DADnKt6H.js → earn-credits-modal-YMvlT2Ib.js} +1 -1
- package/dist/assets/{emails-page-D4hD3UiR.js → emails-page-C2qpYYkU.js} +1 -1
- package/dist/assets/{esm-DmxjBDA5.js → esm-BZAWL4X4.js} +2 -2
- package/dist/assets/{esm-RwTVWiuE.js → esm-CuAK_cYT.js} +2 -2
- package/dist/assets/{esm-C_xzGoth.js → esm-DnCc4uNb.js} +2 -2
- package/dist/assets/{esm-BW0ibkil.js → esm-_LZD1lMg.js} +2 -2
- package/dist/assets/{esm-C89a_qa6.js → esm-fycmFY2i.js} +2 -2
- package/dist/assets/{file-editor-B-psPRqR.js → file-editor-XdAW-U3o.js} +1 -1
- package/dist/assets/{general-page-DNcKLEpX.js → general-page-BdQz1yqd.js} +1 -1
- package/dist/assets/hatching-screen-DshvxRQO.js +1 -0
- package/dist/assets/{home-page-route-D6K-xfn8.js → home-page-route-DQp5yQ2X.js} +1 -1
- package/dist/assets/{hosting-screen-B4EAxH_R.js → hosting-screen-CVX9EEtD.js} +1 -1
- package/dist/assets/{identity-page-route-Dxpm1a6v.js → identity-page-route-DxYmA5uU.js} +1 -1
- package/dist/assets/{index-h-RcC6AV.js → index-DQkD5WCi.js} +22 -22
- package/dist/assets/{inspect-page-Dl9dJlRl.js → inspect-page-B3GxcfyP.js} +3 -3
- package/dist/assets/{install-HiQhCico.js → install-DXEYsOZM.js} +1 -1
- package/dist/assets/{integrations-page-ykDN_390.js → integrations-page-BvIHNsf8.js} +1 -1
- package/dist/assets/{intelligence-layout-CB6UjSlD.js → intelligence-layout-BHQCWwlo.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-C_HSddWZ.js → keyboard-shortcuts-page-BNK7yZqf.js} +1 -1
- package/dist/assets/{library-detail-page-CyzOHX9v.js → library-detail-page-DV3DzEA1.js} +1 -1
- package/dist/assets/{library-page-B5EWtFgp.js → library-page-BXn710XB.js} +1 -1
- package/dist/assets/local-mode-YoUYEn7C.js +39 -0
- package/dist/assets/{login-flow-BGsTwM6S.js → login-flow-CFhW2AHB.js} +1 -1
- package/dist/assets/{login-page-jcxb0I-R.js → login-page-DVozReou.js} +1 -1
- package/dist/assets/{logout-page-CDRNf_VT.js → logout-page-mbOpAsy9.js} +1 -1
- package/dist/assets/{logs-layout-BMiLmNJ1.js → logs-layout-Cv6nMdHD.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CYb9mWNV.js → memory-router-playground-page-C34xELyQ.js} +1 -1
- package/dist/assets/{messages-DBpQngan.js → messages-3teOY9CI.js} +1 -1
- package/dist/assets/{metric-card-DCHJ3KOy.js → metric-card-DQKsGfEB.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-CajFGrXu.js → mobile-sidebar-drawer-B1beyKRx.js} +1 -1
- package/dist/assets/{native-biometric-BnmJczno.js → native-biometric-uwPAd9lh.js} +2 -2
- package/dist/assets/{native-file-BXeEnGEz.js → native-file-B1HraJR0.js} +2 -2
- package/dist/assets/{notifications-page-DrMpl5CP.js → notifications-page-UMDWLPpt.js} +1 -1
- package/dist/assets/{oauth-complete-page-CMgdSTr6.js → oauth-complete-page-DnnHgVst.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-rhHc1r35.js → oauth-popup-complete-page-ClUeB7Y8.js} +1 -1
- package/dist/assets/{pairing-page-ncc1BI7T.js → pairing-page-Rsno8a1S.js} +1 -1
- package/dist/assets/{platform-detection-BeYxHNWy.js → platform-detection-CY-O-Rjc.js} +1 -1
- package/dist/assets/{platform-loopback-page-Dguk34tJ.js → platform-loopback-page-BwMcw0M2.js} +1 -1
- package/dist/assets/{plugin-detail-page-cwmsCoex.js → plugin-detail-page-BCbgwXnr.js} +1 -1
- package/dist/assets/{plugins-page-38MmVFQv.js → plugins-page-B9HBogOS.js} +1 -1
- package/dist/assets/{prechat-route-CLPN7c4G.js → prechat-route-B650w5Kw.js} +1 -1
- package/dist/assets/{prefs-BWxDWusW.js → prefs-Bo9fZ56w.js} +1 -1
- package/dist/assets/{privacy-page-DcpVbwwn.js → privacy-page-Ca7O4f9-.js} +1 -1
- package/dist/assets/{privacy-screen-D7S9U4mX.js → privacy-screen-2bUcs0CE.js} +1 -1
- package/dist/assets/{provider-callback-page-BwwsD_Ic.js → provider-callback-page-B0RNLXla.js} +1 -1
- package/dist/assets/{provider-signup-page-PKwRjxi-.js → provider-signup-page-CLgombsV.js} +1 -1
- package/dist/assets/{quick-input-page-Djdfcs-z.js → quick-input-page-DAoWLetZ.js} +1 -1
- package/dist/assets/{remote-gateway-session-YFtricXJ.js → remote-gateway-session-uLbl0yn7.js} +1 -1
- package/dist/assets/{research-mock-page-Cq114eTd.js → research-mock-page-Co74PHWK.js} +1 -1
- package/dist/assets/research-onboarding-persistence-B8R5Wv2v.js +1 -0
- package/dist/assets/research-onboarding-route-CuQ_LNlc.js +61 -0
- package/dist/assets/{resolved-assistants-store-BOajMG3X.js → resolved-assistants-store-DccydJ5N.js} +1 -1
- package/dist/assets/{review-terms-screen-DvVQe8yV.js → review-terms-screen-92ghcjAB.js} +1 -1
- package/dist/assets/{security-page-CDLZUU_X.js → security-page-DCRMmtyF.js} +1 -1
- package/dist/assets/select-assistant-screen-Dxq2KTj5.js +1 -0
- package/dist/assets/{settings-layout-CpMZCYQZ.js → settings-layout-CwoAvm9H.js} +1 -1
- package/dist/assets/{share-feedback-modal-BvvcIcbi.js → share-feedback-modal-_l0Q8X57.js} +1 -1
- package/dist/assets/{sidebar-tree-DrLFaiga.js → sidebar-tree-lIvPQT7t.js} +1 -1
- package/dist/assets/{signup-page-BKpceyMw.js → signup-page-940ppwb-.js} +1 -1
- package/dist/assets/{signup-shell-OBT4B7na.js → signup-shell-C9HJHs_-.js} +1 -1
- package/dist/assets/{skills-page-iiWtmc3_.js → skills-page-HnYQOSbb.js} +1 -1
- package/dist/assets/{sounds-page-BIJo2HkY.js → sounds-page-B23KceEa.js} +1 -1
- package/dist/assets/{subagent-detail-panel-o9yaoUJ2.js → subagent-detail-panel-D1XRi94W.js} +1 -1
- package/dist/assets/{subagent-store-4h5V2lNX.js → subagent-store-DjUgx1D2.js} +1 -1
- package/dist/assets/{system-events-page-Bgxe8yL0.js → system-events-page-CGdTU-4D.js} +1 -1
- package/dist/assets/{tiptap-document-editor-D07QVyAc.js → tiptap-document-editor-BbXpVjaU.js} +1 -1
- package/dist/assets/{tool-detail-panel-BwMbhT4B.js → tool-detail-panel-CPt_D__H.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-B1URPK6b.js → upgrade-cancel-page-CmO1zIzi.js} +1 -1
- package/dist/assets/{upgrade-success-page-IOZFtpxu.js → upgrade-success-page-C3jsuRzb.js} +1 -1
- package/dist/assets/{usage-page-DaKLVOUm.js → usage-page-DNRUI7CG.js} +1 -1
- package/dist/assets/{use-active-assistant-id-C_JDjGTU.js → use-active-assistant-id-BBHOMQFe.js} +1 -1
- package/dist/assets/use-is-org-ready-Dtge_dC5.js +1 -0
- package/dist/assets/{use-onboarding-login-D2THX3c2.js → use-onboarding-login-9378MpEq.js} +1 -1
- package/dist/assets/{use-reduced-motion-Bs2JODRV.js → use-reduced-motion-DUPDDLHh.js} +1 -1
- package/dist/assets/{use-setup-channel-param-gWFJDXEW.js → use-setup-channel-param-CUmdm0BY.js} +1 -1
- package/dist/assets/{use-skill-categories-UL_R-V1J.js → use-skill-categories-sGNRgUGk.js} +1 -1
- package/dist/assets/{voice-page-9pd-_aoI.js → voice-page-BcKHI1wy.js} +1 -1
- package/dist/assets/{weather-forecast-display-Db4yytVI.js → weather-forecast-display-Bnc4vcqX.js} +1 -1
- package/dist/assets/{web-Rmvxj1hJ.js → web-C_gIgYOE.js} +1 -1
- package/dist/assets/{welcome-screen-wJ_HBEmd.js → welcome-screen-KdInyBD-.js} +1 -1
- package/dist/assets/{workflow-detail-panel-Bu3BYRR-.js → workflow-detail-panel-D5nK0F1W.js} +1 -1
- package/dist/assets/{workspace-page-U_QWaNuQ.js → workspace-page-aYfZcUbB.js} +1 -1
- package/dist/index.html +33 -32
- package/package.json +1 -1
- package/dist/assets/api-0e_UoYfV.js +0 -1
- package/dist/assets/auth-store-DgOhGrxy.js +0 -2
- package/dist/assets/debug-page-BqT5zsyk.js +0 -4
- package/dist/assets/hatching-screen-BrViWxKb.js +0 -1
- package/dist/assets/local-mode-BKjasCuE.js +0 -39
- package/dist/assets/research-onboarding-route-jcqgVHP5.js +0 -61
- package/dist/assets/select-assistant-screen-MRulU9CV.js +0 -1
- package/dist/assets/use-is-org-ready-DB20AlbJ.js +0 -1
- /package/dist/assets/{a2a-invite-C491Ywd1.js → a2a-invite-CQMqpPDZ.js} +0 -0
- /package/dist/assets/{account-shell-5gis0r9I.js → account-shell-BSwEFNTM.js} +0 -0
- /package/dist/assets/{app-info-BsHofcBL.js → app-info-BNPvryVV.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-vcdejfQE.js → avatar-bundled-components-DQodAnJD.js} +0 -0
- /package/dist/assets/{build.umd-Bc0pcg_1.js → build.umd-C5MOmzrf.js} +0 -0
- /package/dist/assets/{by-tool-use-id-index-BJXnd5Qe.js → by-tool-use-id-index-h0TggD-a.js} +0 -0
- /package/dist/assets/{composer-focus-BFE2rR8u.js → composer-focus-BBTBdAab.js} +0 -0
- /package/dist/assets/{contacts-gateway-Bu3ZSOcX.js → contacts-gateway-jQhZqbXH.js} +0 -0
- /package/dist/assets/{danger-zone-redirect-page-8XaJR5xV.js → danger-zone-redirect-page-RdZGvrN7.js} +0 -0
- /package/dist/assets/{definitions-C6k0EQJc.js → definitions-CJ7YHLIq.js} +0 -0
- /package/dist/assets/{detail-card-BbMgE_Cg.js → detail-card-CnahmiAd.js} +0 -0
- /package/dist/assets/{edit-chat-session-BLO0v3Pn.js → edit-chat-session-phEigSQo.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-D4AV77ax.js → emoji-catalog-data-hHp74TCA.js} +0 -0
- /package/dist/assets/{environment-store-BhzMRyLQ.js → environment-store-B29S7tiK.js} +0 -0
- /package/dist/assets/{esm-DugOQgm_.js → esm-hkF3aX28.js} +0 -0
- /package/dist/assets/{format-date-C-eCaBOj.js → format-date-CLlHK5gl.js} +0 -0
- /package/dist/assets/{format-file-size-Cnq-CdFe.js → format-file-size-BfZOpPdu.js} +0 -0
- /package/dist/assets/{haptics-CZP4j_TX.js → haptics-CABfN3Hg.js} +0 -0
- /package/dist/assets/{llm-dimension-DMXIDBqX.js → llm-dimension-CgXjHNj6.js} +0 -0
- /package/dist/assets/{mutation-error-BTY0fPN-.js → mutation-error-DITUXbSQ.js} +0 -0
- /package/dist/assets/{native-deep-link-Dd6T5Ttd.js → native-deep-link-C13QIbW2.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-CqsxCaSG.js → onboarding-step-layout-QhoZ4RKu.js} +0 -0
- /package/dist/assets/{page-shell-iZ_OsSE1.js → page-shell-CejvYP6I.js} +0 -0
- /package/dist/assets/{password-reset-page-Dk_n7nsN.js → password-reset-page-BJtjGZ_1.js} +0 -0
- /package/dist/assets/{pdf-CIN5tubF.js → pdf-DGDlrU1i.js} +0 -0
- /package/dist/assets/{plugins-surface-BChUptEg.js → plugins-surface-DYk9FmM2.js} +0 -0
- /package/dist/assets/{prechat-names-r2l4SHE1.js → prechat-names-BX9ToPj8.js} +0 -0
- /package/dist/assets/{provider-key-D8DpqLRN.js → provider-key-CVj0dGLW.js} +0 -0
- /package/dist/assets/{proxy-CcvD-YbW.js → proxy-CheNMUr6.js} +0 -0
- /package/dist/assets/{public-asset-CsdLlNtA.js → public-asset-BpAVsx77.js} +0 -0
- /package/dist/assets/{schedules-DO4z4zs2.js → schedules-D7EefqdS.js} +0 -0
- /package/dist/assets/{setting-row-DAnTCHDc.js → setting-row-D9Jbc5pM.js} +0 -0
- /package/dist/assets/{status-badge-pill-Bv4itxJX.js → status-badge-pill-DUcVAyfr.js} +0 -0
- /package/dist/assets/{step-indicator-dots-DKLSzjtH.js → step-indicator-dots-DzT4WVOT.js} +0 -0
- /package/dist/assets/{system-events-redirect-page-NfIzsj0C.js → system-events-redirect-page-aRRRoLJI.js} +0 -0
- /package/dist/assets/{usage-window-Bqypb8ID.js → usage-window-wP92lK6k.js} +0 -0
- /package/dist/assets/{web-BUGodMtY.js → web-Bifc0CyQ.js} +0 -0
- /package/dist/assets/{web-CPA2j823.js → web-C6JBS2jv.js} +0 -0
- /package/dist/assets/{web-BB-7MTUi.js → web-CAGeGBel.js} +0 -0
- /package/dist/assets/{web-BXkXNijf.js → web-CCRYoYsf.js} +0 -0
- /package/dist/assets/{web-Baa9ONYD.js → web-D-9O_l_z.js} +0 -0
- /package/dist/assets/{web-StWKv8EX.js → web-DKKX1zUX.js} +0 -0
- /package/dist/assets/{workflow-status-C3wba8AX.js → workflow-status-CHd73wxx.js} +0 -0
- /package/dist/assets/{xterm-DuaDV9d-.js → xterm-ClHs86Ut.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BvmkeiTd.js → xterm-addon-fit-B-HVOsbO.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,r as t}from"./dist-C3LFhPgk2.js";import{n}from"./definitions-
|
|
1
|
+
import{n as e,r as t}from"./dist-C3LFhPgk2.js";import{n}from"./definitions-CJ7YHLIq.js";function r(e){let t=e.split(`/`).filter(e=>e!==`.`),n=[];return t.forEach(e=>{e===`..`&&n.length>0&&n[n.length-1]!==`..`?n.pop():n.push(e)}),n.join(`/`)}function i(e,t){e=r(e),t=r(t);let n=e.split(`/`),i=t.split(`/`);return e!==t&&n.every((e,t)=>e===i[t])}var a=class r extends e{constructor(){super(...arguments),this.DB_VERSION=1,this.DB_NAME=`Disc`,this._writeCmds=[`add`,`put`,`delete`],this.downloadFile=async e=>{let n=t(e,e.webFetchExtra),r=await fetch(e.url,n),i;if(!e.progress)i=await r.blob();else if(!r?.body)i=new Blob;else{let t=r.body.getReader(),n=0,a=[],o=r.headers.get(`content-type`),s=parseInt(r.headers.get(`content-length`)||`0`,10);for(;;){let{done:r,value:i}=await t.read();if(r)break;a.push(i),n+=i?.length||0;let o={url:e.url,bytes:n,contentLength:s};this.notifyListeners(`progress`,o)}let c=new Uint8Array(n),l=0;for(let e of a)e!==void 0&&(c.set(e,l),l+=e.length);i=new Blob([c.buffer],{type:o||void 0})}return{path:(await this.writeFile({path:e.path,directory:e.directory??void 0,recursive:e.recursive??!1,data:i})).uri,blob:i}}}readFileInChunks(e,t){throw this.unavailable(`Method not implemented.`)}async initDb(){if(this._db!==void 0)return this._db;if(!(`indexedDB`in window))throw this.unavailable(`This browser doesn't support IndexedDB`);return new Promise((e,t)=>{let n=indexedDB.open(this.DB_NAME,this.DB_VERSION);n.onupgradeneeded=r.doUpgrade,n.onsuccess=()=>{this._db=n.result,e(n.result)},n.onerror=()=>t(n.error),n.onblocked=()=>{console.warn(`db blocked`)}})}static doUpgrade(e){let t=e.target.result;switch(e.oldVersion){default:t.objectStoreNames.contains(`FileStorage`)&&t.deleteObjectStore(`FileStorage`),t.createObjectStore(`FileStorage`,{keyPath:`path`}).createIndex(`by_folder`,`folder`)}}async dbRequest(e,t){let n=this._writeCmds.indexOf(e)===-1?`readonly`:`readwrite`;return this.initDb().then(r=>new Promise((i,a)=>{let o=r.transaction([`FileStorage`],n).objectStore(`FileStorage`)[e](...t);o.onsuccess=()=>i(o.result),o.onerror=()=>a(o.error)}))}async dbIndexRequest(e,t,n){let r=this._writeCmds.indexOf(t)===-1?`readonly`:`readwrite`;return this.initDb().then(i=>new Promise((a,o)=>{let s=i.transaction([`FileStorage`],r).objectStore(`FileStorage`).index(e)[t](...n);s.onsuccess=()=>a(s.result),s.onerror=()=>o(s.error)}))}getPath(e,t){let n=t===void 0?``:t.replace(/^[/]+|[/]+$/g,``),r=``;return e!==void 0&&(r+=`/`+e),t!==``&&(r+=`/`+n),r}async clear(){(await this.initDb()).transaction([`FileStorage`],`readwrite`).objectStore(`FileStorage`).clear()}async readFile(e){let t=this.getPath(e.directory,e.path),n=await this.dbRequest(`get`,[t]);if(n===void 0)throw Error(`File does not exist.`);return{data:n.content?n.content:``}}async writeFile(e){let t=this.getPath(e.directory,e.path),n=e.data,r=e.encoding,i=e.recursive,a=await this.dbRequest(`get`,[t]);if(a&&a.type===`directory`)throw Error(`The supplied path is a directory.`);let o=t.substr(0,t.lastIndexOf(`/`));if(await this.dbRequest(`get`,[o])===void 0){let t=o.indexOf(`/`,1);if(t!==-1){let n=o.substr(t);await this.mkdir({path:n,directory:e.directory,recursive:i})}}if(!r&&!(n instanceof Blob)&&(n=n.indexOf(`,`)>=0?n.split(`,`)[1]:n,!this.isBase64String(n)))throw Error(`The supplied data is not valid base64 content.`);let s=Date.now(),c={path:t,folder:o,type:`file`,size:n instanceof Blob?n.size:n.length,ctime:s,mtime:s,content:n};return await this.dbRequest(`put`,[c]),{uri:c.path}}async appendFile(e){let t=this.getPath(e.directory,e.path),n=e.data,r=e.encoding,i=t.substr(0,t.lastIndexOf(`/`)),a=Date.now(),o=a,s=await this.dbRequest(`get`,[t]);if(s&&s.type===`directory`)throw Error(`The supplied path is a directory.`);if(await this.dbRequest(`get`,[i])===void 0){let t=i.indexOf(`/`,1);if(t!==-1){let n=i.substr(t);await this.mkdir({path:n,directory:e.directory,recursive:!0})}}if(!r&&!this.isBase64String(n))throw Error(`The supplied data is not valid base64 content.`);if(s!==void 0){if(s.content instanceof Blob)throw Error(`The occupied entry contains a Blob object which cannot be appended to.`);n=s.content!==void 0&&!r?btoa(atob(s.content)+atob(n)):s.content+n,o=s.ctime}let c={path:t,folder:i,type:`file`,size:n.length,ctime:o,mtime:a,content:n};await this.dbRequest(`put`,[c])}async deleteFile(e){let t=this.getPath(e.directory,e.path);if(await this.dbRequest(`get`,[t])===void 0)throw Error(`File does not exist.`);if((await this.dbIndexRequest(`by_folder`,`getAllKeys`,[IDBKeyRange.only(t)])).length!==0)throw Error(`Folder is not empty.`);await this.dbRequest(`delete`,[t])}async mkdir(e){let t=this.getPath(e.directory,e.path),n=e.recursive,r=t.substr(0,t.lastIndexOf(`/`)),i=(t.match(/\//g)||[]).length,a=await this.dbRequest(`get`,[r]),o=await this.dbRequest(`get`,[t]);if(i===1)throw Error(`Cannot create Root directory`);if(o!==void 0)throw Error(`Current directory does already exist.`);if(!n&&i!==2&&a===void 0)throw Error(`Parent directory must exist`);if(n&&i!==2&&a===void 0){let t=r.substr(r.indexOf(`/`,1));await this.mkdir({path:t,directory:e.directory,recursive:n})}let s=Date.now(),c={path:t,folder:r,type:`directory`,size:0,ctime:s,mtime:s};await this.dbRequest(`put`,[c])}async rmdir(e){let{path:t,directory:n,recursive:r}=e,i=this.getPath(n,t),a=await this.dbRequest(`get`,[i]);if(a===void 0)throw Error(`Folder does not exist.`);if(a.type!==`directory`)throw Error(`Requested path is not a directory`);let o=await this.readdir({path:t,directory:n});if(o.files.length!==0&&!r)throw Error(`Folder is not empty`);for(let e of o.files){let i=`${t}/${e.name}`;(await this.stat({path:i,directory:n})).type===`file`?await this.deleteFile({path:i,directory:n}):await this.rmdir({path:i,directory:n,recursive:r})}await this.dbRequest(`delete`,[i])}async readdir(e){let t=this.getPath(e.directory,e.path),n=await this.dbRequest(`get`,[t]);if(e.path!==``&&n===void 0)throw Error(`Folder does not exist.`);let r=await this.dbIndexRequest(`by_folder`,`getAllKeys`,[IDBKeyRange.only(t)]);return{files:await Promise.all(r.map(async e=>{let n=await this.dbRequest(`get`,[e]);return n===void 0&&(n=await this.dbRequest(`get`,[e+`/`])),{name:e.substring(t.length+1),type:n.type,size:n.size,ctime:n.ctime,mtime:n.mtime,uri:n.path}}))}}async getUri(e){let t=this.getPath(e.directory,e.path),n=await this.dbRequest(`get`,[t]);return n===void 0&&(n=await this.dbRequest(`get`,[t+`/`])),{uri:n?.path||t}}async stat(e){let t=this.getPath(e.directory,e.path),n=await this.dbRequest(`get`,[t]);if(n===void 0&&(n=await this.dbRequest(`get`,[t+`/`])),n===void 0)throw Error(`Entry does not exist.`);return{name:n.path.substring(t.length+1),type:n.type,size:n.size,ctime:n.ctime,mtime:n.mtime,uri:n.path}}async rename(e){await this._copy(e,!0)}async copy(e){return this._copy(e,!1)}async requestPermissions(){return{publicStorage:`granted`}}async checkPermissions(){return{publicStorage:`granted`}}async _copy(e,t=!1){let{toDirectory:r}=e,{to:a,from:o,directory:s}=e;if(!a||!o)throw Error(`Both to and from must be provided`);r||=s;let c=this.getPath(s,o),l=this.getPath(r,a);if(c===l)return{uri:l};if(i(c,l))throw Error(`To path cannot contain the from path`);let u;try{u=await this.stat({path:a,directory:r})}catch{let e=a.split(`/`);e.pop();let t=e.join(`/`);if(e.length>0&&(await this.stat({path:t,directory:r})).type!==`directory`)throw Error(`Parent directory of the to path is a file`)}if(u&&u.type===`directory`)throw Error(`Cannot overwrite a directory with a file`);let d=await this.stat({path:o,directory:s}),f=async(e,t,n)=>{let i=this.getPath(r,e),a=await this.dbRequest(`get`,[i]);a.ctime=t,a.mtime=n,await this.dbRequest(`put`,[a])},p=d.ctime?d.ctime:Date.now();switch(d.type){case`file`:{let e=await this.readFile({path:o,directory:s});t&&await this.deleteFile({path:o,directory:s});let i;!(e.data instanceof Blob)&&!this.isBase64String(e.data)&&(i=n.UTF8);let c=await this.writeFile({path:a,directory:r,data:e.data,encoding:i});return t&&await f(a,p,d.mtime),c}case`directory`:{if(u)throw Error(`Cannot move a directory over an existing object`);try{await this.mkdir({path:a,directory:r,recursive:!1}),t&&await f(a,p,d.mtime)}catch{}let e=(await this.readdir({path:o,directory:s})).files;for(let n of e)await this._copy({from:`${o}/${n.name}`,to:`${a}/${n.name}`,directory:s,toDirectory:r},t);t&&await this.rmdir({path:o,directory:s})}}return{uri:l}}isBase64String(e){try{return btoa(atob(e))==e}catch{return!1}}};a._debug=!0;export{a as FilesystemWeb};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./button-D1p5nVKJ.js";import{d as t}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{u as r}from"./local-mode-
|
|
1
|
+
import{t as e}from"./button-D1p5nVKJ.js";import{d as t}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{u as r}from"./local-mode-YoUYEn7C.js";import{o as i}from"./routes-iUGoIqW2.js";import{t as a}from"./use-onboarding-login-9378MpEq.js";import{in as o}from"./index-DQkD5WCi.js";var s=n();function c(){let n=t(),{loading:c,error:l,login:u,cancel:d}=a();return(0,s.jsx)(o,{children:(0,s.jsx)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center px-6 pb-40 text-[var(--content-default)]`,children:(0,s.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center`,children:[(0,s.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Welcome to Vellum`}),(0,s.jsx)(`p`,{className:`mt-3 text-body-medium-lighter text-[var(--content-tertiary)]`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Your own personal intelligence is just a step away.`}),l&&(0,s.jsx)(`p`,{className:`mt-4 text-body-small-default text-[var(--system-negative-strong)]`,children:l}),(0,s.jsxs)(`div`,{className:`mt-10 flex w-full max-w-sm flex-col gap-3`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,s.jsx)(e,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:c?d:()=>void u(),children:c?`Cancel`:`Log In`}),(0,s.jsx)(e,{variant:`ghost`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{c&&d(),r()?n(i.selectAssistant):n(i.onboarding.hosting)},children:`Continue without account`})]})]})})})}export{c as WelcomeScreen};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D1p5nVKJ.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./typography-D5f7kt80.js";import{t as a}from"./arrow-left-DI9551VI.js";import{n as o,r as s,t as c}from"./metric-card-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D1p5nVKJ.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./typography-D5f7kt80.js";import{t as a}from"./arrow-left-DI9551VI.js";import{n as o,r as s,t as c}from"./metric-card-DQKsGfEB.js";import{t as l}from"./ban-CVKGuUAQ.js";import{t as u}from"./chevron-right-DqqmezXC.js";import{t as d}from"./circle-check-VSiny8yl.js";import{t as f}from"./triangle-alert-CuLBwl1x.js";import{t as p}from"./x-CwzRJv9J.js";import"./src-4xooMXeT.js";import{n as m,r as h,t as g}from"./workflow-status-CHd73wxx.js";import{t as _}from"./proxy-CheNMUr6.js";import{t as v}from"./AnimatePresence-Oxz4BTMX.js";import{t as y}from"./use-reduced-motion-DUPDDLHh.js";import{at as b,ci as x,ct as S,di as C,ka as w,mt as T,st as E,vi as D}from"./index-DQkD5WCi.js";import{t as O}from"./status-badge-pill-DUcVAyfr.js";var k=e(t(),1),A=r();function j({onClick:e,ariaLabel:t}){return(0,A.jsxs)(`button`,{type:`button`,"aria-label":t,onClick:e,className:`flex h-8 shrink-0 cursor-pointer items-center gap-1.5 rounded-lg border border-[var(--system-negative-strong)] bg-transparent px-2.5 py-1.5 text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)]`,children:[(0,A.jsx)(D,{className:`h-3 w-3`,fill:`currentColor`}),(0,A.jsx)(i,{variant:`label-small-default`,children:`Stop`})]})}function M({title:e,body:t,emptyText:n}){return(0,A.jsxs)(`div`,{className:`mb-5`,children:[(0,A.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`mb-2 text-[var(--content-emphasised)]`,children:e}),t?(0,A.jsx)(i,{variant:`body-medium-lighter`,as:`p`,className:`whitespace-pre-wrap break-words leading-relaxed text-[var(--content-default)]`,children:t}):(0,A.jsx)(i,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-tertiary)]`,children:n})]})}function N({leaf:e}){let t=e.status===`running`?`Running…`:`No result summary`;return(0,A.jsxs)(`div`,{children:[(0,A.jsxs)(`div`,{className:`mb-5 grid grid-cols-2 gap-3`,children:[(0,A.jsx)(c,{icon:(0,A.jsx)(w,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.inputTokens??0,format:e=>o(Math.round(e)),label:`Input`}),(0,A.jsx)(c,{icon:(0,A.jsx)(s,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.outputTokens??0,format:e=>o(Math.round(e)),label:`Output`})]}),(0,A.jsx)(M,{title:`Prompt`,body:e.promptSummary,emptyText:`No prompt summary`}),(0,A.jsx)(M,{title:`Result`,body:e.resultSummary,emptyText:t})]})}function P({status:e}){return(0,A.jsx)(O,{color:m(e),label:h(e)})}function F(e){switch(e){case`completed`:return`var(--system-positive-strong)`;case`failed`:return`var(--system-negative-strong)`;case`cancelled`:return`var(--content-secondary)`;default:return`var(--primary-base)`}}function I(e){switch(e){case`completed`:return`Completed`;case`failed`:return`Failed`;case`cancelled`:return`Cancelled`;default:return`Running`}}function L({status:e}){return(0,A.jsx)(O,{color:F(e),label:I(e)})}function R({status:e}){let t=y(),n=`h-3.5 w-3.5 shrink-0`,r;return r=e===`running`?(0,A.jsx)(T,{className:`shrink-0`,dotSize:4,gap:2}):e===`completed`?(0,A.jsx)(d,{className:n,style:{color:`var(--system-positive-strong)`}}):e===`failed`?(0,A.jsx)(f,{className:n,style:{color:`var(--system-negative-strong)`}}):(0,A.jsx)(l,{className:n,style:{color:`var(--content-secondary)`},role:`img`,"aria-label":`Cancelled`}),(0,A.jsx)(v,{mode:`wait`,initial:!1,children:(0,A.jsx)(_.span,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:t?{duration:0}:{duration:.15,ease:[.16,1,.3,1]},className:`flex shrink-0 items-center`,children:r},e)})}function z({runId:e,leaf:t,components:n,onSelect:r}){let a=t.label??`Subagent ${t.seq}`,o=t.promptSummary,s=b(`${e}:${t.seq}`);return(0,A.jsx)(`button`,{type:`button`,onClick:r,"aria-label":`Open ${a} details`,className:`flex w-full cursor-pointer items-center justify-between gap-2 rounded-[6px] px-2 py-1.5 text-left transition-colors hover:bg-[var(--surface-overlay)]`,children:(0,A.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[(0,A.jsx)(R,{status:t.status}),n?(0,A.jsx)(S,{components:n,bodyShapeId:s.bodyShape,eyeStyleId:s.eyeStyle,colorId:s.color,size:16}):(0,A.jsx)(`div`,{style:{width:16,height:16,flexShrink:0},"aria-hidden":!0}),(0,A.jsx)(i,{variant:`body-medium-default`,title:a,className:`max-w-[60%] shrink-0 truncate text-[var(--content-default)]`,children:a}),o&&(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(`span`,{"aria-hidden":!0,className:`shrink-0 text-[var(--content-tertiary)] opacity-10`,children:`|`}),(0,A.jsx)(i,{variant:`body-medium-lighter`,title:o,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:o})]})]})})}function B({entry:e,onClose:t,onStop:r,onRequestJournal:l}){let d=g(e.status),f=y(),m=e.label??e.runId,h=e.agentsSpawned||e.leaves.size,v=E(),T=[...e.leaves.values()].sort((e,t)=>e.seq-t.seq),[D,O]=(0,k.useState)(null),[M,F]=(0,k.useState)(e.runId);M!==e.runId&&(F(e.runId),O(null));let I=D==null?void 0:e.leaves.get(D),R=I?b(`${e.runId}:${I.seq}`):void 0,B=(0,k.useCallback)(()=>O(null),[]),V=I?I.label??`Subagent ${I.seq}`:``,H=I?V:m,U=d?`live`:`final`;return(0,k.useEffect)(()=>{l?.(e.runId)},[e.runId,U,l]),(0,A.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden rounded-xl bg-[var(--surface-lift)]`,children:[I&&(0,A.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-hover)] px-5 py-3`,children:[(0,A.jsx)(`button`,{type:`button`,onClick:B,title:m,className:`min-w-0 shrink cursor-pointer truncate text-left text-[var(--content-default)] hover:underline`,children:(0,A.jsx)(i,{variant:`body-small-default`,as:`span`,children:m})}),(0,A.jsx)(u,{className:`h-2.5 w-2.5 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,A.jsx)(i,{variant:`body-small-default`,as:`span`,title:V,className:`min-w-0 shrink truncate text-[var(--content-secondary)]`,children:V})]}),(0,A.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3 border-b border-[var(--border-hover)] px-5 py-4`,children:[I&&(0,A.jsx)(n,{variant:`outlined`,iconOnly:(0,A.jsx)(a,{}),onClick:B,"aria-label":`Back to subagents`,tooltip:`Back`,className:`shrink-0 rounded-lg`}),I?v&&R?(0,A.jsx)(S,{components:v,bodyShapeId:R.bodyShape,eyeStyleId:R.eyeStyle,colorId:R.color,size:32}):(0,A.jsx)(`div`,{style:{width:32,height:32,flexShrink:0},"aria-hidden":!0}):(0,A.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-[6px] bg-[var(--surface-overlay)]`,children:(0,A.jsx)(x,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})}),(0,A.jsx)(i,{variant:`title-medium`,title:H,className:`min-w-0 shrink truncate text-[var(--content-default)]`,children:H}),I?(0,A.jsx)(L,{status:I.status}):(0,A.jsx)(P,{status:e.status}),(0,A.jsx)(`span`,{className:`flex-1`}),d&&r&&(0,A.jsx)(j,{onClick:()=>r(e.runId),ariaLabel:`Stop workflow`}),(0,A.jsx)(n,{variant:`outlined`,iconOnly:(0,A.jsx)(p,{}),onClick:t,"aria-label":`Close workflow detail`,tooltip:`Close`,className:`shrink-0 rounded-lg`})]}),(0,A.jsx)(`div`,{className:`flex-1 overflow-y-auto px-5 py-5`,children:(0,A.jsx)(_.div,{initial:{opacity:0},animate:{opacity:1},transition:f?{duration:0}:{duration:.18,ease:[.16,1,.3,1]},children:I?(0,A.jsx)(N,{leaf:I}):(0,A.jsxs)(A.Fragment,{children:[(0,A.jsxs)(`div`,{className:`mb-5 grid grid-cols-3 gap-3`,children:[(0,A.jsx)(c,{icon:(0,A.jsx)(w,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.inputTokens,format:e=>o(Math.round(e)),label:`Input`}),(0,A.jsx)(c,{icon:(0,A.jsx)(s,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:e.outputTokens,format:e=>o(Math.round(e)),label:`Output`}),(0,A.jsx)(c,{icon:(0,A.jsx)(C,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),target:h,format:e=>o(Math.round(e)),label:`Agents`})]}),(0,A.jsxs)(`div`,{children:[(0,A.jsx)(i,{variant:`body-medium-default`,as:`h3`,className:`mb-4 text-[var(--content-emphasised)]`,children:`Subagents`}),T.length===0?(0,A.jsx)(i,{variant:`body-small-default`,className:`py-4 text-center text-[var(--content-tertiary)]`,children:`No subagents yet`}):(0,A.jsx)(`div`,{className:`flex flex-col gap-1`,children:T.map(t=>(0,A.jsx)(z,{runId:e.runId,leaf:t,components:v,onSelect:()=>O(t.seq)},t.seq))})]})]})},I?String(I.seq):`list`)})]})}export{B as WorkflowDetailPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D1p5nVKJ.js";import{h as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./useMutation-Lj4VunQV.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./queryOptions-BtNi-_9H.js";import{t as l}from"./createLucideIcon-IRfcSUxS.js";import{t as u}from"./chevron-down-qD-re7AW.js";import{t as d}from"./chevron-right-DqqmezXC.js";import{t as f}from"./menu-Bjq0lFxx.js";import{t as p}from"./file-text-Cw--uc4C.js";import{t as m}from"./loader-circle-D1pLQlMh.js";import{t as h}from"./pencil-rKUVpppO.js";import{t as g}from"./x-CwzRJv9J.js";import{E as _}from"./src-4xooMXeT.js";import{t as v}from"./input-DR1eB4a1.js";import{t as y}from"./modal-cdtdc8dA.js";import{n as b,t as x}from"./panel-item-vXPWJAXs.js";import{t as S}from"./confirm-dialog-DW84Cxfq.js";import{Cr as C,Sr as w,_r as T,br as E,vr as D,xr as O,yr as k}from"./sdk.gen-Bz2u5Wv3.js";import{n as A}from"./use-is-mobile-DJUk0lC8.js";import{n as j}from"./native-file-BXeEnGEz.js";import{H as M,Ti as ee,V as N,Zi as P,aa as F,ji as I,la as L,mi as R,na as z,oa as te,ra as B,ta as V,ui as H}from"./index-h-RcC6AV.js";import{t as U}from"./use-active-assistant-id-C_JDjGTU.js";import{n as W,t as G}from"./mobile-sidebar-drawer-CajFGrXu.js";import{i as K,n as ne,r as q,t as J}from"./file-editor-B-psPRqR.js";import{t as Y}from"./format-file-size-Cnq-CdFe.js";var re=l(`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`}]]),ie=l(`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`}]]),ae=l(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),X=l(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),Z=e(t(),1);async function oe(e){let{data:t,error:n}=await D({path:{assistant_id:e.assistantId},query:{path:e.path,...e.showHidden?{showHidden:`true`}:{}},parseAs:`blob`,throwOnError:!1});if(n||!(t instanceof Blob))throw Error(`Failed to download file`);await j(t,e.filename)}function se(e){if(!e)return``;let t=e.indexOf(`;`);return(t===-1?e:e.slice(0,t)).trim()}function ce(e,t){return se(t)===`application/json`?!0:(e??``).toLowerCase().endsWith(`.json`)}function le(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function ue(e){return e.split(`/`).some(e=>e.startsWith(`.`))}var Q=s();function de(e){return c({queryFn:async()=>{let{data:t,error:n}=await k({path:e.path,query:{path:e.query.path,...e.query.showHidden?{showHidden:`true`}:{}}});if(n)throw n;return t},queryKey:[`assistantsWorkspaceFileRetrieve`,e]})}function fe({mimeType:e}){let t=e.indexOf(`;`),n=(t===-1?e:e.slice(0,t)).trim(),r=p;return n.startsWith(`image/`)?r=P:n.startsWith(`video/`)?r=H:!n.startsWith(`text/`)&&n!==`application/json`&&n!==`application/octet-stream`&&(r=z),(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 pe({viewMode:e,onChange:t}){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)(n,{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:r===`preview`?`Preview`:`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)(fe,{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:Y(n)})]}),r]})}function me({assistantId:e,path:t,mimeType:n,showHidden:r}){let{data:i,isLoading:o}=a({queryFn:async()=>{let n=await D({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}),[s,c]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!i)return;let e=URL.createObjectURL(i);return c(e),()=>{URL.revokeObjectURL(e),c(null)}},[i]),o?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Q.jsx)(m,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):s?n.startsWith(`image/`)?(0,Q.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,Q.jsx)(`img`,{src:s,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:s,controls:!0,className:`max-h-[70vh] max-w-full rounded`})}):null:null}function he({assistantId:e,path:t,name:r,mimeType:i,size:a,modifiedAt:o,showHidden:s}){let[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1),f=(0,Z.useCallback)(async()=>{d(!1),l(!0);try{await oe({assistantId:e,path:t,filename:r,showHidden:s})}catch{d(!0)}finally{l(!1)}},[e,t,r,s]);return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:r,mimeType:i,size:a}),(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)(z,{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:r}),(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:i}),(0,Q.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:Y(a,`Unknown size`)}),o&&(0,Q.jsxs)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:[`Modified: `,new Date(o).toLocaleString()]})]}),(0,Q.jsx)(n,{variant:`outlined`,size:`compact`,leftIcon:c?(0,Q.jsx)(m,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(L,{"aria-hidden":!0}),onClick:f,disabled:c,"aria-label":`Download ${r}`,className:`mt-4`,children:c?`Downloading…`:`Download`}),u&&(0,Q.jsx)(`p`,{className:`mt-2 text-body-small-default`,style:{color:`var(--system-error)`},children:`Download failed. Try again.`})]})})]})}function ge({assistantId:e,selectedPath:t,showHidden:r,viewMode:s,onChangeViewMode:c,onBrowse:l,pathRename:u,pathDelete:d}){let f=i(),{data:p,isLoading:h}=a({...de({path:{assistant_id:e},query:{path:t??``,showHidden:r}}),enabled:!!t}),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{if(!u)return;let{from:e,to:t}=u,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)})},[u]),(0,Z.useEffect)(()=>{if(!d)return;let{path:e}=d,t=t=>t===e||t.startsWith(`${e}/`);_(e=>e!=null&&t(e)?null:e),y(e=>e!=null&&t(e.path)?null:e)},[d]);let b=g!=null&&g===t,x=p?.content??``,S=v?.path===t?v.content:x,w=()=>{_(null),y(null)},T=o({mutationFn:async({path:t,content:n})=>{let{error:r,response:i}=await C({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`]})}}),E=S!==x,D=(0,Z.useCallback)(()=>{t&&E&&!T.isPending&&T.mutate({path:t,content:S})},[t,E,T,S]);if(!t)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:`Select a file to view`}),l&&(0,Q.jsx)(n,{type:`button`,onClick:l,leftIcon:(0,Q.jsx)(ae,{"aria-hidden":!0}),className:`sm:hidden`,children:`Browse files`})]});if(h)return(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsx)(m,{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:`File not found`})});let O=p.mimeType??`application/octet-stream`,k=p.name??t.split(`/`).pop()??t,A=M(k,O),j=ce(k,O),ee=p.content!=null&&!A&&!j,P=t?ue(t):!0,F=b&&(0,Q.jsx)(ne,{isDirty:E,isSaving:T.isPending,error:T.isError?`Save failed`:null,onSave:D,onDiscard:w});if(A&&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:k,mimeType:O,rightContent:(0,Q.jsx)(pe,{viewMode:s,onChange:e=>{b&&w(),c(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:e,fileName:k,mimeType:O,showEdit:!P&&s===`source`,isEditing:b,onToggleEdit:()=>b?w():_(t)}),s===`preview`?(0,Q.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,Q.jsx)(N,{content:e})}):b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content,readOnly:P,onStartEdit:()=>_(t)})]}),F]})}if(j&&p.content!=null){let e=b?S:p.content,n=le(e);return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,rightContent:(0,Q.jsx)(pe,{viewMode:s,onChange:e=>{b&&w(),c(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:s===`preview`?n:e,downloadContent:e,fileName:k,mimeType:O,showEdit:!P&&s===`source`,isEditing:b,onToggleEdit:()=>b?w():_(t)}),s===`preview`?(0,Q.jsx)(K,{content:n,readOnly:!0,whiteSpace:`pre`}):b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content,readOnly:P,onStartEdit:()=>_(t)})]}),F]})}return ee?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,size:p.size}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:b?S:p.content??``,fileName:k,mimeType:O,showEdit:!P,isEditing:b,onToggleEdit:()=>b?w():_(t)}),b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content??``,readOnly:P,onStartEdit:()=>_(t)})]}),F]}):O.startsWith(`image/`)||O.startsWith(`video/`)?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,size:p.size}),(0,Q.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,Q.jsx)(me,{assistantId:e,path:t,mimeType:O,showHidden:r})})]}):(0,Q.jsx)(he,{assistantId:e,path:t,name:k,mimeType:O,size:p.size,modifiedAt:p.modifiedAt,showHidden:r})}function _e(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}function ve(e){return c({queryFn:async()=>{let t={};e.query?.path&&(t.path=e.query.path),e.query?.showHidden&&(t.showHidden=`true`),e.query?.includeDirSizes&&(t.includeDirSizes=`true`);let{data:n,error:r}=await w({path:e.path,query:t});if(r)throw r;if(!n)throw Error(`Failed to load workspace tree`);return n},queryKey:[`assistantsWorkspaceTreeRetrieve`,e]})}async function ye(e,t,n,r){let i=n.toLowerCase(),a=r?.toLowerCase(),{data:o}=await w({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 be({entry:e}){return e.type===`directory`?(0,Q.jsx)(V,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`image/`)?(0,Q.jsx)(P,{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)(p,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})}function xe({entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:i,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:f,onRequestRename:p,onRequestCreate:m,depth:g}){let v=e.path??``,y=e.name??``,b=e.type===`directory`,x=n.has(v),S=r===v,C=y.startsWith(`.`),w=!ue(v),T=b&&(x||s.length>0),{data:E}=a({...ve({path:{assistant_id:t},query:{path:v,showHidden:i,includeDirSizes:o===`size`}}),enabled:b&&T}),D=(0,Z.useMemo)(()=>_e(E?.entries??[],o),[E?.entries,o]),O=s===``||y.toLowerCase().includes(s);if(s!==``&&!b&&!O)return null;let k=(0,Q.jsxs)(`button`,{onClick:()=>{b?c(v):l(v)},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:`${g*14+8}px`,paddingRight:`8px`,color:S?`var(--content-default)`:C?`var(--content-tertiary)`:`var(--content-default)`,backgroundColor:S?`color-mix(in oklab, var(--primary-base) 12%, transparent)`:void 0,opacity:C&&!S?.7:1},children:[b?T?(0,Q.jsx)(u,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,Q.jsx)(d,{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)(be,{entry:e}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:y}),e.size!=null&&(0,Q.jsx)(`span`,{className:`shrink-0 text-label-medium-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:Y(e.size)})]});return(0,Q.jsxs)(`div`,{children:[w?(0,Q.jsxs)(_.Root,{children:[(0,Q.jsx)(_.Trigger,{children:k}),(0,Q.jsxs)(_.Content,{children:[b&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(B,{className:`h-3.5 w-3.5`}),onSelect:()=>m({kind:`file`,parentPath:v}),children:`New File`}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(X,{className:`h-3.5 w-3.5`}),onSelect:()=>m({kind:`folder`,parentPath:v}),children:`New Folder`}),(0,Q.jsx)(_.Separator,{})]}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(R,{className:`h-3.5 w-3.5`}),onSelect:()=>f({path:v,name:y,isDirectory:b}),children:`Delete`}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(h,{className:`h-3.5 w-3.5`}),onSelect:()=>p({path:v,name:y,isDirectory:b}),children:`Rename`})]})]}):k,b&&T&&D.length>0&&(0,Q.jsx)(`div`,{children:D.map(e=>(0,Q.jsx)(xe,{entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:i,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:f,onRequestRename:p,onRequestCreate:m,depth:g+1},e.path))})]})}function Se({title:e,placeholder:t,confirmLabel:r,pendingLabel:i,initialName:a,onCancel:o,onConfirm:s,pending:c,error:l}){let u=(0,Z.useRef)(null),[d,f]=(0,Z.useState)(a??``),p=d.trim(),m=p.length>0&&(/[/\\]/.test(p)||p===`.`||p===`..`),h=p.length>0&&!m&&!c;return(0,Q.jsx)(y.Root,{open:!0,onOpenChange:e=>{!e&&!c&&o()},children:(0,Q.jsx)(y.Content,{size:`sm`,hideCloseButton:!0,"aria-describedby":void 0,onOpenAutoFocus:e=>{e.preventDefault();let t=u.current;t&&(t.focus(),requestAnimationFrame(()=>{t.setSelectionRange(0,t.value.length)}))},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),c||o()},children:(0,Q.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),h&&s(p)},children:[(0,Q.jsx)(y.Header,{children:(0,Q.jsx)(y.Title,{children:e})}),(0,Q.jsx)(y.Body,{children:(0,Q.jsx)(v,{ref:u,label:`Name`,value:d,onChange:e=>f(e.target.value),placeholder:t,errorText:l??(m?`Enter a single file or folder name without slashes.`:void 0),autoComplete:`off`,spellCheck:!1,fullWidth:!0})}),(0,Q.jsxs)(y.Footer,{children:[(0,Q.jsx)(n,{type:`button`,variant:`outlined`,onClick:o,disabled:c,children:`Cancel`}),(0,Q.jsx)(n,{type:`submit`,variant:`primary`,disabled:!h,children:c?i:r})]})]})})})}function Ce({assistantId:e,expandedPaths:t,selectedPath:r,showHidden:s,sortMode:c,onToggleExpand:l,onExpandPath:u,onSelectPath:d,onToggleShowHidden:f,onChangeSortMode:p,onPathDeleted:m,onPathRenamed:h}){let _=i(),[y,b]=(0,Z.useState)(``),x=y.trim().toLowerCase(),[w,D]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(null),[j,M]=(0,Z.useState)(null),N=(0,Z.useCallback)(()=>{A(null),M(null)},[]),{data:P,isLoading:I}=a(ve({path:{assistant_id:e},query:{showHidden:s,includeDirSizes:c===`size`}})),L=(0,Z.useMemo)(()=>_e(P?.entries??[],c),[P?.entries,c]),R=(0,Z.useCallback)(()=>{for(let e of[`assistantsWorkspaceTreeRetrieve`,`assistantsWorkspaceFileRetrieve`,`assistantsWorkspaceFileContentRetrieve`])_.invalidateQueries({queryKey:[e]})},[_]),z=o({mutationFn:async t=>{let n=t.parentPath?`${t.parentPath}/${t.name}`:t.name;await ye(e,t.parentPath,t.name);let{error:r,response:i}=t.kind===`file`?await C({path:{assistant_id:e},body:{path:n,content:``,encoding:`utf8`},throwOnError:!1}):await E({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=>{N(),R(),e.parentPath&&u(e.parentPath),e.kind===`file`?d(e.path):u(e.path)},onError:e=>{M(e instanceof Error?e.message:`Failed to create.`)}}),B=o({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 ye(e,r,t.newName,i);let{error:o,response:s}=await O({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})=>{N(),R(),h(e,t)},onError:e=>{M(e instanceof Error?e.message:`Failed to rename.`)}}),V=(0,Z.useCallback)(e=>{M(null),A({type:`create`,...e})},[]),H=(0,Z.useCallback)(e=>{M(null),A({type:`rename`,path:e.path,name:e.name})},[]),[U,W]=(0,Z.useState)(null),G=o({mutationFn:async t=>{let{error:n,response:r}=await T({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=>{W(null),R(),m(e.path)}}),K=(0,Z.useCallback)(e=>{G.reset(),W(e)},[G]);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:`Files`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:c===`size`?(0,Q.jsx)(ie,{"aria-hidden":!0}):(0,Q.jsx)(re,{"aria-hidden":!0}),onClick:()=>p(c===`size`?`name`:`size`),"aria-label":c===`size`?`Sort by name`:`Sort by size`,title:c===`size`?`Sorted by size — switch to name`:`Sorted by name — switch to size`,tintColor:c===`size`?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:s?(0,Q.jsx)(F,{"aria-hidden":!0}):(0,Q.jsx)(te,{"aria-hidden":!0}),onClick:f,"aria-label":s?`Hide hidden files`:`Show hidden files`,title:s?`Hide hidden files`:`Show hidden files`,tintColor:s?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(we,{open:w,onOpenChange:D,onSelectKind:e=>{D(!1),V({kind:e,parentPath:``})}})]})]}),(0,Q.jsx)(`div`,{className:`px-3 py-2`,children:(0,Q.jsxs)(`div`,{className:`relative`,children:[(0,Q.jsx)(v,{type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`Search files`,leftIcon:(0,Q.jsx)(ee,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,spellCheck:!1,autoComplete:`off`}),y&&(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(g,{"aria-hidden":!0}),onClick:()=>b(``),"aria-label":`Clear search`,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:I?(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)`}})}):L.length?L.map(n=>(0,Q.jsx)(xe,{entry:n,assistantId:e,expandedPaths:t,selectedPath:r,showHidden:s,sortMode:c,searchLower:x,onToggleExpand:l,onSelectPath:d,onRequestDelete:K,onRequestRename:H,onRequestCreate:V,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:`No files found`})}),k?.type===`create`&&(0,Q.jsx)(Se,{title:k.kind===`file`?`New File`:`New Folder`,placeholder:k.kind===`file`?`filename.md`:`folder-name`,confirmLabel:`Create`,pendingLabel:`Creating…`,onCancel:N,onConfirm:e=>{M(null),z.mutate({kind:k.kind,parentPath:k.parentPath,name:e})},pending:z.isPending,error:j},`create-${k.kind}-${k.parentPath}`),k?.type===`rename`&&(0,Q.jsx)(Se,{title:`Rename`,placeholder:k.name,confirmLabel:`Rename`,pendingLabel:`Renaming…`,initialName:k.name,onCancel:N,onConfirm:e=>{if(e===k.name){N();return}M(null),B.mutate({oldPath:k.path,newName:e})},pending:B.isPending,error:j},`rename-${k.path}`),(0,Q.jsx)(S,{open:U!==null,title:U?.isDirectory?`Delete Folder`:`Delete File`,message:(0,Q.jsxs)(Q.Fragment,{children:[`Are you sure you want to delete`,` `,(0,Q.jsx)(`span`,{style:{color:`var(--content-default)`},children:U?.name}),U?.isDirectory?` and all of its contents`:``,`? This cannot be undone.`,G.error&&(0,Q.jsx)(`span`,{className:`mt-2 block`,style:{color:`var(--system-negative-strong)`},children:G.error.message})]}),confirmLabel:G.isPending?`Deleting…`:`Delete`,destructive:!0,isPending:G.isPending,onConfirm:()=>{U&&G.mutate(U)},onCancel:()=>W(null)})]})}function we({open:e,onOpenChange:t,onSelectKind:r}){return A()?(0,Q.jsxs)(b.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(b.Trigger,{asChild:!0,children:(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(b.Content,{children:[(0,Q.jsx)(b.Header,{className:`sr-only`,children:(0,Q.jsx)(b.Title,{children:`Create new`})}),(0,Q.jsxs)(b.Body,{className:`pt-0`,children:[(0,Q.jsx)(x,{icon:B,label:`New File`,onSelect:()=>r(`file`)}),(0,Q.jsx)(x,{icon:X,label:`New Folder`,onSelect:()=>r(`folder`)})]})]})]}):(0,Q.jsxs)(f.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(f.Trigger,{asChild:!0,children:(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(f.Content,{align:`end`,sideOffset:4,children:[(0,Q.jsx)(f.Item,{leftIcon:(0,Q.jsx)(B,{className:`h-3.5 w-3.5`}),onSelect:()=>r(`file`),children:`New File`}),(0,Q.jsx)(f.Item,{leftIcon:(0,Q.jsx)(X,{className:`h-3.5 w-3.5`}),onSelect:()=>r(`folder`),children:`New Folder`})]})]})}function Te(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 Ee({assistantId:e}){let[t,n]=r(),[i,a]=(0,Z.useState)(()=>{let e=t.get(`file`);return e?Te(e):new Set}),[o,s]=(0,Z.useState)(()=>t.get(`file`)),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(()=>t.get(`sort`)===`size`?`size`:`name`),[f,p]=(0,Z.useState)(`preview`);(0,Z.useEffect)(()=>{t.get(`file`)&&n(e=>{let t=new URLSearchParams(e);return t.delete(`file`),t},{replace:!0})},[]);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})},[]),[g,_]=(0,Z.useState)(!1),v=(0,Z.useCallback)(e=>{s(e),_(!1)},[]),[y,b]=(0,Z.useState)(null),x=(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}),b({path:e})},[]),[S,C]=(0,Z.useState)(null),w={assistantId:e,expandedPaths:i,selectedPath:o,showHidden:c,sortMode:u,onToggleExpand:m,onExpandPath:h,onSelectPath:v,onToggleShowHidden:()=>l(e=>!e),onChangeSortMode:d,onPathDeleted:x,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}),C({from:e,to:t})},[])};return(0,Q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-4`,children:[(0,Q.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,Q.jsx)(W,{onClick:()=>_(!0)})}),(0,Q.jsx)(G,{open:g,onClose:()=>_(!1),title:`Files`,children:(0,Q.jsx)(Ce,{...w})}),(0,Q.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-1 gap-4 sm:grid-cols-[320px_1fr]`,children:[(0,Q.jsx)(`div`,{className:`hidden min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border sm:flex`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,Q.jsx)(Ce,{...w})}),(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)(ge,{assistantId:e,selectedPath:o,showHidden:c,viewMode:f,onChangeViewMode:p,onBrowse:()=>_(!0),pathRename:S,pathDelete:y})})]})]})}function De(){return(0,Q.jsx)(Ee,{assistantId:U()})}export{De as WorkspacePage};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D1p5nVKJ.js";import{h as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./useMutation-Lj4VunQV.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./queryOptions-BtNi-_9H.js";import{t as l}from"./createLucideIcon-IRfcSUxS.js";import{t as u}from"./chevron-down-qD-re7AW.js";import{t as d}from"./chevron-right-DqqmezXC.js";import{t as f}from"./menu-Bjq0lFxx.js";import{t as p}from"./file-text-Cw--uc4C.js";import{t as m}from"./loader-circle-D1pLQlMh.js";import{t as h}from"./pencil-rKUVpppO.js";import{t as g}from"./x-CwzRJv9J.js";import{E as _}from"./src-4xooMXeT.js";import{t as v}from"./input-DR1eB4a1.js";import{t as y}from"./modal-cdtdc8dA.js";import{n as b,t as x}from"./panel-item-vXPWJAXs.js";import{t as S}from"./confirm-dialog-DW84Cxfq.js";import{Cr as C,Sr as w,_r as T,br as E,vr as D,xr as O,yr as k}from"./sdk.gen-Bz2u5Wv3.js";import{n as A}from"./use-is-mobile-DJUk0lC8.js";import{n as j}from"./native-file-B1HraJR0.js";import{H as M,Ti as ee,V as N,Zi as P,aa as F,ji as I,la as L,mi as R,na as z,oa as te,ra as B,ta as V,ui as H}from"./index-DQkD5WCi.js";import{t as U}from"./use-active-assistant-id-BBHOMQFe.js";import{n as W,t as G}from"./mobile-sidebar-drawer-B1beyKRx.js";import{i as K,n as ne,r as q,t as J}from"./file-editor-XdAW-U3o.js";import{t as Y}from"./format-file-size-BfZOpPdu.js";var re=l(`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`}]]),ie=l(`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`}]]),ae=l(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),X=l(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),Z=e(t(),1);async function oe(e){let{data:t,error:n}=await D({path:{assistant_id:e.assistantId},query:{path:e.path,...e.showHidden?{showHidden:`true`}:{}},parseAs:`blob`,throwOnError:!1});if(n||!(t instanceof Blob))throw Error(`Failed to download file`);await j(t,e.filename)}function se(e){if(!e)return``;let t=e.indexOf(`;`);return(t===-1?e:e.slice(0,t)).trim()}function ce(e,t){return se(t)===`application/json`?!0:(e??``).toLowerCase().endsWith(`.json`)}function le(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function ue(e){return e.split(`/`).some(e=>e.startsWith(`.`))}var Q=s();function de(e){return c({queryFn:async()=>{let{data:t,error:n}=await k({path:e.path,query:{path:e.query.path,...e.query.showHidden?{showHidden:`true`}:{}}});if(n)throw n;return t},queryKey:[`assistantsWorkspaceFileRetrieve`,e]})}function fe({mimeType:e}){let t=e.indexOf(`;`),n=(t===-1?e:e.slice(0,t)).trim(),r=p;return n.startsWith(`image/`)?r=P:n.startsWith(`video/`)?r=H:!n.startsWith(`text/`)&&n!==`application/json`&&n!==`application/octet-stream`&&(r=z),(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 pe({viewMode:e,onChange:t}){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)(n,{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:r===`preview`?`Preview`:`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)(fe,{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:Y(n)})]}),r]})}function me({assistantId:e,path:t,mimeType:n,showHidden:r}){let{data:i,isLoading:o}=a({queryFn:async()=>{let n=await D({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}),[s,c]=(0,Z.useState)(null);return(0,Z.useEffect)(()=>{if(!i)return;let e=URL.createObjectURL(i);return c(e),()=>{URL.revokeObjectURL(e),c(null)}},[i]),o?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Q.jsx)(m,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):s?n.startsWith(`image/`)?(0,Q.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,Q.jsx)(`img`,{src:s,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:s,controls:!0,className:`max-h-[70vh] max-w-full rounded`})}):null:null}function he({assistantId:e,path:t,name:r,mimeType:i,size:a,modifiedAt:o,showHidden:s}){let[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(!1),f=(0,Z.useCallback)(async()=>{d(!1),l(!0);try{await oe({assistantId:e,path:t,filename:r,showHidden:s})}catch{d(!0)}finally{l(!1)}},[e,t,r,s]);return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:r,mimeType:i,size:a}),(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)(z,{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:r}),(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:i}),(0,Q.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:Y(a,`Unknown size`)}),o&&(0,Q.jsxs)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:[`Modified: `,new Date(o).toLocaleString()]})]}),(0,Q.jsx)(n,{variant:`outlined`,size:`compact`,leftIcon:c?(0,Q.jsx)(m,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(L,{"aria-hidden":!0}),onClick:f,disabled:c,"aria-label":`Download ${r}`,className:`mt-4`,children:c?`Downloading…`:`Download`}),u&&(0,Q.jsx)(`p`,{className:`mt-2 text-body-small-default`,style:{color:`var(--system-error)`},children:`Download failed. Try again.`})]})})]})}function ge({assistantId:e,selectedPath:t,showHidden:r,viewMode:s,onChangeViewMode:c,onBrowse:l,pathRename:u,pathDelete:d}){let f=i(),{data:p,isLoading:h}=a({...de({path:{assistant_id:e},query:{path:t??``,showHidden:r}}),enabled:!!t}),[g,_]=(0,Z.useState)(null),[v,y]=(0,Z.useState)(null);(0,Z.useEffect)(()=>{if(!u)return;let{from:e,to:t}=u,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)})},[u]),(0,Z.useEffect)(()=>{if(!d)return;let{path:e}=d,t=t=>t===e||t.startsWith(`${e}/`);_(e=>e!=null&&t(e)?null:e),y(e=>e!=null&&t(e.path)?null:e)},[d]);let b=g!=null&&g===t,x=p?.content??``,S=v?.path===t?v.content:x,w=()=>{_(null),y(null)},T=o({mutationFn:async({path:t,content:n})=>{let{error:r,response:i}=await C({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`]})}}),E=S!==x,D=(0,Z.useCallback)(()=>{t&&E&&!T.isPending&&T.mutate({path:t,content:S})},[t,E,T,S]);if(!t)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:`Select a file to view`}),l&&(0,Q.jsx)(n,{type:`button`,onClick:l,leftIcon:(0,Q.jsx)(ae,{"aria-hidden":!0}),className:`sm:hidden`,children:`Browse files`})]});if(h)return(0,Q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Q.jsx)(m,{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:`File not found`})});let O=p.mimeType??`application/octet-stream`,k=p.name??t.split(`/`).pop()??t,A=M(k,O),j=ce(k,O),ee=p.content!=null&&!A&&!j,P=t?ue(t):!0,F=b&&(0,Q.jsx)(ne,{isDirty:E,isSaving:T.isPending,error:T.isError?`Save failed`:null,onSave:D,onDiscard:w});if(A&&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:k,mimeType:O,rightContent:(0,Q.jsx)(pe,{viewMode:s,onChange:e=>{b&&w(),c(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:e,fileName:k,mimeType:O,showEdit:!P&&s===`source`,isEditing:b,onToggleEdit:()=>b?w():_(t)}),s===`preview`?(0,Q.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,Q.jsx)(N,{content:e})}):b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content,readOnly:P,onStartEdit:()=>_(t)})]}),F]})}if(j&&p.content!=null){let e=b?S:p.content,n=le(e);return(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,rightContent:(0,Q.jsx)(pe,{viewMode:s,onChange:e=>{b&&w(),c(e)}})}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:s===`preview`?n:e,downloadContent:e,fileName:k,mimeType:O,showEdit:!P&&s===`source`,isEditing:b,onToggleEdit:()=>b?w():_(t)}),s===`preview`?(0,Q.jsx)(K,{content:n,readOnly:!0,whiteSpace:`pre`}):b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content,readOnly:P,onStartEdit:()=>_(t)})]}),F]})}return ee?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,size:p.size}),(0,Q.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,Q.jsx)(J,{content:b?S:p.content??``,fileName:k,mimeType:O,showEdit:!P,isEditing:b,onToggleEdit:()=>b?w():_(t)}),b?(0,Q.jsx)(q,{value:S,onChange:e=>y({path:t,content:e}),onSave:D}):(0,Q.jsx)(K,{content:p.content??``,readOnly:P,onStartEdit:()=>_(t)})]}),F]}):O.startsWith(`image/`)||O.startsWith(`video/`)?(0,Q.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,Q.jsx)($,{name:k,mimeType:O,size:p.size}),(0,Q.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,Q.jsx)(me,{assistantId:e,path:t,mimeType:O,showHidden:r})})]}):(0,Q.jsx)(he,{assistantId:e,path:t,name:k,mimeType:O,size:p.size,modifiedAt:p.modifiedAt,showHidden:r})}function _e(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}function ve(e){return c({queryFn:async()=>{let t={};e.query?.path&&(t.path=e.query.path),e.query?.showHidden&&(t.showHidden=`true`),e.query?.includeDirSizes&&(t.includeDirSizes=`true`);let{data:n,error:r}=await w({path:e.path,query:t});if(r)throw r;if(!n)throw Error(`Failed to load workspace tree`);return n},queryKey:[`assistantsWorkspaceTreeRetrieve`,e]})}async function ye(e,t,n,r){let i=n.toLowerCase(),a=r?.toLowerCase(),{data:o}=await w({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 be({entry:e}){return e.type===`directory`?(0,Q.jsx)(V,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`image/`)?(0,Q.jsx)(P,{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)(p,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})}function xe({entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:i,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:f,onRequestRename:p,onRequestCreate:m,depth:g}){let v=e.path??``,y=e.name??``,b=e.type===`directory`,x=n.has(v),S=r===v,C=y.startsWith(`.`),w=!ue(v),T=b&&(x||s.length>0),{data:E}=a({...ve({path:{assistant_id:t},query:{path:v,showHidden:i,includeDirSizes:o===`size`}}),enabled:b&&T}),D=(0,Z.useMemo)(()=>_e(E?.entries??[],o),[E?.entries,o]),O=s===``||y.toLowerCase().includes(s);if(s!==``&&!b&&!O)return null;let k=(0,Q.jsxs)(`button`,{onClick:()=>{b?c(v):l(v)},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:`${g*14+8}px`,paddingRight:`8px`,color:S?`var(--content-default)`:C?`var(--content-tertiary)`:`var(--content-default)`,backgroundColor:S?`color-mix(in oklab, var(--primary-base) 12%, transparent)`:void 0,opacity:C&&!S?.7:1},children:[b?T?(0,Q.jsx)(u,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,Q.jsx)(d,{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)(be,{entry:e}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:y}),e.size!=null&&(0,Q.jsx)(`span`,{className:`shrink-0 text-label-medium-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:Y(e.size)})]});return(0,Q.jsxs)(`div`,{children:[w?(0,Q.jsxs)(_.Root,{children:[(0,Q.jsx)(_.Trigger,{children:k}),(0,Q.jsxs)(_.Content,{children:[b&&(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(B,{className:`h-3.5 w-3.5`}),onSelect:()=>m({kind:`file`,parentPath:v}),children:`New File`}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(X,{className:`h-3.5 w-3.5`}),onSelect:()=>m({kind:`folder`,parentPath:v}),children:`New Folder`}),(0,Q.jsx)(_.Separator,{})]}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(R,{className:`h-3.5 w-3.5`}),onSelect:()=>f({path:v,name:y,isDirectory:b}),children:`Delete`}),(0,Q.jsx)(_.Item,{leftIcon:(0,Q.jsx)(h,{className:`h-3.5 w-3.5`}),onSelect:()=>p({path:v,name:y,isDirectory:b}),children:`Rename`})]})]}):k,b&&T&&D.length>0&&(0,Q.jsx)(`div`,{children:D.map(e=>(0,Q.jsx)(xe,{entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:i,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,onRequestDelete:f,onRequestRename:p,onRequestCreate:m,depth:g+1},e.path))})]})}function Se({title:e,placeholder:t,confirmLabel:r,pendingLabel:i,initialName:a,onCancel:o,onConfirm:s,pending:c,error:l}){let u=(0,Z.useRef)(null),[d,f]=(0,Z.useState)(a??``),p=d.trim(),m=p.length>0&&(/[/\\]/.test(p)||p===`.`||p===`..`),h=p.length>0&&!m&&!c;return(0,Q.jsx)(y.Root,{open:!0,onOpenChange:e=>{!e&&!c&&o()},children:(0,Q.jsx)(y.Content,{size:`sm`,hideCloseButton:!0,"aria-describedby":void 0,onOpenAutoFocus:e=>{e.preventDefault();let t=u.current;t&&(t.focus(),requestAnimationFrame(()=>{t.setSelectionRange(0,t.value.length)}))},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),c||o()},children:(0,Q.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),h&&s(p)},children:[(0,Q.jsx)(y.Header,{children:(0,Q.jsx)(y.Title,{children:e})}),(0,Q.jsx)(y.Body,{children:(0,Q.jsx)(v,{ref:u,label:`Name`,value:d,onChange:e=>f(e.target.value),placeholder:t,errorText:l??(m?`Enter a single file or folder name without slashes.`:void 0),autoComplete:`off`,spellCheck:!1,fullWidth:!0})}),(0,Q.jsxs)(y.Footer,{children:[(0,Q.jsx)(n,{type:`button`,variant:`outlined`,onClick:o,disabled:c,children:`Cancel`}),(0,Q.jsx)(n,{type:`submit`,variant:`primary`,disabled:!h,children:c?i:r})]})]})})})}function Ce({assistantId:e,expandedPaths:t,selectedPath:r,showHidden:s,sortMode:c,onToggleExpand:l,onExpandPath:u,onSelectPath:d,onToggleShowHidden:f,onChangeSortMode:p,onPathDeleted:m,onPathRenamed:h}){let _=i(),[y,b]=(0,Z.useState)(``),x=y.trim().toLowerCase(),[w,D]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(null),[j,M]=(0,Z.useState)(null),N=(0,Z.useCallback)(()=>{A(null),M(null)},[]),{data:P,isLoading:I}=a(ve({path:{assistant_id:e},query:{showHidden:s,includeDirSizes:c===`size`}})),L=(0,Z.useMemo)(()=>_e(P?.entries??[],c),[P?.entries,c]),R=(0,Z.useCallback)(()=>{for(let e of[`assistantsWorkspaceTreeRetrieve`,`assistantsWorkspaceFileRetrieve`,`assistantsWorkspaceFileContentRetrieve`])_.invalidateQueries({queryKey:[e]})},[_]),z=o({mutationFn:async t=>{let n=t.parentPath?`${t.parentPath}/${t.name}`:t.name;await ye(e,t.parentPath,t.name);let{error:r,response:i}=t.kind===`file`?await C({path:{assistant_id:e},body:{path:n,content:``,encoding:`utf8`},throwOnError:!1}):await E({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=>{N(),R(),e.parentPath&&u(e.parentPath),e.kind===`file`?d(e.path):u(e.path)},onError:e=>{M(e instanceof Error?e.message:`Failed to create.`)}}),B=o({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 ye(e,r,t.newName,i);let{error:o,response:s}=await O({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})=>{N(),R(),h(e,t)},onError:e=>{M(e instanceof Error?e.message:`Failed to rename.`)}}),V=(0,Z.useCallback)(e=>{M(null),A({type:`create`,...e})},[]),H=(0,Z.useCallback)(e=>{M(null),A({type:`rename`,path:e.path,name:e.name})},[]),[U,W]=(0,Z.useState)(null),G=o({mutationFn:async t=>{let{error:n,response:r}=await T({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=>{W(null),R(),m(e.path)}}),K=(0,Z.useCallback)(e=>{G.reset(),W(e)},[G]);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:`Files`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:c===`size`?(0,Q.jsx)(ie,{"aria-hidden":!0}):(0,Q.jsx)(re,{"aria-hidden":!0}),onClick:()=>p(c===`size`?`name`:`size`),"aria-label":c===`size`?`Sort by name`:`Sort by size`,title:c===`size`?`Sorted by size — switch to name`:`Sorted by name — switch to size`,tintColor:c===`size`?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:s?(0,Q.jsx)(F,{"aria-hidden":!0}):(0,Q.jsx)(te,{"aria-hidden":!0}),onClick:f,"aria-label":s?`Hide hidden files`:`Show hidden files`,title:s?`Hide hidden files`:`Show hidden files`,tintColor:s?`var(--content-default)`:`var(--content-tertiary)`}),(0,Q.jsx)(we,{open:w,onOpenChange:D,onSelectKind:e=>{D(!1),V({kind:e,parentPath:``})}})]})]}),(0,Q.jsx)(`div`,{className:`px-3 py-2`,children:(0,Q.jsxs)(`div`,{className:`relative`,children:[(0,Q.jsx)(v,{type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:`Search files`,leftIcon:(0,Q.jsx)(ee,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,spellCheck:!1,autoComplete:`off`}),y&&(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(g,{"aria-hidden":!0}),onClick:()=>b(``),"aria-label":`Clear search`,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:I?(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)`}})}):L.length?L.map(n=>(0,Q.jsx)(xe,{entry:n,assistantId:e,expandedPaths:t,selectedPath:r,showHidden:s,sortMode:c,searchLower:x,onToggleExpand:l,onSelectPath:d,onRequestDelete:K,onRequestRename:H,onRequestCreate:V,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:`No files found`})}),k?.type===`create`&&(0,Q.jsx)(Se,{title:k.kind===`file`?`New File`:`New Folder`,placeholder:k.kind===`file`?`filename.md`:`folder-name`,confirmLabel:`Create`,pendingLabel:`Creating…`,onCancel:N,onConfirm:e=>{M(null),z.mutate({kind:k.kind,parentPath:k.parentPath,name:e})},pending:z.isPending,error:j},`create-${k.kind}-${k.parentPath}`),k?.type===`rename`&&(0,Q.jsx)(Se,{title:`Rename`,placeholder:k.name,confirmLabel:`Rename`,pendingLabel:`Renaming…`,initialName:k.name,onCancel:N,onConfirm:e=>{if(e===k.name){N();return}M(null),B.mutate({oldPath:k.path,newName:e})},pending:B.isPending,error:j},`rename-${k.path}`),(0,Q.jsx)(S,{open:U!==null,title:U?.isDirectory?`Delete Folder`:`Delete File`,message:(0,Q.jsxs)(Q.Fragment,{children:[`Are you sure you want to delete`,` `,(0,Q.jsx)(`span`,{style:{color:`var(--content-default)`},children:U?.name}),U?.isDirectory?` and all of its contents`:``,`? This cannot be undone.`,G.error&&(0,Q.jsx)(`span`,{className:`mt-2 block`,style:{color:`var(--system-negative-strong)`},children:G.error.message})]}),confirmLabel:G.isPending?`Deleting…`:`Delete`,destructive:!0,isPending:G.isPending,onConfirm:()=>{U&&G.mutate(U)},onCancel:()=>W(null)})]})}function we({open:e,onOpenChange:t,onSelectKind:r}){return A()?(0,Q.jsxs)(b.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(b.Trigger,{asChild:!0,children:(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(b.Content,{children:[(0,Q.jsx)(b.Header,{className:`sr-only`,children:(0,Q.jsx)(b.Title,{children:`Create new`})}),(0,Q.jsxs)(b.Body,{className:`pt-0`,children:[(0,Q.jsx)(x,{icon:B,label:`New File`,onSelect:()=>r(`file`)}),(0,Q.jsx)(x,{icon:X,label:`New Folder`,onSelect:()=>r(`folder`)})]})]})]}):(0,Q.jsxs)(f.Root,{open:e,onOpenChange:t,children:[(0,Q.jsx)(f.Trigger,{asChild:!0,children:(0,Q.jsx)(n,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,Q.jsxs)(f.Content,{align:`end`,sideOffset:4,children:[(0,Q.jsx)(f.Item,{leftIcon:(0,Q.jsx)(B,{className:`h-3.5 w-3.5`}),onSelect:()=>r(`file`),children:`New File`}),(0,Q.jsx)(f.Item,{leftIcon:(0,Q.jsx)(X,{className:`h-3.5 w-3.5`}),onSelect:()=>r(`folder`),children:`New Folder`})]})]})}function Te(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 Ee({assistantId:e}){let[t,n]=r(),[i,a]=(0,Z.useState)(()=>{let e=t.get(`file`);return e?Te(e):new Set}),[o,s]=(0,Z.useState)(()=>t.get(`file`)),[c,l]=(0,Z.useState)(!1),[u,d]=(0,Z.useState)(()=>t.get(`sort`)===`size`?`size`:`name`),[f,p]=(0,Z.useState)(`preview`);(0,Z.useEffect)(()=>{t.get(`file`)&&n(e=>{let t=new URLSearchParams(e);return t.delete(`file`),t},{replace:!0})},[]);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})},[]),[g,_]=(0,Z.useState)(!1),v=(0,Z.useCallback)(e=>{s(e),_(!1)},[]),[y,b]=(0,Z.useState)(null),x=(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}),b({path:e})},[]),[S,C]=(0,Z.useState)(null),w={assistantId:e,expandedPaths:i,selectedPath:o,showHidden:c,sortMode:u,onToggleExpand:m,onExpandPath:h,onSelectPath:v,onToggleShowHidden:()=>l(e=>!e),onChangeSortMode:d,onPathDeleted:x,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}),C({from:e,to:t})},[])};return(0,Q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-4`,children:[(0,Q.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,Q.jsx)(W,{onClick:()=>_(!0)})}),(0,Q.jsx)(G,{open:g,onClose:()=>_(!1),title:`Files`,children:(0,Q.jsx)(Ce,{...w})}),(0,Q.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-1 gap-4 sm:grid-cols-[320px_1fr]`,children:[(0,Q.jsx)(`div`,{className:`hidden min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border sm:flex`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,Q.jsx)(Ce,{...w})}),(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)(ge,{assistantId:e,selectedPath:o,showHidden:c,viewMode:f,onChangeViewMode:p,onBrowse:()=>_(!0),pathRename:S,pathDelete:y})})]})]})}function De(){return(0,Q.jsx)(Ee,{assistantId:U()})}export{De as WorkspacePage};
|
package/dist/index.html
CHANGED
|
@@ -10,49 +10,49 @@
|
|
|
10
10
|
<link rel="apple-touch-icon" href="/assistant/favicon.svg" />
|
|
11
11
|
<title>Vellum Assistant</title>
|
|
12
12
|
<script src="/assistant/theme-init.js"></script>
|
|
13
|
-
<script type="module" crossorigin src="/assistant/assets/index-
|
|
13
|
+
<script type="module" crossorigin src="/assistant/assets/index-DQkD5WCi.js"></script>
|
|
14
14
|
<link rel="modulepreload" crossorigin href="/assistant/assets/chunk-jRWAZmH_.js">
|
|
15
15
|
<link rel="modulepreload" crossorigin href="/assistant/assets/preload-helper-BewR0kVT.js">
|
|
16
16
|
<link rel="modulepreload" crossorigin href="/assistant/assets/is-electron-LEymSS4C.js">
|
|
17
17
|
<link rel="modulepreload" crossorigin href="/assistant/assets/react-DJZBPgpf.js">
|
|
18
18
|
<link rel="modulepreload" crossorigin href="/assistant/assets/create-selectors-DxrPZQND.js">
|
|
19
19
|
<link rel="modulepreload" crossorigin href="/assistant/assets/local-settings-lVNyIOJ_.js">
|
|
20
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/local-mode-
|
|
21
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/api-
|
|
20
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/local-mode-YoUYEn7C.js">
|
|
21
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/api-bHQ_ZhgO.js">
|
|
22
22
|
<link rel="modulepreload" crossorigin href="/assistant/assets/client.gen-AQhSugfA.js">
|
|
23
23
|
<link rel="modulepreload" crossorigin href="/assistant/assets/sdk.gen-B3bmXhSv.js">
|
|
24
24
|
<link rel="modulepreload" crossorigin href="/assistant/assets/client.gen-V_HNquaL.js">
|
|
25
25
|
<link rel="modulepreload" crossorigin href="/assistant/assets/sdk.gen-Bz2u5Wv3.js">
|
|
26
26
|
<link rel="modulepreload" crossorigin href="/assistant/assets/api-errors-DZ6ckXtC.js">
|
|
27
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/api-
|
|
27
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/api-DXLi4DU7.js">
|
|
28
28
|
<link rel="modulepreload" crossorigin href="/assistant/assets/device-settings-BBwtGKJb.js">
|
|
29
29
|
<link rel="modulepreload" crossorigin href="/assistant/assets/return-to-BbdJZupb.js">
|
|
30
30
|
<link rel="modulepreload" crossorigin href="/assistant/assets/routes-iUGoIqW2.js">
|
|
31
31
|
<link rel="modulepreload" crossorigin href="/assistant/assets/dist-C3LFhPgk2.js">
|
|
32
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/native-biometric-
|
|
33
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/remote-gateway-session-
|
|
32
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/native-biometric-uwPAd9lh.js">
|
|
33
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/remote-gateway-session-uLbl0yn7.js">
|
|
34
34
|
<link rel="modulepreload" crossorigin href="/assistant/assets/event-bus-BXKLAX-e.js">
|
|
35
35
|
<link rel="modulepreload" crossorigin href="/assistant/assets/capture-error-CmeVLfq0.js">
|
|
36
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/resolved-assistants-store-
|
|
36
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/resolved-assistants-store-DccydJ5N.js">
|
|
37
37
|
<link rel="modulepreload" crossorigin href="/assistant/assets/typed-storage-T9jtK5c0.js">
|
|
38
38
|
<link rel="modulepreload" crossorigin href="/assistant/assets/jsx-runtime-CVSDxk6A.js">
|
|
39
39
|
<link rel="modulepreload" crossorigin href="/assistant/assets/QueryClientProvider-DKhXIxGb.js">
|
|
40
40
|
<link rel="modulepreload" crossorigin href="/assistant/assets/useQuery-B45lW1Kk.js">
|
|
41
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/auth-store-
|
|
41
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/auth-store-CI4EhvE5.js">
|
|
42
42
|
<link rel="modulepreload" crossorigin href="/assistant/assets/avatar-svg-compositor-BnVOXsYU.js">
|
|
43
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/proxy-
|
|
44
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/use-reduced-motion-
|
|
43
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/proxy-CheNMUr6.js">
|
|
44
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/use-reduced-motion-DUPDDLHh.js">
|
|
45
45
|
<link rel="modulepreload" crossorigin href="/assistant/assets/createLucideIcon-IRfcSUxS.js">
|
|
46
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/animated-avatar-
|
|
46
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/animated-avatar-KEsxQUWX.js">
|
|
47
47
|
<link rel="modulepreload" crossorigin href="/assistant/assets/prechat-UQXfXf5i.js">
|
|
48
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/platform-detection-
|
|
48
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/platform-detection-CY-O-Rjc.js">
|
|
49
49
|
<link rel="modulepreload" crossorigin href="/assistant/assets/impersonate-version-flag-DudbyPBi.js">
|
|
50
50
|
<link rel="modulepreload" crossorigin href="/assistant/assets/assistant-identity-store-Cp3CD7d1.js">
|
|
51
51
|
<link rel="modulepreload" crossorigin href="/assistant/assets/effective-timezone-DAkNzd21.js">
|
|
52
52
|
<link rel="modulepreload" crossorigin href="/assistant/assets/semver-DLY9hF7h.js">
|
|
53
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/messages-
|
|
53
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/messages-3teOY9CI.js">
|
|
54
54
|
<link rel="modulepreload" crossorigin href="/assistant/assets/chat-Bn41Y5yM.js">
|
|
55
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/diagnostics-
|
|
55
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/diagnostics-BUlVBxem.js">
|
|
56
56
|
<link rel="modulepreload" crossorigin href="/assistant/assets/conversation-store-COUX81g-.js">
|
|
57
57
|
<link rel="modulepreload" crossorigin href="/assistant/assets/bundle-mjs-BZt35okJ.js">
|
|
58
58
|
<link rel="modulepreload" crossorigin href="/assistant/assets/misc-CfQwP_zq.js">
|
|
@@ -92,12 +92,13 @@
|
|
|
92
92
|
<link rel="modulepreload" crossorigin href="/assistant/assets/tag-BizaosUX.js">
|
|
93
93
|
<link rel="modulepreload" crossorigin href="/assistant/assets/toggle-D7S110RM.js">
|
|
94
94
|
<link rel="modulepreload" crossorigin href="/assistant/assets/src-4xooMXeT.js">
|
|
95
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/detail-shell-
|
|
96
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/composer-focus-
|
|
97
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/by-tool-use-id-index-
|
|
98
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/subagent-store-
|
|
95
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/detail-shell-q6GjKJ6F.js">
|
|
96
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/composer-focus-BBTBdAab.js">
|
|
97
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/by-tool-use-id-index-h0TggD-a.js">
|
|
98
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/subagent-store-DjUgx1D2.js">
|
|
99
99
|
<link rel="modulepreload" crossorigin href="/assistant/assets/conversation-selection-oLES1vkM.js">
|
|
100
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/prefs-
|
|
100
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/prefs-Bo9fZ56w.js">
|
|
101
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/research-onboarding-persistence-B8R5Wv2v.js">
|
|
101
102
|
<link rel="modulepreload" crossorigin href="/assistant/assets/useMutation-Lj4VunQV.js">
|
|
102
103
|
<link rel="modulepreload" crossorigin href="/assistant/assets/infiniteQueryOptions-C6p49ZmI.js">
|
|
103
104
|
<link rel="modulepreload" crossorigin href="/assistant/assets/queryOptions-BtNi-_9H.js">
|
|
@@ -106,27 +107,27 @@
|
|
|
106
107
|
<link rel="modulepreload" crossorigin href="/assistant/assets/sdk.gen-YX4BQpM7.js">
|
|
107
108
|
<link rel="modulepreload" crossorigin href="/assistant/assets/use-bus-subscription-YZjoe_RT.js">
|
|
108
109
|
<link rel="modulepreload" crossorigin href="/assistant/assets/use-is-mobile-DJUk0lC8.js">
|
|
109
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/use-is-org-ready-
|
|
110
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/build-state-
|
|
111
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/login-flow-
|
|
110
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/use-is-org-ready-Dtge_dC5.js">
|
|
111
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/build-state-D96tiPPg.js">
|
|
112
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/login-flow-CFhW2AHB.js">
|
|
112
113
|
<link rel="modulepreload" crossorigin href="/assistant/assets/chunk-5KNZJZUH-DdS6bb-3.js">
|
|
113
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/use-onboarding-login-
|
|
114
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/use-onboarding-login-9378MpEq.js">
|
|
114
115
|
<link rel="modulepreload" crossorigin href="/assistant/assets/utils-Cv6Fontd.js">
|
|
115
116
|
<link rel="modulepreload" crossorigin href="/assistant/assets/feature-flag-catalog-Ca2Lo1Sx.js">
|
|
116
117
|
<link rel="modulepreload" crossorigin href="/assistant/assets/sound-manager-CX_nIxe3.js">
|
|
117
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/client-identity-
|
|
118
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/browser-
|
|
119
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/native-deep-link-
|
|
120
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/native-file-
|
|
118
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/client-identity-jhypHe7Y.js">
|
|
119
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/browser-CP3oEvln.js">
|
|
120
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/native-deep-link-C13QIbW2.js">
|
|
121
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/native-file-B1HraJR0.js">
|
|
121
122
|
<link rel="modulepreload" crossorigin href="/assistant/assets/assistant-feature-flag-store-BRGydSRn.js">
|
|
122
123
|
<link rel="modulepreload" crossorigin href="/assistant/assets/client-feature-flag-store-C0Tjm-Hl.js">
|
|
123
124
|
<link rel="modulepreload" crossorigin href="/assistant/assets/viewer-store-C8L5A-BB.js">
|
|
124
125
|
<link rel="modulepreload" crossorigin href="/assistant/assets/conversation-list-fetchers-ogeilsCp.js">
|
|
125
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/edit-chat-session-
|
|
126
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/haptics-
|
|
127
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/public-asset-
|
|
128
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/workflow-status-
|
|
129
|
-
<link rel="modulepreload" crossorigin href="/assistant/assets/AnimatePresence-
|
|
126
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/edit-chat-session-phEigSQo.js">
|
|
127
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/haptics-CABfN3Hg.js">
|
|
128
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/public-asset-BpAVsx77.js">
|
|
129
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/workflow-status-CHd73wxx.js">
|
|
130
|
+
<link rel="modulepreload" crossorigin href="/assistant/assets/AnimatePresence-Oxz4BTMX.js">
|
|
130
131
|
<link rel="modulepreload" crossorigin href="/assistant/assets/archive-0aqysuyd.js">
|
|
131
132
|
<link rel="modulepreload" crossorigin href="/assistant/assets/arrow-left-DI9551VI.js">
|
|
132
133
|
<link rel="modulepreload" crossorigin href="/assistant/assets/arrow-up-BxoccrRI.js">
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./chunk-jRWAZmH_.js";import{B as t,F as ee,G as te,H as n,I as ne,J as re,K as r,L as i,R as ie,U as a,V as o,W as s,X as ae,Y as c,Z as oe,q as l,z as u}from"./local-mode-BKjasCuE.js";function d(e){return oe(ne,e)}function se(e){return ae(ee,e)}var ce=i([`end_turn`,`max_tokens`,`max_turn_requests`,`refusal`,`cancelled`]),le=s({type:n(`acp_session_completed`),acpSessionId:l(),stopReason:ce}).strict(),ue=s({type:n(`acp_session_error`),acpSessionId:l(),error:l()}).strict(),de=s({type:n(`acp_session_spawned`),acpSessionId:l(),agent:l(),parentConversationId:l(),parentToolUseId:l().optional(),task:l().optional()}).strict(),fe=i([`agent_message_chunk`,`agent_thought_chunk`,`user_message_chunk`,`tool_call`,`tool_call_update`,`plan`]),pe=s({type:n(`acp_session_update`),acpSessionId:l(),updateType:fe,content:l().optional(),toolCallId:l().optional(),toolTitle:l().optional(),toolKind:l().optional(),toolStatus:l().optional(),rawInput:c().optional(),rawOutput:c().optional(),locations:u(s({path:l(),line:a().optional()})).optional(),messageId:l().optional(),seq:a().optional()}).strict(),me=s({type:n(`acp_session_usage`),acpSessionId:l(),usedTokens:a(),contextSize:a(),inputTokens:a().optional(),outputTokens:a().optional(),costAmount:a().optional(),costCurrency:l().optional()}).strict(),he=i([`idle`,`thinking`,`streaming`,`tool_running`,`awaiting_confirmation`]),ge=i([`assistant_turn`,`user_turn`,`global`]),_e=i([`message_dequeued`,`thinking_delta`,`first_text_delta`,`tool_use_start`,`preview_start`,`tool_result_received`,`confirmation_requested`,`confirmation_resolved`,`context_compacting`,`message_complete`,`generation_cancelled`,`error_terminal`]),ve=s({type:n(`assistant_activity_state`),conversationId:l(),activityVersion:a(),phase:he,anchor:ge,reason:_e,requestId:l().optional(),statusText:l().optional()}),ye=s({type:n(`assistant_text_delta`),text:l(),messageId:l().optional(),conversationId:l().optional()}),f=s({type:n(`assistant_thinking_delta`),thinking:l(),messageId:l().optional(),conversationId:l().optional(),timestampMs:a().optional()}),p=s({type:n(`assistant_turn_start`),messageId:l(),conversationId:l().optional()}),m=s({type:n(`avatar_updated`),avatarPath:l()}),h=s({type:n(`background_tool_completed`),id:l(),conversationId:l(),status:i([`completed`,`failed`,`cancelled`]),exitCode:a().nullable().optional(),output:l().optional(),completedAt:a()}),g=s({type:n(`background_tool_started`),id:l(),toolName:l(),conversationId:l(),command:l(),startedAt:a()}),_=s({type:n(`compaction_circuit_closed`),conversationId:l()}),v=s({type:n(`compaction_circuit_open`),conversationId:l(),reason:n(`3_consecutive_failures`),openUntil:a()}),y=s({label:l(),description:l(),pattern:l()}),b=s({label:l(),scope:l()}),x=s({label:l(),scope:l()}),S=s({filePath:l(),oldContent:l(),newContent:l(),isNewFile:t()}),C=i([`allow_once`,`allow_always`,`reject_once`,`reject_always`]),w=s({optionId:l(),name:l(),kind:C}),T=i([`sandbox`,`host`]),E=s({type:n(`confirmation_request`),requestId:l(),toolName:l(),input:r(l(),c()),riskLevel:l(),riskReason:l().optional(),isContainerized:t().optional(),executionTarget:T.optional(),allowlistOptions:u(y),scopeOptions:u(b),directoryScopeOptions:u(x).optional(),diff:S.optional(),conversationId:l().optional(),persistentDecisionsAllowed:t().optional(),toolUseId:l().optional(),acpToolKind:l().optional(),acpOptions:u(w).optional()}),D=s({type:n(`contact_request`),requestId:l(),channel:l().optional(),placeholder:l().optional(),label:l().optional(),description:l().optional(),role:l().optional()}),O=i([`PROVIDER_NETWORK`,`PROVIDER_RATE_LIMIT`,`MANAGED_USAGE_LIMIT`,`PROVIDER_OVERLOADED`,`PROVIDER_API`,`IMAGE_TOO_LARGE`,`PROVIDER_BILLING`,`PROVIDER_ORDERING`,`PROVIDER_WEB_SEARCH`,`PROVIDER_NOT_CONFIGURED`,`PROVIDER_INVALID_KEY`,`MANAGED_KEY_INVALID`,`CONTEXT_TOO_LARGE`,`BUDGET_YIELD_UNRECOVERED`,`MAX_TOKENS_REACHED`,`CONVERSATION_ABORTED`,`CONVERSATION_PROCESSING_FAILED`,`DISK_SPACE_CRITICAL`,`UNKNOWN`]),k=s({type:n(`conversation_error`),conversationId:l(),code:O,userMessage:l(),retryable:t(),debugDetails:l().optional(),errorCategory:l().optional(),connectionName:l().optional(),profileName:l().optional()}),A=i([`created`,`renamed`,`deleted`,`reordered`,`seen_changed`]),j=s({type:n(`conversation_list_invalidated`),reason:A}),M=i([`memory_v3`]),N=s({type:n(`conversation_notice`),conversationId:l(),source:M,code:O,userMessage:l(),errorCategory:l().optional()}),P=s({type:n(`conversation_title_updated`),conversationId:l(),title:l()}),F=i([`disabled`,`ok`,`warning`,`critical`,`unknown`]),I=i([`agent-turns`,`background-work`,`remote-ingress`]),L=s({enabled:t(),state:F,locked:t(),acknowledged:t(),overrideActive:t(),effectivelyLocked:t(),lockId:l().nullable(),usagePercent:a().nullable(),thresholdPercent:a(),path:l().nullable(),lastCheckedAt:l().nullable(),blockedCapabilities:u(I),error:l().nullable()}),R=s({type:n(`disk_pressure_status_changed`),status:L}),be=s({id:l(),surfaceId:l(),author:l(),content:l(),anchorStart:a().optional(),anchorEnd:a().optional(),anchorText:l().optional(),parentCommentId:l().optional(),status:l(),createdAt:a(),updatedAt:a()}),z=s({type:n(`document_comment_created`),conversationId:l(),surfaceId:l(),comment:be}),xe=s({type:n(`document_comment_deleted`),conversationId:l(),surfaceId:l(),commentId:l()}),Se=s({type:n(`document_comment_reopened`),conversationId:l(),surfaceId:l(),commentId:l()}),Ce=s({type:n(`document_comment_resolved`),conversationId:l(),surfaceId:l(),commentId:l(),resolvedBy:l()}),we=s({type:n(`document_editor_update`),conversationId:l(),surfaceId:l(),markdown:l(),mode:l()}),Te=s({type:n(`error`),message:l(),code:l().optional(),category:l().optional(),errorCategory:l().optional(),requestId:l().optional(),conversationId:l().optional()}),Ee=s({type:n(`generation_cancelled`),conversationId:l().optional()}),B=s({id:l().optional(),filename:l(),mimeType:l(),data:l(),sourceType:i([`sandbox_file`,`host_file`,`tool_block`]).optional(),sizeBytes:a().optional(),thumbnailData:l().optional(),fileBacked:t().optional(),filePath:l().optional()}),De=s({type:n(`generation_handoff`),conversationId:l().optional(),requestId:l().optional(),queuedCount:a(),messageId:l().optional(),attachments:u(B).optional(),attachmentWarnings:u(l()).optional()}),Oe=s({type:n(`home_feed_updated`),updatedAt:l(),newItemCount:a()}),ke=s({kind:i([`plugin`,`workspace`]),id:l()}),Ae=s({type:n(`hook_event`),conversationId:l().optional(),hookName:l(),owner:ke,detail:r(l(),c())}),je=s({type:n(`identity_changed`),name:l(),role:l(),personality:l(),emoji:l(),home:l()}),Me=i([`approved`,`rejected`,`answered`,`cancelled`,`superseded`]),Ne=s({type:n(`interaction_resolved`),requestId:l(),conversationId:l(),state:Me,kind:l()}),Pe=s({type:n(`message_complete`),messageId:l().optional(),conversationId:l().optional(),source:i([`main`,`aux`]).optional(),attachments:u(B).optional(),attachmentWarnings:u(l()).optional()}),Fe=s({type:n(`message_dequeued`),conversationId:l(),requestId:l()}),Ie=s({type:n(`message_queued`),conversationId:l(),requestId:l(),position:a()}),Le=s({type:n(`message_queued_deleted`),conversationId:l(),requestId:l()}),Re=s({type:n(`message_request_complete`),conversationId:l(),requestId:l(),runStillActive:t().optional()}),ze=s({type:n(`navigate_settings`),tab:l()}),Be=s({type:n(`notification_intent`),sourceEventName:l(),title:l(),body:l(),deliveryId:l().optional(),deepLinkMetadata:r(l(),c()).optional(),targetGuardianPrincipalId:l().optional(),silent:t().optional()}),Ve=s({type:n(`open_panel`),panelType:l(),data:r(l(),c()).optional(),conversationId:l().optional(),surfaceId:l().optional()}),He=s({type:n(`open_url`),url:l().min(1),title:l().optional(),conversationId:l().optional()}),V=s({id:l(),label:l(),description:l().optional()}),H=s({id:l(),question:l(),description:l().optional(),options:u(V),freeTextPlaceholder:l().optional()}),Ue=s({type:n(`question_request`),requestId:l(),questions:u(H),question:l(),description:l().optional(),options:u(V),freeTextPlaceholder:l().optional(),conversationId:l().optional(),toolUseId:l().optional()}),We=s({type:n(`relationship_state_updated`),updatedAt:l()}),Ge=s({type:n(`secret_request`),requestId:l(),service:l(),field:l(),label:l(),description:l().optional(),placeholder:l().optional(),conversationId:l().optional(),purpose:l().optional(),allowedTools:u(l()).optional(),allowedDomains:u(l()).optional(),allowOneTimeSend:t().optional()}),Ke=s({type:l(),content:l().optional(),text:l().optional(),result:l().optional(),input:r(l(),c()).optional(),toolName:l().optional(),isError:t().optional(),toolUseId:l().optional()}).passthrough(),qe=s({type:n(`subagent_event`),conversationId:l(),subagentId:l(),event:Ke}).strict(),Je=s({type:n(`subagent_spawned`),subagentId:l(),parentConversationId:l(),label:l(),objective:l(),isFork:t().optional(),parentToolUseId:l().optional()}).strict(),U=i([`pending`,`running`,`awaiting_input`,`completed`,`failed`,`aborted`,`interrupted`]),W=s({inputTokens:a(),outputTokens:a(),estimatedCost:a()}).strict(),Ye=s({type:n(`subagent_status_changed`),subagentId:l(),status:U,error:l().optional(),usage:W.optional()}).strict(),Xe=s({type:n(`sync_changed`),tags:u(l().min(1)).min(1),originClientId:l().min(1).optional()}),Ze=i([`tool_start`,`tool_complete`,`status`]),Qe=s({type:n(`tool_output_chunk`),chunk:l(),conversationId:l().optional(),toolUseId:l().optional(),subType:Ze.optional(),subToolName:l().optional(),subToolInput:l().optional(),subToolIsError:t().optional(),subToolId:l().optional(),messageId:l().optional()}),$e=s({pattern:l(),label:l()}),et=i([`anthropic-native`,`brave`,`perplexity`,`tavily`,`firecrawl`]),tt=i([`default`,`firecrawl`]),nt=s({rank:a(),title:l(),url:l(),domain:l(),faviconUrl:l().optional(),snippet:l().optional(),age:l().optional(),score:a().optional()}),rt=s({query:l(),provider:et,resultCount:a(),durationMs:a(),results:u(nt),errorMessage:l().optional()}),it=s({url:l(),finalUrl:l(),provider:tt.optional(),status:a(),contentType:l().optional(),byteCount:a(),charCount:a(),truncated:t(),title:l().optional(),domain:l(),faviconUrl:l().optional(),redirectCount:a(),durationMs:a(),errorMessage:l().optional(),mayRequireJavaScript:t().optional()}),G=s({webSearch:rt.optional(),webFetch:it.optional()}),at=s({type:n(`tool_result`),toolName:l(),result:l(),isError:t().optional(),diff:S.optional(),status:l().optional(),conversationId:l().optional(),imageData:l().optional(),imageDataList:u(l()).optional(),toolUseId:l().optional(),messageId:l().optional(),riskLevel:l().optional(),riskReason:l().optional(),matchedTrustRuleId:l().optional(),isContainerized:t().optional(),riskScopeOptions:u($e).optional(),riskAllowlistOptions:u(y).optional(),riskDirectoryScopeOptions:u(x).optional(),approvalMode:l().optional(),approvalReason:l().optional(),riskThreshold:l().optional(),activityMetadata:G.optional(),completedAt:a().optional()}),ot=s({type:n(`tool_use_preview_start`),toolUseId:l(),toolName:l(),conversationId:l().optional(),messageId:l().optional(),previewStartedAt:a().optional()}),st=s({type:n(`tool_use_start`),toolName:l(),input:r(l(),c()),toolUseId:l().optional(),messageId:l().optional(),conversationId:l().optional(),startedAt:a().optional(),previewStartedAt:a().optional()}),ct=s({type:n(`ui_surface_complete`),conversationId:l(),surfaceId:l(),summary:l(),submittedData:r(l(),c()).optional()}),lt=s({type:n(`ui_surface_dismiss`),conversationId:l(),surfaceId:l()}),ut=s({id:l(),label:l(),style:i([`primary`,`secondary`,`destructive`]).optional(),data:r(l(),c()).optional()}),dt=s({type:n(`ui_surface_show`),conversationId:l(),surfaceId:l(),surfaceType:l(),title:l().optional(),data:r(l(),c()),actions:u(ut).optional(),display:i([`inline`,`panel`]).optional(),messageId:l().optional(),persistent:t().optional(),toolCallId:l().optional()}),ft=s({type:n(`ui_surface_update`),conversationId:l(),surfaceId:l(),data:r(l(),c())}),K=s({type:n(`usage_progress`),conversationId:l(),inputTokens:a(),outputTokens:a(),estimatedCost:a(),model:l()}),pt=s({type:n(`usage_update`),conversationId:l(),inputTokens:a(),outputTokens:a(),cacheCreationInputTokens:a().optional(),cacheReadInputTokens:a().optional(),totalInputTokens:a(),totalOutputTokens:a(),estimatedCost:a(),model:l(),contextWindowTokens:a().optional(),contextWindowMaxTokens:a().optional()}),mt=s({type:n(`user_message_echo`),text:l(),conversationId:l().optional(),messageId:l().optional(),requestId:l().optional(),clientMessageId:l().optional()}).strict(),q=i([`running`,`completed`,`failed`,`aborted`,`cap_exceeded`,`interrupted`]),ht=s({type:n(`workflow_completed`),runId:l(),conversationId:l().optional(),status:q,agentsSpawned:a(),inputTokens:a(),outputTokens:a(),summary:l().optional()}).strict(),gt=s({type:n(`workflow_leaf_finished`),runId:l(),conversationId:l(),seq:a().int(),status:i([`completed`,`failed`]),label:l().optional(),inputTokens:a().optional(),outputTokens:a().optional(),resultSummary:l().optional()}).strict(),_t=s({type:n(`workflow_leaf_started`),runId:l(),conversationId:l(),seq:a().int(),label:l().optional(),phase:l().optional(),promptSummary:l().optional()}).strict(),vt=s({type:n(`workflow_progress`),runId:l(),conversationId:l().optional(),agentsSpawned:a(),phase:l().optional(),label:l().optional(),message:l().optional()}).strict(),yt=s({type:n(`workflow_started`),runId:l(),conversationId:l(),toolUseId:l().optional(),label:l().optional()}).strict(),bt=`syntheticAgentErrorMessage`,xt=`compactionAgent`,St=3e4,Ct=s({cursorInTextField:t().optional().describe(`Whether the cursor is in an editable text field when dictation started`)}).passthrough().describe(`Dictation context (app name, window title, bundle ID, cursor state, selected text)`),wt=s({transcription:l().describe(`Raw speech transcription`),context:Ct,profileId:l().describe(`Optional dictation profile ID`).optional()}),J=s({id:l(),filename:l(),mimeType:l(),sizeBytes:a(),kind:l(),data:l().optional(),thumbnailData:l().optional(),fileBacked:t().optional()}),Tt=s({pattern:l(),label:l()}),Et=s({label:l(),description:l(),pattern:l()}),Dt=s({scope:l(),label:l()}),Ot=s({requestId:l(),title:l().optional(),description:l().optional(),toolName:l().optional(),riskLevel:l().optional(),riskReason:l().optional(),input:r(l(),c()).optional(),allowlistOptions:u(y).optional(),scopeOptions:u(b).optional(),directoryScopeOptions:u(x).optional(),persistentDecisionsAllowed:t().optional()}),kt=s({requestId:l(),entries:u(H)}),At=i([`approved`,`denied`,`timed_out`]),Y=s({id:l().optional(),name:l(),input:r(l(),c()),result:l().optional(),isError:t().optional(),imageData:l().optional(),imageDataList:u(l()).optional(),startedAt:a().optional(),previewStartedAt:a().optional(),completedAt:a().optional(),confirmationDecision:At.optional(),confirmationLabel:l().optional(),riskLevel:l().optional(),riskReason:l().optional(),matchedTrustRuleId:l().optional(),autoApproved:t().optional(),approvalMode:l().optional(),approvalReason:l().optional(),riskThreshold:l().optional(),riskScopeOptions:u(Tt).optional(),riskAllowlistOptions:u(Et).optional(),riskDirectoryScopeOptions:u(Dt).optional(),activityMetadata:G.optional(),scopeOptions:u(b).optional(),pendingConfirmation:Ot.optional(),pendingQuestion:kt.optional()}),jt=s({id:l(),label:l(),style:l().optional(),data:r(l(),c()).optional()}),X=s({surfaceId:l(),surfaceType:l(),title:l().optional(),data:r(l(),c()),actions:u(jt).optional(),display:l().optional(),persistent:t().optional(),completed:t().optional(),completionSummary:l().optional(),toolCallId:l().optional()}),Mt=s({subagentId:l(),label:l(),status:l(),error:l().optional(),conversationId:l().optional(),objective:l().optional()}),Nt=s({acpSessionId:l(),agent:l().optional()}),Pt=s({id:l(),toolName:l(),conversationId:l(),command:l(),startedAt:a(),status:i([`completed`,`failed`,`cancelled`]),exitCode:a().nullable(),output:l(),completedAt:a()}),Ft=s({appUrl:l().optional(),webUrl:l().optional()}),It=s({emoji:l(),op:i([`added`,`removed`]),actorDisplayName:l().optional(),targetChannelTs:l()}),Lt=s({channelId:l(),channelName:l().optional(),channelTs:l(),threadTs:l().optional(),sender:s({displayName:l().optional(),externalUserId:l().optional()}).optional(),messageLink:Ft.optional(),threadLink:Ft.optional(),eventKind:i([`message`,`reaction`]).optional(),reaction:It.optional()}),Rt=s({type:n(`text`),text:l()}),zt=s({type:n(`thinking`),thinking:l(),startedAt:a().optional(),completedAt:a().optional()}),Bt=s({type:n(`tool_use`),toolCall:Y}),Vt=s({type:n(`surface`),surface:X}),Ht=s({type:n(`attachment`),attachment:J}),Ut=o(`type`,[Rt,zt,Bt,Vt,Ht]),Wt=s({id:l(),mergedMessageIds:u(l()).optional(),clientMessageId:l().optional(),role:i([`user`,`assistant`]),content:l().meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Flat plain-text body (joined text segments).`}).optional(),timestamp:l(),attachments:u(J),toolCalls:u(Y).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the tool_use variant). Flat list of tool calls.`}).optional(),surfaces:u(X).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the surface variant). Flat list of surfaces.`}).optional(),textSegments:u(l()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Text segments split by tool-call boundaries.`}).optional(),thinkingSegments:u(l()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Reasoning text extracted from thinking blocks.`}).optional(),contentOrder:u(l()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Positional "<type>:<index>" content ordering (e.g. "text:0", "thinking:1").`}).optional(),contentBlocks:u(Ut).optional(),subagentNotification:Mt.optional(),acpNotification:Nt.optional(),backgroundEventNotification:t().optional(),backgroundToolCompletion:Pt.optional(),slackMessage:Lt.optional(),queueStatus:i([`queued`,`processing`]).optional(),queuePosition:a().optional()}),Gt=s({status:L}),Kt=n(`notification`),qt=i([`new`,`seen`,`acted_on`,`dismissed`]),Jt=i([`low`,`medium`,`high`,`critical`]),Yt=i([`security`,`scheduling`,`background`,`email`,`system`]),Xt=i([`heartbeat`,`memory_consolidation`,`schedule`,`auto_analysis`,`user`,`other`]),Zt=s({id:l(),label:l(),prompt:l()}),Qt=i([`emailDraft`,`documentPreview`,`permissionChat`,`paymentAuth`,`toolPermission`,`updatesList`]),$t=s({kind:Qt}),en=s({id:l(),type:Kt,priority:a().int().min(0).max(100),title:l().optional(),summary:l(),timestamp:l(),status:qt.default(`new`),expiresAt:l().optional(),actions:u(Zt).optional(),urgency:Jt.optional(),conversationId:l().optional(),detailPanel:$t.optional(),category:Yt.optional(),noteworthy:t().optional(),fromAssistant:t().optional(),metadata:r(l(),c()).optional(),sourceType:Xt.optional(),sourceKey:l().optional(),sourceLabel:l().optional(),createdAt:l()}),tn=i([`deterministic`,`assistant`]),nn=s({id:l(),label:l(),icon:l().optional(),prompt:l(),source:tn}),rn=s({greeting:l(),timeAwayLabel:l(),newCount:a().int().min(0)}),an=s({items:u(en),updatedAt:l(),contextBanner:rn,suggestedPrompts:u(nn)}),on=s({id:l(),category:i([`voice`,`world`,`priorities`]),text:l(),confidence:i([`strong`,`uncertain`]),source:i([`onboarding`,`inferred`])}),sn=s({id:l(),name:l(),description:l(),tier:i([`unlocked`,`next-up`,`earned`]),gate:l(),unlockHint:l().optional(),ctaLabel:l().optional()}),cn=s({version:n(1),assistantId:l(),tier:re([n(1),n(2),n(3),n(4)]),progressPercent:a(),facts:u(on),capabilities:u(sn),conversationCount:a(),hatchedDate:l(),assistantName:l(),userName:l().optional(),updatedAt:l()}),ln=s({key:l(),label:l(),ms:a()}),Z=s({phases:u(ln),ttftMs:a().nullish(),totalToFirstTokenMs:a().nullish(),providerDurationMs:a().nullish(),firstTokenKind:i([`thinking`,`text`]).nullish()}),un=s({provider:l().nullish(),model:l().nullish(),status:l().nullish(),inputTokens:a().nullish(),outputTokens:a().nullish(),cacheCreationInputTokens:a().nullish(),cacheReadInputTokens:a().nullish(),stopReason:l().nullish(),requestMessageCount:a().nullish(),requestToolCount:a().nullish(),responseMessageCount:a().nullish(),responseToolCallCount:a().nullish(),responsePreview:l().nullish(),toolCallNames:u(l()).nullish(),estimatedCostUsd:a().nullish(),durationMs:a().nullish()}),Q=s({kind:l(),label:l().nullish(),role:l().nullish(),text:l().nullish(),toolName:l().nullish(),data:c().optional(),language:l().nullish()}),dn=s({name:l().nullish(),message:l().nullish(),code:l().nullish(),provider:l().nullish(),statusCode:a().nullish(),retryAfterMs:a().nullish(),apiErrorCode:l().nullish(),apiErrorType:l().nullish(),apiErrorParam:l().nullish(),requestId:l().nullish()}),fn=s({id:l(),createdAt:a(),requestPayload:ie(),responsePayload:ie(),provider:l().nullish(),summary:un.nullish(),requestSections:u(Q).nullish(),responseSections:u(Q).nullish(),agentLoopExitReason:l().nullish(),callSite:l().nullish(),error:dn.nullish(),latency:Z.nullish()}),pn=s({nodeId:l(),score:a(),semanticSimilarity:a(),recencyBoost:a(),type:l().optional()}),mn=s({reason:l(),semanticUnavailable:t(),fallbackSources:u(l())}),hn=s({enabled:t(),degraded:t(),provider:l().nullable(),model:l().nullable(),degradation:mn.nullable(),semanticHits:a().nullish(),mergedCount:a().nullish(),selectedCount:a().nullish(),tier1Count:a().nullish(),tier2Count:a().nullish(),hybridSearchLatencyMs:a().nullish(),sparseVectorUsed:t().nullish(),injectedTokens:a().nullish(),latencyMs:a().nullish(),topCandidates:u(pn),injectedText:l().nullable(),reason:l().nullable(),queryContext:l().nullable()}),gn=s({slug:l(),finalActivation:a(),ownActivation:a(),priorActivation:a(),simUser:a(),simAssistant:a(),simNow:a(),simUserRerankBoost:a().optional(),simAssistantRerankBoost:a().optional(),inRerankPool:t().optional(),spreadContribution:a(),source:l(),status:l()}),_n=s({d:a(),c_user:a(),c_assistant:a(),c_now:a(),k:a(),hops:a(),top_k:a(),epsilon:a()}),vn=s({turn:a(),mode:l(),concepts:u(gn),config:_n}),yn=s({slug:l(),source:l(),pinned:t(),sectionOrdinal:a().nullable().optional(),sectionHeading:l().nullable().optional()}),bn=s({turn:a(),live:t(),selections:u(yn),injectedText:l()}),xn=s({messageId:l().nullish(),conversationKey:l().nullish(),conversationId:l().nullish(),conversationKind:l(),conversationTotalEstimatedCostUsd:a().nullish(),logs:u(fn),memoryRecall:hn.nullable(),memoryV2Activation:vn.nullable(),memoryV3Selection:bn.nullish()}),Sn=s({type:l(),content:l(),toolName:l().optional(),isError:t().optional(),messageId:l().optional(),toolUseId:l().optional(),input:r(l(),c()).optional()}),Cn=s({subagentId:l(),objective:l().optional(),status:U.optional(),usage:W.optional(),events:u(Sn)}),wn=s({seq:a().int(),kind:i([`agent`,`workflow`]),label:l().optional(),phase:l().optional(),promptSummary:l().optional(),status:l(),resultSummary:l().optional(),inputTokens:a().optional(),outputTokens:a().optional(),createdAt:a().nullable()}),Tn=s({runId:l(),status:q.optional(),agentsSpawned:a().optional(),inputTokens:a().optional(),outputTokens:a().optional(),phase:l().optional(),leaves:u(wn)}),En=s({title:l().optional(),subtitle:l().optional(),body:l().optional(),metadata:u(s({label:d(),value:d()})).optional(),template:l().optional(),templateData:r(l(),c()).optional()}),Dn=te(e=>{let t=(typeof e==`string`?e.split(`,`):Array.isArray(e)?e:[]).map(e=>typeof e==`string`||typeof e==`number`?String(e).trim():``).filter(e=>e.length>0);return t.length>0?t:void 0},u(l()).optional()),On=s({prompt:d().optional(),acceptedTypes:Dn,maxFiles:se().int().positive().optional().catch(void 0),maxSizeBytes:se().positive().optional().catch(void 0)}),kn=e({ACPOptionKindSchema:()=>C,ACPOptionSchema:()=>w,AcpSessionCompletedEventSchema:()=>le,AcpSessionErrorEventSchema:()=>ue,AcpSessionSpawnedEventSchema:()=>de,AcpSessionUpdateEventSchema:()=>pe,AcpSessionUpdateTypeSchema:()=>fe,AcpSessionUsageEventSchema:()=>me,AcpStopReasonSchema:()=>ce,AllowlistOptionSchema:()=>y,AssistantActivityAnchorSchema:()=>ge,AssistantActivityPhaseSchema:()=>he,AssistantActivityReasonSchema:()=>_e,AssistantActivityStateEventSchema:()=>ve,AssistantEventEnvelopeSchema:()=>An,AssistantEventSchema:()=>$,AssistantOutboundAttachmentSchema:()=>B,AssistantTextDeltaEventSchema:()=>ye,AssistantThinkingDeltaEventSchema:()=>f,AssistantTurnStartEventSchema:()=>p,AvatarUpdatedEventSchema:()=>m,BackgroundToolCompletedEventSchema:()=>h,BackgroundToolStartedEventSchema:()=>g,CALL_SITE_COMPACTION_AGENT:()=>xt,CALL_SITE_SYNTHETIC_AGENT_ERROR_MESSAGE:()=>bt,CapabilitySchema:()=>sn,CardSurfaceDataSchema:()=>En,CompactionCircuitClosedEventSchema:()=>_,CompactionCircuitOpenEventSchema:()=>v,ConfirmationDiffSchema:()=>S,ConfirmationExecutionTargetSchema:()=>T,ConfirmationRequestEventSchema:()=>E,ContactRequestEventSchema:()=>D,ContextBannerSchema:()=>rn,ConversationAttachmentBlockSchema:()=>Ht,ConversationContentBlockSchema:()=>Ut,ConversationErrorCodeSchema:()=>O,ConversationErrorEventSchema:()=>k,ConversationListInvalidatedEventSchema:()=>j,ConversationListInvalidatedReasonSchema:()=>A,ConversationMessageAttachmentSchema:()=>J,ConversationMessageSchema:()=>Wt,ConversationMessageSurfaceSchema:()=>X,ConversationMessageToolCallSchema:()=>Y,ConversationNoticeEventSchema:()=>N,ConversationNoticeSourceSchema:()=>M,ConversationSlackMessageSchema:()=>Lt,ConversationSubagentNotificationSchema:()=>Mt,ConversationSurfaceBlockSchema:()=>Vt,ConversationTextBlockSchema:()=>Rt,ConversationThinkingBlockSchema:()=>zt,ConversationTitleUpdatedEventSchema:()=>P,ConversationToolUseBlockSchema:()=>Bt,DEFAULT_TOOL_EXECUTION_TIMEOUT_SEC:()=>120,DictationContextSchema:()=>Ct,DictationRequestSchema:()=>wt,DirectoryScopeOptionSchema:()=>x,DiskPressureBlockedCapabilitySchema:()=>I,DiskPressureStateSchema:()=>F,DiskPressureStatusChangedEventSchema:()=>R,DiskPressureStatusResponseSchema:()=>Gt,DiskPressureStatusSchema:()=>L,DocumentCommentCreatedEventSchema:()=>z,DocumentCommentDeletedEventSchema:()=>xe,DocumentCommentReopenedEventSchema:()=>Se,DocumentCommentResolvedEventSchema:()=>Ce,DocumentEditorUpdateEventSchema:()=>we,ErrorEventSchema:()=>Te,FactSchema:()=>on,FeedActionSchema:()=>Zt,FeedItemCategorySchema:()=>Yt,FeedItemDetailPanelKindSchema:()=>Qt,FeedItemDetailPanelSchema:()=>$t,FeedItemSchema:()=>en,FeedItemSourceTypeSchema:()=>Xt,FeedItemStatusSchema:()=>qt,FeedItemTypeSchema:()=>Kt,FeedItemUrgencySchema:()=>Jt,FileUploadSurfaceDataSchema:()=>On,GenerationCancelledEventSchema:()=>Ee,GenerationHandoffEventSchema:()=>De,HomeFeedResponseSchema:()=>an,HomeFeedUpdatedEventSchema:()=>Oe,HookEventOwnerSchema:()=>ke,HookEventSchema:()=>Ae,IdentityChangedEventSchema:()=>je,InteractionResolutionStateSchema:()=>Me,InteractionResolvedEventSchema:()=>Ne,LLMCallErrorSchema:()=>dn,LLMCallSummarySchema:()=>un,LLMContextSectionSchema:()=>Q,LLMRequestLogEntrySchema:()=>fn,LatencyBreakdownSchema:()=>Z,LatencyPhaseSchema:()=>ln,LlmContextResponseSchema:()=>xn,MemoryCandidateSchema:()=>pn,MemoryDegradationSchema:()=>mn,MemoryRecallLogSchema:()=>hn,MemoryV2ActivationLogSchema:()=>vn,MemoryV2ConceptRowSchema:()=>gn,MemoryV2ConfigSnapshotSchema:()=>_n,MemoryV3SelectionLogSchema:()=>bn,MemoryV3SelectionRowSchema:()=>yn,MessageCompleteEventSchema:()=>Pe,MessageDequeuedEventSchema:()=>Fe,MessageQueuedDeletedEventSchema:()=>Le,MessageQueuedEventSchema:()=>Ie,MessageRequestCompleteEventSchema:()=>Re,NavigateSettingsEventSchema:()=>ze,NotificationIntentEventSchema:()=>Be,OpenPanelEventSchema:()=>Ve,OpenUrlEventSchema:()=>He,PendingToolConfirmationSchema:()=>Ot,QuestionEntrySchema:()=>H,QuestionOptionSchema:()=>V,QuestionRequestEventSchema:()=>Ue,RelationshipStateSchema:()=>cn,RelationshipStateUpdatedEventSchema:()=>We,RiskScopeOptionSchema:()=>$e,SSE_REPLAY_RING_AGE_LIMIT_MS:()=>St,SSE_REPLAY_RING_COUNT_LIMIT:()=>200,ScopeOptionSchema:()=>b,SecretRequestEventSchema:()=>Ge,SubagentDetailEventSchema:()=>Sn,SubagentDetailResponseSchema:()=>Cn,SubagentEventEventSchema:()=>qe,SubagentInnerEventSchema:()=>Ke,SubagentSpawnedEventSchema:()=>Je,SubagentStatusChangedEventSchema:()=>Ye,SubagentStatusSchema:()=>U,SubagentUsageStatsSchema:()=>W,SuggestedPromptSchema:()=>nn,SuggestedPromptSourceSchema:()=>tn,SurfaceActionSchema:()=>ut,SyncChangedEventSchema:()=>Xe,ToolActivityMetadataSchema:()=>G,ToolOutputChunkEventSchema:()=>Qe,ToolOutputChunkSubTypeSchema:()=>Ze,ToolResultEventSchema:()=>at,ToolUsePreviewStartEventSchema:()=>ot,ToolUseStartEventSchema:()=>st,UISurfaceCompleteEventSchema:()=>ct,UISurfaceDismissEventSchema:()=>lt,UISurfaceShowEventSchema:()=>dt,UISurfaceUpdateEventSchema:()=>ft,UsageProgressEventSchema:()=>K,UsageUpdateEventSchema:()=>pt,UserMessageEchoEventSchema:()=>mt,WebFetchMetadataSchema:()=>it,WebSearchMetadataSchema:()=>rt,WebSearchProviderIdSchema:()=>et,WebSearchResultItemSchema:()=>nt,WorkflowCompletedEventSchema:()=>ht,WorkflowJournalResponseSchema:()=>Tn,WorkflowLeafFinishedEventSchema:()=>gt,WorkflowLeafSchema:()=>wn,WorkflowLeafStartedEventSchema:()=>_t,WorkflowProgressEventSchema:()=>vt,WorkflowRunStatusSchema:()=>q,WorkflowStartedEventSchema:()=>yt}),$=o(`type`,[le,ue,de,pe,me,ve,ye,f,p,m,h,g,_,v,E,D,k,j,N,P,R,z,xe,Se,Ce,we,Te,Ee,De,Oe,Ae,je,Ne,Pe,Fe,Ie,Le,Re,ze,Be,Ve,He,Ue,We,Ge,qe,Je,Ye,Xe,Qe,at,ot,st,ct,lt,dt,ft,K,pt,mt,ht,gt,_t,vt,yt]),An=s({id:l(),conversationId:l().optional(),seq:a().int().optional(),emittedAt:l(),message:$});export{On as a,Gt as c,bt as d,K as f,En as i,St as l,$ as n,Tn as o,kn as r,Cn as s,An as t,xt as u};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-C89a_qa6.js","assets/preload-helper-BewR0kVT.js","assets/dist-C3LFhPgk2.js","assets/esm-DugOQgm_.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a as e,c as t,i as n,t as r}from"./local-settings-lVNyIOJ_.js";import{a as i,t as a}from"./device-settings-BBwtGKJb.js";import{o,t as s}from"./capture-error-CmeVLfq0.js";import{t as c}from"./preload-helper-BewR0kVT.js";import{t as l}from"./useQuery-B45lW1Kk.js";import{n as u,t as d}from"./create-selectors-DxrPZQND.js";import{$ as ee,C as te,D as ne,S as re,T as ie,at as ae,c as oe,et as se,f as ce,g as f,h as le,i as ue,it as de,l as p,n as fe,nt as pe,ot as m,p as h,r as me,rt as he,s as ge,st as g,tt as _,v as _e,w as ve,y as ye}from"./local-mode-BKjasCuE.js";import{t as v}from"./is-electron-LEymSS4C.js";import{n as y,t as be}from"./resolved-assistants-store-BOajMG3X.js";import{n as xe,r as b,t as Se}from"./api-errors-DZ6ckXtC.js";import{t as x}from"./client.gen-AQhSugfA.js";import{M as Ce,N as we,wt as Te}from"./sdk.gen-B3bmXhSv.js";import{a as Ee,c as S,r as De}from"./api-DqXotrgH.js";import{n as Oe}from"./event-bus-BXKLAX-e.js";import{S as C,a as ke,b as Ae,d as je,h as Me,i as Ne,l as Pe,t as Fe,u as Ie,v as Le,w as Re,y as ze}from"./native-biometric-BnmJczno.js";import{o as Be}from"./remote-gateway-session-YFtricXJ.js";import{t as Ve}from"./dist-C3LFhPgk2.js";import{r as He}from"./typed-storage-T9jtK5c0.js";var w=d(u(()=>({assistantState:{kind:`loading`},operationalStatusAssistantId:null,expectingFirstMessage:!1}))),Ue=new Set;function We(e){return Ue.add(e),()=>{Ue.delete(e)}}function Ge(){for(let e of Ue)try{e()}catch{}}var Ke=new Set([502,503,504]),qe=`Connection interrupted. Reconnecting…`;function Je(e){return e.code===`proxy_network_error`?!0:(typeof e.detail==`string`?e.detail:``).includes(`net::ERR_`)}function Ye(e){if(e.ok)switch(e.data.status){case`active`:return e.data.is_local?{kind:`self_hosted`}:{kind:`active`};case`initializing`:return{kind:`initializing`};case`to_be_deleted`:return{kind:`cleaning_up`};default:return{kind:`error`,message:`Unexpected assistant status: ${e.data.status}`}}return e.status===404?{kind:`auto_hatch`}:Je(e.error)?{kind:`error`,transient:!0,message:qe}:{kind:`error`,message:b(e.error,void 0,`Failed to check assistant status.`)}}function Xe(e){return e===void 0||e>=500}var Ze=`platform_hosted_disabled`,Qe=`We are at capacity for Vellum Managed Assistants, more will be available soon!`;function $e(e,t){return e===503?t?.code===Ze:!1}var et=2e3,tt=3e4;function nt(e){return Math.min(et*2**e,tt)}var rt=3e5;function it(){return{kind:`error`,message:`Your assistant is taking longer than expected to start. Please try again, or check the community for help.`}}var at=[`assistant`,`current`],ot=3e3,st=new Set([`initializing`,`cleaning_up`]);function ct(e){if(!e)return!1;let t=Ye(e);return st.has(t.kind)?ot:!1}function lt(e){return e?[...at,e]:at}function ut(e){let t=e.selectedPlatformAssistantId??null;return l({queryKey:lt(t),queryFn:()=>De(t??void 0),enabled:e.enabled,retry:!1,refetchInterval:e=>ct(e.state.data),refetchOnWindowFocus:!1})}var dt=new Set([`healthy`,`ok`]);function ft(e){if(!e.ok)return`unreachable`;let t=e.data?.status;return t===`MIGRATING`?`migrating`:t!==void 0&&!dt.has(t)?`unhealthy`:`healthy`}function pt(){let e=w.use.assistantState();return e.kind===`self_hosted`||e.kind===`active`&&e.isLocal?e.health??null:null}var T=e=>e===`authenticated`,mt=e=>e!==`initializing`,E=e=>e===`present`,ht=(e,t)=>e===`present`&&!t,gt=new Set([401,403,410]),_t=e=>!e.ok&&e.status!==void 0&>.has(e.status),vt=4e3,yt=6e4,bt=5e3;function xt(){let e=/\/assistant(?:\/|$)/.exec(window.location.pathname),t=e&&e.index>0?window.location.pathname.slice(0,e.index).replace(/\/+$/,``):``;return`${window.location.origin}${t}`}var D=new class{state={kind:`loading`};generation=0;initializingTimeout=null;ready=!1;inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null,selectedPlatformAssistantId:null};probeTimer=null;healthHeartbeatTimer=null;healthHeartbeatId=null;healthHeartbeatToken=0;reachabilityProbeInFlightIds=new Set;probeLoopAssistantId=null;errorRetryTimer=null;errorRetryAttempt=0;constructor(){We(()=>this.onUnreachable()),Oe(`app.online`,()=>this.onNetworkOnline()),y.subscribe((e,t)=>{e.selectedAssistantId!==t.selectedAssistantId&&(!g()||this.state.kind===`loading`||this.applyGatewayAuthShortCircuit())})}setInputs(e){this.inputs=e,this.ready=!0}resetForLogout(){y.getState().activeAssistantId!==null&&y.getState().setActiveAssistantId(null),this.setOperationalStatusAssistantId(null),this.cancelProbeTimer(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.state.kind!==`loading`&&this.transition({kind:`loading`}),this.clearExpectingFirstMessage()}async respondToInputs(){if(this.ready){if(g()){this.applyGatewayAuthShortCircuit();return}if(!T(this.inputs.sessionStatus)){this.resetForLogout();return}this.inputs.hasPlatformSession&&_(null),this.inputs.isOrgReady&&await this.checkAssistant()}}async applyServerResult(e){this.ready&&(this.state.kind!==`initializing`&&this.state.kind!==`cleaning_up`||await this.applyServerStateUpdate(e))}async checkAssistant(e){if(!this.ready)return;if(g()){this.applyGatewayAuthShortCircuit();return}let t=this.generation;try{let n=e??this.inputs.selectedPlatformAssistantId??null,r=await this.inputs.queryClient.fetchQuery({queryKey:lt(n),queryFn:()=>De(n??void 0),staleTime:0});if(t!==this.generation||n&&!r.ok&&r.status===404&&(y.getState().setSelectedAssistant(null),r=await this.inputs.queryClient.fetchQuery({queryKey:at,queryFn:()=>De(),staleTime:0}),t!==this.generation))return;await this.applyServerStateUpdate(r)}catch(e){if(console.error(`Error checking assistant status:`,e),s(e,{context:`check_assistant`}),t!==this.generation||this.degradeOnTransportFailure())return;this.transition({kind:`error`,transient:!0,message:qe})}}degradeOnTransportFailure(){return this.state.kind===`active`?(this.triggerReachabilityProbe(),!0):this.state.kind===`initializing`||this.state.kind===`cleaning_up`}retryAssistant(){this.ready&&this.checkAssistant()}markExpectingFirstMessage(){w.getState().expectingFirstMessage||w.setState({expectingFirstMessage:!0})}clearExpectingFirstMessage(){w.getState().expectingFirstMessage&&w.setState({expectingFirstMessage:!1})}transition(e){let t=this.state.kind;this.state=e,w.setState({assistantState:e}),e.kind===`initializing`?t!==`initializing`&&this.armInitializingWatchdog():this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),e.kind!==`initializing`&&e.kind!==`active`&&this.clearExpectingFirstMessage(),!(e.kind===`self_hosted`||e.kind===`active`&&e.isLocal)&&this.healthHeartbeatId!==null&&this.cancelHealthHeartbeat(),e.kind===`error`&&e.transient?this.armErrorRetry():this.clearErrorRetry(e.kind!==`error`)}clearErrorRetry(e){this.errorRetryTimer&&=(clearTimeout(this.errorRetryTimer),null),e&&(this.errorRetryAttempt=0)}armErrorRetry(){this.errorRetryTimer&&clearTimeout(this.errorRetryTimer);let e=nt(this.errorRetryAttempt);this.errorRetryAttempt+=1,this.errorRetryTimer=setTimeout(()=>{this.errorRetryTimer=null,this.checkAssistant()},e)}onNetworkOnline(){if(this.ready){if(this.state.kind===`error`&&this.state.transient){this.clearErrorRetry(!0),this.checkAssistant();return}this.state.kind===`active`&&this.state.reachable===!1&&this.checkAssistant()}}armInitializingWatchdog(){this.initializingTimeout&&clearTimeout(this.initializingTimeout),this.initializingTimeout=setTimeout(()=>{this.generation++,o(`Assistant stuck in initializing state`,{level:`warning`,extra:{timeoutMs:rt}}),this.transition(it())},rt)}projectActive(e){let t=e.data.maintenance_mode,n=e.data.is_local??!1;_(null),this.setOperationalStatusAssistantId(e.data.id);let r=y.getState();r.upsertFromApi(e.data),r.setActiveAssistantId(e.data.id),this.transition({kind:`active`,isLocal:n,maintenanceMode:{enabled:t?.enabled}}),n?this.startHealthHeartbeat(e.data.id):this.probeReachability(e.data.id)}projectSelfHosted(e){this.setOperationalStatusAssistantId(null),_({url:e.data.ingress_url,token:e.data.platform_actor_token});let t=y.getState();t.upsertFromApi(e.data),t.setActiveAssistantId(e.data.id),this.transition({kind:`self_hosted`}),this.startHealthHeartbeat(e.data.id)}applyGatewayAuthShortCircuit(){let e=window.location.origin,t=`self`,n=ue();if(f())e=xt();else if(n){let r=p();e=`${window.location.origin}${n}`,t=r?.assistantId??t}_({url:e,token:de()}),this.setOperationalStatusAssistantId(null),y.getState().setActiveAssistantId(t),this.transition({kind:`active`,isLocal:!0}),this.startHealthHeartbeat(t)}async applyServerStateUpdate(e){let t=this.generation,n=Ye(e);if(!(n.kind===`error`&&n.transient&&this.degradeOnTransportFailure())&&(e.ok?this.setOperationalStatusAssistantId(e.data.id):this.setOperationalStatusAssistantId(null),n.kind!==`auto_hatch`)){if(n.kind===`active`&&e.ok){this.projectActive(e);return}if(n.kind===`self_hosted`&&e.ok){this.projectSelfHosted(e);return}t===this.generation&&n.kind!==`active`&&this.transition(n)}}async probeReachability(e){if(!this.reachabilityProbeInFlightIds.has(e)){this.reachabilityProbeInFlightIds.add(e);try{let t=this.generation,n=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal,r=n?p()?.assistantId??e:e,i=!f()&&n?await ne(r).catch(()=>null):null,a=i?.ok&&i.state===`upgrading`?`upgrading`:`unreachable`;if(a!==`upgrading`)try{a=ft(await Ee(e))}catch{a=`unreachable`}if(a===`unreachable`&&!i&&!f()&&(i=await ne(r).catch(()=>null)),a===`unreachable`&&i?.ok)switch(i.state){case`healthy`:a=`healthy`;break;case`sleeping`:case`starting`:case`upgrading`:case`unhealthy`:case`crashed`:a=i.state;break;case`unknown`:break}if(t!==this.generation||y.getState().activeAssistantId!==e)return;if(this.state.kind===`self_hosted`){this.state.health!==a&&this.transition({...this.state,health:a});return}if(this.state.kind!==`active`)return;let o=a===`healthy`||a===`unhealthy`;if(this.state.reachable===o&&this.state.health===a)return;this.transition({...this.state,reachable:o,health:a})}finally{this.reachabilityProbeInFlightIds.delete(e)}}}cancelProbeTimer(){this.probeTimer&&=(clearTimeout(this.probeTimer),null)}startProbeLoop(e){if(this.probeLoopAssistantId===e)return;this.cancelProbeTimer(),this.probeLoopAssistantId=e;let t=Date.now(),n=()=>{this.probeLoopAssistantId=null},r=async()=>{if(this.state.kind!==`active`||this.state.reachable===!0){n();return}if(Date.now()-t>yt){n();return}await this.probeReachability(e);let i=this.state;if(i.kind!==`active`||i.reachable===!0){n();return}if(Date.now()-t>yt){n();return}this.probeTimer=setTimeout(()=>void r(),vt)};this.probeTimer=setTimeout(()=>void r(),vt)}startHealthHeartbeat(e){if(this.healthHeartbeatId===e)return;this.cancelHealthHeartbeat(),this.healthHeartbeatId=e;let t=this.healthHeartbeatToken,n=async()=>{t===this.healthHeartbeatToken&&(await this.probeReachability(e),t===this.healthHeartbeatToken&&(this.healthHeartbeatTimer=setTimeout(()=>void n(),bt)))};n()}cancelHealthHeartbeat(){this.healthHeartbeatToken++,this.healthHeartbeatId=null,this.healthHeartbeatTimer&&=(clearTimeout(this.healthHeartbeatTimer),null)}onUnreachable(){this.triggerReachabilityProbe()}triggerReachabilityProbe(){if(this.state.kind!==`active`)return;let e=y.getState().activeAssistantId;if(e){if(this.transition({...this.state,reachable:!1}),this.healthHeartbeatId===e){this.probeReachability(e);return}this.startProbeLoop(e)}}setLocalAssistantUpgradeInProgress(e,t){if(y.getState().activeAssistantId===e){if(!t){this.probeReachability(e);return}if(this.state.kind===`self_hosted`){this.transition({...this.state,health:`upgrading`});return}this.state.kind===`active`&&this.state.isLocal&&this.transition({...this.state,reachable:!1,health:`upgrading`})}}__resetForTesting(){this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),this.cancelProbeTimer(),this.cancelHealthHeartbeat(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.clearErrorRetry(!0),this.state={kind:`loading`},this.generation=0,this.ready=!1,w.setState({expectingFirstMessage:!1,operationalStatusAssistantId:null}),this.inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null},w.setState({assistantState:this.state}),y.setState({activeAssistantId:null})}setOperationalStatusAssistantId(e){w.getState().operationalStatusAssistantId!==e&&w.setState({operationalStatusAssistantId:e})}};function St(e){let{assistants:t,selectedAssistantId:n,assistantsHydrated:r}=y.getState(),i=be(t,e),a=e=>i.some(t=>t.id===e);if(n!==null){let e=t.some(e=>e.id===n);if(a(n)||!e&&!r)return n}let o=fe()?.assistantId??null;return o!==null&&a(o)?o:i[0]?.id??null}async function O(e){y.getState().setSelectedAssistant(e),e!==null&&await re(e)}var Ct=`vellum:auth:userSnapshot`;function wt(e){if(e)try{localStorage.setItem(Ct,JSON.stringify(e))}catch{}}function Tt(){try{let e=localStorage.getItem(Ct);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`?null:{kind:`platform`,id:typeof t.id==`string`?t.id:null,username:typeof t.username==`string`?t.username:null,email:typeof t.email==`string`?t.email:null,isStaff:t.isStaff===!0,firstName:typeof t.firstName==`string`?t.firstName:``,lastName:typeof t.lastName==`string`?t.lastName:``}}catch{return null}}function k(){try{localStorage.removeItem(Ct)}catch{}}var Et=`vellum_active_organization_id`;function Dt(){return globalThis.sessionStorage===void 0?null:globalThis.sessionStorage}function Ot(){let e=Dt();if(!e)return null;try{return e.getItem(Et)}catch{return null}}function kt(e){let t=Dt();if(t)try{t.setItem(Et,e)}catch{}}function At(){let e=Dt();if(e)try{e.removeItem(Et)}catch{}}function jt(e,t){return e.length===0?null:t&&e.some(e=>e.id===t)?t:e[0].id}var A=d(u()((e,t)=>({organizations:[],currentOrganizationId:null,status:`idle`,error:null,fetchOrganizations:async()=>{e({status:`loading`,error:null});try{let n=(await Te()).data?.results??[],r=jt(n,t().currentOrganizationId??Ot());r&&kt(r),e({organizations:n,currentOrganizationId:r,status:r?`ready`:`error`,error:r?null:`No organization available for this user.`})}catch(t){e({status:`error`,error:t instanceof Error&&t.message?t.message:`Failed to load organizations.`})}},setCurrentOrganizationId:n=>{let{organizations:r}=t();r.some(e=>e.id===n)&&(kt(n),e({currentOrganizationId:n,status:`ready`}))},clearOrganization:()=>{At(),e({organizations:[],currentOrganizationId:null,status:`idle`,error:null})}})));function j(){return A.getState().currentOrganizationId??Ot()}function Mt(){A.getState().clearOrganization()}function Nt(){let e=0,t=A.subscribe(t=>{(t.status===`ready`||t.status===`error`)&&(e=Date.now())}),n=$.subscribe((e,t)=>{let n=E(e.platformSession),r=E(t.platformSession);n&&(!r||e.user?.id!==t.user?.id)&&A.getState().fetchOrganizations()}),r=()=>{if(!E($.getState().platformSession))return;let{status:t}=A.getState();(t===`ready`||t===`error`)&&Date.now()-e>1e4&&A.getState().fetchOrganizations()},i=Oe(`app.resume`,()=>{r()});return()=>{t(),n(),i()}}function Pt(e,t={}){let n={...e??{}},r=t.includeSelfHostedActorToken===!1?null:ee();if(r)return n.Authorization=`Bearer ${r}`,n;let i=t.organizationId??j();i&&(n[`Vellum-Organization-Id`]=i);let a=Ae();return a&&(n[`X-Session-Token`]=a),n}async function Ft(e,t={}){let n=Pt(e,t);if(n.Authorization||v())return n;await Le();let r=ze();return r&&(n[`X-CSRFToken`]=r),n}var It;function Lt(){return v()?(It===void 0&&(It=window.__VELLUM_CONFIG__?.deviceId??null),It):null}var Rt=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,zt=`X-Vellum-Electron-Renderer-Origin`,Bt=new Map;async function Vt(e,t={}){if(!h()||f()||le()||rn(e))return e;let n=Ut(e);if(!n)return e;let r=Bt.get(n.assistantId);if(r)return r;let i=Wt(n,{allowGatewayRepair:t.allowGatewayRepair??!0});Bt.set(n.assistantId,i);try{return await i}catch(e){throw Bt.delete(n.assistantId),e}}function Ht(e,t={}){if(!h()||f()||le())return;let n=e;if(!n){let e=p();if(!e||!ce(e))return;n=e.assistantId}Vt(n,{allowGatewayRepair:t.allowGatewayRepair??!1}).catch(t.onError??(e=>{console.warn(`local assistant platform bootstrap failed`,e)}))}function Ut(e){let t=fe();if(t?.assistantId===e&&ce(t))return t;let n=p();return n?.assistantId===e&&ce(n)?n:null}async function Wt(e,t){let n=await Kt(e,t),r=await qt(n,e.assistantId),i=r?.assistantId&&rn(r.assistantId)?r.assistantId:null;if(i&&r?.hasAssistantApiKey!==!1){let t=r?.organizationId??e.platformOrganizationId??null;return t&&await Gt(e,{platformAssistantId:i,platformBaseUrl:r?.baseUrl??oe(),organizationId:t}),i}let a=await Jt(r?.organizationId??null,e);if(!a)throw Error(`Sign in to Vellum and select an organization to register this local assistant.`);let o=r?.clientInstallationId??Lt()??null;if(!o)throw Error(`Unable to identify this local assistant host for platform registration.`);let s=await Yt(e,a,o),c=M(s.assistant?.id,s.assistant_id,s.id),l=i??c;if(!l||!rn(l))throw Error(`The platform registration response did not include an assistant UUID.`);let u=N(s.assistant_api_key);!u&&r?.hasAssistantApiKey!==!0&&(u=await Xt(e,a,o));let d=r?.baseUrl??oe();return await Qt(n,{assistantApiKey:u,platformAssistantId:l,platformBaseUrl:d,organizationId:a,webhookSecret:N(s.webhook_secret)}),await Gt(e,{platformAssistantId:l,platformBaseUrl:d,organizationId:a}),l}async function Gt(e,t){await ve({...e,platformAssistantId:t.platformAssistantId,platformBaseUrl:t.platformBaseUrl,platformOrganizationId:t.organizationId}).catch(e=>{console.warn(`local assistant platform lockfile update failed`,e)})}async function Kt(e,t){let n=se(),r=ee();if(t.allowGatewayRepair&&(!n||!r)&&(await ye(e),n=se(),r=ee()),!n||!r){let t=ue(e);t&&(n=`${window.location.origin}${t}`)}if(!n||!r)throw Error(`Unable to reach the local assistant for platform identity setup.`);return{gatewayUrl:n,actorToken:r}}async function qt(e,t){let n=nn(e.gatewayUrl,`/v1/assistants/${encodeURIComponent(t)}/platform/status`),r=await fetch(n,{headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`},credentials:`omit`}).catch(()=>null);if(!r?.ok)return null;let i=await r.json().catch(()=>null);return{assistantId:M(i?.assistantId,i?.assistant_id),baseUrl:M(i?.baseUrl,i?.base_url),organizationId:M(i?.organizationId,i?.organization_id),hasAssistantApiKey:an(i?.hasAssistantApiKey,i?.has_assistant_api_key),clientInstallationId:M(i?.clientInstallationId,i?.client_installation_id)}}async function Jt(e,t){return(e??t.platformOrganizationId??j()??t.organizationId??null)||(await A.getState().fetchOrganizations().catch(()=>{}),j()??t.platformOrganizationId??t.organizationId??null)}async function Yt(e,t,n){return await Zt(`/v1/assistants/self-hosted-local/ensure-registration/`,e,t,n)}async function Xt(e,t,n){return N((await Zt(`/v1/assistants/self-hosted-local/reprovision-api-key/`,e,t,n)).provisioning?.assistant_api_key)}async function Zt(e,t,n,r){let i=new Headers({...await Ft({Accept:`application/json`,"Content-Type":`application/json`},{includeSelfHostedActorToken:!1,organizationId:n})}),a=Ae();if(v()){if(!a)throw Error(`Sign in to Vellum to register this local assistant.`);i.set(zt,`${window.location.protocol}//${window.location.host}`)}let o=await fetch(new URL(e,window.location.origin).toString(),{method:`POST`,headers:i,credentials:v()?`omit`:`same-origin`,body:JSON.stringify({client_installation_id:r,runtime_assistant_id:t.assistantId,client_platform:v()?`macos`:`web`})}).catch(e=>{throw Error(`Unable to reach the platform registration endpoint: ${tn(e)}`)});if(!o.ok){let e=await en(o);throw Error(`Unable to register the local assistant with the platform (HTTP ${o.status})${e?`: ${e}`:`.`}`)}try{return await o.json()}catch(e){throw Error(`Unable to read the platform registration response: ${tn(e)}`)}}async function Qt(e,t){let n=[[`vellum:assistant_api_key`,t.assistantApiKey],[`vellum:platform_assistant_id`,t.platformAssistantId],[`vellum:platform_base_url`,t.platformBaseUrl],[`vellum:platform_organization_id`,t.organizationId],[`vellum:webhook_secret`,t.webhookSecret]];await Promise.all(n.filter(e=>!!e[1]).map(([t,n])=>$t(e,t,n)))}async function $t(e,t,n){let r=await fetch(nn(e.gatewayUrl,`/v1/secrets`),{method:`POST`,headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`,"Content-Type":`application/json`},credentials:`omit`,body:JSON.stringify({type:`credential`,name:t,value:n})}).catch(e=>{throw Error(`Unable to reach the local assistant while storing ${t}: ${tn(e)}`)});if(!r.ok){let e=await en(r);throw Error(`Unable to store ${t} on the local assistant (HTTP ${r.status})${e?`: ${e}`:`.`}`)}return!0}async function en(e){if((e.headers.get(`content-type`)??``).includes(`application/json`)){let t=await e.json().catch(()=>null),n=t&&typeof t==`object`&&`detail`in t?N(t.detail):null,r=t&&typeof t==`object`&&`code`in t?N(t.code):null;return n&&r?`${n} (${r})`:n||r||JSON.stringify(t)}return(await e.text().catch(()=>``)).slice(0,300)}function tn(e){return e instanceof Error?e.message:String(e)}function nn(e,t){let n=new URL(e);return n.pathname=`${n.pathname.replace(/\/$/,``)}${t}`,n.toString()}function rn(e){return Rt.test(e)}function M(...e){for(let t of e){let e=N(t);if(e)return e}return null}function N(e){return typeof e==`string`&&e.trim()?e.trim():null}function an(...e){for(let t of e)if(typeof t==`boolean`)return t;return null}var on=`.dev`;function sn(e){let t=JSON.parse(e);return typeof t.token==`string`&&typeof t.bundleId==`string`&&typeof t.assistantId==`string`?{token:t.token,bundleId:t.bundleId,assistantId:t.assistantId}:null}var cn=He({key:`vellum:push_registration`,scope:`user`,parse:sn,serialize:JSON.stringify,fallback:null}),ln=!1,un=null,P=null,F=new Set;function dn(e){F.add(e),e.finally(()=>{F.delete(e)})}function fn(){return Ie()&&Ve.getPlatform()===`ios`}function pn(e){return e.endsWith(on)?`development`:`production`}async function mn(e,t){try{let{App:n}=await c(async()=>{let{App:e}=await import(`./esm-C89a_qa6.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:r}=await n.getInfo(),i=await we({path:{assistant_id:t},body:{token:e,platform:`ios`,bundle_id:r,apns_environment:pn(r)},throwOnError:!1});if(i.error){s(i.error,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0});return}P={token:e,bundleId:r,assistantId:t},cn.save(P)}catch(e){s(e,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0})}}async function hn(){if(!ln){ln=!0;try{let{PushNotifications:e}=await c(async()=>{let{PushNotifications:e}=await import(`./esm-DugOQgm_.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));await e.addListener(`registration`,e=>{let t=un;t&&dn(mn(e.value,t))}),await e.addListener(`registrationError`,e=>{s(e,{context:`push_registration_apns`,level:`warning`})})}catch(e){ln=!1,s(e,{context:`push_registration_listeners`,level:`warning`})}}}async function gn(e){if(fn()){un=e,P&&P.assistantId!==e&&dn(mn(P.token,e));try{let{PushNotifications:e}=await c(async()=>{let{PushNotifications:e}=await import(`./esm-DugOQgm_.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));if(await hn(),(await e.requestPermissions()).receive!==`granted`)return;await e.register()}catch(e){s(e,{context:`push_registration_register`,level:`warning`})}}}async function _n(){for(un=null;F.size>0;)await Promise.allSettled([...F]);let e=P??cn.load();if(P=null,cn.remove(),!(!e||!fn()))try{let t=await Ce({path:{assistant_id:e.assistantId,token:e.token},query:{bundle_id:e.bundleId},throwOnError:!1});t.error&&s(t.error,{context:`push_registration_delete`,level:`warning`,bestEffort:!0,extra:{assistantId:e.assistantId,bundleId:e.bundleId}})}catch(e){s(e,{context:`push_registration_delete`,level:`warning`,bestEffort:!0})}}function vn(e){return e}function yn(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=vn(e),i=r[t];if(Array.isArray(i)&&i.length>0){let e=i[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`&&!Array.isArray(e)){let t=vn(e),r=t.code,i=t.string??t.message;return{code:typeof r==`string`?r:null,message:typeof i==`string`?i:n}}}return typeof r.detail==`string`?{code:null,message:r.detail}:{code:null,message:n}}var bn={too_short:`Must be at least 3 characters.`,too_long:`Must be at most 30 characters.`,invalid_chars:`Use only lowercase letters, digits, hyphens, and underscores.`,leading_underscore:`Cannot start with an underscore.`,trailing_underscore:`Cannot end with an underscore.`,leading_hyphen:`Cannot start with a hyphen.`,trailing_hyphen:`Cannot end with a hyphen.`,all_digits:`Cannot be all digits.`,reserved:`This handle is reserved.`,taken:`This handle is already taken.`};async function xn(){let{data:e,error:t,response:n}=await x.get({url:`/v1/user/me/`,throwOnError:!1});if(xe(n,t,`Failed to load profile.`),!n.ok||!e)throw new Se(n.status,b(t,n,`Failed to load profile.`));return e}var Sn=`Please choose a different handle.`;async function Cn(e){let{data:t,error:n,response:r}=await x.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:b(n,void 0,`Failed to save profile.`)??`Failed to save profile.`};if(r.ok&&t)return{kind:`ok`,data:t};if(r.status===409){let{message:e}=yn(n,`username`,bn.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=yn(n,`username`,Sn);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:b(n,r,`Failed to save profile.`)}}async function wn(){let{data:e,error:t,response:n}=await x.get({url:`/v1/user/consent/`,throwOnError:!1});if(xe(n,t,`Failed to load consent.`),!n.ok||!e)throw new Se(n.status,b(t,n,`Failed to load consent.`));return e}async function I(e){await x.put({url:`/v1/user/consent/`,body:e,throwOnError:!0})}async function Tn(e,t){let{data:n,error:r,response:i}=await x.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(xe(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new Se(i.status,i.status===429?`Too many checks — try again in a moment.`:b(r,i,`Failed to check handle availability.`));return n}function L(e){i(`diagnosticsReporting`,e)}function En(e,t){let n=Dn(e);n!==null&&t(n);let{shareDiagnostics:r,diagnosticsVersionCurrent:i,hasServerRecord:a}=e;return L(a&&r===!0&&i),n}function Dn(e){let{shareDiagnostics:t,hasServerRecord:n}=e;return t===!1?!1:n&&t===!0?!0:null}var On=a(`shareAnalytics`),kn=a(`shareDiagnostics`),An=u()(t=>({shareAnalytics:r(On,!0),shareDiagnostics:r(kn,!0),tosAccepted:!1,privacyConsent:!1,analyticsConsentCurrent:!1,diagnosticsConsentCurrent:!1,consentHydrated:!1,setShareAnalytics:n=>{t({shareAnalytics:n}),e(On,n)},setShareDiagnostics:n=>{t({shareDiagnostics:n}),e(kn,n)},setTosAccepted:e=>{t({tosAccepted:e})},setPrivacyConsent:e=>{t({privacyConsent:e})},setAnalyticsConsentCurrent:e=>{t({analyticsConsentCurrent:e})},setDiagnosticsConsentCurrent:e=>{t({diagnosticsConsentCurrent:e})},setConsentHydrated:e=>{t({consentHydrated:e})}})),R=d(An),jn=new Map([[On,`shareAnalytics`],[kn,`shareDiagnostics`]]),Mn={shareAnalytics:!0,shareDiagnostics:!0};for(let[e,n]of jn)t(e,()=>{let t=r(e,Mn[n]??!1);An.setState({[n]:t})});var z=`2026-06-08`,B=`2026-06-22`,V=`2026-06-18`,H=`2026-06-18`,Nn=`2026-06-08`,Pn={tos:z,privacy:B,share_analytics:V,share_diagnostics:H};function U(e,t){return`device:consent:${e}:v${Pn[e]}:${t}`}function Fn(e){return`device:consent:ai:v${Nn}:${e}`}function In(e){if(typeof window>`u`||!e)return{tos:!1,privacy:!1,analyticsCurrent:!1,diagnosticsCurrent:!1};try{let t=r(U(`share_analytics`,e),!1),i=r(U(`share_diagnostics`,e),!1),a=r(U(`tos`,e),!1),o=r(U(`privacy`,e),!1);if(r(Fn(e),!1)&&n(Fn(e)),a||o)return{tos:a,privacy:o,analyticsCurrent:t,diagnosticsCurrent:i};let s=r(`vellum:onboarding:tosAccepted`,!1),c=r(`vellum:onboarding:aiDataConsent`,!1);return s||c?(Ln(e,s,!1),{tos:s,privacy:!1,analyticsCurrent:t,diagnosticsCurrent:i}):{tos:!1,privacy:!1,analyticsCurrent:t,diagnosticsCurrent:i}}catch{return{tos:!1,privacy:!1,analyticsCurrent:!1,diagnosticsCurrent:!1}}}function Ln(t,n,r){if(!(typeof window>`u`||!t))try{e(U(`tos`,t),n),e(U(`privacy`,t),r)}catch{}}function W(t,n){if(!(typeof window>`u`||!t))try{n.analyticsCurrent!==void 0&&e(U(`share_analytics`,t),n.analyticsCurrent),n.diagnosticsCurrent!==void 0&&e(U(`share_diagnostics`,t),n.diagnosticsCurrent)}catch{}}function Rn(e){if(n(`vellum:onboarding:tosAccepted`),n(`vellum:onboarding:aiDataConsent`),n(`vellum:onboarding:selectedVersion`),!(typeof window>`u`||!e))try{n(U(`tos`,e)),n(U(`privacy`,e)),n(Fn(e)),n(U(`share_analytics`,e)),n(U(`share_diagnostics`,e))}catch{}}function G(e,t){return e>=t}function zn(e){if(!e)return{tos:!1,privacy:!1,shareAnalytics:null,shareDiagnostics:null,analyticsCurrent:!1,diagnosticsCurrent:!1,hasServerRecord:!1};let t=!!e.tos_accepted_version||!!e.privacy_policy_accepted_version||!!e.ai_data_sharing_accepted_version||!!e.share_analytics_accepted_version||!!e.share_diagnostics_accepted_version||e.share_analytics===!1||e.share_diagnostics===!1;return{tos:G(e.tos_accepted_version,z),privacy:G(e.privacy_policy_accepted_version,`2026-06-22`)&&G(e.ai_data_sharing_accepted_version,`2026-06-22`),shareAnalytics:e.share_analytics,shareDiagnostics:e.share_diagnostics,analyticsCurrent:G(e.share_analytics_accepted_version,V),diagnosticsCurrent:G(e.share_diagnostics_accepted_version,H),hasServerRecord:t}}function Bn(e){let t=R.getState();t.setTosAccepted(e.tos),t.setPrivacyConsent(e.privacy),t.setShareAnalytics(e.shareAnalytics),t.setShareDiagnostics(e.shareDiagnostics),t.setAnalyticsConsentCurrent(!0),t.setDiagnosticsConsentCurrent(!0),t.setConsentHydrated(!0),L(e.shareDiagnostics),Ln(e.userId,e.tos,e.privacy),W(e.userId,{analyticsCurrent:!0,diagnosticsCurrent:!0}),e.hasPlatformSession&&I({tos_accepted_version:e.tos?z:``,privacy_policy_accepted_version:e.privacy?B:``,ai_data_sharing_accepted_version:e.privacy?B:``,share_analytics:e.shareAnalytics,share_diagnostics:e.shareDiagnostics,share_analytics_accepted_version:V,share_diagnostics_accepted_version:H}).catch(()=>{})}function Vn(e,t,n){let r=R.getState(),{userId:a,hasPlatformSession:o}=n;e===`share_analytics`?(r.setShareAnalytics(t),i(`shareAnalytics`,t),o&&(r.setAnalyticsConsentCurrent(!0),W(a,{analyticsCurrent:!0}))):(r.setShareDiagnostics(t),i(`shareDiagnostics`,t),o?(r.setDiagnosticsConsentCurrent(!0),L(t),W(a,{diagnosticsCurrent:!0})):L(!1)),o&&I({[e]:t,[`${e}_accepted_version`]:Pn[e]}).catch(()=>{})}var Hn=`vellum:`,Un=[`onboarding.`,`voice:`,`gw:`,`ff:client:`,`local:`,`integrations.`,`vellumDebug.`,`vellum_`],Wn=new Set([`vellum_theme`,`vellum_share_analytics`,`vellum_share_diagnostics`,`vellum_biometric_enabled`,`vellum_llm_log_retention`,`vellum_timezone`,`vellum_media_embeds_enabled`,`vellum_media_embed_domains`,`onboarding.lastUserId`]);function Gn(e){return e.startsWith(Hn)?!0:Wn.has(e)?!1:Un.some(t=>e.startsWith(t))}function Kn(){try{sessionStorage.clear()}catch{}try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n&&Gn(n)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e))}catch{}}function qn(e){return e?.id??e?.email??e?.username??null}function K(e){return e?{kind:`platform`,id:qn(e),username:e.username??null,email:e.email??null,isStaff:e.is_staff??!1,firstName:e.first_name??``,lastName:e.last_name??``}:null}var Jn=null,q=null,Yn=!1,Xn={kind:`local`,id:`gateway-local`,username:`local`,email:null,isStaff:!1,firstName:`Local`,lastName:`User`},J=e=>(wt(e),{sessionStatus:`authenticated`,user:e,platformSession:`present`,platformSessionRestoredOffline:!1}),Y=()=>({sessionStatus:`authenticated`,user:Xn}),X=()=>({sessionStatus:`unauthenticated`,user:null,platformSession:`absent`}),Z=e=>e===null||!e.ok&&!_t(e);async function Zn(e){if(!Ae())return!1;let t=Tt();return t?(await Q(t.id),e({...J(t),platformSessionRestoredOffline:!0}),!0):!1}function Qn(e){(!e||Jn&&Jn!==e)&&Mt(),Jn=e}function $n(){q?.postMessage(`auth-changed`)}function er(e){return{...e.tos?{tos_accepted_version:z}:{},...e.privacy?{privacy_policy_accepted_version:B,ai_data_sharing_accepted_version:B}:{},...e.analytics?{share_analytics_accepted_version:V,...e.shareValues?{share_analytics:e.shareValues.analytics}:{}}:{},...e.diagnostics?{share_diagnostics_accepted_version:H,...e.shareValues?{share_diagnostics:e.shareValues.diagnostics}:{}}:{}}}async function Q(e){if(e)try{let t=zn(await wn()),n=R.getState();t.hasServerRecord&&t.shareAnalytics!==null&&n.setShareAnalytics(t.shareAnalytics),En({shareDiagnostics:t.shareDiagnostics,diagnosticsVersionCurrent:t.diagnosticsCurrent,hasServerRecord:t.hasServerRecord},n.setShareDiagnostics);let r=t.tos,i=t.privacy,a=t.analyticsCurrent,o=t.diagnosticsCurrent;if(!t.hasServerRecord){let t=In(e);a=t.analyticsCurrent,o=t.diagnosticsCurrent,L(n.shareDiagnostics&&o),t.tos&&t.privacy&&(r=!0,i=!0,I(er({tos:!0,privacy:!0,analytics:a,diagnostics:o,shareValues:{analytics:n.shareAnalytics,diagnostics:n.shareDiagnostics}})).catch(()=>{}))}else if(!r||!i||!a||!o){let t=In(e),n=!r&&t.tos,s=!i&&t.privacy,c=!a&&t.analyticsCurrent,l=!o&&t.diagnosticsCurrent;n&&(r=!0),s&&(i=!0),c&&(a=!0),l&&(o=!0,L(R.getState().shareDiagnostics&&o)),(n||s||c||l)&&I(er({tos:n,privacy:s,analytics:c,diagnostics:l})).catch(()=>{})}n.setTosAccepted(r),n.setPrivacyConsent(i),n.setAnalyticsConsentCurrent(a),n.setDiagnosticsConsentCurrent(o),Ln(e,r,i),W(e,{analyticsCurrent:a,diagnosticsCurrent:o}),Qn(e),n.setConsentHydrated(!0);return}catch{}let t=In(e),n=R.getState();n.setTosAccepted(t.tos),n.setPrivacyConsent(t.privacy),n.setAnalyticsConsentCurrent(t.analyticsCurrent),n.setDiagnosticsConsentCurrent(t.diagnosticsCurrent),Qn(e),n.setConsentHydrated(!0)}var tr=0;Promise.resolve();function nr(e,t={}){let n=++tr,r=()=>n!==tr;C().then(async n=>{if(!r())if(n.ok&&n.data.user){let i=K(n.data.user),a=t.setUserOnSuccess?{user:i}:{};if(t.setUserOnSuccess&&wt(i),h()){let e=!1,t=()=>!e&&!r();try{await Promise.race([(async()=>{await A.getState().fetchOrganizations();let e=await S();t()&&e.ok&&await te(e.data,A.getState().currentOrganizationId??void 0,t)})(),new Promise((t,n)=>setTimeout(()=>{e=!0,n(Error(`sync timeout`))},3e3))])}catch{}}if(r())return;e({platformSession:`present`,platformSessionRestoredOffline:!1,...a}),Ht()}else t.clearOnFailure&&e({platformSession:`absent`})}).catch(()=>{r()||t.clearOnFailure&&e({platformSession:`absent`})}).finally(()=>{r()||e(e=>e.platformSession===`unknown`?{platformSession:`absent`}:{})})}function rr(e,t){!h()||m()||ge().length>0?nr(e,t):e({platformSession:`absent`})}async function ir(){try{if(await Be())return!0}catch{}return de()!==null}var $=d(u()((e,t)=>({sessionStatus:`initializing`,user:null,platformSession:`unknown`,platformSessionRestoredOffline:!1,initSession:async()=>{if(f()){await ir()?e({...Y(),platformSession:`absent`}):e(X());return}if(m()){try{await _e(),e(Y())}catch{e({sessionStatus:`unauthenticated`,user:null})}rr(e);return}if(h()&&!m()){if(ge().length>0){let t=null;try{if(t=await C(),t.ok&&t.data.user){let n=K(t.data.user);await Q(n?.id??null);try{await A.getState().fetchOrganizations();let e=await S();e.ok&&await te(e.data,A.getState().currentOrganizationId??void 0)}catch{}e(J(n));return}}catch{}if(Z(t)){if(await Zn(e))return}else k();e(X());return}e(Y()),Yn?e({platformSession:`absent`}):nr(e,{setUserOnSuccess:!0}),Yn=!1;return}let t=null;try{if(t=await C(),t.ok&&t.data.user){let n=K(t.data.user);await Q(n?.id??null);try{await A.getState().fetchOrganizations();let e=await S();e.ok?y.getState().setFromApi(e.data):y.getState().markHydrated()}catch{y.getState().markHydrated()}e(J(n));return}}catch(e){console.error(`auth.initSession failed`,e)}if(!(Z(t)&&await Zn(e))){if(Ie()&&Ne())try{let t=await ke();if(t){Pe(t),await Me();let n=await C();if(n.ok&&n.data.user){let t=K(n.data.user);await Q(t?.id??null);try{await A.getState().fetchOrganizations();let e=await S();e.ok?y.getState().setFromApi(e.data):y.getState().markHydrated()}catch{y.getState().markHydrated()}e(J(t));return}}}catch(e){console.warn(`auth.initSession biometric recovery failed`,e)}await Q(null),Z(t)||k(),e(X())}},connectLocalAssistant:async n=>{await ye(me().find(e=>e.assistantId===n)),await O(n),e(Y()),await D.checkAssistant(),ht(t().platformSession,t().platformSessionRestoredOffline)&&Ht(n),rr(e)},connectPlatformAssistant:async t=>{await O(t);let n=await C();if(!n.ok||!n.data.user)throw Error(`Platform authentication required`);let r=K(n.data.user);await Q(r?.id??null),await A.getState().fetchOrganizations(),e(J(r))},refreshSession:async()=>{if(f())return await ir()?(e({...Y(),platformSession:`absent`}),!0):(e(X()),!1);if(g()){try{await he(ae()),e({sessionStatus:`authenticated`})}catch{return e(X()),!1}return rr(e,{clearOnFailure:!0}),!0}let n=null;try{if(n=await C(),n.ok&&n.data.user){let t=K(n.data.user);if(await Q(t?.id??null),h())try{await A.getState().fetchOrganizations();let e=await S();e.ok&&await te(e.data,A.getState().currentOrganizationId??void 0)}catch{}return e(J(t)),!0}}catch(e){console.warn(`auth.refreshSession failed`,e)}if(Z(n))return T(t().sessionStatus);if(m()){let n=T(t().sessionStatus);return n&&(k(),e({...Y(),platformSession:`absent`})),n}return k(),await Q(null),e(X()),!1},logout:async()=>{if(g()){D.resetForLogout(),await O(null),pe(),Mt(),Kn(),e(X()),$n();return}Yn=!0,await _n();try{await Re()}finally{v()&&await window.vellum?.auth?.signOut?.(),h()&&!v()&&await ie(),Fe(),Mt(),Kn(),D.resetForLogout(),await O(null),e(X()),$n()}}}))),ar=()=>T($.use.sessionStatus()),or=()=>!mt($.use.sessionStatus()),sr=()=>E($.use.platformSession()),cr=()=>ht($.use.platformSession(),$.use.platformSessionRestoredOffline());function lr(){let{refreshSession:e}=$.getState(),t=[],n=()=>e().catch(e=>console.warn(`auth.refreshSession failed`,e)),r=Oe(`app.resume`,()=>{je()||n()});return t.push(r),typeof BroadcastChannel<`u`&&(q=new BroadcastChannel(`auth`),q.onmessage=()=>{Kn(),window.location.reload()},t.push(()=>{q?.close(),q=null})),()=>t.forEach(e=>e())}export{D as A,Xe as B,Vt as C,A as D,Nt as E,pt as F,Ge as H,ut as I,Qe as L,T as M,ht as N,St as O,mt as P,$e as R,Ht as S,j as T,w as U,Ke as V,wn as _,ar as a,yn as b,z as c,Bn as d,Vn as f,Tn as g,bn as h,sr as i,E as j,O as k,Rn as l,En as m,$ as n,or as o,R as p,cr as r,B as s,lr as t,zn as u,xn as v,Lt as w,gn as x,Cn as y,Ye as z};
|