openpond 0.2.7 → 0.2.8
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/app-server.d.ts +28 -1
- package/dist/app-server.js +1 -1
- package/dist/chunks/{actions-command-FJM6WNUI.js → actions-command-V5DZWEON.js} +1 -1
- package/dist/chunks/{app-layer-XNA7UVWS.js → app-layer-SFV6ZPKZ.js} +1 -1
- package/dist/chunks/app-server-runtime-OYF6XBVI.js +2 -0
- package/dist/chunks/{apps-SC5SKRJC.js → apps-SR7CAM42.js} +1 -1
- package/dist/chunks/{chunk-FOZVXTZM.js → chunk-4LLHOG7L.js} +1 -1
- package/dist/chunks/{chunk-MVPNEF5P.js → chunk-5N6YRABR.js} +2 -2
- package/dist/chunks/{chunk-3NDRIQTI.js → chunk-73KFNV3D.js} +1 -1
- package/dist/chunks/chunk-B6IIGPWS.js +6 -0
- package/dist/chunks/chunk-BB6DJKXX.js +19 -0
- package/dist/chunks/chunk-DY5RF2YE.js +26 -0
- package/dist/chunks/{chunk-3WTRTL56.js → chunk-EEBLJPIB.js} +1 -1
- package/dist/chunks/{chunk-36OUIHLX.js → chunk-G2VYRU27.js} +1 -1
- package/dist/chunks/chunk-KRNLKKN6.js +5 -0
- package/dist/chunks/{chunk-7P6ZK5IG.js → chunk-LLJI6QAY.js} +1 -1
- package/dist/chunks/{chunk-FYCJSUFV.js → chunk-NNLI4OWY.js} +1 -1
- package/dist/chunks/{chunk-HTTZFZEP.js → chunk-O4IARD7H.js} +1 -1
- package/dist/chunks/{chunk-URZJ4Y2A.js → chunk-QOR55VHT.js} +1 -1
- package/dist/chunks/{chunk-WRMXQAYN.js → chunk-QWE3RHNY.js} +1 -1
- package/dist/chunks/{chunk-NC6ITVZS.js → chunk-S64WASAO.js} +1 -1
- package/dist/chunks/{chunk-HCJADRKO.js → chunk-SS3EG6S2.js} +1 -1
- package/dist/chunks/{chunk-EDD5KGLG.js → chunk-T2GNPVRY.js} +7 -3
- package/dist/chunks/{chunk-3VQIZYAN.js → chunk-UW4XDFLU.js} +439 -343
- package/dist/chunks/chunk-UW6ES5DM.js +28 -0
- package/dist/chunks/{chunk-W56MAK5K.js → chunk-V4ACXLID.js} +1 -1
- package/dist/chunks/{chunk-WUHDI23M.js → chunk-VJBEK64H.js} +1 -1
- package/dist/chunks/{chunk-2S2UONFI.js → chunk-Y7ZYJQGZ.js} +1 -1
- package/dist/chunks/{cli-LBXU6SRW.js → cli-MS4KADND.js} +1 -1
- package/dist/chunks/{configuration-command-3ZVMKIZK.js → configuration-command-EBN7RH3X.js} +1 -1
- package/dist/chunks/{core-commands-IXY7BKVS.js → core-commands-2S4UQPXW.js} +1 -1
- package/dist/chunks/{desktop-test-V5YO4LCV.js → desktop-test-WN7ZLQVQ.js} +1 -1
- package/dist/chunks/{dist-NKLXFA37.js → dist-UA2RQUA4.js} +1 -1
- package/dist/chunks/extension-ERM5EUUO.js +6 -0
- package/dist/chunks/{help-UIHQZ4CU.js → help-N25BKIHM.js} +1 -1
- package/dist/chunks/{opchat-G7QSVFAI.js → opchat-V4A4WCND.js} +1 -1
- package/dist/chunks/{organizations-Z4SFKZZ7.js → organizations-TSOT7MDT.js} +1 -1
- package/dist/chunks/{profile-XZWNVG5R.js → profile-3JQ3XM6Q.js} +1 -1
- package/dist/chunks/{project-agent-P6TRRYOC.js → project-agent-S76FWVPV.js} +1 -1
- package/dist/chunks/{sandbox-command-JISHBUMC.js → sandbox-command-YQDGQBBQ.js} +1 -1
- package/dist/chunks/{sandbox-template-YGPOBKNA.js → sandbox-template-GM2A3437.js} +1 -1
- package/dist/chunks/{src-S7SFHJYJ.js → src-BC7WOVGF.js} +1 -1
- package/dist/chunks/src-S7XTFQ4V.js +319 -0
- package/dist/chunks/{teams-bot-TXCL4DNV.js → teams-bot-M6QLZAHA.js} +1 -1
- package/dist/chunks/{workspaces-5XC34YIM.js → workspaces-MJVCPH22.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/profile/local-profile.d.ts +7 -0
- package/dist/skills/openpond-agent-authoring/references/profile-layout.md +9 -0
- package/dist/web/assets/App-7h_oHCFd.css +1 -0
- package/dist/web/assets/App-Dx38Dhlo.js +176 -0
- package/dist/web/assets/{AppDialog-CtqbY289.js → AppDialog-DdWbnFnr.js} +1 -1
- package/dist/web/assets/AppTerminalPanel-BotH-2y4.js +2 -0
- package/dist/web/assets/{AppsView-BeGbrJkU.js → AppsView-B3ybXi71.js} +1 -1
- package/dist/web/assets/BrowserSidebar-CLE27mjT.js +1 -0
- package/dist/web/assets/{BrowserSidebar-D9i7gQzw.css → BrowserSidebar-lNqqj4Ip.css} +1 -1
- package/dist/web/assets/{CartesianChart-Cp_-LaJY.js → CartesianChart-SB3Jq3CQ.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-BL6guh-3.js → CollaborationTabs-C3jO5y5v.js} +1 -1
- package/dist/web/assets/{CommandMenu-hNQCm8mw.css → CommandMenu-Cb3vNGJr.css} +1 -1
- package/dist/web/assets/{CommandMenu-B-DEtpTp.js → CommandMenu-DqtJane1.js} +1 -1
- package/dist/web/assets/{CommunityView-DaIS0cHw.css → CommunityView-CnZqWEjK.css} +1 -1
- package/dist/web/assets/{CommunityView-DcEhEMm_.js → CommunityView-Dg02tZmL.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-C4mCZcKl.js → ComposerCreateImproveStrip-BTJhG8aU.js} +1 -1
- package/dist/web/assets/{GetStartedView-BUlaCO6a.js → GetStartedView-BlyP6VY8.js} +1 -1
- package/dist/web/assets/HostedModelLearningReview-BwSAO9y6.js +1 -0
- package/dist/web/assets/HostedModelLearningSettings-CiY2K8Fz.js +1 -0
- package/dist/web/assets/{LabModelVersionDetailPage-Bb1XRvo_.js → LabModelVersionDetailPage-cE1kuSWk.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-CPucMztm.js → LabSkillSidebar-BrSa3H3m.js} +1 -1
- package/dist/web/assets/{LabsRoute-C_HDADl0.js → LabsRoute-CY7rB25U.js} +4 -4
- package/dist/web/assets/MainChatThread-BM8l-LiB.js +2 -0
- package/dist/web/assets/MainPane-CsAYR_EF.js +10 -0
- package/dist/web/assets/{MarkdownText-_zVYW4pN.js → MarkdownText-8GA7g1qR.js} +1 -1
- package/dist/web/assets/{Messages-DxctstDI.js → Messages-CX08x24k.js} +6 -6
- package/dist/web/assets/{NativeSkillSidebar-DV4AGiCD.js → NativeSkillSidebar-mSz4GlxA.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-CZCLJj99.js → NewExperienceSwitcher-CHAC2Zid.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-CQSipZ5d.js → NewProjectDialog-5B17C6Vh.js} +1 -1
- package/dist/web/assets/{OutputsPage-aPJP4mTV.js → OutputsPage-27Gp1K5N.js} +1 -1
- package/dist/web/assets/{ProjectsPage-CyThuXQv.js → ProjectsPage-DJpPuKBP.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-C_4rbc1i.js +1 -0
- package/dist/web/assets/{RightSidebarHomePanel-CtH0vZ36.js → RightSidebarHomePanel-PHndCapL.js} +1 -1
- package/dist/web/assets/{ScheduledWorkPage-BY_4jFm7.js → ScheduledWorkPage-CYQZ0Zal.js} +1 -1
- package/dist/web/assets/{SettingsView-ZPnupcpg.js → SettingsView-DQPMLKNH.js} +7 -7
- package/dist/web/assets/{TeamChatView-DWjwVxMp.js → TeamChatView-DRvqhiOV.js} +2 -2
- package/dist/web/assets/{TeamChatView-Br3VdxhD.css → TeamChatView-dL6B0qib.css} +1 -1
- package/dist/web/assets/{TerminalOverlay-DxuUGKYH.js → TerminalOverlay-C8FbaVVP.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-CjIPEoTX.js → TrainingCreationPanel-BGsd95vF.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-CxevAlkr.js → TrainingDraftPanel-Bm6j-IuS.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-CY1lQB_g.js → UsageSettingsSection-CTCDOE-_.js} +3 -3
- package/dist/web/assets/{WorkSidebarPanel-DMsiwOSi.js → WorkSidebarPanel-UaymQC_e.js} +1 -1
- package/dist/web/assets/WorkspaceDiffPanel-D6mKLQha.js +14 -0
- package/dist/web/assets/{WorkspaceEnvironmentMenu-7DSF_BpI.js → WorkspaceEnvironmentMenu-C4Uw5qMA.js} +3 -3
- package/dist/web/assets/{WorkspaceGitDialogs-Ck8BzH11.js → WorkspaceGitDialogs--t9VpTCT.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-gsEP4W37.js → WorkspaceMonacoEditor-CElU0vIN.js} +3 -3
- package/dist/web/assets/{arrow-up-right-BK6EpHpC.js → arrow-up-right-C0HJHPjq.js} +1 -1
- package/dist/web/assets/{chat-file-links-BQe708gU.js → chat-file-links-D5q1as_h.js} +1 -1
- package/dist/web/assets/chevron-up-B3Cyo8SJ.js +1 -0
- package/dist/web/assets/{clipboard-DOmCP7eR.js → clipboard-wiphvxrN.js} +1 -1
- package/dist/web/assets/{cloud-upload-DLtawDYW.js → cloud-upload-Bgm5_SSr.js} +1 -1
- package/dist/web/assets/{cssMode-C0Qw8i_8.js → cssMode-DudNT1l3.js} +1 -1
- package/dist/web/assets/{folder-open-B_Ayxxo8.js → folder-open-DLuZSDXn.js} +1 -1
- package/dist/web/assets/{folder-plus-CPgtt3pN.js → folder-plus-DXN0q9GR.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-23xCJjd8.js → git-commit-horizontal-CdiI4K5M.js} +1 -1
- package/dist/web/assets/{htmlMode-DuQ7zaau.js → htmlMode-B2sAXhgB.js} +1 -1
- package/dist/web/assets/index-C5EoPZr0.css +1 -0
- package/dist/web/assets/{index-BoaTQ0Rb.js → index-DSK9XSir.js} +2 -1
- package/dist/web/assets/{info-CQ2kJJ5E.js → info-DcmIP9D3.js} +1 -1
- package/dist/web/assets/{jsonMode-DVQSEPUy.js → jsonMode-aQlrpuz5.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-DWKH3min.js → lspLanguageFeatures-BMskOvs7.js} +1 -1
- package/dist/web/assets/{minimize-2-1M-fFBeP.js → minimize-2-CvKd6Q_r.js} +1 -1
- package/dist/web/assets/{monaco.contribution-jXX7-l5p.js → monaco.contribution-BHv_qQG9.js} +2 -2
- package/dist/web/assets/{monaco.contribution-ytVV-s22.js → monaco.contribution-BSRllZgB.js} +2 -2
- package/dist/web/assets/{monaco.contribution-B5Jz7f4W.js → monaco.contribution-VS3RCwFP.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DB7pp5Y-.js → monaco.contribution-tZUXzebU.js} +2 -2
- package/dist/web/assets/{play-D9jaK5MP.js → play-BzfQJMmu.js} +1 -1
- package/dist/web/assets/{python-_yRitN2I.js → python-Bm9eN64d.js} +1 -1
- package/dist/web/assets/{refresh-cw-DZHqZGos.js → refresh-cw-Cvy0BqFv.js} +1 -1
- package/dist/web/assets/{save-DOT3oYfU.js → save-miVdIz56.js} +1 -1
- package/dist/web/assets/{square-D_1V6onE.js → square-DlJ_-dur.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-C06C-luq.js → toggleHighContrast-B8jte8Lm.js} +1 -1
- package/dist/web/assets/{tsMode-CTMYvh-R.js → tsMode-CmAPBzqb.js} +1 -1
- package/dist/web/assets/{upload-EAAHd0Nx.js → upload-C71OnfRd.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-DBsx4aIY.js → useLocalAgentSchedules-D9hDhAba.js} +1 -1
- package/dist/web/assets/{wifi-off-DYRTrfYa.js → wifi-off-DhI7P9WW.js} +1 -1
- package/dist/web/assets/{workers-DAytqxd3.js → workers-BDI2xQio.js} +1 -1
- package/dist/web/assets/{yaml-iZnWWABr.js → yaml-DNSpZj5_.js} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/chunks/app-server-runtime-MICKKE3S.js +0 -2
- package/dist/chunks/chunk-AD3RLKPP.js +0 -5
- package/dist/chunks/chunk-AIGGIV44.js +0 -5
- package/dist/chunks/chunk-HEUO2XEH.js +0 -28
- package/dist/chunks/chunk-L6OFNJ6Y.js +0 -19
- package/dist/chunks/chunk-XSFF4T2Z.js +0 -24
- package/dist/chunks/extension-N5SBQPJO.js +0 -5
- package/dist/chunks/src-UDJ7D55P.js +0 -319
- package/dist/web/assets/App-DNZ5VhFd.js +0 -176
- package/dist/web/assets/AppTerminalPanel-C1U1RKU6.js +0 -2
- package/dist/web/assets/BrowserSidebar-XgQLeXw1.js +0 -1
- package/dist/web/assets/HostedModelLearningReview-CZyb95R_.js +0 -1
- package/dist/web/assets/HostedModelLearningSettings-D2o7rh0w.js +0 -1
- package/dist/web/assets/MainChatThread-CnXHxCy3.js +0 -2
- package/dist/web/assets/MainPane-DjnT-kvm.js +0 -8
- package/dist/web/assets/RightChatPanelStack-jsP9CukH.js +0 -1
- package/dist/web/assets/WorkspaceDiffPanel-HdfItqu2.js +0 -14
- package/dist/web/assets/chevron-up-CHxYR4AX.js +0 -1
- package/dist/web/assets/index-BGMzUaup.css +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TerminalOverlay-DxuUGKYH.js","./index-BoaTQ0Rb.js","./index-BGMzUaup.css","./App-DNZ5VhFd.js","./TerminalOverlay-DwBiZLwk.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r,j as t,_ as c}from"./index-BoaTQ0Rb.js";const p=r.lazy(()=>c(()=>import("./TerminalOverlay-DxuUGKYH.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url).then(e=>({default:e.TerminalOverlay})));function E({open:e,connection:a,scope:l,tabs:s,onTabsChange:n,cwd:i,appId:u,workspaceName:o,queuedCommand:f,onClose:m}){const[d,_]=r.useState(!1);return r.useEffect(()=>{e&&_(!0)},[e]),d?t.jsx(r.Suspense,{fallback:null,children:t.jsx(p,{open:e,connection:a,scope:l,tabs:s,onTabsChange:n,cwd:i,appId:u,workspaceName:o,queuedCommand:f,onClose:m})}):null}export{E as AppTerminalPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as c,j as a}from"./index-BoaTQ0Rb.js";import{dt as v,aR as f,X as k,P as j,A as C,aF as g,bl as B}from"./App-DNZ5VhFd.js";import{a as y}from"./chat-file-links-BQe708gU.js";import{R as N}from"./refresh-cw-DZHqZGos.js";import{S as T}from"./square-D_1V6onE.js";const x=[];function P(r){const e=window.openpond?.browser,[b,t]=c.useState(()=>({conversationId:r,activeTabId:null,tabs:x}));c.useEffect(()=>{if(t({conversationId:r,activeTabId:null,tabs:x}),!e)return;let s=!1;e.getState({conversationId:r}).then(o=>{s||t(o)});const i=e.onState(o=>{o.conversationId===r&&t(o)});return()=>{s=!0,i()}},[e,r]);const u=c.useMemo(()=>b.tabs.find(s=>s.id===b.activeTabId)??null,[b.activeTabId,b.tabs]),l=c.useCallback(async(s,i={})=>{if(!e)return!1;const o=v(s,{explicitFile:i.explicitFile});return o?(i.newTab?await e.newTab({conversationId:r,url:o,explicitFile:i.explicitFile}):await e.open({conversationId:r,url:o,explicitFile:i.explicitFile}),!0):!1},[e,r]),n=u?{conversationId:r,tabId:u.id}:null;return{activeTab:u,available:!!e,bridge:e,state:b,back:()=>e&&n?e.back(n):Promise.resolve({ok:!1}),clearData:()=>e?e.clearData({conversationId:r}):Promise.resolve({ok:!1}),closeTab:s=>e?e.closeTab({conversationId:r,tabId:s}):Promise.resolve({ok:!1}),forward:()=>e&&n?e.forward(n):Promise.resolve({ok:!1}),newTab:s=>e?e.newTab({conversationId:r,url:s}):Promise.resolve({ok:!1}),open:l,openExternal:()=>e&&n?e.openExternal(n):Promise.resolve({ok:!1}),reload:()=>e&&n?e.reload(n):Promise.resolve({ok:!1}),snapshot:(s={})=>e?e.snapshot({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),moveCursor:s=>e?e.moveCursor({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),click:s=>e?e.click({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),typeText:s=>e?e.typeText({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),key:s=>e?e.key({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),scroll:s=>e?e.scroll({conversationId:r,...s}):Promise.resolve({ok:!1,output:"Desktop browser bridge unavailable."}),selectTab:s=>e?e.selectTab({conversationId:r,tabId:s}):Promise.resolve({ok:!1}),setBounds:s=>e?e.setBounds({conversationId:r,bounds:s}):Promise.resolve({ok:!1}),stop:()=>e&&n?e.stop(n):Promise.resolve({ok:!1})}}function R({activeTabId:r,tabs:e,onCloseTab:b,onNewTab:t,onSelectTab:u}){return a.jsxs("div",{className:"browser-tabs",role:"tablist","aria-label":"Browser tabs",children:[e.map(l=>a.jsxs("div",{className:`browser-tab ${l.id===r?"active":""}`,children:[a.jsx("span",{className:"browser-tab-favicon","aria-hidden":"true",children:l.faviconUrl?a.jsx("img",{alt:"",referrerPolicy:"no-referrer",src:l.faviconUrl}):a.jsx(f,{size:13})}),a.jsx("button",{type:"button",className:"browser-tab-main",role:"tab","aria-selected":l.id===r,title:l.url,onClick:()=>u(l.id),children:E(l)}),a.jsx("button",{type:"button",className:"browser-tab-close",title:"Close tab","aria-label":"Close tab",onClick:()=>b(l.id),children:a.jsx(k,{size:12})})]},l.id)),a.jsx("button",{type:"button",className:"browser-tab-add",title:"New tab","aria-label":"New tab",onClick:t,children:a.jsx(j,{size:14})})]})}function E(r){if(r.title?.trim())return r.title.trim();try{return new URL(r.url).host||r.url}catch{return r.url||"New tab"}}function z({activeTab:r,available:e,onBack:b,onClearData:t,onForward:u,onNavigate:l,onOpenExternal:n,onReload:s,onStop:i}){const[o,d]=c.useState(""),[p,m]=c.useState(!1);c.useEffect(()=>{d(r?.url??"")},[r?.url]);function h(w){w.preventDefault(),l(o)}return a.jsxs("div",{className:"browser-toolbar",children:[a.jsxs("div",{className:"browser-nav-actions",children:[a.jsx("button",{type:"button",title:"Back","aria-label":"Back",disabled:!r?.canGoBack,onClick:b,children:a.jsx(C,{size:15})}),a.jsx("button",{type:"button",title:"Forward","aria-label":"Forward",disabled:!r?.canGoForward,onClick:u,children:a.jsx(y,{size:15})}),a.jsx("button",{type:"button",title:r?.loading?"Stop":"Reload","aria-label":r?.loading?"Stop":"Reload",disabled:!r,onClick:r?.loading?i:s,children:r?.loading?a.jsx(T,{size:13}):a.jsx(N,{size:14})})]}),a.jsx("form",{className:"browser-address-form",onSubmit:h,children:a.jsx("input",{"aria-label":"Browser address",disabled:!e,placeholder:e?"Search or enter address":"Desktop browser unavailable",spellCheck:!1,value:o,onChange:w=>d(w.target.value)})}),a.jsxs("div",{className:"browser-panel-actions",children:[a.jsx("button",{type:"button",title:"Open external","aria-label":"Open external",disabled:!r,onClick:n,children:a.jsx(g,{size:14})}),a.jsxs("div",{className:"browser-menu-anchor",children:[a.jsx("button",{type:"button",title:"Browser actions","aria-label":"Browser actions",onClick:()=>m(w=>!w),children:a.jsx(B,{size:15})}),p&&a.jsx("div",{className:"browser-options-menu",role:"menu",children:a.jsx("button",{type:"button",role:"menuitem",onClick:()=>{m(!1),t()},children:"Clear Browser Data..."})})]})]})]})}function D({active:r,onBounds:e}){const b=c.useRef(null),t=c.useRef(null),u=c.useRef(null),l=c.useCallback(i=>{const o=i?`${i.x}:${i.y}:${i.width}:${i.height}`:"null";t.current!==o&&(t.current=o,e(i))},[e]),n=c.useCallback(()=>{const i=b.current;if(!r||!i){l(null);return}const o=i.getBoundingClientRect(),d=Math.max(0,Math.round(o.width)),p=Math.max(0,Math.round(o.height));if(d===0||p===0){l(null);return}l({x:Math.round(o.left),y:Math.round(o.top),width:d,height:p})},[r,l]),s=c.useCallback(()=>{u.current===null&&(u.current=window.requestAnimationFrame(()=>{u.current=null,n()}))},[n]);return c.useLayoutEffect(()=>{t.current=null,n();const i=b.current;if(!r||!i)return l(null),()=>l(null);const o=new ResizeObserver(s);return o.observe(i),window.addEventListener("resize",s),window.addEventListener("scroll",s,!0),()=>{u.current!==null&&(window.cancelAnimationFrame(u.current),u.current=null),o.disconnect(),window.removeEventListener("resize",s),window.removeEventListener("scroll",s,!0),l(null)}},[r,l,n,s]),a.jsx("div",{className:"browser-viewport",ref:b})}function A({conversationId:r,expanded:e,onResizeStart:b}){const t=P(r),u=c.useCallback(s=>{window.openpond?.browser?.setBounds({conversationId:r,bounds:s})},[r]),l=c.useCallback(s=>{t.open(s,{explicitFile:!0})},[t]),n=c.useCallback(()=>{window.confirm("Clear browser data for this conversation? Tabs, cookies, cache, and local storage for this conversation will be removed.")&&t.clearData()},[t]);return a.jsxs("aside",{className:`workspace-diff-panel browser-sidebar-panel ${e?"expanded":""}`,"aria-label":"Browser",children:[!e&&a.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize browser panel",onPointerDown:b}),a.jsx(R,{activeTabId:t.state.activeTabId,tabs:t.state.tabs,onCloseTab:s=>{t.closeTab(s)},onNewTab:()=>{t.newTab()},onSelectTab:s=>{t.selectTab(s)}}),a.jsx(z,{activeTab:t.activeTab,available:t.available,onBack:()=>{t.back()},onClearData:n,onForward:()=>{t.forward()},onNavigate:l,onOpenExternal:()=>{t.openExternal()},onReload:()=>{t.reload()},onStop:()=>{t.stop()}}),a.jsxs("div",{className:"browser-content",children:[t.available?t.state.tabs.length===0?a.jsxs("div",{className:"browser-empty-state",children:[a.jsx(f,{size:18}),a.jsx("span",{children:"Enter a URL to open a browser tab for this conversation."})]}):null:a.jsxs("div",{className:"browser-empty-state",children:[a.jsx(f,{size:18}),a.jsx("span",{children:"Desktop browser bridge unavailable."})]}),a.jsx(D,{active:t.available&&t.state.tabs.length>0,onBounds:u})]})]})}export{A as BrowserSidebar};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as i,j as e}from"./index-BoaTQ0Rb.js";import{p as u}from"./LabsRoute-C_HDADl0.js";import{d_ as n}from"./App-DNZ5VhFd.js";import"./AppDialog-CtqbY289.js";import"./cloud-upload-DLtawDYW.js";import"./MainPane-DjnT-kvm.js";import"./arrow-up-right-BK6EpHpC.js";import"./chat-file-links-BQe708gU.js";import"./square-D_1V6onE.js";import"./training-model-data-CKOkpBBL.js";import"./refresh-cw-DZHqZGos.js";import"./info-CQ2kJJ5E.js";/* empty css */import"./ComposerCreateImproveStrip-C4mCZcKl.js";import"./play-D9jaK5MP.js";function H({api:o,policyId:r,sourceId:t,onBack:s}){const a=i.useMemo(()=>o.reviewClient(r,t),[o,r,t]),[p,m]=i.useState(null),[l,c]=i.useState(null);return e.jsxs("section",{"aria-label":"Hosted example review",children:[e.jsx("button",{type:"button",className:"training-button secondary",onClick:()=>{n(s)},children:"Back to continual learning"}),e.jsx("p",{children:"Reviewing hosted examples. Approved tasks become eligible for this policy's next training check."}),e.jsx(u,{client:a,selectedId:p,after:l,sourceId:t,onSelect:d=>{n(()=>m(d))},onPage:c})]})}export{H as HostedModelLearningReview};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as s,j as t}from"./index-BoaTQ0Rb.js";import{u as K,n as W,o as X}from"./LabsRoute-C_HDADl0.js";import{bS as I,cj as Y,dZ as H,bT as U,cC as T,dc as ee}from"./App-DNZ5VhFd.js";import{A as ne}from"./AppDialog-CtqbY289.js";import"./cloud-upload-DLtawDYW.js";import"./MainPane-DjnT-kvm.js";import"./arrow-up-right-BK6EpHpC.js";import"./chat-file-links-BQe708gU.js";import"./square-D_1V6onE.js";import"./training-model-data-CKOkpBBL.js";import"./refresh-cw-DZHqZGos.js";import"./info-CQ2kJJ5E.js";/* empty css */import"./ComposerCreateImproveStrip-C4mCZcKl.js";import"./play-D9jaK5MP.js";function te(r,a){const n=a?.limits.maxIterationSpendUsd??r.trainingSetup.preferredMaximumSpendUsd??1;return{enabled:a?.enabled??!1,scheduled:!!(a&&["schedule","nightly","approved_count"].includes(a.trigger.kind)),intervalSeconds:a?.trigger.kind==="schedule"?a.trigger.intervalSeconds:86400,humanReviewRequired:a?.admission.mode!=="qualified_automatic",minimumApprovedExamples:a?.admission.minimumApprovedExamples??10,maxBatchExamples:a?.limits.maxBatchExamples??10,maxIterationSpendUsd:n,maxDailySpendUsd:a?.limits.maxDailySpendUsd??n,cooldownSeconds:a?.limits.cooldownSeconds??3600,maxRetries:a?.limits.maxRetries??0,maxBacklogExamples:a?.limits.maxBacklogExamples??1e3}}function ae(r){const{project:a,previous:n,settings:i}=r;if(n&&(n.id!==r.policyId||n.modelProjectId!==a.portableProjectId||n.executionOwner!=="hosted"))throw new I("learning_policy_model_mismatch",422,"Learning settings must belong to this hosted Model.");const g=r.applyModelConfiguration||!n,o=g?ie(a):null,h=g?a.trainingSetup.recipe?.method:n?.training.method,v=i.trigger??(i.scheduled?{kind:"schedule",intervalSeconds:i.intervalSeconds}:{kind:"manual"});if(i.enabled&&h!=="grpo")throw new I("learning_training_method_unsupported",422,"Hosted continual learning currently supports GRPO.");return Y.parse({schemaVersion:"openpond.learningPolicy.v1",id:r.policyId,revision:(n?.revision??0)+1,modelProjectId:a.portableProjectId,executionOwner:"hosted",enabled:i.enabled,sources:r.sources,taskDefinition:r.taskDefinition,rewardBinding:g?a.trainingSetup.rewardBindingRef:n?.rewardBinding,admission:{mode:i.humanReviewRequired?"human":"qualified_automatic",qualification:i.humanReviewRequired?null:n?.admission.qualification??null,minimumApprovedExamples:i.minimumApprovedExamples},trigger:v,trainingParent:o?.trainingParent??n?.trainingParent,teacher:n?.teacher??null,training:{method:h,recipe:o?.recipe??n?.training.recipe,retentionEvaluation:o?.retentionEvaluation??n?.training.retentionEvaluation,replayBatches:n?.training.replayBatches??[]},limits:{maxIterationSpendUsd:i.maxIterationSpendUsd,maxDailySpendUsd:i.maxDailySpendUsd,cooldownSeconds:i.cooldownSeconds,maxRetries:i.maxRetries,maxBatchExamples:i.maxBatchExamples,maxBacklogExamples:i.maxBacklogExamples},automation:{collect:!1,train:v.kind!=="manual",accept:!1,serve:!1},acceptance:n?.acceptance??{minimumScore:0,maximumRetentionRegression:0,requireImprovement:!0,rollbackVersion:null}})}function ie(r){const a=r.trainingSetup,n=a.baseModel??r.defaultBaseModel;if(!a.recipe||!n||!a.evaluationTasksetRef)throw new I("learning_model_configuration_incomplete",422,"Select a training recipe, starting model and retained evaluation before enabling hosted learning.");return{recipe:{id:`model-recipe-${r.etag}`,contentHash:H(a.recipe)},trainingParent:{id:n.modelId,contentHash:H(n)},retentionEvaluation:{id:a.evaluationTasksetRef.id,contentHash:a.evaluationTasksetRef.contentHash}}}function Se({client:r,project:a,policy:n,onClose:i}){const[g]=s.useState(()=>n?.id??`policy-${crypto.randomUUID()}`),[o]=s.useState(()=>te(a,n)),[h,v]=s.useState(o.enabled),[E,O]=s.useState(o.scheduled),[j,$]=s.useState(!n),[R,F]=s.useState(o.humanReviewRequired),[c,M]=s.useState(n?.sources??[]),[x,N]=s.useState(n?.taskDefinition??null),[d,V]=s.useState({interval:String(o.intervalSeconds/60),minimum:String(o.minimumApprovedExamples),batch:String(o.maxBatchExamples),spend:String(o.maxIterationSpendUsd),daily:String(o.maxDailySpendUsd),cooldown:String(o.cooldownSeconds/60),retries:String(o.maxRetries),backlog:String(o.maxBacklogExamples)}),[G,S]=s.useState(!1),[p,P]=s.useState(!1),[Q,q]=s.useState(null),[f,Z]=s.useState(),[y,z]=s.useState(null),[L,A]=s.useState(null),u=s.useRef(null),B=s.useRef(!1);s.useEffect(()=>{let e=!1;return r.sources(f).then(l=>{e||(z({after:f,data:l}),A(null))},l=>{e||A(l instanceof Error?l.message:String(l))}),()=>{e=!0}},[r,f]);const k=y&&y.after===f?y.data:null,D=j?a.trainingSetup.rewardBindingRef:n?.rewardBinding;function J(e){const l=c.some(m=>m.id===e.id);M(l?c.filter(m=>m.id!==e.id):[...c,T(e)]),N(l&&c.length===1?null:x??e.taskDefinition),S(!0)}async function _(){if(B.current)return!1;B.current=!0,P(!0),q(null);try{if(!u.current){if(!x||!c.length||!D)throw new Error("Select task sources and a Model Reward before saving.");const e=ae({project:a,previous:n,policyId:g,applyModelConfiguration:j,sources:c,taskDefinition:x,settings:{enabled:h,scheduled:E,humanReviewRequired:R,intervalSeconds:Number(d.interval)*60,minimumApprovedExamples:Number(d.minimum),maxBatchExamples:Number(d.batch),maxIterationSpendUsd:Number(d.spend),maxDailySpendUsd:Number(d.daily),cooldownSeconds:Number(d.cooldown)*60,maxRetries:Number(d.retries),maxBacklogExamples:Number(d.backlog)}});u.current={action:"publish",kind:"policy",operationId:crypto.randomUUID(),expectedRevision:n?.revision??0,content:e}}return await r.command(u.current),u.current=null,S(!1),!0}catch(e){return e instanceof ee&&e.status>=400&&e.status<500&&![408,429].includes(e.status)&&(u.current=null),q(e instanceof Error?e.message:"Unable to save learning settings."),!1}finally{B.current=!1,P(!1)}}const w=K({name:"learning settings",dirty:G,busy:p,save:_});return t.jsxs(t.Fragment,{children:[t.jsxs(ne,{ariaLabel:"Continual learning settings",className:"labs-rename-dialog learning-workspace hosted-learning-settings",backdropClassName:"labs-rename-backdrop",dismissDisabled:p,onClose:()=>{w.requestLeave(i)},children:[t.jsx("h2",{children:"Continual learning settings"}),t.jsxs("p",{children:["Train ",a.name," from approved tasks. Acceptance and serving remain separate decisions."]}),t.jsx(W,{error:Q??L}),t.jsxs("form",{onSubmit:async e=>{e.preventDefault(),await _()&&(w.allowNextNavigation(),i())},children:[t.jsxs("fieldset",{disabled:p||!!u.current,onChange:()=>S(!0),children:[t.jsxs("label",{children:[t.jsx("input",{type:"checkbox",checked:h,onChange:e=>v(e.target.checked)})," Enable learning"]}),t.jsxs("label",{children:[t.jsx("input",{type:"checkbox",checked:R,disabled:R,onChange:()=>F(!0)})," Human review required"]}),t.jsx("p",{children:"New policies require human review. Qualified automatic admission cannot be configured here yet."}),n?t.jsxs("label",{children:[t.jsx("input",{type:"checkbox",checked:j,onChange:e=>$(e.target.checked)})," Use the Model’s current training configuration"]}):null,t.jsxs("fieldset",{children:[t.jsx("legend",{children:"Task sources"}),!k&&!L?t.jsx("p",{children:"Loading sources…"}):null,k?.sources.items.map(e=>{const l=k.definitions.find(C=>U(T(C),e.taskDefinition)),m=!!(D&&l&&U(D,l.rewardBinding)&&(!x||U(x,e.taskDefinition))),b=c.find(C=>C.id===e.id);return t.jsxs("label",{children:[t.jsx("input",{type:"checkbox",checked:!!b,disabled:!b&&(!e.enabled||!m),onChange:()=>J(e)})," ",e.name,b&&b.revision!==e.revision?t.jsxs("small",{children:["Using saved revision ",b.revision,"; clear and reselect to update."]}):m?null:t.jsx("small",{children:"Different task format or Reward."})]},e.id)}),t.jsxs("p",{children:[c.length," sources selected. ",t.jsx("button",{type:"button",onClick:()=>{M([]),N(null),S(!0)},children:"Clear selection"})]}),t.jsx(X,{after:f,next:k?.sources.nextCursor,onPage:e=>Z(e??void 0)})]}),t.jsxs("label",{children:[t.jsx("input",{type:"checkbox",checked:E,onChange:e=>O(e.target.checked)})," Schedule training"]}),Object.keys(d).filter(e=>e!=="interval"||E).map(e=>t.jsxs("label",{children:[{interval:"Check interval (minutes)",minimum:"Minimum approved examples",batch:"Maximum examples per batch",spend:"Maximum spend per iteration ($)",daily:"Maximum daily spend ($)",cooldown:"Cooldown (minutes)",retries:"Automatic retries",backlog:"Maximum backlog"}[e],t.jsx("input",{type:"number",value:d[e],min:"0",step:e==="spend"||e==="daily"?"0.01":"1",onChange:l=>V(m=>({...m,[e]:l.target.value}))})]},e))]}),t.jsxs("div",{className:"model-build-actions",children:[t.jsx("button",{type:"submit",className:"training-button",disabled:p,children:p?"Saving…":u.current?"Retry save":"Save settings"}),t.jsx("button",{type:"button",className:"training-button secondary",disabled:p,onClick:()=>{w.requestLeave(i)},children:"Cancel"})]})]})]}),w.dialog]})}export{Se as HostedModelLearningSettings};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TrainingCreationPanel-CjIPEoTX.js","./index-BoaTQ0Rb.js","./index-BGMzUaup.css","./App-DNZ5VhFd.js","./training-eg6uFi3M.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r,j as a,_ as v}from"./index-BoaTQ0Rb.js";import{u as A,a as E,T as F,M as b}from"./Messages-DxctstDI.js";import{l as B,i as L}from"./MainPane-DjnT-kvm.js";import"./App-DNZ5VhFd.js";import"./chevron-up-CHxYR4AX.js";import"./MarkdownText-_zVYW4pN.js";import"./chat-file-links-BQe708gU.js";import"./desktop-files-BQj1J-ob.js";import"./arrow-up-right-BK6EpHpC.js";import"./folder-open-B_Ayxxo8.js";import"./play-D9jaK5MP.js";import"./refresh-cw-DZHqZGos.js";import"./cloud-upload-DLtawDYW.js";import"./square-D_1V6onE.js";const N=r.lazy(()=>v(()=>import("./TrainingCreationPanel-CjIPEoTX.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url).then(t=>({default:t.TrainingStatusReceipt})));function Z({accountBaseUrl:t,activeWorkspaceAppId:e,billingOrganizationSlug:n,billingTeamId:l,connection:o,conversationKey:p,creation:u,onOpenBrowserLink:d,onOpenAttachmentInSidebar:g,onOpenFileInSidebar:c,onOpenProfileSettings:h,onResolveUserQuestion:I,onOpenSession:T,onScroll:f,rows:m,sessionId:M,turnRunning:x,userAttachmentDisplay:_,threadRef:j,workspaceRootPath:y}){const i=r.useMemo(()=>m.flatMap(s=>s.type==="message"?[s.message]:[]),[m]),C=A(i,p),R=P(i),S=r.useMemo(()=>B(i),[i]),k=E({connection:o,latestTurnId:R,sessionId:M,turnRunning:x});return a.jsxs("section",{className:"chat-thread","aria-label":"Conversation",ref:j,onScroll:f,children:[m.map(s=>s.type==="thinking"?a.jsx(F,{},s.id):a.jsx(b,{activeWorkspaceAppId:e,accountBaseUrl:t,billingOrganizationSlug:n,billingTeamId:l,connection:o,animateInitialContent:s.message.role==="assistant"&&C.has(s.message.id),kvCacheSummary:L(s.message,S)&&s.message.turnId?k.get(s.message.turnId)??null:null,message:s.message,onOpenAttachmentInSidebar:g,onOpenFileInSidebar:c,onOpenBrowserLink:d,onOpenProfileSettings:h,onResolveUserQuestion:I,onOpenSession:T,userAttachmentDisplay:_,workspaceRootPath:y,showFooter:s.showFooter},s.id)),u?a.jsx(r.Suspense,{fallback:null,children:a.jsx(N,{creation:u})}):null]})}function P(t){for(let e=t.length-1;e>=0;e-=1){const n=t[e]?.turnId;if(n)return n}return null}export{Z as MainChatThread};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ComposerCreateImproveStrip-C4mCZcKl.js","./index-BoaTQ0Rb.js","./index-BGMzUaup.css","./App-DNZ5VhFd.js","./chat-file-links-BQe708gU.js","./play-D9jaK5MP.js","./refresh-cw-DZHqZGos.js","./WorkspaceDiffPanel-HdfItqu2.js","./MarkdownText-_zVYW4pN.js","./desktop-files-BQj1J-ob.js","./training-model-data-CKOkpBBL.js","./folder-open-B_Ayxxo8.js","./info-CQ2kJJ5E.js","./minimize-2-1M-fFBeP.js","./save-DOT3oYfU.js","./clipboard-DOmCP7eR.js","./chevron-up-CHxYR4AX.js","./AppTerminalPanel-C1U1RKU6.js","./RightSidebarHomePanel-CtH0vZ36.js","./WorkSidebarPanel-DMsiwOSi.js","./cloud-upload-DLtawDYW.js","./arrow-up-right-BK6EpHpC.js","./square-D_1V6onE.js","./WorkSidebarPanel-Bky_Rqcx.css","./NewExperienceSwitcher-CZCLJj99.js","./CollaborationTabs-BL6guh-3.js","./CollaborationTabs-BfVlyLmR.css","./AppsView-BeGbrJkU.js","./AppsView-CzbB5pXp.css","./GetStartedView-BUlaCO6a.js","./AppDialog-CtqbY289.js","./GetStartedView-yVmnGZPw.css","./LabsRoute-C_HDADl0.js","./LabsRoute-C1FWCoYb.css","./training-eg6uFi3M.css","./ScheduledWorkPage-BY_4jFm7.js","./useLocalAgentSchedules-DBsx4aIY.js","./OutputsPage-aPJP4mTV.js","./ProjectsPage-CyThuXQv.js","./ProjectsPage-DdG-U9ZW.css","./LabSkillSidebar-CPucMztm.js","./LabSkillSidebar-CVxtS9pd.css","./BrowserSidebar-XgQLeXw1.js","./BrowserSidebar-D9i7gQzw.css","./RightChatPanelStack-jsP9CukH.js","./Messages-DxctstDI.js","./NativeSkillSidebar-DV4AGiCD.js","./NativeSkillSidebar-T8KXjnUH.css","./TeamChatView-DWjwVxMp.js","./TeamChatView-Br3VdxhD.css","./git-dialogs-BZDqS1eT.css","./CommunityView-DcEhEMm_.js","./wifi-off-DYRTrfYa.js","./CommunityView-DaIS0cHw.css","./TrainingDraftPanel-CxevAlkr.js","./MainChatThread-CnXHxCy3.js","./TrainingCreationPanel-CjIPEoTX.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as o,j as s,_ as me}from"./index-BoaTQ0Rb.js";import{c as qe,b as zr,C as ds,P as Ln,a as $s,A as Pn,d as Ct,e as wr,F as Mr,f as hr,g as ca,O as ua,h as Rr,B as da,i as Fs,j as Ir,k as fa,l as ma,m as ha,n as pa,u as ga,o as De,X as fs,p as bo,q as xa,D as Fr,r as Br,S as ba,s as qr,t as ka,v as ko,w as va,G as Sa,x as ya,y as Ft,z as Pr,E as In,H as Ur,I as vo,J as ja,K as Ca,L as wa,M as Ma,N as Ea,Q as Aa,R as Na,T as Ta,U as Ra,V as Hr,W as So,Y as Ia,Z as Pa,_ as _a,$ as $a,a0 as La,a1 as Oa,a2 as Da,a3 as za,a4 as Vr,a5 as Fa,a6 as Ba,a7 as qa,a8 as Ua,a9 as Ha,aa as Va,ab as Ga,ac as Wa,ad as Xa,ae as Ka,af as Qa,ag as Ja,ah as Ya,ai as Za,aj as ei,ak as ti}from"./App-DNZ5VhFd.js";import{C as ni}from"./cloud-upload-DLtawDYW.js";import{A as si}from"./arrow-up-right-BK6EpHpC.js";import{T as ri,B as pr,W as gr,P as oi,F as ai,C as ii,A as li,a as yo,r as ci,n as ui}from"./chat-file-links-BQe708gU.js";import{S as jo}from"./square-D_1V6onE.js";function Co(e){return e?(e.match(/\r\n|\r|\n/g)?.length??0)+(/(?:\r\n|\r|\n)$/.test(e)?0:1):0}const di=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],fi=qe("arrow-down",di);const mi=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],hi=qe("arrow-up",mi);const pi=[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8",key:"7n84p3"}]],Gr=qe("at-sign",pi);const gi=[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],xi=qe("badge-check",gi);const bi=[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],ki=qe("ban",bi);const vi=[["path",{d:"M12 13v8l-4-4",key:"1f5nwf"}],["path",{d:"m12 21 4-4",key:"1lfcce"}],["path",{d:"M4.393 15.269A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.436 8.284",key:"ui1hmy"}]],Si=qe("cloud-download",vi);const yi=[["path",{d:"M4 6.835V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-.343",key:"1vfytu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M2 19a2 2 0 0 1 4 0v1a2 2 0 0 1-4 0v-4a6 6 0 0 1 12 0v4a2 2 0 0 1-4 0v-1a2 2 0 0 1 4 0",key:"1etmh7"}]],ji=qe("file-headphone",yi);const Ci=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]],wi=qe("file-spreadsheet",Ci);const Mi=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M15.033 13.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56v-4.704a.645.645 0 0 1 .967-.56z",key:"1tzo1f"}]],Ei=qe("file-play",Mi);const Ai=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],Ni=qe("image",Ai);const Ti=[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]],Ri=qe("mic",Ti);const Ii=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],Wr=qe("paperclip",Ii);const Pi=[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]],_i=qe("presentation",Pi);const $i=[["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}],["path",{d:"m9 17-5-5 5-5",key:"nvlc11"}]],Li=qe("reply",$i),Xr=Object.freeze({events:[],messages:[]});class Oi{projection=Xr;project(t){if(t===this.projection.events)return this.projection.messages;if(!Fi(this.projection.events,t))return this.replace(t);const n=t.slice(this.projection.events.length);if(n.length===0)return this.projection={events:t,messages:this.projection.messages},this.projection.messages;const r=Di(this.projection.messages,n);if(r)return this.projection={events:t,messages:r},r;const a=zi(t,this.projection.events.length);if(!a)return this.replace(t);const i=t.slice(a.eventIndex),c=new Set(i.flatMap(f=>f.turnId?[f.turnId]:[])),h=[...this.projection.messages.filter(f=>!f.turnId||!c.has(f.turnId)),...zr(i)];return this.projection={events:t,messages:h},h}reset(){this.projection=Xr}snapshot(){return this.projection}replace(t){const n=zr(t);return this.projection={events:t,messages:n},n}}function Di(e,t){if(t.length===0||e.length===0)return null;const n=e[e.length-1];if(n?.role!=="assistant"||n.createImproveRun||t.some(f=>f.name!=="assistant.delta"&&f.name!=="assistant.reasoning.delta"||f.turnId!==n.turnId||!f.output))return null;let r=n.content,a=n.reasoningContent,i=n.timestamp,c=!1,u=!1;for(const f of t)f.name==="assistant.delta"?(r=`${r??""}${f.output}`,c=!0):(a=`${a??""}${f.output}`,u=!0),i=f.timestamp;const h={...n,...c?{content:r}:{},...u?{reasoningContent:a}:{},timestamp:i};return[...e.slice(0,-1),h]}function zi(e,t){const n=e[t];if(!n?.turnId)return null;const r=e.findIndex(a=>a.turnId===n.turnId);return r<0?null:{eventIndex:r}}function Fi(e,t){return e.length===0?!0:e.length>=t.length?!1:e[0]===t[0]&&e[e.length-1]===t[e.length-1]}function Bi(e,t){const n=o.useCallback(i=>t?e.subscribeSession(t,i):()=>{},[t,e]),r=o.useCallback(()=>e.getSessionSnapshot(t),[t,e]),a=o.useSyncExternalStore(n,r,r);return o.useEffect(()=>{if(t)return e.retainSession(t,!0),()=>e.retainSession(t,!1)},[t,e]),a}function qi(e,t){const n=e.slice(0,Math.max(0,Math.min(t,e.length))),r=/(?:^|\s)\$([a-zA-Z][a-zA-Z0-9_-]*)?$/.exec(n);if(!r||typeof r.index!="number")return null;const a=r[0].lastIndexOf("$");return a<0?null:{end:n.length,query:(r[1]??"").toLowerCase(),start:r.index+a}}function qs(e){return`$${e.name}`}function Ui(e,t,n){const r=Math.max(0,Math.min(t.start,e.length)),a=Math.max(r,Math.min(t.end,e.length)),i=e.slice(0,r),c=e.slice(a),u=i&&!/\s$/.test(i)?" ":"",h=c&&/^\s/.test(c)?"":" ",f=`${u}${qs(n)}${h}`;return{cursor:i.length+f.length-(c?h.length:0),value:`${i}${f}${c}`}}function Ls(e,t,n){const r=t.trim().toLowerCase(),a=e.filter(i=>i.enabled&&i.validationStatus==="valid").filter(i=>r?[i.name,i.description,i.path].join(" ").toLowerCase().includes(r):!0).sort((i,c)=>i.name.localeCompare(c.name));return typeof n=="number"&&Number.isFinite(n)?a.slice(0,Math.max(0,n)):a}function wo(e,t,n){const r=t.trim().replace(/\s+/g," "),a=Hi(n,e.length);if(!r)return{value:e,cursorIndex:a};const i=e.slice(0,a),c=e.slice(a),u=i&&!/\s$/.test(i)?" ":"",h=c&&!/^\s/.test(c)?" ":"",f=`${u}${r}${h}`;return{value:`${i}${f}${c}`,cursorIndex:i.length+u.length+r.length+h.length}}function Hi(e,t){return Number.isFinite(e)?Math.max(0,Math.min(t,Math.round(e))):t}async function Vi({appendToEnd:e=!1,currentScopeKey:t,cursorIndex:n,originScopeKey:r,prompt:a,setOriginDraft:i,submitFromOrigin:c,transcript:u}){const h=wo(a,u,e?a.length:n);return i(h.value),t===r?"drafted":await c(h.value)?(i(""),"submitted"):"retained"}const _n=new Map,Os=new Map,Ds=new Map;function Kr(e){for(const t of Os.get(e)??[])t()}function Gi(e){return _n.has(e)}function Wi(e,t){const n=Os.get(e)??new Set;return n.add(t),Os.set(e,n),()=>{n.delete(t),n.size===0&&Os.delete(e)}}function Mo(e){_n.get(e)?.controller.abort()}function Xi(e,t){const n=Ds.get(e)??new Set;return n.add(t),Ds.set(e,n),()=>{n.delete(t),n.size===0&&Ds.delete(e)}}function Ki(e){const t=_n.get(e);if(t)return t.submitRequested=!0,!0;for(const n of Ds.get(e)??[])if(n())return!0;return!1}function Qi(e,t,n={}){Mo(e);const r=new AbortController,a={controller:r,promise:Promise.resolve(),submitRequested:n.submit??!1};return a.promise=Promise.resolve().then(()=>{if(!r.signal.aborted)return t(r.signal,()=>a.submitRequested)}).catch(i=>{if(!r.signal.aborted)throw i}).finally(()=>{_n.get(e)===a&&(_n.delete(e),Kr(e))}),_n.set(e,a),Kr(e),a.promise}function Eo({busy:e,placement:t,state:n,onChange:r}){const[a,i]=o.useState(!1),[c,u]=o.useState(""),h=o.useRef(null),f=o.useMemo(()=>{const g=c.trim().toLowerCase();return g?n.options.filter(y=>`${y.label} ${y.detail}`.toLowerCase().includes(g)):n.options},[c,n.options]);return o.useEffect(()=>{if(!a){u("");return}function g(m){h.current?.contains(m.target)||i(!1)}function y(m){m.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",g),document.addEventListener("keydown",y),()=>{document.removeEventListener("pointerdown",g),document.removeEventListener("keydown",y)}},[a]),n.options.length<=1?null:s.jsxs("div",{className:`composer-profile-target ${t==="top"?"open-up":""}`,ref:h,children:[s.jsxs("button",{type:"button",className:`composer-profile-trigger ${a?"active":""}`,disabled:e,"aria-label":"Profile","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(g=>!g),children:[s.jsx("span",{children:n.label}),s.jsx(ds,{size:14})]}),a?s.jsxs("div",{className:"composer-project-menu",role:"menu","aria-label":"Profile",children:[s.jsx("div",{className:"composer-menu-search",children:s.jsx("input",{autoFocus:!0,value:c,placeholder:"Search profiles",onChange:g=>u(g.currentTarget.value)})}),s.jsx("div",{className:"composer-menu-items",children:f.map(g=>{const y=g.value===n.value;return s.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":y,className:`composer-project-option ${y?"selected":""}`,onClick:()=>{r(g.value),i(!1)},children:[s.jsxs("span",{children:[s.jsx("strong",{children:g.label}),s.jsx("small",{children:g.detail})]}),y?s.jsx(Ct,{size:14}):null]},g.value)})})]}):null]})}function Ji({busy:e,placement:t,state:n,onChange:r}){const[a,i]=o.useState(!1),[c,u]=o.useState(!1),[h,f]=o.useState(""),g=o.useRef(null),m=n.value==="none"?"Select Project":n.label,p=n.options.find(C=>C.value===n.value)?.kind??"local",S=o.useMemo(()=>{const C=h.trim().toLowerCase();return C?n.options.filter(P=>[P.label,P.detail].filter(Boolean).some(b=>b.toLowerCase().includes(C))):n.options},[h,n.options]),v=S.filter(C=>C.kind==="local"||C.kind==="cloud"),N=S.filter(C=>C.kind==="action"),j=S.filter(C=>C.kind==="none");o.useEffect(()=>{if(!a){f(""),u(!1);return}function C(b){g.current?.contains(b.target)||i(!1)}function P(b){b.key==="Escape"&&(c?u(!1):i(!1))}return document.addEventListener("pointerdown",C),document.addEventListener("keydown",P),()=>{document.removeEventListener("pointerdown",C),document.removeEventListener("keydown",P)}},[c,a]);function E(C){const P=C.value===n.value,b=e||C.disabled,_=C.kind==="action";return s.jsxs("button",{type:"button",role:_?"menuitem":"menuitemradio","aria-checked":_?void 0:P,className:`composer-project-option ${P?"selected":""} ${C.kind}`,disabled:b,onClick:()=>{r(C.value),u(!1),i(!1)},children:[s.jsx(Er,{kind:C.kind,size:14}),s.jsxs("span",{children:[s.jsx("strong",{children:C.label}),s.jsx("small",{children:C.detail})]}),P&&s.jsx(Ct,{size:14})]},C.value)}return s.jsxs("div",{className:`composer-project-target ${t==="top"?"open-up":""}`,ref:g,children:[s.jsxs("button",{type:"button",className:`composer-project-trigger ${a?"active":""} ${p}`,disabled:e,"aria-label":"Project","aria-haspopup":"menu","aria-expanded":a,onClick:()=>{i(C=>!C),u(!1)},children:[s.jsx(Er,{kind:p,size:14}),s.jsx("span",{children:m}),s.jsx(ds,{size:14})]}),a&&s.jsxs("div",{className:"composer-project-menu",role:"menu","aria-label":"Project",children:[s.jsx("div",{className:"composer-menu-search",children:s.jsx("input",{autoFocus:!0,value:h,placeholder:"Search projects",onChange:C=>f(C.target.value)})}),s.jsx("div",{className:"composer-menu-items",children:S.length===0?s.jsx("div",{className:"composer-menu-empty",children:"No projects found"}):v.map(E)}),N.length>0||j.length>0?s.jsxs("div",{className:"composer-project-actions",children:[N.length>0?s.jsxs("button",{type:"button",role:"menuitem",className:`composer-project-option action composer-project-new-trigger ${c?"selected":""}`,"aria-haspopup":"menu","aria-expanded":c,onClick:()=>u(C=>!C),children:[s.jsx(Ln,{size:14}),s.jsxs("span",{children:[s.jsx("strong",{children:"New"}),s.jsx("small",{children:"Create or add a project"})]}),s.jsx($s,{size:14})]}):null,j.map(E)]}):null]}),a&&c?s.jsxs("div",{className:"composer-project-new-menu",role:"menu","aria-label":"New project",children:[s.jsxs("button",{type:"button",role:"menuitem",className:"composer-project-new-menu-back",onClick:()=>u(!1),children:[s.jsx(Pn,{size:14}),s.jsx("span",{children:"New project"})]}),N.map(E)]}):null]})}function Er({kind:e,size:t}){return e==="cloud"?s.jsx(wr,{size:t}):e==="action"?s.jsx(Ln,{size:t}):s.jsx(Mr,{size:t})}function Yi({busy:e,placement:t,state:n,onChange:r}){const[a,i]=o.useState(!1),c=o.useRef(null),u=n.value==="cloud"?"cloud":n.value==="hybrid"?"hybrid":"local",h=`${n.label}: ${n.detail}`,f=n.uploadAction??null,g=f?Qr(f):null,y=f?f.disabled&&f.disabledReason?f.disabledReason:`${f.label}: ${g??f.detail}`:null,m=!!(f&&(e||n.busy||f.disabled));return o.useEffect(()=>{if(!a)return;function p(v){c.current?.contains(v.target)||i(!1)}function S(v){v.key==="Escape"&&i(!1)}return document.addEventListener("pointerdown",p),document.addEventListener("keydown",S),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",S)}},[a]),s.jsxs("div",{className:`workspace-action-control ${t==="top"?"open-up":""}`,ref:c,children:[s.jsxs("button",{type:"button",className:`workspace-action-trigger ${u} ${a?"active":""}`,disabled:e,"data-tooltip":h,"aria-label":"Working in","aria-haspopup":"menu","aria-expanded":a,onClick:()=>i(p=>!p),children:[s.jsx(zs,{value:n.value,size:14}),s.jsx("span",{className:"workspace-target-trigger-label",children:n.label}),s.jsx(ds,{size:14})]}),f?s.jsx("button",{type:"button",className:`workspace-upload-trigger ${f.value}`,disabled:m,"data-tooltip":y??void 0,"aria-label":f.label,onClick:()=>{r(f.value),i(!1)},children:s.jsx(zs,{value:f.value,size:14})}):null,a&&s.jsx("div",{className:"workspace-target-menu",role:"menu","aria-label":"Working in",children:n.options.map(p=>{const S=p.value===n.value,v=e||n.busy||p.disabled,j=Qr(p)??p.detail,E=p.disabled&&p.disabledReason?p.disabledReason:`${p.label}: ${j}`;return s.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":S,className:`workspace-target-option ${S?"selected":""} ${p.value}`,disabled:v,"data-tooltip":E,onClick:()=>{r(p.value),i(!1)},children:[s.jsx(zs,{value:p.value,size:14}),s.jsxs("span",{children:[s.jsx("strong",{children:p.label}),s.jsx("small",{children:j})]}),S&&s.jsx(Ct,{size:14})]},p.value)})})]})}function Zi({project:e,workspace:t}){const r=e.options.find(i=>i.value===e.value)?.kind??"none",a=e.value==="none"?"No Project":e.label;return s.jsxs("div",{className:"composer-footer composer-pinned-context",role:"group","aria-label":"Task context",children:[s.jsxs("span",{className:"composer-context-chip","aria-label":`Project: ${a}`,children:[s.jsx(Er,{kind:r,size:14}),s.jsx("span",{children:a})]}),s.jsxs("span",{className:"composer-context-chip","aria-label":`Execution: ${t.label}`,children:[s.jsx(zs,{value:t.value,size:14}),s.jsx("span",{children:t.label})]})]})}function Qr(e){return e.disabled&&e.disabledReason?e.disabledReason:e.stateNote??null}function zs({value:e,size:t}){return e==="cloud"?s.jsx(wr,{size:t}):e==="hybrid"?s.jsxs("span",{className:"workspace-target-hybrid-icon","aria-hidden":"true",children:[s.jsx(Mr,{className:"hybrid-folder",size:t}),s.jsx(wr,{className:"hybrid-cloud",size:Math.max(7,Math.round(t*.62))})]}):e==="upload_cloud"?s.jsx(ni,{size:t}):s.jsx(Mr,{size:t})}function Jr({disabled:e,model:t,modelGroups:n,placement:r,provider:a,reasoningEffort:i,showReasoning:c,onModelSelectionChange:u,onProviderSetupOpen:h,onReasoningEffortChange:f}){const[g,y]=o.useState(!1),[m,p]=o.useState("root"),S=o.useRef(null),v=n.find(b=>b.provider===a),N=v?.options.find(b=>b.value===t),j=hr.find(b=>b.value===i)??hr[1],E=el(N?.label??t),C=c?`${E} ${j.shortLabel??j.label}`:E,P=c?"Model and reasoning":"Model";return o.useEffect(()=>{if(!g){p("root");return}function b(z){S.current?.contains(z.target)||y(!1)}function _(z){z.key==="Escape"&&y(!1)}return document.addEventListener("pointerdown",b),document.addEventListener("keydown",_),()=>{document.removeEventListener("pointerdown",b),document.removeEventListener("keydown",_)}},[g]),o.useEffect(()=>{!c&&m==="effort"&&p("root")},[m,c]),s.jsxs("div",{className:`codex-model-reasoning ${r==="top"?"open-up":""}`,"data-tooltip":P,ref:S,children:[s.jsxs("button",{type:"button",className:`codex-model-trigger ${g?"active":""}`,disabled:e,"aria-label":P,"aria-haspopup":"menu","aria-expanded":g,onClick:()=>y(b=>!b),children:[s.jsx("span",{children:C}),s.jsx(ds,{size:14})]}),g&&s.jsx("div",{className:"codex-model-menu",role:"menu","aria-label":P,children:m==="root"?s.jsxs("div",{className:"codex-model-menu-root",children:[s.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("provider"),children:[s.jsx("span",{children:"Provider"}),s.jsx("span",{className:"codex-model-menu-value",children:v?.label??a}),s.jsx($s,{size:14})]}),s.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("model"),children:[s.jsx("span",{children:"Model"}),s.jsx("span",{className:"codex-model-menu-value",children:N?.label??t}),s.jsx($s,{size:14})]}),c?s.jsxs("button",{type:"button",className:"codex-model-menu-row",role:"menuitem",onClick:()=>p("effort"),children:[s.jsx("span",{children:"Effort"}),s.jsx("span",{className:"codex-model-menu-value",children:j.shortLabel??j.label}),s.jsx($s,{size:14})]}):null]}):m==="provider"?s.jsxs(s.Fragment,{children:[s.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Provider",onClick:()=>p("root"),children:[s.jsx(Pn,{size:14}),s.jsx("span",{children:"Provider"})]}),s.jsx("div",{className:"codex-model-menu-divider"}),s.jsx("div",{className:"codex-model-menu-options",children:n.map(b=>{const _=b.provider===a;return s.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":_,className:_?"selected":"",onClick:()=>{const z=b.options.find(V=>V.value===b.defaultModel)??b.options[0];z&&(u(b.provider,z.value),p("root"))},children:[s.jsx("span",{children:b.label}),_?s.jsx(Ct,{size:14}):null]},b.provider)})}),s.jsx("button",{type:"button",className:"codex-model-setup-action",role:"menuitem",onClick:()=>{y(!1),h?.()},children:s.jsxs("span",{className:"codex-model-menu-option-label",children:[s.jsx(Ln,{size:13}),s.jsx("span",{children:"New Model/Provider"})]})})]}):m==="model"?s.jsxs(s.Fragment,{children:[s.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Model",onClick:()=>p("root"),children:[s.jsx(Pn,{size:14}),s.jsx("span",{children:"Model"})]}),s.jsx("div",{className:"codex-model-menu-divider"}),s.jsxs("div",{className:"codex-model-menu-options",children:[(v?.options??[]).map(b=>{const _=b.value===t;return s.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":_,className:_?"selected":"",onClick:()=>{u(a,b.value),p("root")},children:[s.jsx("span",{children:b.label}),_?s.jsx(Ct,{size:14}):null]},b.value)}),v?.options.length?null:s.jsx("div",{className:"codex-model-menu-empty",children:"No models from this provider"})]}),s.jsx("button",{type:"button",className:"codex-model-setup-action",role:"menuitem",onClick:()=>{y(!1),h?.()},children:s.jsxs("span",{className:"codex-model-menu-option-label",children:[s.jsx(Ln,{size:13}),s.jsx("span",{children:"New Model/Provider"})]})})]}):s.jsxs("div",{className:"codex-model-menu-effort",children:[s.jsxs("button",{type:"button",className:"codex-model-submenu-heading","aria-label":"Back to model settings — Effort",onClick:()=>p("root"),children:[s.jsx(Pn,{size:14}),s.jsx("span",{children:"Effort"})]}),s.jsx("div",{className:"codex-model-menu-divider"}),hr.map(b=>s.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":b.value===i,className:b.value===i?"selected":"",onClick:()=>{f(b.value),p("root")},children:[s.jsx("span",{children:b.label}),b.value===i?s.jsx(Ct,{size:14}):null]},b.value))]})})]})}function el(e){return e.replace(/^GPT-/,"").replace(/\s+Codex Spark$/," Spark").replace(/\s+Codex$/," Codex")}function tl({detailsOpen:e,goalRuntime:t,objectiveId:n,subagentRuntime:r,onToggleDetails:a}){const i=r?.activeCount?`${t.tooltip}. ${r.tooltip}`:t.tooltip;return s.jsxs("div",{className:`composer-goal-strip ${t.tone}${r?.activeCount?" has-subagents":""}`,"data-tooltip":i,children:[s.jsx("div",{className:"composer-goal-heading",children:s.jsxs("button",{type:"button",className:"composer-goal-toggle","aria-expanded":e,"aria-controls":n,onClick:a,children:[s.jsx("span",{children:t.actionLabel}),s.jsxs("span",{className:"composer-goal-toggle-meta",children:[r?s.jsx("span",{className:"composer-goal-subagent-count",children:r.label}):null,s.jsx("span",{children:t.timeLabel}),s.jsx(ds,{size:15,"aria-hidden":"true"})]})]})}),e&&s.jsxs("div",{className:"composer-goal-objective",id:n,children:[t.objective,r?s.jsx("span",{className:"composer-goal-subagent-summary",children:r.tooltip}):null]})]})}function nl(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`steer-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,9)}`}function xr(e,t=120){const n=e.trim().replace(/\s+/g," ");return n.length<=t?n:`${n.slice(0,Math.max(0,t-1)).trimEnd()}...`}function Ao(e,t={}){const n=t.now??new Date().toISOString();return{createdAt:n,id:t.id??nl(),prompt:e,updatedAt:n}}function No(e,t){return e.filter(n=>n.id!==t)}function sl(e,t,n){const r=n?.trim();return e.flatMap(a=>a.id!==t?[a]:r?[Ao(r)]:[])}function rl(e,t,n){return n?No(e,t):e}function Ar(e,t,n=[]){return e[t]??n}function ol(e,t,n,r=[]){const a=Ar(e,t,r),i=n(a);return Object.is(a,i)?e:{...e,[t]:i}}function al({drafts:e,sendingDraftId:t,onDeleteDraft:n,onEditDraft:r,onSteerDraft:a}){return e.length===0?null:s.jsx("div",{className:"composer-steer-stack","aria-label":"Steer drafts",children:e.map(i=>{const c=t===i.id,u=xr(i.prompt);return s.jsxs("div",{className:`composer-steer-row ${c?"sending":""}`,children:[s.jsx("span",{className:"composer-steer-row-icon","aria-hidden":"true",children:s.jsx(Li,{size:13})}),s.jsx("span",{className:"composer-steer-row-text",title:i.prompt,children:u}),s.jsxs("button",{type:"button",className:"composer-steer-row-action primary",disabled:c,"aria-label":`Steer: ${xr(i.prompt,60)}`,onClick:()=>a(i.id),children:[s.jsx(si,{size:12}),s.jsx("span",{children:c?"Sending":"Steer"})]}),s.jsx("button",{type:"button",className:"composer-steer-row-icon-button",disabled:c,"data-tooltip":"Delete steer draft","aria-label":"Delete steer draft",onClick:()=>n(i.id),children:s.jsx(ri,{size:13})}),s.jsx("button",{type:"button",className:"composer-steer-row-action",disabled:c,"aria-label":`Edit: ${xr(i.prompt,60)}`,onClick:()=>r(i),children:s.jsx("span",{children:"Edit"})})]},i.id)})})}const il=/\b(?:https?:\/\/)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai)\/[^\s<>"'`]+/gi,ll=/\b(?:git@)?(?:github\.com|(?:[a-z0-9-]+\.)*openpond\.ai):[^\s<>"'`]+/gi,cl=new Set(["about","apps","collections","codespaces","contact","customer-stories","enterprise","events","explore","features","issues","login","marketplace","mobile","new","notifications","orgs","organizations","pricing","pulls","readme","search","settings","sponsors","team","topics","trending"]),ul=new Set(["account","api","dashboard","docs","install.sh","login","logout","opchat","sandboxes","settings"]);function dl(e){const t=e.toLowerCase().replace(/^www\./,"");return t==="github.com"?"github":t==="openpond.ai"||t.endsWith(".openpond.ai")?"openpond":null}function fl(e){return e==="github"?cl:ul}function To(e){let t=e;for(;/[.,;!?]$/.test(t);)t=t.slice(0,-1);for(;ml(t);)t=t.slice(0,-1);return t}function ml(e){const t=e.at(-1);if(!t||!")]}".includes(t))return!1;const n=t===")"?"(":t==="]"?"[":"{";let r=0;for(const a of e)a===n&&(r+=1),a===t&&(r-=1);return r<0}function hl(e){return e.replace(/\.git$/i,"")}function Ro(e){try{return decodeURIComponent(e)}catch{return e}}function pl(e){return hl(Ro(e.trim()))}function Io(e){const t=e.host.toLowerCase().replace(/^www\./,""),n=dl(t);if(!n)return null;const r=Ro(e.owner?.trim()??""),a=pl(e.repo??"");return!r||!a||fl(n).has(r.toLowerCase())?null:{end:e.end,host:t,label:`${r}/${a}`,provider:n,repo:a,start:e.start,url:e.url,owner:r}}function gl(e,t){const n=To(e);if(!n)return null;try{const r=new URL(/^https?:\/\//i.test(n)?n:`https://${n}`),a=r.pathname.split("/").filter(Boolean);return Io({end:t+n.length,host:r.hostname,owner:a[0],repo:a[1],start:t,url:n})}catch{return null}}function xl(e,t){const n=To(e),r=/^(?:git@)?([^:]+):(.+)$/i.exec(n);if(!r)return null;const a=r[1]?.trim()??"",i=(r[2]??"").split("/").filter(Boolean);return Io({end:t+n.length,host:a,owner:i[0],repo:i[1],start:t,url:n})}function Yr(e,t,n){const r=[];t.lastIndex=0;let a;for(;a=t.exec(e);){const i=a[0]??"",c=n(i,a.index);c&&r.push(c)}return r}function bl(e){if(!e)return[];const t=[...Yr(e,il,gl),...Yr(e,ll,xl)].sort((r,a)=>r.start-a.start||a.end-r.end),n=[];for(const r of t)n.some(a=>r.start<a.end&&r.end>a.start)||n.push(r);return n.sort((r,a)=>r.start-a.start)}const kl=10,vl=340,Sl=320,yl=160,jl=56;function jt(e,t=0){const n=Number.parseFloat(e);return Number.isFinite(n)?n:t}function br(e){if(!e)return;e.style.height="auto";const t=window.getComputedStyle(e),n=jt(t.fontSize,16),r=jt(t.lineHeight,n*1.45),a=jt(t.paddingTop)+jt(t.paddingBottom),i=jt(t.borderTopWidth)+jt(t.borderBottomWidth),c=jt(t.minHeight,66),u=Math.max(c,Math.ceil(r*kl+a+i)),h=Math.max(c,Math.min(e.scrollHeight,u));e.style.height=`${h}px`,e.style.overflowY=e.scrollHeight>u?"auto":"hidden"}function kr(e,t){const n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),a=window.getComputedStyle(e),i=jt(a.paddingLeft,14),c=jt(a.paddingTop,15),u=Math.max(0,r.width-16),h=Math.min(vl,u),f=n.left-r.left+i-8,g=Math.max(8,Math.min(f,r.width-h-8)),y=Math.max(8,n.top-r.top+c+2);return{left:g,top:y,width:h}}function Cl(e){const t=e.getBoundingClientRect(),n=Math.floor(t.top-jl);return{maxHeight:Math.max(yl,Math.min(Sl,n))}}const wl="[data-inline-token='true']",Ml="[data-inline-repo-link='true']",El="[data-inline-connected-app-mention='true']";function ls(e){return e instanceof HTMLElement&&e.matches(wl)}function cs(e){return e instanceof HTMLElement&&e.matches(Ml)}function us(e){return e instanceof HTMLElement&&e.matches(El)}function Bs(e,t){return Math.max(0,Math.min(e,t))}function $n(e,t){return e?Bs(e.position,t.length):null}function Al(e,t,n,r=!1){const a=$n(t,n),i=Bs(e,n.length);return a===null?i:i>a||r&&i===a?i+1:i}function Zr(e,t,n){const r=$n(t,n);return Bs(r===null?e:e>r?e-1:e,n.length)}function vr(e){let t="",n=null;function r(a){if(cs(a)){t+=a.dataset.repoUrl??"";return}if(us(a)){t+=a.dataset.connectedMentionText??"";return}if(ls(a)){n=t.length;return}if(a.nodeType===Node.TEXT_NODE){t+=a.textContent??"";return}a instanceof HTMLBRElement||a.childNodes.forEach(r)}return e.childNodes.forEach(r),{text:t,tokenPosition:n}}function on(e){if(cs(e))return e.dataset.repoUrl?.length??0;if(us(e))return e.dataset.connectedMentionText?.length??0;if(ls(e))return 1;if(e.nodeType===Node.TEXT_NODE)return e.textContent?.length??0;if(e instanceof HTMLBRElement)return 0;let t=0;return e.childNodes.forEach(n=>{t+=on(n)}),t}function eo(e,t,n){if(!t||t!==e&&!e.contains(t))return null;let r=0,a=!1;function i(c){if(!a){if((ls(c)||cs(c)||us(c))&&(c===t||c.contains(t))){(c!==t||n>0)&&(r+=on(c)),a=!0;return}if(ls(c)||cs(c)||us(c)){r+=on(c);return}if(c===t){if(c.nodeType===Node.TEXT_NODE)r+=n;else{const u=Array.from(c.childNodes).slice(0,n);for(const h of u)r+=on(h)}a=!0;return}if(c.nodeType===Node.TEXT_NODE){r+=c.textContent?.length??0;return}c instanceof HTMLBRElement||c.childNodes.forEach(i)}}return i(e),a?r:null}function Sr(e){const t=window.getSelection();if(!t||t.rangeCount===0)return null;const n=eo(e,t.anchorNode,t.anchorOffset),r=eo(e,t.focusNode,t.focusOffset);return n===null||r===null?null:{anchor:n,focus:r}}function to(e,t){let n=Math.max(0,t);function r(c){const u=c.parentNode;return u?{node:u,offset:Array.prototype.indexOf.call(u.childNodes,c)}:{node:e,offset:0}}function a(c){const u=r(c);return{node:u.node,offset:u.offset+1}}function i(c){if(ls(c)||cs(c)||us(c)){const u=on(c);return n<=0?r(c):n<=u?a(c):(n-=u,null)}if(c.nodeType===Node.TEXT_NODE){const u=c.textContent?.length??0;return n<=u?{node:c,offset:n}:(n-=u,null)}if(c instanceof HTMLBRElement)return null;for(const u of c.childNodes){const h=i(u);if(h)return h}return null}return i(e)??{node:e,offset:e.childNodes.length}}function Po(e,t){const n=window.getSelection();if(!n)return;const r=to(e,t.anchor),a=to(e,t.focus);if(n.removeAllRanges(),typeof n.setBaseAndExtent=="function"){n.setBaseAndExtent(r.node,r.offset,a.node,a.offset);return}const i=document.createRange(),c=t.anchor<=t.focus,u=c?r:a,h=c?a:r;i.setStart(u.node,u.offset),i.setEnd(h.node,h.offset),n.addRange(i)}function Nl(e,t){Po(e,{anchor:t,focus:t})}function no(e){document.execCommand("insertText",!1,e)}function Tl(e){return e==="plus"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg>':e==="bot"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 8V4H8"></path><rect width="16" height="12" x="4" y="8" rx="2"></rect><path d="M2 14h2"></path><path d="M20 14h2"></path><path d="M15 13v2"></path><path d="M9 13v2"></path></svg>':e==="skill"?'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 7v14"></path><path d="M3 18a1 1 0 0 1-1-1V5a2 2 0 0 1 2-2h5a3 3 0 0 1 3 3v15a3 3 0 0 0-3-3Z"></path><path d="M21 18a1 1 0 0 0 1-1V5a2 2 0 0 0-2-2h-5a3 3 0 0 0-3 3v15a3 3 0 0 1 3-3Z"></path></svg>':'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="8" height="8" x="3" y="3" rx="2"></rect><path d="M7 11v4a2 2 0 0 0 2 2h4"></path><rect width="8" height="8" x="13" y="13" rx="2"></rect></svg>'}function Rl(){return'<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="composer-invocation-clear" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg>'}function so(e){const t=document.createElement("span");t.className="composer-invocation-pill",t.contentEditable="false",t.dataset.inlineToken="true";const n=document.createElement("button");n.type="button",n.className="composer-invocation-remove",n.setAttribute("aria-label",`Remove ${e.label}`),n.addEventListener("mousedown",i=>i.preventDefault()),n.addEventListener("click",i=>{i.preventDefault(),e.onRemove()});const r=document.createElement("span");r.className="composer-invocation-icon",r.setAttribute("aria-hidden","true"),r.innerHTML=Tl(e.icon),n.append(r),n.insertAdjacentHTML("beforeend",Rl());const a=document.createElement("span");return a.className="composer-invocation-label",a.textContent=e.label,t.append(n,a),t}function Il(e){return e.provider==="github"?Rr("github"):ua}function Pl(e){const t=document.createElement("span");t.className=`composer-repo-link ${e.provider}`,t.contentEditable="false",t.dataset.inlineRepoLink="true",t.dataset.repoUrl=e.url,t.dataset.repoProvider=e.provider,t.setAttribute("aria-label",`${e.provider==="github"?"GitHub":"OpenPond"} repository ${e.label}`),t.title=e.url;const n=document.createElement("img");n.className="composer-repo-link-icon",n.src=Il(e),n.alt="",n.draggable=!1;const r=document.createElement("span");return r.className="composer-repo-link-label",r.textContent=e.label,t.append(n,r),t}function _l(e){return Rr(e)}function $l(e){const t=document.createElement("span");t.className=`composer-connected-app-mention ${e.provider}`,t.contentEditable="false",t.dataset.inlineConnectedAppMention="true",t.dataset.connectedMentionText=e.text,t.dataset.connectedMentionProvider=e.provider,t.setAttribute("aria-label",`${e.label} connected app mention ${e.displayText}`),t.title=e.detail;const n=document.createElement("img");n.className="composer-connected-app-mention-icon",n.src=_l(e.provider),n.alt="",n.draggable=!1;const r=document.createElement("span");return r.className="composer-connected-app-mention-label",r.textContent=e.displayText,t.append(n,r),t}function Ll(e,t){const n=bl(e);return t===null?n:n.filter(r=>t<=r.start||t>=r.end)}function Ol(e,t,n){const r=ca(e,t);return n===null?r:r.filter(a=>n<=a.start||n>=a.end)}function _o(e,t,n){const r=[...Ll(e,t).map(c=>({end:c.end,kind:"repo",link:c,start:c.start})),...Ol(e,n,t).map(c=>({end:c.end,kind:"connected-app",mention:c,start:c.start}))].sort((c,u)=>c.start-u.start||u.end-c.end),a=[];let i=0;for(const c of r)c.start<i||(a.push(c),i=c.end);return a}function Dl(e,t,n){return _o(e,t,n).map(r=>r.kind==="repo"?`${r.start}:${r.end}:repo:${r.link.provider}:${r.link.label}:${r.link.url}`:`${r.start}:${r.end}:connected-app:${r.mention.provider}:${r.mention.text}:${r.mention.displayText}`).join("|")}function zl(e,t,n,r){const a=$n(n,t),i=_o(t,a,r);let c=!1;function u(g){g&&e.append(document.createTextNode(g))}function h(g,y){if(!n||a===null||c||a<g||a>y){u(t.slice(g,y));return}u(t.slice(g,a)),e.append(so(n)),c=!0,u(t.slice(a,y))}e.replaceChildren();let f=0;for(const g of i)h(f,g.start),g.kind==="repo"?e.append(Pl(g.link)):e.append($l(g.mention)),f=g.end;h(f,t.length),n&&!c&&e.append(so(n))}const Fl=o.forwardRef(function({connectedAppMentions:t=[],disabled:n,onCursorChange:r,onKeyDown:a,onPasteFiles:i,onPasteTextAsAttachment:c,onPromptChange:u,onTokenPositionChange:h,placeholder:f,prompt:g,token:y},m){const p=o.useRef(null),v=`${y?`${y.key}:${$n(y,g)??0}`:"none"}|${Dl(g,$n(y,g),t)}`,N=o.useRef(null),j=g.length===0&&!y;o.useImperativeHandle(m,()=>({get element(){return p.current},getPrompt(){const b=p.current;return b?vr(b).text:g},focusAtPromptIndex(b,_){const z=p.current;if(!z)return;const V=Al(b,y,g,_?.afterToken);z.focus(),Nl(z,V),br(z)},resize(){br(p.current)}}),[g,y]),o.useLayoutEffect(()=>{const b=p.current;if(!b)return;const _=N.current!==v;N.current=v;const z=vr(b);if(_||g===""||z.text!==g||z.tokenPosition!==$n(y,g)){const F=document.activeElement===b?Sr(b):null;zl(b,g,y,t),b.dataset.empty=g.length===0&&!y?"true":"false",F&&Po(b,F)}br(b)},[t,g,y,v]);function E(){const b=p.current;if(!b)return;const _=Sr(b)?.focus??on(b),z=vr(b),V=Zr(_,y,z.text);b.dataset.empty=z.text.length===0&&!y?"true":"false",h(z.tokenPosition),r(V),u(z.text,V)}function C(){E(),window.requestAnimationFrame(E)}function P(){const b=p.current;if(!b)return;const _=Sr(b)?.focus??on(b);r(Zr(_,y,g))}return s.jsx("div",{ref:p,className:"composer-inline-input",role:"textbox","aria-multiline":"true",contentEditable:!n,suppressContentEditableWarning:!0,"data-empty":j?"true":"false","data-placeholder":f,onBeforeInput:b=>{b.nativeEvent.inputType==="insertParagraph"&&(b.preventDefault(),no(`
|
|
3
|
-
`),C())},onInput:E,onKeyDown:b=>{a(b)},onKeyUp:P,onMouseUp:P,onPaste:b=>{b.preventDefault();const _=Array.from(b.clipboardData.files);if(_.length>0&&i){i(_);return}const z=b.clipboardData.getData("text/plain");z&&(c?.(z)||(no(z),C()))}})});function Bl(e){if(!e.saving){if(!e.prompt.trim()){e.showInfo("Add task instructions before saving a draft.");return}if(e.attachmentsCount>0){e.showInfo("Task drafts currently save instructions only. Remove attachments before saving.");return}if(e.hasSelectedInvocation){e.showInfo("Finish or remove the selected command before saving this task draft.");return}e.setSaving(!0),e.onSave(e.prompt).then(t=>{t&&e.onSaved()}).finally(()=>e.setSaving(!1))}}function ql(e,t,n,r,a,i,c){return e==="Enter"&&(t||n)&&!r&&a==="work"&&i==="chat"&&c}function Ul(e){return e.surface==="team"?"Message team":e.mode!=="start"?"Ask for follow-up changes":e.experience==="chat"?"Ask anything":"What should we work on? Ctrl Enter to save as draft"}function ro(e){const t=e.implementation?.type;return t==="openpond-agent"||t==="local-profile-agent"||t==="openpond-profile-action"&&(e.sourceActionId==="chat"||e.id==="chat"||e.id.endsWith(".chat"))}function Hl(e){return e.kind==="command"?`command:${e.command.id}`:e.kind==="app-context"?`app-context:${e.app.id}`:e.kind==="skill"?`skill:${e.skill.name}`:`action:${e.action.id}`}function Vl(e){return e.kind==="command"?`${e.command.command} ${e.command.label}`:e.kind==="app-context"?e.app.name:e.kind==="skill"?qs(e.skill):Ir(e.action)}function Gl(e){return e.kind==="command"?ma(e.command):e.kind==="app-context"?`Planning context${e.app.description?`: ${e.app.description}`:e.app.gitRepo?`: ${e.app.gitRepo}`:""}`:e.kind==="skill"?e.skill.description||e.skill.path:e.action.description||ha(e.action)}function Wl(e){return e.kind==="app"?`app:${e.app.id}`:e.kind==="connected-app"?`connected-app:${e.app.provider}`:e.kind==="team-member"?`team-member:${e.member.userId}`:e.kind==="skill"?`skill:${e.skill.name}`:`action:${e.action.id}`}function Xl(e){return e.kind==="app"?e.app.name:e.kind==="connected-app"?e.app.label:e.kind==="team-member"?e.member.name:e.kind==="skill"?qs(e.skill):fa(e.action)}function Kl(e){if(e.kind==="action")return pa(e.action);if(e.kind==="connected-app")return e.app.detail;if(e.kind==="team-member")return e.member.handle?`@${e.member.handle}`:"Team member";if(e.kind==="skill")return e.skill.description||e.skill.path;const t=e.app.sandboxActionRegistry?.actions.map(n=>n.name)??[];return t.length>0?`Actions: ${t.slice(0,4).join(", ")}${t.length>4?` +${t.length-4}`:""}`:e.app.sandboxManifestError?"Manifest registry unavailable":e.app.description||e.app.gitRepo||e.app.id}function Ql(e){return e.kind==="files"?"files":e.kind==="folder"?"folder":e.kind==="slash"?`slash:${Hl(e.item)}`:`mention:${Wl(e.item)}`}function $o(e){return e.kind==="files"?"Files and folders":e.kind==="folder"?"Local folder":e.kind==="slash"?Vl(e.item):Xl(e.item)}function Lo(e){return e.kind==="files"?"Attach images, documents, or other files":e.kind==="folder"?"Share a bounded folder as Work input":e.kind==="slash"?Gl(e.item):Kl(e.item)}function Jl(e,t){const n=t.toLowerCase().split(/\s+/).filter(Boolean);if(n.length===0)return!0;const r=`${$o(e)} ${Lo(e)}`.toLowerCase();return n.every(a=>r.includes(a))}function Yl(e,t){const n=t.trimStart(),r=n.startsWith("/")?"slash":n.startsWith("@")?"mentions":null,a=r?n.slice(1).trimStart():n,i=r?e.filter(h=>h.id===r||h.queryScope===r||h.queryScopes?.includes(r)):e;if(!a)return i;const c=i.map(h=>({...h,items:h.items.filter(f=>Jl(f,a))})).filter(h=>h.items.length>0);return c.length>0?c:[{...(r?i[0]:null)??{id:"results",label:"Results"},emptyLabel:r==="slash"?"No slash commands match":r==="mentions"?"No mentions match":"No commands match",items:[]}]}function Zl(e){if(e.kind==="files")return s.jsx(Wr,{size:14});if(e.kind==="folder")return s.jsx(Wr,{size:14});if(e.kind==="slash"){const n=e.item;return n.kind==="command"?n.command.id==="agent"?s.jsx(pr,{size:14}):n.command.id==="skill"?s.jsx(da,{size:14}):s.jsx(gr,{size:14}):n.kind==="app-context"?s.jsx(Gr,{size:14}):n.kind==="skill"?s.jsx(Fs,{size:14}):ro(n.action)?s.jsx(pr,{size:14}):s.jsx(gr,{size:14})}const t=e.item;return t.kind==="connected-app"?s.jsx("img",{alt:"",className:"composer-provider-mention-icon",draggable:!1,src:Rr(t.app.provider)}):t.kind==="action"?ro(t.action)?s.jsx(pr,{size:14}):s.jsx(gr,{size:14}):t.kind==="skill"?s.jsx(Fs,{size:14}):s.jsx(Gr,{size:14})}function ec(e){if(e.kind==="slash"&&e.item.kind==="app-context"||e.kind==="mention"&&e.item.kind==="app")return e.item.app.id}function _r({ariaLabel:e,className:t="",id:n,menuIndex:r,menuRef:a,onSelect:i,onSelectIndex:c,sections:u,style:h,variant:f}){const g=o.useRef(null),y=u.reduce((p,S)=>p+S.items.length,0);o.useEffect(()=>{if(f==="add"&&r===0){const p=g.current?.closest(".composer-command-menu");p&&(p.scrollTop=0);return}g.current?.scrollIntoView({block:"nearest"})},[y,r,f]);let m=0;return s.jsx("div",{ref:a,id:n,className:`composer-project-menu composer-slash-menu ${t} composer-command-menu composer-command-menu-${f}`.trim(),role:f==="add"?"menu":"listbox","aria-label":e,style:h,children:u.map(p=>{const S=m;return m+=p.items.length,s.jsxs("div",{className:`composer-command-section ${p.grid?"composer-command-section-grid":""}`.trim(),role:"group","aria-label":p.label,children:[s.jsx("div",{className:"composer-command-section-title",children:p.label}),p.items.length>0?p.items.map((v,N)=>{const j=S+N,E=j===r;return s.jsxs("button",{type:"button",role:f==="add"?"menuitem":"option",ref:E?g:void 0,"aria-selected":f==="typed"?E:void 0,className:`composer-project-option ${E?"selected":""} composer-command-option`,"data-app-context-id":ec(v),onFocus:()=>c(j),onMouseEnter:()=>c(j),onMouseDown:C=>{C.preventDefault()},onClick:()=>i(v),children:[Zl(v),s.jsxs("span",{children:[s.jsx("strong",{children:$o(v)}),s.jsx("small",{children:Lo(v)})]}),f==="typed"&&E?s.jsx(Ct,{size:14}):s.jsx("span",{"aria-hidden":"true"})]},Ql(v))}):s.jsx("div",{className:"composer-menu-empty",children:p.emptyLabel??"No items available"})]},p.id)})})}function tc({mentionIndex:e,items:t,onSelect:n,onSelectIndex:r,style:a}){return s.jsx(_r,{ariaLabel:"Mentions",className:"composer-mention-menu",menuIndex:e,sections:[{emptyLabel:"No matching mentions",id:"mentions",items:t.map(i=>({kind:"mention",item:i})),label:"@"}],style:a,variant:"typed",onSelect:i=>{i.kind==="mention"&&n(i.item)},onSelectIndex:r})}function Oo(){return!!(navigator.mediaDevices&&typeof AudioContext<"u")}async function nc(e={}){if(!Oo())throw new Error("Voice recording is not available in this browser.");const t=await navigator.mediaDevices.getUserMedia({audio:{autoGainControl:!0,channelCount:1,echoCancellation:!0,noiseSuppression:!0}}),n=new AudioContext,r=n.createMediaStreamSource(t),a=n.createScriptProcessor(4096,1,1),i=n.createGain();i.gain.value=0;const c={audioContext:n,chunks:[],processor:a,silentGain:i,source:r,stream:t,startedAt:performance.now(),stopped:!1,onAudioLevel:e.onAudioLevel};return a.onaudioprocess=u=>{if(c.stopped)return;const h=u.inputBuffer.getChannelData(0);c.chunks.push(new Float32Array(h)),c.onAudioLevel?.(sc(h))},r.connect(a),a.connect(i),i.connect(n.destination),{stop:()=>oo(c,!0),cancel:()=>oo(c,!1).then(()=>{})}}function sc(e){if(e.length===0)return 0;let t=0;for(const r of e)t+=r*r;const n=Math.sqrt(t/e.length);return Math.min(1,Math.pow(n*5,.6))}async function oo(e,t){if(e.stopped)return{blob:new Blob([],{type:"audio/wav"}),durationMs:0,sampleRate:e.audioContext.sampleRate};e.stopped=!0,e.processor.disconnect(),e.silentGain.disconnect(),e.source.disconnect();for(const a of e.stream.getTracks())a.stop();await e.audioContext.close().catch(()=>{});const n=Math.max(0,performance.now()-e.startedAt);if(!t)return{blob:new Blob([],{type:"audio/wav"}),durationMs:n,sampleRate:e.audioContext.sampleRate};const r=rc(e.chunks);if(r.length===0)throw new Error("No microphone audio was captured.");return{blob:oc(r,e.audioContext.sampleRate),durationMs:n,sampleRate:e.audioContext.sampleRate}}function rc(e){const t=e.reduce((a,i)=>a+i.length,0),n=new Float32Array(t);let r=0;for(const a of e)n.set(a,r),r+=a.length;return n}function oc(e,t){const a=e.length*2,i=new ArrayBuffer(44+a),c=new DataView(i);Ps(c,0,"RIFF"),c.setUint32(4,36+a,!0),Ps(c,8,"WAVE"),Ps(c,12,"fmt "),c.setUint32(16,16,!0),c.setUint16(20,1,!0),c.setUint16(22,1,!0),c.setUint32(24,t,!0),c.setUint32(28,t*1*2,!0),c.setUint16(32,2,!0),c.setUint16(34,16,!0),Ps(c,36,"data"),c.setUint32(40,a,!0);let u=44;for(const h of e){const f=Math.max(-1,Math.min(1,h));c.setInt16(u,f<0?f*32768:f*32767,!0),u+=2}return new Blob([i],{type:"audio/wav"})}function Ps(e,t,n){for(let r=0;r<n.length;r+=1)e.setUint8(t+r,n.charCodeAt(r))}const Nr=96,Do=Array.from({length:Nr},()=>0);function os(){return[...Do]}function ac(e,t){return[...e.slice(-95),Math.max(0,Math.min(1,t))]}function ic({levels:e}){const t=o.useMemo(()=>e.length>=Nr?e.slice(-Nr):[...Do.slice(e.length),...e],[e]);return s.jsx("span",{className:"voice-recording-waveform",role:"img","aria-label":"Live microphone level",children:t.map((n,r)=>s.jsx("span",{className:"voice-recording-bar",style:{"--voice-level":n},"aria-hidden":"true"},r))})}const lc=12e4,zo="openpond.voice.setupNoticeAcknowledged",cc="Voice dictation runs locally with whisper.cpp. OpenPond uses a local whisper-cli binary and downloads the voice model on first use.";function ao({connection:e,buttonClassName:t,wrapperClassName:n="",disabled:r=!1,iconSize:a=16,language:i="en",onActiveChange:c,showToast:u,onTranscript:h,transcriptionChannelKey:f}){const g=o.useRef(null),y=o.useRef(null),m=o.useRef(e),p=o.useRef(r),S=o.useRef("idle"),v=o.useRef(!1),N=o.useRef(io());ga(()=>{N.current=io()}),m.current=e,p.current=r;const[j,E]=o.useState("idle"),[C,P]=o.useState(null),[b,_]=o.useState(os),z=o.useCallback(ae=>Wi(f,ae),[f]),V=o.useCallback(()=>Gi(f),[f]),F=o.useSyncExternalStore(z,V,V),se=F,xe=j==="starting",be=j==="recording",$e=be||F,ce=xe||$e;S.current=j;const X=o.useCallback(()=>{y.current!==null&&(window.clearTimeout(y.current),y.current=null)},[]),we=o.useCallback(async()=>{X();const ae=g.current;g.current=null,v.current=!1,E("idle"),_(os()),ae&&await ae.cancel().catch(()=>{})},[X]),ye=o.useCallback(async(ae,re,ke)=>{const ue=m.current;if(!ue)throw new Error("Voice input is still connecting.");const D=await De.voiceTranscriptionStatus(ue,{signal:re});if(!D.binaryPath)throw new Error(D.installHint??"Install whisper.cpp to use dictation.");const oe=await De.transcribeVoice(ue,{audioBase64:await uc(ae.blob),durationMs:Math.round(ae.durationMs),language:i,mimeType:"audio/wav"},{signal:re});re.aborted||Promise.resolve(h(oe.text,{submit:ke()})).catch(w=>{u(yr(w),"error")})},[i,h,u]),Me=o.useCallback(()=>{Mo(f),P(null),_(os())},[f]),W=o.useCallback(async(ae=!1)=>{X();const re=g.current;g.current=null,re&&(E("idle"),P(null),_(os()),Qi(f,async(ke,ue)=>{const D=await re.stop();ke.aborted||await ye(D,ke,ue)},{submit:ae}).catch(ke=>{ke instanceof DOMException&&ke.name==="AbortError"||u(yr(ke),"error")}))},[X,u,ye,f]),K=o.useCallback(async()=>{if(p.current)return;if(!m.current){P("Voice input is still connecting.");return}if(!Oo()){P("Voice recording is not available in this browser.");return}P(null),E("starting");try{if(await window.openpond?.requestMicrophoneAccess?.()===!1)throw new Error("Microphone access is denied.");const ke=await nc({onAudioLevel:ue=>{_(D=>ac(D,ue))}});if(g.current=ke,_(os()),E("recording"),v.current){v.current=!1,W(!0);return}y.current=window.setTimeout(()=>{W(!1)},lc)}catch(re){P(yr(re)),await we()}},[we,W]),I=o.useCallback(()=>{if(N.current){K();return}u(cc,"info",{actionLabel:"Continue",persistent:!0,onAction:()=>{N.current=!0,dc(),K()}})},[K,u]);return o.useEffect(()=>Xi(f,()=>g.current?(W(!0),!0):S.current==="starting"?(v.current=!0,!0):!1),[W,f]),o.useEffect(()=>{c?.(ce)},[ce,c]),o.useEffect(()=>()=>c?.(!1),[c]),o.useEffect(()=>{if(!C||be||se)return;const ae=window.setTimeout(()=>P(null),7e3);return()=>window.clearTimeout(ae)},[se,C,be]),o.useEffect(()=>()=>{we()},[we]),s.jsxs("span",{className:`voice-input-control ${n} ${xe?"starting":""} ${be?"recording":""} ${F?"transcribing":""}`.trim(),children:[$e?s.jsxs("span",{className:"voice-recording-strip",children:[s.jsx("span",{className:"sr-only",role:"status",children:F?"Transcribing audio":"Recording voice"}),s.jsx("button",{type:"button",className:"voice-recording-action cancel","aria-label":F?"Cancel transcription":"Cancel dictation",onClick:()=>{F?Me():we()},children:s.jsx(fs,{size:15})}),F?s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"voice-transcribing-label","aria-hidden":"true",children:["Transcribing",s.jsxs("span",{className:"voice-transcribing-dots",children:[s.jsx("span",{children:"."}),s.jsx("span",{children:"."}),s.jsx("span",{children:"."})]})]}),s.jsx("span",{className:"voice-recording-action-spacer","aria-hidden":"true"})]}):s.jsxs(s.Fragment,{children:[s.jsx(ic,{levels:b}),s.jsx("button",{type:"button",className:"voice-recording-action stop","aria-label":"Stop and transcribe",onClick:()=>{W(!1)},children:s.jsx(jo,{size:10,fill:"currentColor"})})]})]}):s.jsx("button",{type:"button",className:`voice-input-trigger ${t} ${xe?"starting":""}`.trim(),"aria-label":xe?"Starting dictation":"Dictate",disabled:r||se||xe,onClick:I,children:s.jsx(Ri,{size:a})}),C&&!$e?s.jsx("span",{className:"voice-input-status",role:"status",children:C}):null]})}async function uc(e){const t=new Uint8Array(await e.arrayBuffer());let n="";for(let r=0;r<t.length;r+=32768){const a=t.subarray(r,r+32768);n+=String.fromCharCode(...a)}return window.btoa(n)}function yr(e){const t=e instanceof Error?e.message:String(e);return/NotAllowedError|Permission denied|denied/i.test(t)?"Microphone access is denied.":/NotFoundError|Requested device not found/i.test(t)?"No microphone was found.":t||"Voice input failed."}function io(){if(typeof window>"u")return!1;try{return bo.getItem(zo)==="true"}catch{return!1}}function dc(){if(!(typeof window>"u"))try{bo.setItem(zo,"true")}catch{}}const fc=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible","setup-provider"]);function mc({surface:e="chat",teamUseModel:t=!1,teamUseModelLocked:n=!1,onTeamUseModelChange:r,addFiles:a,addMenuId:i,addMenuOpen:c,addMenuRef:u,busy:h,codexPermissionMode:f,codexReasoningEffort:g,connection:y,contextStatusStyle:m,contextStatusTooltipId:p,contextWindowStatus:S,disabled:v,dropdownPlacement:N,fileInputRef:j,modelValue:E,modelOptions:C=[],openPondCommandAccessMode:P,showCommandAccess:b=!0,profileTarget:_,onCodexPermissionModeChange:z,onCodexReasoningEffortChange:V,onOpenPondCommandAccessModeChange:F,onProfileTargetChange:se,onModelChange:xe,onOpenFilePicker:be,onProviderChange:$e,onProviderSetupOpen:ce,onSend:X,onStop:we,onToggleAddMenu:ye,onTranscript:Me,voiceInputChannelKey:W,provider:K,providerSettings:I,providerOptions:ae,running:re,sendDisabled:ke,sendTooltip:ue,showToast:D,stopIcon:oe="stop",stopLabel:w="Stop response"}){const[$,L]=o.useState(!1),Ue=xa(K,E,I),Te=o.useMemo(()=>hc({currentModelOptions:C,currentProvider:K,providerOptions:ae,providerSettings:I}),[C,K,ae,I]),et=o.useMemo(()=>Te.filter(O=>fc.has(O.provider)),[Te]),J=(O,st)=>{if(O===K){xe(st);return}xe(st),$e(O)};return e==="team"?s.jsxs("div",{className:`composer-primary-controls team-chat-composer-controls ${re?"has-running-turn":""}`.trim(),children:[s.jsx("button",{type:"button",className:"composer-icon","aria-label":"Add photos and files",disabled:v,onClick:be,children:s.jsx(Ln,{size:18})}),s.jsx("input",{ref:j,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:O=>{a(Array.from(O.currentTarget.files??[])),O.currentTarget.value=""}}),s.jsxs("label",{className:"team-chat-model-toggle",children:[s.jsx("input",{type:"checkbox",checked:t,disabled:h||n,onChange:O=>r?.(O.currentTarget.checked)}),s.jsx("span",{children:"Use model"})]}),s.jsx("div",{className:"composer-spacer"}),t?s.jsx(Jr,{disabled:h,model:E,modelGroups:et,placement:N,provider:K,reasoningEffort:g,showReasoning:Ue,onModelSelectionChange:J,onProviderSetupOpen:ce,onReasoningEffortChange:V}):null,s.jsx(ao,{buttonClassName:"composer-icon",connection:y,disabled:v,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:L,showToast:D,onTranscript:Me,transcriptionChannelKey:W}),s.jsx(lo,{running:re,sendDisabled:ke,sendTooltip:ue,stopIcon:oe,stopLabel:w,voiceInputActive:$,onSend:X,onStop:we})]}):s.jsxs("div",{className:`composer-primary-controls ${re?"has-running-turn":""}`.trim(),children:[s.jsxs("div",{className:"composer-add-control open-up",ref:u,children:[s.jsx("button",{type:"button",className:`composer-icon ${c?"active":""}`,"aria-label":"Add to message","aria-haspopup":"menu","aria-expanded":c,"aria-controls":c?i:void 0,disabled:v,onMouseDown:O=>O.preventDefault(),onClick:ye,children:s.jsx(Ln,{size:18})}),s.jsx("input",{ref:j,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:O=>{a(Array.from(O.currentTarget.files??[])),O.currentTarget.value=""}})]}),b&&K==="codex"?s.jsx(Fr,{compact:!0,className:"permission-select",icon:s.jsx(ba,{size:14}),placement:N,label:"Codex permissions",tooltip:Br.find(O=>O.value===f)?.label,value:f,options:Br,disabled:h,onChange:O=>z(O)}):b?s.jsx(Fr,{compact:!0,className:"permission-select",icon:s.jsx(ka,{size:14}),placement:N,label:"Command access",tooltip:qr.find(O=>O.value===(P==="disabled"?"ask":P))?.label,value:P==="disabled"?"ask":P,options:qr,disabled:h,onChange:O=>F(O)}):null,_&&se?s.jsx(Eo,{busy:h,placement:N,state:_,onChange:se}):null,s.jsx("div",{className:"composer-spacer"}),s.jsxs("span",{className:`context-status-shell ${S.tone}`,style:m,children:[s.jsx("span",{className:`composer-status ${S.tone}`,role:S.maxTokens===null?"img":"meter","aria-label":S.tooltip,"aria-describedby":p,"aria-valuemin":S.maxTokens===null?void 0:0,"aria-valuemax":S.maxTokens??void 0,"aria-valuenow":S.maxTokens===null?void 0:S.usedTokens,tabIndex:0}),s.jsxs("span",{className:"context-status-tooltip",id:p,role:"tooltip",children:[s.jsx("span",{className:"context-status-tooltip-title",children:"Context window"}),s.jsxs("span",{className:"context-status-tooltip-main",children:[s.jsx("span",{children:S.summary}),s.jsx("span",{children:S.tokensLabel})]}),S.maxTokens!==null&&s.jsx("span",{className:"context-status-tooltip-bar","aria-hidden":"true",children:s.jsx("span",{})}),S.detail?s.jsx("span",{className:"context-status-tooltip-detail",children:S.detail}):null]})]}),s.jsx(Jr,{disabled:h,model:E,modelGroups:Te,placement:N,provider:K,reasoningEffort:g,showReasoning:Ue,onModelSelectionChange:J,onProviderSetupOpen:ce,onReasoningEffortChange:V}),s.jsx(ao,{buttonClassName:"composer-icon",connection:y,disabled:v,iconSize:16,wrapperClassName:"composer-voice-input",onActiveChange:L,showToast:D,onTranscript:Me,transcriptionChannelKey:W}),s.jsx(lo,{running:re,sendDisabled:ke,sendTooltip:ue,stopIcon:oe,stopLabel:w,voiceInputActive:$,onSend:X,onStop:we})]})}function lo({running:e,sendDisabled:t,sendTooltip:n,stopIcon:r,stopLabel:a,voiceInputActive:i,onSend:c,onStop:u}){const h=e?a:n;return s.jsx("button",{type:"button",className:`send-button ${e?"stop-button":""}`.trim(),disabled:!e&&t&&!i,"data-tooltip":h,"aria-label":h,onClick:e?()=>{u()}:c,children:e?r==="pause"?s.jsx(oi,{size:15}):s.jsx(jo,{size:13,fill:"currentColor"}):s.jsx(hi,{size:18})})}function hc({currentModelOptions:e,currentProvider:t,providerOptions:n,providerSettings:r}){return n.flatMap(a=>{if(a.value==="setup-provider")return[];const i=a.value,c=i===t?e:ko(i,r);return c.length>0?[{provider:i,label:a.label,defaultModel:va(i,r),options:c}]:[]})}function pc(e){return e.description||e.path}function gc({items:e,onSelect:t,onSelectIndex:n,skillIndex:r,style:a}){const i=o.useRef(null);return o.useEffect(()=>{i.current?.scrollIntoView({block:"nearest"})},[e.length,r]),s.jsx("div",{className:"composer-project-menu composer-slash-menu composer-skill-menu",role:"listbox","aria-label":"Available skills",style:a,children:e.length>0?e.map((c,u)=>{const h=u===r;return s.jsxs("button",{type:"button",className:`composer-project-option ${h?"selected":""}`,ref:h?i:void 0,role:"option","aria-selected":h,onMouseEnter:()=>n(u),onMouseDown:f=>{f.preventDefault(),t(c)},children:[s.jsx(Fs,{size:14}),s.jsxs("span",{children:[s.jsx("strong",{children:qs(c)}),s.jsx("small",{children:pc(c)})]}),h?s.jsx(Ct,{size:14}):s.jsx("span",{"aria-hidden":"true"})]},c.name)}):s.jsx("div",{className:"composer-menu-empty",role:"option","aria-selected":"false",children:"No matching skills"})})}function xc({actionCatalogCount:e,actionIndex:t,items:n,onSelect:r,onSelectIndex:a,style:i}){return s.jsx(_r,{ariaLabel:"OpenPond agents and actions",menuIndex:t,sections:[{emptyLabel:e===0?"No matching commands or apps":"No matching commands, apps, agents, or actions",id:"slash",items:n.map(c=>({kind:"slash",item:c})),label:"/"}],style:i,variant:"typed",onSelect:c=>{c.kind==="slash"&&r(c.item)},onSelectIndex:a})}function bc({busy:e,initialDescription:t,open:n,onClose:r,onSubmit:a}){const[i,c]=o.useState(""),[u,h]=o.useState(()=>t.trim()),f=i.trim(),g=u.trim(),y=e||!f||!g;if(o.useEffect(()=>{n&&(c(""),h(t.trim()))},[t,n]),o.useEffect(()=>{if(!n||e)return;function p(S){S.key==="Escape"&&r()}return document.addEventListener("keydown",p),()=>document.removeEventListener("keydown",p)},[e,r,n]),!n)return null;async function m(){if(y)return;await a({title:f,description:g})&&(c(""),h(""))}return s.jsx("div",{className:"git-dialog-backdrop",role:"presentation",onMouseDown:e?void 0:r,children:s.jsxs("section",{className:"git-dialog submit-issue-dialog",role:"dialog","aria-modal":"true","aria-label":"Submit GitHub issue",onMouseDown:p=>p.stopPropagation(),onKeyDown:p=>{p.key!=="Enter"||!(p.target instanceof HTMLInputElement)||(p.preventDefault(),m())},children:[s.jsx("button",{className:"git-dialog-close",disabled:e,type:"button",onClick:r,children:s.jsx(fs,{size:16})}),s.jsx("div",{className:"git-dialog-icon",children:s.jsx(Sa,{size:18})}),s.jsx("h2",{children:"Submit issue"}),s.jsxs("div",{className:"git-dialog-row submit-issue-repo-row",children:[s.jsx("span",{children:"Repository"}),s.jsx("strong",{children:ya})]}),s.jsxs("label",{className:"git-dialog-field",children:[s.jsx("span",{children:"Title"}),s.jsx("input",{autoFocus:!0,disabled:e,placeholder:"Short issue title",value:i,onChange:p=>c(p.target.value)})]}),s.jsxs("label",{className:"git-dialog-field",children:[s.jsx("span",{children:"Description"}),s.jsx("textarea",{disabled:e,placeholder:"What happened, what you expected, and any useful context",value:u,onChange:p=>h(p.target.value)})]}),s.jsxs("div",{className:"git-dialog-footer",children:[s.jsx("button",{className:"git-dialog-secondary",disabled:e,type:"button",onClick:r,children:"Cancel"}),s.jsx("button",{className:"git-dialog-primary",disabled:y,type:"button",onClick:()=>{m()},children:"Submit issue"})]})]})})}const kc=new Set(["c","cc","cpp","css","go","h","html","java","js","json","jsx","mdx","php","py","rb","rs","sh","sql","toml","ts","tsx","xml","yaml","yml"]),vc=new Set(["csv","ods","tsv","xls","xlsm","xlsx"]),Sc=new Set(["7z","bz2","gz","rar","tar","tgz","xz","zip"]),yc=new Set(["doc","docx","epub","md","odt","pdf","rtf","txt"]),jc=new Set(["key","odp","ppt","pptx"]);function Fo(e){const t=e.mediaType.toLowerCase(),n=e.name.split(".").pop()?.toLowerCase()??"";return e.kind==="image"||t.startsWith("image/")?"image":t.startsWith("audio/")?"audio":t.startsWith("video/")?"video":vc.has(n)||t.includes("spreadsheet")||t.includes("excel")?"spreadsheet":Sc.has(n)||t.includes("zip")||t.includes("compressed")?"archive":jc.has(n)||t.includes("presentation")||t.includes("powerpoint")?"presentation":kc.has(n)?"code":e.kind==="text"||yc.has(n)||t.startsWith("text/")||t==="application/pdf"||t.includes("document")||t.includes("msword")?"document":"file"}function Cc(e){if(e.mediaType.toLowerCase()==="application/pdf")return"PDF";const t=Fo(e);return t==="spreadsheet"?"Spreadsheet":t.charAt(0).toUpperCase()+t.slice(1)}function wc(e){return`${e.toLocaleString()} ${e===1?"line":"lines"}`}const Mc={archive:li,audio:ji,code:ii,document:Fs,file:ai,image:Ni,presentation:_i,spreadsheet:wi,video:Ei};function Ec({attachment:e,...t}){const n=Mc[Fo(e)];return s.jsx(n,{...t})}const Ac=new Set(["csv","css","html","js","json","jsx","log","md","mdx","py","sql","svg","ts","tsx","txt","xml","yaml","yml"]),Nc=2e3,Tc=/^Pasted text(?: (\d+))?\.txt$/;function Rc(e,t){if(e.length<Nc)return null;const n=new Set;for(const i of t){const c=Tc.exec(i.name);c&&n.add(c[1]?Number(c[1]):1)}let r=1;for(;n.has(r);)r+=1;const a=r===1?"Pasted text.txt":`Pasted text ${r}.txt`;return new File([e],a,{type:"text/plain"})}function Ic({attachment:e,onRemove:t}){const[n,r]=o.useState(null);o.useEffect(()=>{if(e.kind!=="text")return;let i=!1;return e.file.text().then(c=>{i||r(Co(c))},()=>{}),()=>{i=!0}},[e.file,e.kind]);const a=e.kind!=="image";return s.jsxs("div",{className:`composer-attachment-card ${e.kind}`,children:[s.jsx("div",{className:"composer-attachment-thumb","aria-hidden":"true",children:e.previewUrl?s.jsx("img",{alt:"",decoding:"async",src:e.previewUrl}):s.jsx(Ec,{attachment:e,size:22})}),a?s.jsxs("div",{className:"composer-attachment-meta",children:[s.jsx("strong",{children:e.name}),s.jsx("span",{children:e.kind==="text"&&n!==null?wc(n):Cc(e)})]}):null,s.jsx("button",{type:"button",className:"composer-attachment-remove","aria-label":`Remove ${e.name}`,onClick:t,children:s.jsx(fs,{size:14})})]})}function Pc(){return globalThis.crypto?.randomUUID?.()??`attachment-${Date.now()}-${Math.random().toString(36).slice(2)}`}function _c(e){if(e.type.startsWith("image/"))return"image";if(e.type.startsWith("text/"))return"text";const t=e.name.split(".").pop()?.toLowerCase()??"";return Ac.has(t)?"text":"file"}async function $c(e){const[t,n]=await Promise.all([Oc(e.file),e.kind==="text"?Dc(e.file):Promise.resolve(void 0)]);return{id:e.id,name:e.name,mediaType:e.mediaType,sizeBytes:e.sizeBytes,kind:e.kind,...n!==void 0?{lineCount:Co(n)}:{},...e.relativePath?{relativePath:e.relativePath}:{},contentsBase64:t,...n?{text:zc(n)}:{}}}function Lc(e){const t=["KB","MB","GB"];let n=e/1024;for(const r of t){if(n<1024)return`${n.toFixed(n>=10?0:1)} ${r}`;n/=1024}return`${n.toFixed(0)} TB`}function Oc(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>{const a=typeof r.result=="string"?r.result:"",[,i=""]=a.split(",",2);t(i)},r.onerror=()=>n(r.error??new Error("Failed to read file")),r.readAsDataURL(e)})}function Dc(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>t(typeof r.result=="string"?r.result:""),r.onerror=()=>n(r.error??new Error("Failed to read file")),r.readAsText(e)})}function zc(e){if(e.length<=Ft.maxTextChars)return e;const t=`
|
|
4
|
-
[attachment text truncated]`;return`${e.slice(0,Math.max(0,Ft.maxTextChars-t.length))}${t}`}function Fc(){const e=o.useRef([]),t=o.useRef([]),n=o.useRef(!1),[r,a]=o.useState([]),[i,c]=o.useState(null);o.useEffect(()=>{e.current=r},[r]),o.useEffect(()=>()=>{n.current=!0;for(const m of e.current)as(m);for(const m of t.current)as(m)},[]);const u=o.useCallback(m=>{if(m.length===0)return;const p=Math.max(0,Ft.maxAttachments-r.length),S=[];let v=0,N=0;for(const j of m){if(j.size>Ft.maxAttachmentBytes){v+=1;continue}if(S.length>=p){N+=1;continue}const E="webkitRelativePath"in j&&typeof j.webkitRelativePath=="string"&&j.webkitRelativePath.trim()?j.webkitRelativePath.trim():void 0;S.push({id:Pc(),file:j,name:j.name||"Untitled file",mediaType:j.type||"application/octet-stream",sizeBytes:j.size,kind:_c(j),...E?{relativePath:E}:{},...j.type.startsWith("image/")?{previewUrl:URL.createObjectURL(j)}:{}})}if(S.length>0&&(a([...r,...S]),c(null)),v>0||N>0){const j=[];v>0&&j.push(`${v} file${v===1?"":"s"} exceeded ${Lc(Ft.maxAttachmentBytes)}`),N>0&&j.push(`maximum ${Ft.maxAttachments} attachments`),c(j.join("; "))}},[r]),h=o.useCallback(m=>{a(p=>{const S=p.find(N=>N.id===m);S&&as(S);const v=p.filter(N=>N.id!==m);return v.length===0&&c(null),v})},[]),f=o.useCallback(()=>{for(const m of e.current)as(m);e.current=[],a([]),c(null)},[]),g=o.useCallback(()=>{const m=e.current;return m.length===0||(e.current=[],t.current=m,a([]),c(null)),m},[]),y=o.useCallback((m,p)=>{if(m.length===0)return;const S=new Set(m.map(v=>v.id));if(t.current=t.current.filter(v=>!S.has(v.id)),p==="restore"&&!n.current){a(v=>{const N=new Set(v.map(E=>E.id)),j=[...m.filter(E=>!N.has(E.id)),...v];return e.current=j,j});return}for(const v of m)as(v)},[]);return{attachmentError:i,attachments:r,addFiles:u,clearAttachments:f,removeAttachment:h,settleStagedAttachments:y,setAttachmentError:c,stageAttachmentsForSubmit:g}}function as(e){e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}function Bc(e,t){const n=e.slice(0,Math.max(0,Math.min(t,e.length))),r=/(?:^|\s)\/([a-zA-Z0-9_-]*)$/.exec(n);if(!r||typeof r.index!="number")return null;const a=r[0].lastIndexOf("/");if(a<0)return null;const i=r.index+a;return{end:n.length,query:(r[1]??"").toLowerCase(),start:i}}function qc(e,t,n=Pr){const r=e.slice(0,Math.max(0,Math.min(t,e.length))),a=/(?:^|\s)\/([a-z][a-z0-9_-]*)\s$/.exec(r);if(!a)return null;const i=n.find(u=>u.id===a[1]);if(!i)return null;const c=a[0].lastIndexOf("/");return c<0||typeof a.index!="number"?null:{command:i,end:r.length,start:a.index+c}}function Uc(e,t=Pr){return Ca({commands:t,prompt:`/${e}`})}function co(e,t){return e.length===0?[]:e.filter(n=>t?[n.id,n.name??"",n.label??"",n.description??"",typeof n.implementation?.type=="string"?n.implementation.type:""].join(" ").toLowerCase().includes(t):!0)}function uo(e,t){return e.length===0?[]:e.filter(n=>t?[n.id,n.name,n.description??"",n.gitRepo??"",vo(n)].join(" ").toLowerCase().includes(t):!0).slice(0,8)}function fo({actionCatalog:e,connectedAppMentions:t,mentionApps:n,profileSkills:r,query:a,surface:i,teamMentionMembers:c}){const u=a.toLowerCase();if(i==="team"){const m=c.filter(S=>u?[S.name,S.handle??""].map(In).some(v=>v.includes(u)):!0).map(S=>({kind:"team-member",member:S}));return[...Ur(e,u,e.length).map(S=>({kind:"action",action:S})),...m]}const h=n.filter(m=>u?[In(m.id),In(m.name),m.gitRepo?In(m.gitRepo):"",vo(m)].some(S=>S.includes(u)):!0).map(m=>({kind:"app",app:m})),f=Ur(e,u,e.length).map(m=>({kind:"action",action:m})),g=Ls(r,u).map(m=>({kind:"skill",skill:m})),y=ja(t,u).map(m=>({kind:"connected-app",app:m}));return[...f,...g,...h,...y]}function Hc(e,t,n){const r=t?.trim();if(!r)return e;const a=Math.max(0,Math.min(n??0,e.length)),i=e.slice(0,a),c=e.slice(a),u=i&&!/\s$/.test(i)?" ":"",h=c&&!/^\s/.test(c)?" ":"";return`${i}${u}${r}${h}${c}`.replace(/\s+/g," ").trim()}function Vc(e){const t=In(Ir(e)||e.name||e.id);return t?`@${t}`:null}function Gc(e){const t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return e;try{const n=JSON.parse(t);if(!n||Array.isArray(n)||typeof n!="object")return e;const r=Object.entries(n).filter(([,a])=>a!=null&&a!=="").map(([a,i])=>`${Bo(a)}: ${Tr(a,i)}`);return r.length?r.join(" · "):e}catch{return e}}function Bo(e){const t=e.replace(/Id$/,"").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replaceAll("_"," ").trim().toLowerCase();return t?`${t[0].toUpperCase()}${t.slice(1)}`:"Input"}function Tr(e,t){if(Array.isArray(t))return t.map(r=>Tr(e,r)).join(", ");if(t&&typeof t=="object")return Object.entries(t).map(([r,a])=>`${Bo(r)}: ${Tr(r,a)}`).join(" · ");const n=String(t);return/Id$/.test(e)&&/^[a-z0-9_-]+$/i.test(n)?n.split(/[-_]+/).filter(Boolean).map(r=>`${r[0].toUpperCase()}${r.slice(1)}`).join(" "):n}function Wc({action:e,prompt:t,selectedActionMentionText:n,selectedInvocationPosition:r}){if(!e)return null;const a=n?.trim(),i=a?.startsWith("@")?a:Vc(e);return i?Hc(Gc(t),i,r):null}function Xc({attachmentCount:e,prompt:t,selectedAction:n,selectedCommand:r}){return!!(t.trim()||e>0||n||r)}const Kc=new Set(["openpond-agent-authoring","openpond-skill-authoring","openpond-taskset-authoring","openpond-refiner-authoring"]);function Qc({activeMentionKey:e,activeSkillKey:t,activeSlashKey:n,addMenuIndex:r,addMenuItems:a,addMenuOpen:i,addMenuPanelRef:c,addMenuRef:u,attachmentCount:h,composerRef:f,createImproveActive:g,goalRuntimeActive:y,inputRef:m,inputShellRef:p,mentionQuery:S,prompt:v,selectedActionId:N,selectAddMenuItem:j,setActionIndex:E,setActionMenuDismissedPrompt:C,setAddMenuIndex:P,setAddMenuOpen:b,setAddMenuQuery:_,setMentionMenuDismissedPrompt:z,setMentionIndex:V,setSkillIndex:F,setSkillMenuDismissedPrompt:se,skillMatchCount:xe,skillQuery:be,slashMatchCount:$e,slashQuery:ce,showActionMenu:X,showMentionMenu:we,showSkillMenu:ye}){const[Me,W]=o.useState({}),[K,I]=o.useState({}),[ae,re]=o.useState({}),[ke,ue]=o.useState({});return o.useEffect(()=>{V(0)},[S]),o.useEffect(()=>{F(0)},[xe,be]),o.useEffect(()=>{E(0)},[$e,ce]),o.useEffect(()=>{const D=m.current?.element,oe=D?.parentElement;if(!D||!oe||typeof ResizeObserver>"u")return;const w=new ResizeObserver(()=>m.current?.resize());return w.observe(oe),()=>w.disconnect()},[]),o.useEffect(()=>{if(!i)return;function D(w){const $=w.target,L=m.current?.element?.parentElement;!u.current?.contains($)&&!c.current?.contains($)&&!L?.contains($)&&(b(!1),_(""),z(e),C(n),se(t))}function oe(w){if(w.key==="Escape"){w.preventDefault(),b(!1),_(""),z(e),C(n),se(t);return}if(a.length!==0){if(w.key==="ArrowDown"){w.preventDefault(),P($=>($+1)%a.length);return}if(w.key==="ArrowUp"){w.preventDefault(),P($=>($-1+a.length)%a.length);return}if(w.key==="Home"){w.preventDefault(),P(0);return}if(w.key==="End"){w.preventDefault(),P(a.length-1);return}if(w.key==="Enter"){w.preventDefault();const $=a[r]??a[0];$&&j($)}}}return document.addEventListener("pointerdown",D),document.addEventListener("keydown",oe),()=>{document.removeEventListener("pointerdown",D),document.removeEventListener("keydown",oe)}},[e,t,n,r,a,i]),o.useLayoutEffect(()=>{if(!i)return;const D=p.current;if(!D)return;const oe=D;function w(){ue(Cl(oe))}return w(),window.addEventListener("resize",w),window.addEventListener("scroll",w,!0),()=>{window.removeEventListener("resize",w),window.removeEventListener("scroll",w,!0)}},[i,h,g,y]),o.useLayoutEffect(()=>{if(!X)return;const D=m.current?.element,oe=f.current;if(!D||!oe)return;const w=D,$=oe;function L(){re(kr(w,$))}return L(),window.addEventListener("resize",L),window.addEventListener("scroll",L,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",L,!0)}},[h,g,y,v,N,X]),o.useLayoutEffect(()=>{if(!ye)return;const D=m.current?.element,oe=f.current;if(!D||!oe)return;const w=D,$=oe;function L(){I(kr(w,$))}return L(),window.addEventListener("resize",L),window.addEventListener("scroll",L,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",L,!0)}},[h,g,y,v,N,ye]),o.useLayoutEffect(()=>{if(!we)return;const D=m.current?.element,oe=f.current;if(!D||!oe)return;const w=D,$=oe;function L(){W(kr(w,$))}return L(),window.addEventListener("resize",L),window.addEventListener("scroll",L,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",L,!0)}},[h,g,y,v,N,we]),{actionMenuStyle:ae,addMenuStyle:ke,mentionMenuStyle:Me,skillMenuStyle:K}}const Jc=o.lazy(()=>me(()=>import("./ComposerCreateImproveStrip-C4mCZcKl.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url).then(e=>({default:e.ComposerCreateImproveStrip}))),Yc=Pr.find(e=>e.id==="submit-issue"),Zc=[];function eu({experience:e="development",mode:t,surface:n="chat",teamUseModel:r=!1,teamUseModelLocked:a=!1,teamMentionMembers:i=[],onTeamUseModelChange:c,prompt:u,composeNotice:h=null,mentionApps:f=[],connectedAppMentions:g=[],profileSkills:y=[],selectedMentionAppId:m=null,contextWindowStatus:p,goalRuntime:S=null,subagentRuntime:v=null,createImproveRuntime:N=null,busy:j,running:E=j,interruptRunningTurnBeforeSteer:C=!0,steerActiveResponses:P=!1,submissionScopeKey:b="default",getCurrentSubmissionScopeKey:_,voiceInputChannelKey:z=b,initialSteerDrafts:V=Zc,showProjectFooter:F=!0,autoFocus:se=!1,focusRequestId:xe=0,attachmentRequest:be=null,connection:$e,providerSettings:ce=null,provider:X,model:we,projectTarget:ye,profileTarget:Me=null,actionCatalog:W=[],requestedAction:K=null,workspaceTarget:I,codexPermissionMode:ae,codexReasoningEffort:re,openPondCommandAccessMode:ke,onProviderChange:ue,onProviderSetupOpen:D,onProjectTargetChange:oe,onProfileTargetChange:w,onWorkspaceTargetChange:$,onModelChange:L,onCodexPermissionModeChange:Ue,onCodexReasoningEffortChange:Te,onOpenPondCommandAccessModeChange:et,onPromptChange:J,onMentionAppSelect:O,onSaveTaskDraft:st,showToast:Ee,onSubmit:wt,onStop:Bt,onPauseGoal:Ie}){const mt=o.useRef(null),an=o.useRef(null),de=o.useRef(null),k=o.useRef(null),T=o.useRef(null),ie=o.useRef(null),Ce=o.useRef(null),q=o.useRef(0),Ne=K&&W.some(l=>l.id===K.actionId)?K:null,pe=o.useRef(!1),Ke=o.useRef(0),Le=o.useRef(Ne?.requestId??0),ht=o.useRef(new Set),[Y,ve]=o.useState(u.length),Mt=o.useRef(Y);Mt.current=Y;const[qt,Et]=o.useState(0),[ms,ln]=o.useState(0),[hs,cn]=o.useState(0),[ps,Ut]=o.useState(0),[gs,At]=o.useState(""),[Hs,Pe]=o.useState(null),[Vs,pt]=o.useState(null),[Nt,Tt]=o.useState(null),[ge,Rt]=o.useState(!1),[un,Gs]=o.useState(!1),[rt,Qe]=o.useState(Ne?.actionId??null),[It,ot]=o.useState(null),[Pt,He]=o.useState(null),[Ws,at]=o.useState(null),[On,dn]=o.useState(null),[Dn,fn]=o.useState(!1),[mn,zn]=o.useState(()=>({[b]:V})),[Ht,hn]=o.useState(null),[Fn,Vt]=o.useState(!1),[Bn,qn]=o.useState(""),[Gt,tt]=o.useState(!1),{attachmentError:Z,attachments:_e,addFiles:ze,removeAttachment:xs,settleStagedAttachments:bs,setAttachmentError:it,stageAttachmentsForSubmit:Je}=Fc(),Ye=o.useRef(0);o.useEffect(()=>{!be||Ye.current===be.id||(Ye.current=be.id,ze([be.file]))},[ze,be]);const Wt=o.useCallback(l=>{const d=Rc(l,_e);return!d||_e.length>=Ft.maxAttachments||d.size>Ft.maxAttachmentBytes?!1:(ze([d]),!0)},[ze,_e]),Xs=Ul({experience:e,mode:t,surface:n}),gt=e==="development"||e==="work"&&ye.value!=="none",Ks=wa(X,we,ce),_t="top",Un=o.useId(),Qs=o.useId(),Js=o.useId(),Ys={"--context-fill":`${Math.round((p.percent??0)/100*360)}deg`,"--context-bar-fill":`${p.percent??0}%`},je=o.useMemo(()=>W.find(l=>l.id===rt)??null,[W,rt]),lt=o.useMemo(()=>Ma(X,e),[e,X]),Ve=o.useMemo(()=>gt?y:y.filter(l=>!Kc.has(l.name)),[e,y]),Se=o.useMemo(()=>lt.find(l=>l.id===It)??null,[lt,It]),Xt=Wc({action:je,prompt:u,selectedActionMentionText:Ws,selectedInvocationPosition:Pt}),Zs=Xc({attachmentCount:_e.length,prompt:u,selectedAction:je,selectedCommand:Se}),er=o.useMemo(()=>{const l=Math.max(0,Math.min(Pt??0,u.length));return Se?{icon:Se.id==="agent"?"plus":Se.id==="skill"?"skill":"workflow",key:`command:${Se.id}`,label:Se.id==="agent"?"Author Agent":Se.id,position:l,onRemove:()=>{ot(null),He(null),at(null)}}:je?{icon:je.implementation?.type==="openpond-agent"?"bot":"workflow",key:`action:${je.id}`,label:Ir(je),position:l,onRemove:()=>{Qe(null),He(null),at(null)}}:null},[u.length,je,Se,Pt]),Kt=On===b,ks=Kt||!Zs,tr=Kt?"Preparing files":E?"Steer":"Send",ct=Kt,nr=Kt;function pn(l=b){const d=ht.current;return d.has(l)?!1:(d.add(l),!0)}function xt(l){ht.current.delete(l)}function vs(l){return ht.current.has(l)}function Qt(){return vs(b)}function bt(l){dn(d=>d===l?null:d)}const Ss=o.useMemo(()=>{const l=Ea(ce,{enabledOnly:!0}).map(U=>({...U,description:void 0})),d=gt?l:l.filter(U=>U.value!=="codex"),A=I.value==="cloud"&>?d.filter(U=>U.value==="openpond"):d,M=A.some(U=>U.value===X)?A:[{value:X,label:Aa(X,ce),description:"Current"},...A],G={value:"setup-provider",label:"New Model/Provider",icon:"plus",separatorBefore:!0};return[...M,G]},[X,ce,gt,I.value]),gn=o.useMemo(()=>ko(X,ce),[X,ce]),Ae=o.useMemo(()=>Na(u,Math.min(Y,u.length)),[Y,u]),kt=Ae?`${u}:${Ae.start}:${Math.min(Y,u.length)}`:null,ut=o.useMemo(()=>Ae?fo({actionCatalog:W,connectedAppMentions:g,mentionApps:f,profileSkills:Ve,query:Ae.query,surface:n,teamMentionMembers:i}):[],[W,g,f,Ae,Ve,n,i]),Hn=o.useMemo(()=>n==="team"?[]:fo({actionCatalog:W,connectedAppMentions:g,mentionApps:f,profileSkills:Ve,query:"",surface:n,teamMentionMembers:i}).filter(l=>l.kind!=="skill"),[W,g,f,Ve,n,i]),Vn=!!(!ge&&!ct&&Ae&&kt&&Hs!==kt&&ut.length>0),Oe=o.useMemo(()=>qi(u,Math.min(Y,u.length)),[Y,u]),Jt=Oe?`${u}:${Oe.start}:${Oe.end}`:null,Ge=o.useMemo(()=>Oe?Ls(Ve,Oe.query):[],[Oe,Ve]),Yt=!!(!ge&&!ct&&Oe&&Jt&&Nt!==Jt),ne=o.useMemo(()=>Bc(u,Math.min(Y,u.length)),[Y,u]),xn=ne?`${u}:${ne.start}:${ne.end}`:null,Zt=o.useMemo(()=>ne?co(W,ne.query):[],[W,ne]),bn=o.useMemo(()=>ne&&n!=="team"?uo(f,ne.query):[],[ne,f,n]),ys=o.useMemo(()=>ne&&n!=="team"?Uc(ne.query,lt):[],[ne,lt,n]),Gn=o.useMemo(()=>ne&&n!=="team"?Ls(Ve,ne.query):[],[ne,Ve,n]),Ze=o.useMemo(()=>[...Zt.map(l=>({kind:"action",action:l})),...Gn.map(l=>({kind:"skill",skill:l})),...ys.map(l=>({kind:"command",command:l})),...bn.map(l=>({kind:"app-context",app:l}))],[Zt,bn,ys,Gn]),kn=!!(!ge&&!ct&&ne&&xn&&Vs!==xn),js=o.useMemo(()=>lt.map(l=>({kind:"command",command:l})),[lt]),vn=o.useMemo(()=>[...co(W,"").map(l=>({kind:"action",action:l})),...uo(f,"").map(l=>({kind:"app-context",app:l}))],[W,f]),Wn=o.useMemo(()=>Ls(Ve,"").map(l=>({kind:"skill",skill:l})),[Ve]),sr=o.useMemo(()=>{const l=[{id:"add",items:e==="work"?[{kind:"files"},{kind:"folder"}]:[{kind:"files"}],label:"Add"}];return vn.length>0&&l.push({id:"slash",items:vn.map(d=>({kind:"slash",item:d})),label:"Agents and actions",queryScope:"slash"}),Wn.length>0&&l.push({id:"skills",items:Wn.map(d=>({kind:"slash",item:d})),label:"Skills",queryScopes:["slash","mentions"]}),l.push({id:"openpond",items:js.map(d=>({kind:"slash",item:d})),label:"OpenPond",grid:!0,queryScope:"slash"}),l.push({emptyLabel:"No mentions available",id:"mentions",items:Hn.map(d=>({kind:"mention",item:d})),label:"@"}),l},[Hn,js,Wn,vn,e]),Xn=o.useMemo(()=>Yl(sr,gs),[gs,sr]),$t=o.useMemo(()=>Xn.flatMap(l=>l.items),[Xn]);o.useEffect(()=>{ge&&Ut(l=>l<$t.length?l:0)},[$t.length,ge]);const Sn=!!S,en=Sn&&S?.tone==="active",Kn=en?"Pause goal":"Stop response",vt=en?"pause":"stop",Qn=e==="work"||ye.value!=="none",he=Ar(mn,b,V),Jn=Ht?.scopeKey===b?Ht.draftId:null;function yn(l,d){zn(A=>ol(A,l,d,l===b?V:[]))}o.useLayoutEffect(()=>{de.current?.resize()},[_e.length,Z,N,S,u,rt,It,Pt]),o.useEffect(()=>{if(!se){pe.current=!1;return}if(pe.current||ct)return;const l=window.requestAnimationFrame(()=>{pe.current=!0;const d=document.activeElement;d&&d!==document.body&&d!==document.documentElement||de.current?.focusAtPromptIndex(u.length)});return()=>window.cancelAnimationFrame(l)},[se,ct,u.length]),o.useEffect(()=>{!xe||Ke.current===xe||ct||(Ke.current=xe,window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(u.length)}))},[xe,ct,u.length]),o.useEffect(()=>{S||fn(!1)},[S]),o.useEffect(()=>{rt&&!W.some(l=>l.id===rt)&&(Qe(null),He(null))},[W,rt]),o.useEffect(()=>{if(!K||K.requestId<=Le.current)return;const l=W.find(d=>d.id===K.actionId);l&&(Le.current=K.requestId,Qe(l.id),ot(null),He(0),at(null),J(""),ve(0),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(0,{afterToken:!0})}))},[W,J,K]),o.useEffect(()=>{!je&&!Se||He(l=>l===null?0:Math.max(0,Math.min(l,u.length)))},[u.length,je,Se]),o.useEffect(()=>{if(!m||!O)return;const l=f.find(d=>d.id===m);(!l||!Ta(u,l))&&O(null)},[f,O,u,m]);const{actionMenuStyle:rr,addMenuStyle:or,mentionMenuStyle:ar,skillMenuStyle:ir}=Qc({activeMentionKey:kt,activeSkillKey:Jt,activeSlashKey:xn,addMenuIndex:ps,addMenuItems:$t,addMenuOpen:ge,addMenuPanelRef:Ce,addMenuRef:ie,attachmentCount:_e.length,composerRef:mt,createImproveActive:!!N,goalRuntimeActive:!!S,inputRef:de,inputShellRef:an,mentionQuery:Ae?.query,prompt:u,selectedActionId:rt,selectAddMenuItem:wn,setActionIndex:cn,setActionMenuDismissedPrompt:pt,setAddMenuIndex:Ut,setAddMenuOpen:Rt,setAddMenuQuery:At,setMentionMenuDismissedPrompt:Pe,setMentionIndex:Et,setSkillIndex:ln,setSkillMenuDismissedPrompt:Tt,skillMatchCount:Ge.length,skillQuery:Oe?.query,slashMatchCount:Ze.length,slashQuery:ne?.query,showActionMenu:kn,showMentionMenu:Vn,showSkillMenu:Yt});function Fe(){Qe(null),ot(null),He(null),at(null)}function Cs(){Fe(),J(""),ve(0)}function Yn(l){qn(l.trim()),Vt(!0)}function lr(){Gt||(Vt(!1),Fe())}async function Lt(){return await(en&&Ie?Ie():Bt())}function jn(l,d){const A=Math.max(0,Math.min(Y,u.length)),M=d?Math.max(0,Math.min(d.start,u.length)):A,G=d?Math.max(M,Math.min(d.end,u.length)):M,U=u.slice(0,M),le=u.slice(G),yt=U&&!/\s$/.test(U)?" ":"",Dt=le&&!/^\s/.test(le)?" ":"",zt=`${Ia(l)} `,nt=`${yt}${zt}${Dt}`,rn=`${U}${nt}${le}`,Xe=U.length+nt.length;return J(rn),O?.(l.id),ve(Xe),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(Xe)}),Xe}function cr(l){if(!Ae)return;const d=Math.max(0,Math.min(Y,u.length));jn(l,{start:Ae.start,end:d})}function Ot(l,d,A=null){const M=Math.max(0,Math.min(Y,u.length)),G=d?Math.max(0,Math.min(d.start,u.length)):M,U=d?Math.max(G,Math.min(d.end,u.length)):G,le=`${u.slice(0,G)}${u.slice(U)}`;return Qe(l.id),ot(null),He(G),at(A?.startsWith("@")?A:null),pt(null),J(le),ve(G),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(G,{afterToken:!0})}),G}function Cn(l){if(!Ae)return;const d=Math.max(0,Math.min(Y,u.length)),A=Math.max(0,Math.min(Ae.start,u.length)),M=Math.max(A,Math.min(d,u.length));Ot(l,{start:A,end:M},u.slice(A,M).trim())}function ws(l,d){const A=Math.max(0,Math.min(Y,u.length)),M=d?Math.max(0,Math.min(d.start,u.length)):A,G=d?Math.max(M,Math.min(d.end,u.length)):M,U=u.slice(0,M),le=u.slice(G),yt=U&&!/\s$/.test(U)?" ":"",Dt=le&&!/^\s/.test(le)?" ":"",zt=`${Pa(l)} `,nt=`${yt}${zt}${Dt}`,rn=`${U}${nt}${le}`,Xe=U.length+nt.length;return J(rn),ve(Xe),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(Xe)}),Xe}function Re(l){if(!Ae)return;const d=Math.max(0,Math.min(Y,u.length));ws(l,{start:Ae.start,end:d})}function tn(l,d){const A=Math.max(0,Math.min(Y,u.length)),M=d?Math.max(0,Math.min(d.start,u.length)):A,G=d?Math.max(M,Math.min(d.end,u.length)):M,U=l.handle||In(l.name),le=u.slice(0,M),yt=u.slice(G),Dt=le&&!/\s$/.test(le)?" ":"",zt=yt&&!/^\s/.test(yt)?" ":"",nt=`${Dt}@${U} ${zt}`,rn=`${le}${nt}${yt}`,Xe=le.length+nt.length;return J(rn),ve(Xe),window.requestAnimationFrame(()=>de.current?.focusAtPromptIndex(Xe)),Xe}function Ms(l){if(l.kind==="team-member"){if(!Ae)return;const d=Math.max(0,Math.min(Y,u.length));tn(l.member,{start:Ae.start,end:d});return}if(l.kind==="app"){cr(l.app);return}if(l.kind==="connected-app"){Re(l.app);return}if(l.kind==="skill"){if(!Ae)return;const d=Math.max(0,Math.min(Y,u.length));dt(l.skill,{start:Ae.start,end:d});return}Cn(l.action)}function ur(l){ne&&(pt(null),jn(l,{start:ne.start,end:ne.end}))}function Es(l){ne&&Ot(l,ne)}function As(l,d){const A=Math.max(0,Math.min(Y,u.length)),M=d?Math.max(0,Math.min(d.start,u.length)):A,G=d?Math.max(M,Math.min(d.end,u.length)):M,U=`${u.slice(0,M)}${u.slice(G)}`;return ot(l.id),Qe(null),He(M),at(null),pt(null),J(U),ve(M),l.id==="submit-issue"&&Yn(U),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(M,{afterToken:!0})}),M}function St(l){ne&&As(l,ne)}function Zn(l){if(l.kind==="command"){St(l.command);return}if(l.kind==="app-context"){ur(l.app);return}if(l.kind==="skill"){if(!ne)return;dt(l.skill,ne);return}Es(l.action)}function dt(l,d){const A=Ui(u,d,l);return Tt(null),Pe(null),pt(null),J(A.value),ve(A.cursor),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(A.cursor)}),A.cursor}function nn(l){Oe&&dt(l,Oe)}function We(){k.current?.click()}function dr(){T.current?.click()}function Be(l){q.current=l,At(""),Ut(0)}function es(){const l=Math.max(0,Math.min(Y,u.length)),d=Math.max(0,Math.min(q.current,u.length));return l>=d?{start:d,end:l}:{start:l,end:l}}function wn(l){const d=es();if(Rt(!1),At(""),l.kind==="files"||l.kind==="folder"){if(d.start!==d.end){const A=`${u.slice(0,d.start)}${u.slice(d.end)}`;J(A),ve(d.start)}Be(d.start),l.kind==="folder"?dr():We();return}if(l.kind==="slash"){if(l.item.kind==="command"){Be(As(l.item.command,d));return}if(l.item.kind==="app-context"){Be(jn(l.item.app,d));return}if(l.item.kind==="skill"){Be(dt(l.item.skill,d));return}Be(Ot(l.item.action,d));return}if(l.item.kind==="team-member"){Be(tn(l.item.member,d));return}if(l.item.kind==="app"){Be(jn(l.item.app,d));return}if(l.item.kind==="connected-app"){Be(ws(l.item.app,d));return}if(l.item.kind==="skill"){Be(dt(l.item.skill,d));return}Be(Ot(l.item.action,d))}function Mn(l){const d=(l??de.current?.getPrompt()??u).trim();return!E||!d?!1:_e.length>0||je||Se?(Ee("Steering supports a plain-text instruction. Remove files or actions before staging it.","info"),!1):(yn(b,A=>[...A,Ao(d)]),Cs(),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(0)}),!0)}async function ts(l){const d=b;if(Ht?.scopeKey===d)return!1;const A=Ar(mn,d,V).find(M=>M.id===l);if(!A)return!1;hn({draftId:l,scopeKey:d}),it(null);try{const M=E;if(M&&C&&await Bt(Hr)===!1)return!1;const G=await wt([],null,null,{preservePrompt:!0,promptOverride:A.prompt,...M?{turnMetadata:{interactionKind:"steer"}}:{}});return yn(d,U=>rl(U,l,G)),G}catch(M){return it(M instanceof Error?M.message:String(M)),!1}finally{hn(M=>M?.scopeKey===d&&M.draftId===l?null:M)}}function fr(l){Jn!==l&&yn(b,d=>No(d,l))}function ns(l){if(Jn!==l.id){if(_e.length>0||rt||It){Ee("Finish the current composer before editing a queued message.","info");return}yn(b,d=>sl(d,l.id,u)),J(l.prompt),ve(l.prompt.length),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(l.prompt.length)})}}async function En(l){const d=(l??de.current?.getPrompt()??u).trim();if(!E||!d)return!1;if(_e.length>0||je||Se)return Ee("Steering supports a plain-text instruction. Remove files or actions before sending it.","info"),!1;const A=b;if(!pn(A))return!1;it(null);try{if(C&&await Bt(Hr)===!1)return!1;const M=await wt([],null,null,{preservePrompt:!0,promptOverride:d,turnMetadata:{interactionKind:"steer"}});return M&&Cs(),M}catch(M){return it(M instanceof Error?M.message:String(M)),!1}finally{xt(A)}}async function sn(l={}){const d=b;if(!pn(d))return!1;Rt(!1),it(null);const A=Je();try{dn(A.length>0?d:null);let M;try{M=await Promise.all(A.map($c))}finally{bt(d)}const G=je&&Xt&&!u.trim()?Xt:void 0,U=l.promptOverride??G,le=await wt(M,je,Se,Xt||U||l.preservePrompt?{...Xt?{displayPrompt:Xt}:{},...U!==void 0?{promptOverride:U}:{},...l.preservePrompt?{preservePrompt:!0}:{}}:void 0);return bs(A,le?"dispose":"restore"),le&&!_a(je)&&Fe(),le}catch(M){return bs(A,"restore"),it(M instanceof Error?M.message:String(M)),!1}finally{xt(d),bt(d)}}async function An(){if(E){P?await En():Mn();return}if(Qt())return;const l=je||Se?null:So(u);if(Se?.id==="submit-issue"||l?.command==="submit-issue"){Yn(l?.command==="submit-issue"?l.args:u);return}ks||await sn()}function Nn(){Ki(z)||An()}async function ss(l){if(Qt()||Gt)return!1;const d=b;if(!pn(d))return!1;tt(!0),Rt(!1),it(null);try{const A=await wt([],null,Yc,{displayPrompt:`/submit-issue ${l.title.trim()}`,promptOverride:Ra(l)});return A&&(Vt(!1),Fe()),A}catch(A){return it(A instanceof Error?A.message:String(A)),!1}finally{xt(d),tt(!1)}}async function Ns(l,d){const A=de.current?.getPrompt()??u,M=Math.max(0,Math.min(Mt.current,A.length)),G=wo(A,l,d.submit?A.length:M),U=await Vi({appendToEnd:d.submit,currentScopeKey:_?.()??b,cursorIndex:M,originScopeKey:b,prompt:A,setOriginDraft:le=>J(le),submitFromOrigin:le=>sn({preservePrompt:!0,promptOverride:le}),transcript:l});if(U==="retained"){Ee("The voice message couldn't be sent. It is saved in the original chat draft.","error");return}if(U==="submitted"){Ee("Voice message sent to the chat where recording started.","success");return}if(d.submit){if(E){P?await En(G.value):Mn(G.value);return}await sn({promptOverride:G.value});return}ve(G.cursorIndex),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(G.cursorIndex)})}return s.jsxs("form",{ref:mt,className:`composer ${t} ${N?"has-create-runtime":""} ${Sn?"has-goal-runtime":""} ${_e.length>0?"has-attachments":""} ${je||Se?"has-selected-action":""} ${Z?"has-attachment-error":""} ${ge?"has-add-menu":""}`,onSubmit:l=>{l.preventDefault(),An()},children:[s.jsx("input",{webkitdirectory:"",ref:T,className:"composer-file-input",type:"file",multiple:!0,tabIndex:-1,onChange:l=>{ze(Array.from(l.currentTarget.files??[])),l.currentTarget.value=""}}),Vn&&s.jsx(tc,{items:ut,mentionIndex:qt,onSelect:Ms,onSelectIndex:Et,style:ar}),Yt&&s.jsx(gc,{items:Ge,onSelect:nn,onSelectIndex:ln,skillIndex:ms,style:ir}),kn&&s.jsx(xc,{actionCatalogCount:W.length,actionIndex:hs,items:Ze,onSelect:Zn,onSelectIndex:cn,style:rr}),s.jsx(bc,{busy:Gt,initialDescription:Bn,open:Fn,onClose:lr,onSubmit:ss}),F&&s.jsxs("div",{className:"composer-footer",children:[F?s.jsx(Ji,{busy:j||ye.busy,placement:_t,state:ye,onChange:oe}):null,Me&&w?s.jsx(Eo,{busy:j,placement:_t,state:Me,onChange:w}):null,Qn?s.jsx(Yi,{busy:j,placement:_t,state:I,onChange:$}):null]}),!F&&e==="work"&&s.jsx(Zi,{project:ye,workspace:I}),N?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Jc,{runtime:N})}):null,s.jsx(al,{drafts:he,sendingDraftId:Jn,onDeleteDraft:fr,onEditDraft:ns,onSteerDraft:l=>{ts(l)}}),Sn&&S&&s.jsx(tl,{detailsOpen:Dn,goalRuntime:S,objectiveId:Js,subagentRuntime:v,onToggleDetails:()=>fn(l=>!l)}),h&&s.jsx("div",{className:`composer-notice ${h.tone}`,role:"status",children:h.message}),s.jsxs("div",{className:"composer-input-shell",ref:an,children:[ge&&n!=="team"&&s.jsx(_r,{id:Un,ariaLabel:"Add to message",className:"composer-add-command-menu",menuIndex:ps,menuRef:Ce,sections:Xn,style:or,variant:"add",onSelect:wn,onSelectIndex:Ut}),_e.length>0&&s.jsx("div",{className:"composer-attachments","aria-label":"Selected attachments",children:_e.map(l=>s.jsx(Ic,{attachment:l,onRemove:()=>xs(l.id)},l.id))}),Z&&s.jsx("div",{className:"composer-attachment-error",role:"status",children:Z}),s.jsx("div",{className:"composer-textarea-frame",onClick:l=>{l.target===l.currentTarget&&de.current?.focusAtPromptIndex(Y)},children:s.jsx(Fl,{ref:de,connectedAppMentions:g,disabled:ct,onCursorChange:ve,onKeyDown:l=>{if(ge&&["ArrowDown","ArrowUp","Home","End","Enter","Escape"].includes(l.key)){l.preventDefault();return}if(Vn){if(l.key==="ArrowDown"){l.preventDefault(),Et(d=>(d+1)%ut.length);return}if(l.key==="ArrowUp"){l.preventDefault(),Et(d=>(d-1+ut.length)%ut.length);return}if(l.key==="Enter"||l.key==="Tab"){l.preventDefault(),Ms(ut[qt]??ut[0]);return}if(l.key==="Escape"){l.preventDefault(),Pe(kt);return}}if(Yt){if(Ge.length>0&&l.key==="ArrowDown"){l.preventDefault(),ln(d=>(d+1)%Ge.length);return}if(Ge.length>0&&l.key==="ArrowUp"){l.preventDefault(),ln(d=>(d-1+Ge.length)%Ge.length);return}if(Ge.length>0&&(l.key==="Enter"||l.key==="Tab")){l.preventDefault(),nn(Ge[ms]??Ge[0]);return}if(l.key==="Escape"){l.preventDefault(),Tt(Jt??u);return}}if(kn){if(Ze.length>0&&l.key==="ArrowDown"){l.preventDefault(),cn(d=>(d+1)%Ze.length);return}if(Ze.length>0&&l.key==="ArrowUp"){l.preventDefault(),cn(d=>(d-1+Ze.length)%Ze.length);return}if(Ze.length>0&&(l.key==="Enter"||l.key==="Tab")){l.preventDefault(),Zn(Ze[hs]??Ze[0]);return}if(l.key==="Escape"){l.preventDefault(),pt(xn??u);return}}if((je||Se)&&l.key==="Backspace"&&Y===(Pt??0)){l.preventDefault(),Fe();return}if(ql(l.key,l.ctrlKey,l.metaKey,l.shiftKey,e,n,!!st)){l.preventDefault(),Bl({attachmentsCount:_e.length,hasSelectedInvocation:!!(je||Se),onSave:st,onSaved:Fe,prompt:u,saving:un,setSaving:Gs,showInfo:d=>Ee(d,"info")});return}l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),Kt||An())},onPasteFiles:ze,onPasteTextAsAttachment:Wt,onPromptChange:(l,d)=>{if(ge){const M=Math.max(0,Math.min(q.current,l.length));d<M?(q.current=d,At("")):At(l.slice(M,d))}const A=n==="team"?null:qc(l,d,lt);if(A){const M=`${l.slice(0,A.start)}${l.slice(A.end)}`,G=A.start;J(l),ve(d),window.requestAnimationFrame(()=>{ot(A.command.id),Qe(null),He(G),pt(null),J(M),ve(G),A.command.id==="submit-issue"&&Yn(M),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(G,{afterToken:!0})})});return}J(l)},onTokenPositionChange:l=>{if(!(!je&&!Se)){if(l===null){Fe();return}He(l)}},placeholder:Xs,prompt:u,token:er})}),s.jsx(mc,{surface:n,teamUseModel:r,teamUseModelLocked:a,onTeamUseModelChange:c,addFiles:ze,addMenuId:Un,addMenuOpen:ge,addMenuRef:ie,busy:j,codexPermissionMode:ae,codexReasoningEffort:re,connection:$e,contextStatusStyle:Ys,contextStatusTooltipId:Qs,contextWindowStatus:p,disabled:nr,dropdownPlacement:_t,fileInputRef:k,modelValue:Ks,modelOptions:gn,openPondCommandAccessMode:ke,showCommandAccess:gt,profileTarget:F?null:Me,onCodexPermissionModeChange:Ue,onCodexReasoningEffortChange:Te,onOpenPondCommandAccessModeChange:et,onProfileTargetChange:w,onModelChange:L,onOpenFilePicker:We,onProviderChange:ue,onProviderSetupOpen:D,onSend:Nn,onStop:Lt,onToggleAddMenu:()=>{const l=Math.max(0,Math.min(Y,u.length));ge||(q.current=l,At(""),Ut(0),Rt(!0)),window.requestAnimationFrame(()=>{de.current?.focusAtPromptIndex(l)})},onTranscript:Ns,voiceInputChannelKey:z,provider:X,providerSettings:ce,providerOptions:Ss,running:E,sendDisabled:ks,sendTooltip:tr,showToast:Ee,stopIcon:vt,stopLabel:Kn})]})]})}const mo=o.memo(function({draftStore:t,...n}){const r=$a(t),a=t.getScopeKey(),i=o.useCallback(c=>{t.setForScope(a,c)},[a,t]);return s.jsx(La,{id:"composer",children:s.jsx(eu,{...n,prompt:r,onPromptChange:i})})});function ho({approval:e,onResolve:t}){const[n,r]=o.useState(null);if(o.useEffect(()=>{r(null)},[e?.id]),!e||e.kind==="create_plan")return null;const a=tu(e.detail),i=e.kind!=="subagent_patch_apply";async function c(u){if(!(!e||n)){r(u);try{await t(e.id,u)}catch{r(null)}}}return s.jsx("div",{className:"approval-request-shell",role:"status","aria-live":"polite",children:s.jsxs("section",{className:"approval-request-card","aria-label":`${po(e.kind)} approval request`,children:[s.jsxs("div",{className:"approval-request-copy",children:[s.jsx("div",{className:"approval-request-header",children:s.jsx("span",{children:po(e.kind)})}),s.jsx("code",{className:"approval-request-title",title:e.title,children:e.title}),a&&a!==e.title&&s.jsxs("details",{className:"approval-request-details",children:[s.jsx("summary",{children:"Details"}),s.jsx("pre",{children:a})]})]}),s.jsxs("div",{className:"approval-request-actions",children:[s.jsxs("button",{type:"button",className:"approval-action primary",disabled:!!n,onClick:()=>{c("accept")},children:[s.jsx(Ct,{size:14}),s.jsx("span",{children:n==="accept"?"Approving":"Approve"})]}),i?s.jsxs("button",{type:"button",className:"approval-action",title:"Approve for the rest of this session",disabled:!!n,onClick:()=>{c("acceptForSession")},children:[s.jsx(xi,{size:14}),s.jsx("span",{children:n==="acceptForSession"?"Approving":"Session"})]}):null,s.jsxs("button",{type:"button",className:"approval-action muted",disabled:!!n,onClick:()=>{c("decline")},children:[s.jsx(ki,{size:14}),s.jsx("span",{children:n==="decline"?"Denying":"Deny"})]}),s.jsx("button",{type:"button",className:"approval-action icon-only",title:"Cancel task","aria-label":"Cancel task",disabled:!!n,onClick:()=>{c("cancel")},children:s.jsx(fs,{size:15})})]})]})})}function po(e){return e==="create_plan"?"Plan review":e==="subagent_patch_apply"?"Subagent patch":e==="file_change"||e==="legacy_patch"?"File change":e==="permissions"?"Permissions":e==="user_input"?"Input needed":"Command"}function tu(e){const t=e.trim();if(!t)return"";try{return JSON.stringify(JSON.parse(t),null,2)}catch{return t}}const nu=/\.(?:m4v|mov|mp4|webm)$/i;function su(e){return nu.test(e.trim().split(/[?#]/,1)[0]??"")}function ru(e,t){let n=e.trim();if(!n||!su(n))return null;if(/^file:\/\//i.test(n))try{n=decodeURIComponent(new URL(n).pathname)}catch{n=n.replace(/^file:\/\//i,"")}if(/^\//.test(n)||/^[A-Za-z]:[\\/]/.test(n))return n;const r=t?.trim().replace(/[\\/]+$/,"");return r?`${r}/${n.replace(/^\.\//,"")}`:null}function ou(e,t={}){const n=au(e),r=e.map(a=>({id:`message:${a.id}`,type:"message",message:a,showFooter:a.id===n}));return t.showThinkingIndicator&&r.push({id:"thinking",type:"thinking"}),r}function au(e){for(let t=e.length-1;t>=0;t-=1){const n=e[t];if(n.role==="assistant")return n.id}return null}function pd(e){const t=new Map;for(const n of e)n.role==="assistant"&&n.turnId&&t.set(n.turnId,n.id);return t}function gd(e,t){const n=e.turnId;return e.role==="assistant"&&n!==void 0&&t.get(n)===e.id}function iu(e){const t=e[e.length-1];if(!t)return!0;if(t.role==="assistant"||t.role==="error"||t.role==="status_divider"&&t.statusState==="running")return!1;if(t.role==="activity_group"){if(t.traceState==="running")return!1;const n=t.activities?.[t.activities.length-1]??null;return n?.state!=="running"&&n?.state!=="pending"}return!0}function lu(e){const t=[];if(e.localWorkspaceId&&t.push({value:"local",label:"Local"}),(e.sandboxSourceAvailable??!!e.sandboxWorkspaceId)&&t.push({value:"sandbox",label:"Sandbox"}),t.length===0)return{source:null,options:t};const n=new Set(t.map(a=>a.value));if(e.override&&n.has(e.override))return{source:e.override,options:t};const r=e.workspaceTarget==="local"?"local":"sandbox";return n.has(r)?{source:r,options:t}:{source:t[0].value,options:t}}const cu=new Set(["create","edit","help","list"]);function uu(e,t,n=null){return du(e)}function du(e){const t=e.trim();if(!t)return"/skill";const[n=""]=t.split(/\s+/,1);return cu.has(n.toLowerCase())?`/skill ${t}`:`/skill create ${t}`}async function fu(e){const t=e.session?.currentProfile??null,n=e.session?await e.patchSession(e.session.id,e.ref):null;try{return{selected:await e.selectProfile(e.ref),session:n}}catch(r){if(n)try{await e.patchSession(n.id,t)}catch{}throw r}}function mu(e,t){if(!e||!t)return null;const n=new Set(e.sources.filter(r=>r.sessionId===t).map(r=>r.id));return n.size?e.creations.find(r=>r.request.sourceIds.some(a=>n.has(a)))??null:null}function hu(e){const[t,n]=o.useState(null),[r,a]=o.useState(null),[i,c]=o.useState(!1),[u,h]=o.useState(null),[f,g]=o.useState(null),y=o.useRef(null),m=o.useRef(0),p=o.useCallback(async(j,E={})=>{if(!e){a(null),h("OpenPond App server is not connected.");return}const C=m.current+1;m.current=C,E.silent||c(!0),h(null);try{const P=await De.getCreateImproveCandidateDiff(e,j.runId,j.candidateId),b=y.current;if(C!==m.current||b?.runId!==j.runId||b.candidateId!==j.candidateId)return;a(P)}catch(P){if(C!==m.current)return;h(P instanceof Error?P.message:String(P))}finally{C===m.current&&!E.silent&&c(!1)}},[e]),S=o.useCallback(j=>{const E=y.current;if(!(j&&E?.runId===j.runId&&E.candidateId===j.candidateId)){if(y.current=j,n(j),g(null),!j){m.current+=1,a(null),h(null),c(!1);return}a(C=>C?.appId===pu(j)?C:null),p(j)}},[p]),v=o.useCallback(async(j={})=>{const E=y.current;E&&await p(E,j)},[p]),N=o.useCallback(j=>{g({id:Date.now(),path:j})},[]);return o.useEffect(()=>{e||S(null)},[S,e]),{selection:t,diff:r,loading:i,error:u,openFileRequest:f,activate:S,refresh:v,openFile:N}}function pu(e){return`candidate:${e.runId}:${e.candidateId}`}function gu(e){const{activeModel:t,activeProvider:n,bootstrap:r,codexPermissionMode:a,codexReasoningEffort:i,connection:c,onOpenRightChatForSession:u,onPayload:h}=e,f=o.useCallback(async m=>{if(!c||!r)throw new Error("OpenPond is still connecting.");const p=r.profile;if(p.mode!=="local"||!p.repoPath)throw new Error("A local Git-backed Profile is required to change an Agent.");const S=m.authoringModel??Oa(n,t,r.providers);if(!S)throw new Error("Choose a model before changing an Agent.");const v=await De.createSession(c,{provider:S.providerId,modelRef:S,systemKind:"openpond.lab",hiddenFromDefaultSidebar:!0,title:`${m.operation==="create"?"New":"Improve"} Agent · ${m.objective.slice(0,80)}`,cwd:p.repoPath,metadata:{source:m.operation==="create"?"lab_agent_create":"lab_agent_improve",profileId:p.activeProfile??"default",targetAgentId:m.agentId??null}}),N=m.objective.trim();if(!N)throw new Error(m.operation==="create"?"Describe what the Agent should do.":"Describe what the Agent could do better.");if(S.providerId==="codex")throw new Error("Agent authoring uses OpenPond's bundled authoring skill. Choose a hosted model.");const j=m.operation==="create"?`/agent create ${N}`:`/agent improve ${m.agentId??""} ${N}`,E=await De.sendTurn(c,v.id,{prompt:j,model:S.modelId,modelRef:S,approvalPolicy:"never",sandbox:"workspace-write",codexPermissionMode:"default",codexReasoningEffort:i});if(E.status==="failed")throw new Error(E.error??"OpenPond could not complete the Agent authoring turn.");h(await De.bootstrap(c)),u(v.id,v)},[t,n,r,a,i,c,u,h]),g=o.useCallback((m,p,S)=>f({objective:m,operation:"create",authoringRunId:p,authoringModel:S}),[f]),y=o.useCallback((m,p,S,v,N)=>f({agentId:m,agentName:S,objective:p,operation:"improve",authoringRunId:v,authoringModel:N}),[f]);return{createAgentFromLab:g,improveAgentFromLab:y}}const xu=72,jr=120,qo=24,bu=280,ku=460;function Rn(e){return e.scrollHeight-e.scrollTop-e.clientHeight<=xu}const _s={canGoPrevious:!1,canGoNext:!1};function Uo(e){return Array.from(e.querySelectorAll(".message-row.user")).filter(t=>t.parentElement===e)}function vu({activeWorkspaceId:e,cloudProjects:t}){const n=t.find(i=>i.id===e),r=t.find(i=>i.organizationSlug||i.teamId),a=n??r??null;return{organizationSlug:a?.organizationSlug??null,teamId:a?.teamId??null}}function Us(e,t){return t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop}function Ho(e,t){return Us(e,t)+t.getBoundingClientRect().height}function Vo(e){return e.scrollTop+qo}function Go(e){return e.scrollTop+8}function is(e){const t=Vo(e),n=Go(e);let r=!1,a=!1;for(const i of Uo(e)){const c=Us(e,i);if(Ho(e,i)<n&&(r=!0),c>t+8&&(a=!0),r&&a)break}return{canGoPrevious:r,canGoNext:a}}function Su(e,t){const n=Uo(e),r=Vo(e);if(t==="previous"){const a=Go(e);for(let i=n.length-1;i>=0;i-=1){const c=n[i];if(Ho(e,c)<a)return c}return null}for(const a of n)if(Us(e,a)>r+8)return a;return null}function yu(e){return Math.min(ku,Math.max(bu,Math.abs(e)/5))}function ju(e){return e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2}function Cu(e){const t=Da({messages:e});return t?{run:t}:null}function go(e){return e.command==="workflow"?["Create a scheduled workflow attached to this chat.","Use the schedule_work tool after resolving the exact cadence, local date/time, and timezone from my request. Ask a concise clarification only if a required scheduling detail is genuinely missing.",`Workflow request: ${e.args}`].join(`
|
|
5
|
-
|
|
6
|
-
`):e.command==="agent"?e.args?`/agent ${e.args}`:"/agent":e.command==="skill"?e.args?`/skill ${e.args}`:"/skill":e.args?`/${e.command} ${e.args}`:`/${e.command}`}function Cr(e,t){return{surface:"chat",workflowKind:"slash_command",commandName:`/${e.command}`,commandSource:t}}function wu(e){return e.command==="goal"||e.command==="agent"||e.command==="skill"||e.command==="workflow"||e.command==="sync-cloud"}function Mu(e){const t=e?.trim()??"";return/^[a-z0-9]{24}$/.test(t)?t:null}function Eu({busy:e,handoff:t,onDismiss:n,onSelectTask:r}){const a=za(t),i=t.selectedTaskIndex+1;return s.jsxs("section",{className:"training-chat-handoff","aria-label":"Model chat",children:[s.jsxs("div",{className:"training-chat-handoff-copy",children:[s.jsx("strong",{children:a?"Generated Taskset question":"Model chat"}),s.jsx("span",{children:t.tasksetName}),s.jsx("small",{children:a?`${Au(a.split)} · ${i} of ${t.tasks.length} · New chat per question`:"Ask the imported model directly"})]}),s.jsxs("div",{className:"training-chat-handoff-actions",children:[a?s.jsxs(s.Fragment,{children:[s.jsx("button",{type:"button","aria-label":"Previous generated question",title:"Previous question",disabled:e||t.selectedTaskIndex===0,onClick:()=>r(t.selectedTaskIndex-1),children:s.jsx(Pn,{size:14})}),s.jsx("button",{type:"button",className:"training-chat-handoff-load",disabled:e,onClick:()=>r(t.selectedTaskIndex),children:"Load question"}),s.jsx("button",{type:"button","aria-label":"Next generated question",title:"Next question",disabled:e||t.selectedTaskIndex>=t.tasks.length-1,onClick:()=>r(t.selectedTaskIndex+1),children:s.jsx(yo,{size:14})})]}):null,s.jsx("button",{type:"button","aria-label":"Close generated question handoff",title:"Close",disabled:e,onClick:n,children:s.jsx(fs,{size:14})})]})]})}function Au(e){return e==="frozen_eval"?"Frozen evaluation":e==="validation"?"Validation":"Training"}function Nu({activeModel:e,activeProvider:t,busy:n,handoff:r,onDismiss:a,onSelectTask:i}){return!r||r.model.providerId!==t||r.model.modelId!==e?null:s.jsx(Eu,{busy:n,handoff:r,onDismiss:a,onSelectTask:i})}function Tu({canGoNext:e,canGoPrevious:t,onJumpToLatest:n,onNext:r,onPrevious:a}){return s.jsxs("div",{className:"chat-scroll-controls","aria-label":"Message navigation",children:[s.jsx("button",{type:"button",className:"chat-scroll-control-button","data-tooltip":"Go to previous message","aria-label":"Go to previous message","aria-disabled":!t,onClick:a,children:s.jsx(Pn,{size:17})}),s.jsx("button",{type:"button",className:"chat-scroll-control-button primary","data-tooltip":"Jump to latest","aria-label":"Jump to latest",onClick:n,children:s.jsx(fi,{size:18})}),s.jsx("button",{type:"button",className:"chat-scroll-control-button","data-tooltip":"Go to next message","aria-label":"Go to next message","aria-disabled":!e,onClick:r,children:s.jsx(yo,{size:17})})]})}function Ru({busy:e,onSync:t}){return s.jsxs("button",{type:"button",className:"sync-local-button",disabled:e,onClick:t,children:[s.jsx(Si,{size:15}),s.jsx("span",{children:e?"Syncing locally":"Sync locally to work on this"})]})}function Wo(e){return e.supportedView&&e.open&&!e.hasContentPanel}function Iu(e,t){return e==="team"?"team-active":e==="community"?"community-active":e==="apps"||e==="get-started"||e==="labs"||e==="outputs"||e==="projects"||e==="scheduled"?"page-active":t?"chat-active":"chat-start"}function Pu(e){const{contentKey:t,threadElement:n=null,enabled:r=!0,onContentChange:a,threadRef:i}=e,c=o.useRef(a),u=o.useRef(null);c.current=a,o.useLayoutEffect(()=>{const h=n??i.current;if(!r||!h||typeof window>"u")return;let f=null,g=0,y=h.scrollHeight;const m=(E=!0)=>{E&&(g=Math.max(g,4)),f===null&&(f=window.requestAnimationFrame(()=>{f=null,i.current===h&&c.current(h);const C=Math.abs(h.scrollHeight-y)>1;y=h.scrollHeight,g-=1,(g>0||C)&&m(!1)}))};u.current=()=>m();const p=typeof MutationObserver>"u"?null:new MutationObserver(()=>{N(),m()}),S=typeof ResizeObserver>"u"?null:new ResizeObserver(()=>m()),v=new Set,N=()=>{if(!S)return;const E=new Set(Array.from(h.children).filter(C=>C instanceof HTMLElement));for(const C of v)E.has(C)||(S.unobserve(C),v.delete(C));for(const C of E)v.has(C)||(S.observe(C),v.add(C))};p?.observe(h,{childList:!0,characterData:!0,subtree:!0}),N();const j=()=>m();return h.addEventListener("load",j,!0),()=>{u.current=null,p?.disconnect(),S?.disconnect(),h.removeEventListener("load",j,!0),f!==null&&window.cancelAnimationFrame(f)}},[r,n,i]),o.useLayoutEffect(()=>{r&&u.current?.()},[t,r])}function _u({browserConversationId:e,chatSubmissionVersion:t,chatHistoryHasMore:n,chatHistoryLoading:r,chatMessages:a,onLoadMoreChatHistory:i,pendingApproval:c,showChatThread:u,showThinkingIndicator:h,view:f}){const g=o.useRef(null),[y,m]=o.useState(null),p=o.useCallback(k=>{g.current=k,m(T=>T===k?T:k)},[]),S=o.useRef(null),v=o.useRef(!0),N=o.useRef(0),j=o.useRef(0),E=o.useRef(0),C=o.useRef(null),P=o.useRef(null),b=o.useRef(!1),_=o.useRef(!1),z=o.useRef(!1),V=o.useRef(null),F=o.useRef(null),se=o.useRef(null),[xe,be]=o.useState(0),[$e,ce]=o.useState(null),[X,we]=o.useState(!1),[ye,Me]=o.useState(132),[W,K]=o.useState(_s),I=o.useMemo(()=>ou(a,{showThinkingIndicator:h}),[a,h]),ae=o.useMemo(()=>({"--chat-composer-reserve":`${ye}px`}),[ye]),re=a.at(-1),ke=[I.length,re?.id??"",re?.content?.length??0,re?.timestamp??"",h?"thinking":""].join(":"),ue=n,D=e,oe=f==="chat"&&u&&!!D&&$e!==D,w=o.useCallback(k=>{we(T=>T===k?T:k)},[]),$=o.useCallback(k=>{K(T=>T.canGoPrevious===k.canGoPrevious&&T.canGoNext===k.canGoNext?T:k)},[]),L=o.useCallback((k,T={})=>{const ie=T.nearBottom??Rn(k);w(!ie),$(is(k))},[w,$]),Ue=o.useCallback(k=>{const T=_.current;_.current=!1,ce(k),w(!1),$(_s),T&&be(ie=>ie+1)},[w,$]),Te=o.useCallback(()=>{se.current===null||typeof window>"u"||(window.cancelAnimationFrame(se.current),se.current=null)},[]),et=o.useCallback((k,T,ie)=>{Te();const Ce=Math.max(0,k.scrollHeight-k.clientHeight),q=()=>{const Mt=typeof T=="function"?T():T;return Math.max(0,Math.min(Mt,Math.max(0,k.scrollHeight-k.clientHeight)))},Ne=Math.max(0,Math.min(q(),Ce)),pe=k.scrollTop,Ke=Ne-pe;if(typeof window>"u"||window.matchMedia?.("(prefers-reduced-motion: reduce)").matches===!0||Math.abs(Ke)<1){k.scrollTop=Ne,ie?.();return}const ht=yu(Ke),Y=window.performance.now(),ve=Mt=>{if(g.current!==k){se.current=null;return}const qt=Math.min(1,(Mt-Y)/ht),Et=q();if(k.scrollTop=pe+(Et-pe)*ju(qt),qt<1){se.current=window.requestAnimationFrame(ve);return}k.scrollTop=q(),se.current=null,ie?.()};se.current=window.requestAnimationFrame(ve)},[Te]),J=o.useCallback(()=>{z.current=!1,!(V.current===null||typeof window>"u")&&(window.cancelAnimationFrame(V.current),V.current=null)},[]),O=o.useCallback(()=>{F.current===null||typeof window>"u"||(window.cancelAnimationFrame(F.current),F.current=null)},[]),st=o.useCallback(k=>{if(typeof window>"u"){k.scrollTop=k.scrollHeight;return}if(F.current!==null)return;let T=window.performance.now();const ie=Ce=>{if(g.current!==k||!v.current){F.current=null;return}const q=Math.max(0,k.scrollHeight-k.clientHeight),Ne=q-k.scrollTop;if(Math.abs(Ne)<=.75){k.scrollTop=q,F.current=null;return}if(Ne<0||Ne>240)k.scrollTop=q;else{const pe=Math.max(.5,Math.min(3,(Ce-T)/16.666666666666668)),Ke=1-Math.pow(1-.22,pe);k.scrollTop+=Math.min(36*pe,Ne*Ke)}T=Ce,F.current=window.requestAnimationFrame(ie)};F.current=window.requestAnimationFrame(ie)},[]),Ee=o.useCallback((k,T={})=>{if(O(),k.scrollTop=k.scrollHeight,typeof window>"u"){T.finishInitial&&Ue(T.conversationKey??null);return}J(),z.current=!0;let Ce=0,q=0,Ne=k.scrollHeight;const pe=T.settle?12:2,Ke=()=>{const Le=g.current;if(!Le){V.current=null,z.current=!1,T.finishInitial&&Ue(T.conversationKey??null);return}Le.scrollTop=Le.scrollHeight;const ht=Le.scrollHeight-Le.scrollTop-Le.clientHeight,Y=Math.abs(Le.scrollHeight-Ne)<=1;if(Ne=Le.scrollHeight,q=ht<=1&&Y?q+1:0,Ce+=1,Ce<pe&&q<2){V.current=window.requestAnimationFrame(Ke);return}V.current=null,z.current=!1,v.current=!0,w(!1),$(is(Le)),T.finishInitial&&Ue(T.conversationKey??null)};V.current=window.requestAnimationFrame(Ke)},[J,O,Ue,w,$]),wt=o.useCallback(()=>{const k=g.current;k&&(J(),O(),v.current=!0,w(!1),et(k,()=>k.scrollHeight-k.clientHeight,()=>{g.current===k&&(k.scrollTop=k.scrollHeight,v.current=!0,w(!1),$(is(k)))}))},[J,O,w,$,et]),Bt=o.useCallback(k=>{const T=g.current;if(!T)return;const ie=Su(T,k);if(!ie)return;J(),O(),et(T,()=>ie.isConnected?Math.max(0,Us(T,ie)-qo):T.scrollTop,()=>{if(g.current!==T)return;const q=Rn(T);v.current=q,L(T,{nearBottom:q})})},[J,O,et,L]),Ie=o.useCallback(()=>{const k=g.current;k&&(P.current={scrollHeight:k.scrollHeight,scrollTop:k.scrollTop},v.current=!1,O())},[O]),mt=o.useCallback(async()=>{if(ue&&!(!i||r||b.current)){Ie(),b.current=!0;try{await i()}finally{b.current=!1}}},[ue,r,i,Ie]),an=o.useCallback(k=>{if(z.current){v.current=!0,w(!1),$(_s);return}const T=Rn(k),ie=Math.abs(k.scrollHeight-j.current)>1||Math.abs(k.clientHeight-E.current)>1,Ce=k.scrollTop<N.current-1;N.current=k.scrollTop,j.current=k.scrollHeight,E.current=k.clientHeight,T?(v.current=!0,L(k,{nearBottom:!0})):Ce&&!ie?(v.current=!1,O(),L(k,{nearBottom:!1})):v.current?(w(!1),$(is(k))):L(k,{nearBottom:!1}),!_.current&&k.scrollTop<=jr&&ue&&!r&&mt()},[ue,O,r,mt,w,$,L]),de=o.useCallback(k=>{!v.current&&!Rn(k)||(v.current=!0,st(k))},[st]);return Pu({contentKey:ke,enabled:f==="chat"&&u,onContentChange:de,threadElement:y,threadRef:g}),o.useLayoutEffect(()=>{if(f!=="chat"||!u||typeof window>"u")return;const k=S.current;if(!k)return;let T=null;const ie=()=>{T=null;const Ne=Math.max(96,Math.ceil(k.getBoundingClientRect().height+20));Me(pe=>pe===Ne?pe:Ne)},Ce=()=>{T===null&&(T=window.requestAnimationFrame(ie))};Ce();const q=typeof window.ResizeObserver>"u"?null:new window.ResizeObserver(Ce);return q?.observe(k),window.addEventListener("resize",Ce),()=>{T!==null&&window.cancelAnimationFrame(T),q?.disconnect(),window.removeEventListener("resize",Ce)}},[u,f]),o.useLayoutEffect(()=>{const k=g.current;f!=="chat"||!u||!k||_.current||!v.current&&!Rn(k)||(v.current=!0,Ee(k,{settle:!0}))},[ye,Ee,u,f]),o.useLayoutEffect(()=>{if(t===0||f!=="chat"||!u)return;const k=g.current;k&&(v.current=!0,w(!1),Ee(k,{settle:!0}))},[t,Ee,w,u,f]),o.useLayoutEffect(()=>{P.current=null,b.current=!1,_.current=!0,v.current=!0,N.current=0,j.current=0,E.current=0,O(),Te(),J(),ce(null),w(!1),$(_s)},[J,Te,O,D,w,$]),o.useEffect(()=>{const k=g.current;f!=="chat"||!k||_.current||!ue||r||k.scrollTop<=jr&&k.scrollHeight<=k.clientHeight+jr&&mt()},[ue,r,xe,I.length,mt,f]),o.useLayoutEffect(()=>{const k=P.current,T=g.current;!k||!T||_.current||(P.current=null,T.scrollTop=k.scrollTop+Math.max(0,T.scrollHeight-k.scrollHeight),L(T))},[I.length,L]),o.useLayoutEffect(()=>{const k=g.current;if(f!=="chat"||!D||!k){C.current=D,v.current=!0,Ue(D);return}const T=C.current!==D;if(C.current=D,T||_.current){v.current=!0,Ee(k,{conversationKey:D,finishInitial:!0,settle:!0});return}const ie=Rn(k);if(v.current||ie){v.current=!0,w(!1),$(is(k)),Ee(k,{settle:!0});return}L(k,{nearBottom:ie})},[D,y,Ue,c?.id,Ee,w,$,L,f]),o.useEffect(()=>()=>{J(),Te(),O()},[J,Te,O]),{chatColumnStyle:ae,chatThreadPreparingInitialScroll:oe,chatThreadRef:p,composerStackRef:S,goToUserMessage:Bt,handleChatScroll:an,jumpToLatestChatMessage:wt,showScrollToBottomButton:X,userMessageNavigation:W,chatTimelineRows:I}}const $u=o.lazy(()=>me(()=>import("./WorkspaceDiffPanel-HdfItqu2.js").then(e=>e.a),__vite__mapDeps([7,1,2,3,8,4,9,6,10,11,12,13,14,15,16]),import.meta.url).then(e=>({default:e.WorkspaceDiffPanel}))),Lu=o.lazy(()=>me(()=>import("./AppTerminalPanel-C1U1RKU6.js"),__vite__mapDeps([17,1,2]),import.meta.url).then(e=>({default:e.AppTerminalPanel}))),Ou=o.lazy(()=>me(()=>import("./RightSidebarHomePanel-CtH0vZ36.js"),__vite__mapDeps([18,1,2,3,15,11,13]),import.meta.url).then(e=>({default:e.RightSidebarHomePanel}))),Du=o.lazy(()=>me(()=>import("./WorkSidebarPanel-DMsiwOSi.js"),__vite__mapDeps([19,1,2,3,9,11,13,4,8,20,21,22,23]),import.meta.url).then(e=>({default:e.WorkSidebarPanel}))),zu=o.lazy(()=>me(()=>import("./NewExperienceSwitcher-CZCLJj99.js"),__vite__mapDeps([24,1,2,3]),import.meta.url).then(e=>({default:e.NewExperienceSwitcher}))),Fu=o.lazy(()=>me(()=>import("./CollaborationTabs-BL6guh-3.js"),__vite__mapDeps([25,1,2,3,26]),import.meta.url).then(e=>({default:e.CollaborationTabs}))),Bu=o.lazy(()=>me(()=>import("./AppsView-BeGbrJkU.js"),__vite__mapDeps([27,1,2,3,28]),import.meta.url).then(e=>({default:e.AppsView}))),qu=o.lazy(()=>me(()=>import("./GetStartedView-BUlaCO6a.js"),__vite__mapDeps([29,1,2,5,3,30,4,31]),import.meta.url).then(e=>({default:e.GetStartedView}))),Uu=o.lazy(()=>me(()=>import("./LabsRoute-C_HDADl0.js").then(e=>e.q),__vite__mapDeps([32,1,2,3,30,20,10,6,12,0,4,5,33,34]),import.meta.url).then(e=>({default:e.LabsRoute}))),Hu=o.lazy(()=>me(()=>import("./ScheduledWorkPage-BY_4jFm7.js"),__vite__mapDeps([35,1,2,3,36,4,5,6,14,13]),import.meta.url).then(e=>({default:e.ScheduledWorkPage}))),Vu=o.lazy(()=>me(()=>import("./OutputsPage-aPJP4mTV.js"),__vite__mapDeps([37,1,2,3,9,4,11,20,21,22]),import.meta.url).then(e=>({default:e.OutputsPage}))),Gu=o.lazy(()=>me(()=>import("./ProjectsPage-CyThuXQv.js"),__vite__mapDeps([38,1,2,3,20,39]),import.meta.url).then(e=>({default:e.ProjectsPage}))),xo=o.lazy(()=>me(()=>import("./LabSkillSidebar-CPucMztm.js"),__vite__mapDeps([40,1,2,3,4,13,20,21,22,41]),import.meta.url).then(e=>({default:e.LabSkillSidebar}))),Wu=o.lazy(()=>me(()=>import("./BrowserSidebar-XgQLeXw1.js"),__vite__mapDeps([42,1,2,3,4,6,22,43]),import.meta.url).then(e=>({default:e.BrowserSidebar}))),Xu=o.lazy(()=>me(()=>import("./RightChatPanelStack-jsP9CukH.js"),__vite__mapDeps([44,1,2,11,3,45,16,8,4,9,21,5,6,20,22]),import.meta.url).then(e=>({default:e.RightChatPanelStack}))),Ku=o.lazy(()=>me(()=>import("./NativeSkillSidebar-DV4AGiCD.js"),__vite__mapDeps([46,1,2,3,13,47]),import.meta.url).then(e=>({default:e.NativeSkillSidebar}))),Qu=o.lazy(()=>me(()=>import("./TeamChatView-DWjwVxMp.js"),__vite__mapDeps([48,1,2,3,8,4,9,6,20,21,22,49,50]),import.meta.url).then(e=>({default:e.TeamChatView}))),Ju=o.lazy(()=>me(()=>import("./TeamChatView-DWjwVxMp.js"),__vite__mapDeps([48,1,2,3,8,4,9,6,20,21,22,49,50]),import.meta.url).then(e=>({default:e.TeamChatProView}))),Yu=o.lazy(()=>me(()=>import("./CommunityView-DcEhEMm_.js"),__vite__mapDeps([51,1,2,52,3,6,8,4,9,20,21,22,53]),import.meta.url).then(e=>({default:e.CommunityView}))),Zu=o.lazy(()=>me(()=>import("./TeamChatView-DWjwVxMp.js"),__vite__mapDeps([48,1,2,3,8,4,9,6,20,21,22,49,50]),import.meta.url).then(e=>({default:e.TeamAiThreadPanel}))),ed=o.lazy(()=>me(()=>import("./TeamChatView-DWjwVxMp.js"),__vite__mapDeps([48,1,2,3,8,4,9,6,20,21,22,49,50]),import.meta.url).then(e=>({default:e.TeamAgentConversationPanel}))),td=o.lazy(()=>me(()=>import("./TrainingDraftPanel-CxevAlkr.js"),__vite__mapDeps([54,1,2,3,13,34]),import.meta.url).then(e=>({default:e.TrainingDraftPanel}))),nd=o.lazy(()=>me(()=>import("./MainChatThread-CnXHxCy3.js"),__vite__mapDeps([55,1,2,45,3,16,8,4,9,21,11,5,6,20,22]),import.meta.url).then(e=>({default:e.MainChatThread}))),sd=o.lazy(()=>me(()=>import("./TrainingCreationPanel-CjIPEoTX.js"),__vite__mapDeps([56,1,2,3,34]),import.meta.url).then(e=>({default:e.TrainingCreationPanel})));function rd({experience:e,onNewExperienceChange:t,view:n,teamChat:r,community:a,bootstrap:i,runtimeEvents:c,chatMessages:u,pendingUserMessage:h,contextWindowStatus:f,goalRuntime:g,subagentRuntime:y,selectedSessionId:m,composerDraftStore:p,mainComposerFocusRequestId:S,labCloseDetailRequestId:v,labCloseDetailKind:N,sideChatTrainingLaunchRequest:j,onSideChatTrainingLaunchHandled:E,mentionApps:C,connectedAppMentions:P,profileSkills:b,selectedMentionAppId:_,busy:z,turnRunning:V,activeProvider:F,activeModel:se,codexPermissionMode:xe,codexReasoningEffort:be,openPondCommandAccessMode:$e,pendingApproval:ce,activeWorkspaceAppId:X,activeWorkspaceId:we,activeWorkspaceKind:ye,projectTarget:Me,actionCatalog:W,workspaceTarget:K,connection:I,workspaceName:ae,workspaceState:re,workspaceDiff:ke,workspaceBusy:ue,diffBusy:D,forceChatThread:oe=!1,diffPanelOpen:w,diffPanelExpanded:$,rightPanelMode:L,rightPanelTabRequest:Ue,rightChatPanels:Te,runtimeEventStore:et,nativeSkillSidebar:J,extensionSkillSidebar:O,workspaceDiffPanelViewState:st,sidebarFileOpenRequest:Ee,sidebarFileBookmarks:wt,onSetSidebarFileStatus:Bt,browserConversationId:Ie,terminalScope:mt,terminalTabs:an,terminalCwd:de,pendingTerminalCommand:k,terminalOpen:T,onToggleTerminal:ie,onWorkspaceDiffPanelViewStateChange:Ce,training:q,trainingSessions:Ne,trainingChatHandoff:pe,trainingDetailTasksetId:Ke,onTrainingDetailTasksetIdChange:Le,onTrainingChatTaskSelect:ht,onTrainingChatHandoffDismiss:Y,onOpenSession:ve,onExperienceHandoff:Mt,cloudProjects:qt,projects:Et,projectsAccountBaseUrl:ms,projectsTeamName:ln,projectTaskCounts:hs,onNewCloudProject:cn,onNewProjectTask:ps,onToggleProjectPinned:Ut,onUploadLocalProject:gs,chatHistoryHasMore:At=!1,chatHistoryLoading:Hs=!1,onDiffPanelResizeStart:Pe,canSyncWorkspace:Vs,startMessage:pt,onPayload:Nt,onError:Tt,setView:ge,onOpenProfileSettings:Rt,onOpenProviderSettings:un,onOpenTrainingSettings:Gs,onOpenDatasetStorageSettings:rt,changeDraftProvider:Qe,changeProjectTarget:It,changeWorkspaceTarget:ot,setDraftProvider:Pt,setDraftModel:He,onBeginNewChatWithModel:Ws,changeCodexPermissionMode:at,changeCodexReasoningEffort:On,changeOpenPondCommandAccessMode:dn,resolveApproval:Dn,answerCreateImproveQuestion:fn,approveCreateImproveRun:mn,applyCreateImproveCandidate:zn,cancelCreateImproveRun:Ht,openCreateImprovePullRequest:hn,pauseCreateImproveRun:Fn,reconcileCreateImprovePullRequest:Vt,rejectCreateImproveCandidate:Bn,resumeCreateImproveRun:qn,reviseCreateImproveRun:Gt,setMentionedAppId:tt,showToast:Z,onSaveTaskDraft:_e,sendPrompt:ze,stopTurn:xs,syncWorkspaceLocally:bs,refreshWorkspaceDiff:it,onToggleDiffPanelExpanded:Je,onShowDiffPanel:Ye,onShowBrowserPanel:Wt,onShowTrainingDraftPanel:Xs,onShowFilesPanel:gt,onShowRightChatPanel:Ks,onAddRightChat:_t,onOpenRightChatForSession:Un,onLabDetailOpenChange:Qs,scheduledDetailOpen:Js,onScheduledDetailOpenChange:Ys,onTerminalTabsChange:je,onCloseRightChatPanel:lt,onCloseNativeSkillSidebar:Ve,onActivateRightChatPanel:Se,onRightChatModelChange:Xt,onRightChatPromptChange:Zs,onRightChatScrollStateChange:er,onRightChatProviderChange:Kt,onSubmitRightChat:ks,onStopRightChat:tr,onCloseTerminal:ct,onLoadMoreChatHistory:nr}){const[pn]=o.useState(()=>new Oi),xt=m&&!Vr(m)?m:null,vs=Bi(et,xt),Qt=o.useMemo(()=>xt?Fa(c,vs.events):c,[xt,vs.events,c]),bt=o.useMemo(()=>xt?Ba(pn.project(Qt),h):u,[pn,xt,h,Qt,u]),[Ss,gn]=o.useState(null),[Ae,kt]=o.useState(0),ut=o.useRef(""),Hn=o.useCallback(()=>ut.current,[]),[Vn,Oe]=o.useState(null),[Jt,Ge]=o.useState(null),[Yt,ne]=o.useState(null),[xn,Zt]=o.useState(null),[bn,ys]=o.useState(null),[Gn,Ze]=o.useState(null),[kn,js]=o.useState(null),[vn,Wn]=o.useState([]);o.useEffect(()=>{Oe(null)},[Ie]);const Xn=o.useMemo(()=>i?.sessions.find(x=>x.id===m)??null,[i?.sessions,m])?.currentProfile??i?.profileLibrary?.lastUsed??null,$t=qa(i?.profileLibrary??{profiles:[]},Xn)??i?.profile??null,Sn=o.useMemo(()=>Ua($t,i?.extensionCatalog),[i?.extensionCatalog,$t]),en=o.useMemo(()=>Ha($t),[$t]),Kn=o.useCallback(async(x,R=m)=>{if(!I||!i)return;const ee=Va(i.profileLibrary??{profiles:[]},x);if(ee)try{const Q=R&&!Vr(R)?i.sessions.find(B=>B.id===R)??null:null,H=await fu({ref:ee,session:Q,selectProfile:B=>De.profileSelect(I,B),patchSession:(B,ft)=>De.patchSession(I,B,{currentProfile:ft})});let fe=i.sessions;H.session&&(fe=fe.map(B=>B.id===H.session.id?H.session:B)),Nt({...i,profile:H.selected.profile,profileLibrary:H.selected.library,sessions:fe})}catch(Q){const H=Q instanceof Error?Q.message:String(Q);Tt(H),Z(H,"error")}},[i,I,Tt,Nt,m,Z]);o.useEffect(()=>{if(!Ga(Ee,Ie))return;const{file:x,id:R}=Ee;if(Oe({id:R,path:x.path}),!I)return;let ee=!1;return(x.workspaceKind==="local"?De.workspaceFile(I,x.workspaceId,x.path).then(H=>H.content??""):De.sandboxDownloadFile(I,x.workspaceId,x.path).then(H=>{if(H.file.isBinary)throw new Error("Binary files cannot be attached to chat.");return H.contents})).then(H=>{if(ee)return;const fe=x.path.split("/").at(-1)??x.path;gn({id:R,file:new File([H],fe,{type:od(x)})})}).catch(H=>{ee||Z(H instanceof Error?H.message:String(H),"error")}),()=>{ee=!0}},[Ie,I,Z,Ee]);const vt=e==="development"||e==="work"&&Me.value!=="none",Qn=o.useMemo(()=>{if(e==="chat")return en;if(!vt)return[];const x=new Map(W.filter(R=>!Wa(R)).map(R=>[R.id,R]));for(const R of en)x.set(R.id,R);for(const R of vn)x.set(R.id,R);return[...x.values()]},[W,e,vt,vn,en]),he=hu(I),Jn=o.useCallback(x=>{if(!x){he.activate(null);return}he.activate({runId:x.run.id,candidateId:x.candidate.id,title:x.run.objective,fileRootPath:x.fileRootPath,initialPath:x.initialPath})},[he.activate]),yn=o.useCallback(()=>{he.selection?.initialPath&&he.openFile(he.selection.initialPath),Ye()},[he.openFile,he.selection?.initialPath,Ye]),rr=o.useCallback(x=>{ne(x),x&&Ye()},[Ye]),or=o.useCallback(()=>{ne(null),$&&Je()},[$,Je]);o.useEffect(()=>{n!=="labs"&&ne(null)},[n]);const ar=o.useCallback((x,R)=>{const ee=Date.now(),Q=W.find(fe=>fe.id===x)??null;p.set(""),tt(null),ge("chat");const H=fe=>{if(!(fe.find(te=>te.id===x)??null))return!1;const ft=fe.map(te=>te.id===x?{...te,label:R}:te);return Wn(ft),window.requestAnimationFrame(()=>{js({actionId:x,requestId:Math.max(Date.now(),ee+1)})}),!0};if(!I){Q?H([Q]):Z("The Agent action catalog is still loading. Try Use again.","error");return}De.profileCurrent(I).then(fe=>{const B=fe.actionCatalog.map(ft=>Xa(ft));!H(B)&&Q?H([Q]):B.some(ft=>ft.id===x)||Z("This Agent is ready, but its default chat action is unavailable.","error")}).catch(fe=>{Q||Z(fe instanceof Error?fe.message:String(fe),"error")})},[W,p,I,tt,ge,Z]),ir=o.useCallback((x,R)=>{p.set(x),tt(null),R&&Qe(R),ge("chat")},[Qe,p,tt,ge]),Fe=o.useMemo(()=>Ka(i?.preferences),[i?.preferences]),Cs=Fe.training,{createAgentFromLab:Yn,improveAgentFromLab:lr}=gu({activeModel:se,activeProvider:F,bootstrap:i,codexPermissionMode:xe,codexReasoningEffort:be,connection:I,onOpenRightChatForSession:Un,onPayload:Nt}),Lt=o.useMemo(()=>{const x=q.payload?.tasksets??[];return x.some(R=>R.id===bn)?bn:x[0]?.id??null},[bn,q.payload?.tasksets]),jn=n==="labs"&&Lt?`profiles/${i?.profile.activeProfile??"default"}/tasksets/${Lt}`:null,cr=o.useMemo(()=>{if(n!=="labs"||!Lt||!q.payload)return null;const x=q.payload.tasksets.find(te=>te.id===Lt);if(!x)return null;const R=q.payload.plans.filter(te=>te.tasksetId===x.id),ee=new Set(R.map(te=>te.id)),Q=q.payload.jobs.filter(te=>ee.has(te.planId)).sort((te,rs)=>rs.createdAt.localeCompare(te.createdAt)),H=Q.find(te=>te.id===Gn)??Q[0]??null,fe=H?R.find(te=>te.id===H.planId)??null:R.sort((te,rs)=>rs.createdAt.localeCompare(te.createdAt))[0]??null,B=H?q.payload.models.find(te=>te.jobId===H.id)??null:null,ft=H?q.payload.artifacts.filter(te=>te.jobId===H.id):[];return{taskset:x,plan:fe,job:H,lineage:B,artifacts:ft}},[Lt,Gn,q.payload,n]),Ot=o.useMemo(()=>mu(q.payload,m),[m,q.payload]),Cn=o.useMemo(()=>Cu(bt),[bt]),ws=!!g||!!Cn||!!y,Re=n==="labs"&&!!he.selection,tn=n==="labs"&&w&&L==="changes"&&!!Yt,Ms=(n==="chat"||n==="labs")&&!!X,ur=n==="chat"&&w&&L==="chat"&&Te.length===0,Es=Qa(ye)?we??Mu(ae):null,As=n==="chat"&&!!Es,St=Es,Zn=!!St||K.value==="cloud"||K.value==="hybrid",dt=o.useMemo(()=>lu({workspaceTarget:K.value,localWorkspaceId:X,sandboxSourceAvailable:Zn,sandboxWorkspaceId:St,override:Jt}),[X,Zn,St,Jt,K.value]),nn=dt.source,We=nn==="sandbox",dr=o.useMemo(()=>nn&&dt.options.length>1?{value:nn,options:dt.options,onChange:Ge}:null,[nn,dt.options]);o.useEffect(()=>{Ge(null)},[X,Ie,St,K.value]);const Be=!tn&&(Re||Ms||As)&&w&&(L==="changes"||L==="goal"&&ws||ur),es=n==="chat"&&w&&L==="browser",wn=(n==="chat"||n==="labs")&&w&&L==="chat"&&Te.length>0,Mn=n==="chat"&&w&&L==="training",ts=n==="chat"&&w&&!!J,fr=n==="chat"&&w&&!!O,ns=n==="team"&&w&&L==="chat"&&!!r.aiThread,En=n==="team"&&w&&L==="chat"&&!!r.agentConversation,sn=e==="work"&&n==="chat"&&w&&L==="home",An=Wo({supportedView:n==="chat"&&vt||n==="labs",open:w,hasContentPanel:Be||tn||es||wn||Mn||ts||ns||En||sn}),Nn=Be||tn||es||wn||Mn||ts||ns||En||sn||An,ss=Nn&&L!=="chat"&&$,Ns=i?.account.baseUrl??i?.account.activeProfile?.baseUrl??null,l=vu({activeWorkspaceId:we,cloudProjects:qt}),d=n==="chat"&&V&&!ce&&iu(bt),A=oe||bt.length>0||d,M=m??`draft:${n}:${ye??"none"}:${we??X??"none"}`;ut.current=M;const G=s.jsx(Nu,{activeModel:se,activeProvider:F,busy:V,handoff:pe,onDismiss:Y,onSelectTask:ht}),U=o.useMemo(()=>({onAnswerQuestion:fn,onApprove:mn,onApplyCandidate:zn,onCancel:Ht,onOpenPullRequest:hn,onPause:Fn,onReconcilePullRequest:Vt,onRejectCandidate:Bn,onResume:qn,onRevise:Gt}),[fn,mn,zn,Ht,hn,Fn,Vt,Bn,qn,Gt]),le=o.useMemo(()=>Cn?{...Cn,...U}:null,[U,Cn]),yt=Iu(n,A),Dt=o.useCallback(async(x=[],R=null,ee=null,Q={})=>{const H=Q.promptOverride??p.getSnapshot(),fe=()=>{Q.preservePrompt||(p.set(""),tt(null))};if(!R){const B=ee?{command:ee.id,args:H.trim()}:So(H);if(B){if(!Ja({id:B.command},e))return Z(`/${B.command} isn't available in ${e}.`,"info"),!1;if(B.command==="train")return x.length>0?(Z("/train uses the selected chat; add other chats from Models.","error"),!1):m?(fe(),Zt({id:Date.now(),objective:B.args.trim()||null,initialSessionIds:[m]}),ge("labs"),!0):(fe(),Zt({id:Date.now(),objective:B.args.trim()||null,initialSessionIds:[]}),ge("labs"),!0);if(!B.args&&B.command!=="skill"&&B.command!=="sync-cloud")return Z(`Add instructions after /${B.command}.`,"info"),!1;if(x.length>0)return Z(`/${B.command} tasks do not accept attachments yet. Add file context in the task thread.`,"error"),!1;if(B.command==="submit-issue")return Ya(P)?(kt(te=>te+1),ze([],null,Za(B.args),{clearPrompt:Q.preservePrompt?()=>{}:void 0,usageAttribution:Cr(B,ee?"composer_selection":"prompt_parse")})):(Z("Connect the GitHub app before using /submit-issue.","error"),!1);if(wu(B)){const te=B.command==="skill"?uu(B.args,F,i?.profile.sourcePath??null):go(B);return kt(rs=>rs+1),ze([],null,te,{clearPrompt:Q.preservePrompt?()=>{}:void 0,usageAttribution:Cr(B,ee?"composer_selection":"prompt_parse")})}return kt(te=>te+1),ze([],null,go(B),{clearPrompt:Q.preservePrompt?()=>{}:void 0,usageAttribution:Cr(B,ee?"composer_selection":"prompt_parse")})}}return kt(B=>B+1),ze(x,R,Q.promptOverride,{clearPrompt:Q.preservePrompt?()=>{}:void 0,displayPrompt:Q.displayPrompt,turnMetadata:Q.turnMetadata})},[se,F,ye,i?.profile,P,p,e,ze,m,tt,ge,Z,q,n]),zt=o.useCallback(x=>{pe&&x!==pe.model.modelId&&Y(),Pt(F),He(x)},[F,Y,He,Pt,pe]),nt=o.useCallback(x=>{pe&&x!==pe.model.providerId&&Y(),Qe(x)},[Qe,Y,pe]),{chatColumnStyle:rn,chatThreadPreparingInitialScroll:Xe,chatThreadRef:Xo,chatTimelineRows:Ko,composerStackRef:Qo,goToUserMessage:$r,handleChatScroll:Jo,jumpToLatestChatMessage:Yo,showScrollToBottomButton:Zo,userMessageNavigation:Ts}=_u({browserConversationId:Ie,chatSubmissionVersion:Ae,chatHistoryHasMore:At,chatHistoryLoading:Hs,chatMessages:bt,onLoadMoreChatHistory:nr,pendingApproval:ce,showChatThread:A,showThinkingIndicator:d,view:n}),Rs=o.useCallback((x,R)=>{ei({conversationId:Ie,href:x,explicitFile:R?.explicitFile,newTab:R?.newTab}).then(ee=>{ee&&Wt()})},[Ie,Wt]),Is=ci({projectTargetDetail:Me.detail,projectTargetValue:Me.value,workspaceRepoPath:re?.repoPath,workspaceTargetValue:K.value}),Lr=o.useCallback(x=>{const R=ru(x,Is);if(R&&I){De.signLocalVideoUrl(I,{path:R}).then(({url:Q})=>Rs(Q)).catch(Q=>{Z(Q instanceof Error?Q.message:"Could not open this video.","error")});return}const ee=ui(x,{workspaceRootPath:Is});Ye(),Oe({id:Date.now(),path:ee?.path??x})},[I,Rs,Ye,Z,Is]),Or=o.useCallback(async x=>{if(!I||!x.filePreview&&!x.imagePreview){Z("File content is not available for this attachment.","error");return}try{const R=x.name.trim().replace(/[\\/]+/g,"-")||"attachment.txt",Q=`Attachments/${x.id.replace(/[^a-zA-Z0-9._-]+/g,"-")||"file"}/${R}`,H={path:Q,status:"",additions:0,deletions:0,patch:"",content:null};let fe;if(x.filePreview){const B=await De.chatAttachmentFile(I,x.filePreview);H.content=B.content}else x.imagePreview&&(fe=(await De.signChatAttachmentImageUrl(I,x.imagePreview)).url);Ye(),Oe({id:Date.now(),path:Q,file:H,...fe?{imageUrl:fe}:{}})}catch(R){Z(R instanceof Error?R.message:"Could not open this attachment.","error")}},[I,Ye,Z]),ea=ue&&!!X&&!re,Dr=he.selection?`candidate:${he.selection.runId}:${he.selection.candidateId}`:null,ta=Be?s.jsx($u,{appId:Re?Dr:We?null:X,workspaceId:Re?Dr:We?St:X,workspaceKind:Re?"local_project":We?null:"local_project",connection:I,runtimeEvents:Qt,diff:Re?he.diff:We?null:ke,fileRootPath:Re?he.selection?.fileRootPath??null:We?null:jn,filesWithPreview:Re,editorPreferences:i?.preferences.editor??null,loading:Re?he.loading:We?ue:D||ea,openFileRequest:Re?he.openFileRequest:Vn,sidebarFileBookmarks:wt,sidebarFileSourceSessionId:m,onSetSidebarFileStatus:Bt,readOnly:Re,sideChatTabs:Te.map(x=>({id:x.id,title:x.title,running:x.running})),sourceSwitcher:Re?null:dr,tabRequest:Ue,viewState:st,workspaceName:Re?he.selection?.title??"Change":We?ae??"Sandbox":ae,workspaceInitialized:Re?!0:We?!!St:!!re?.initialized,workspaceError:Re?he.error:We?null:re?.error??ke?.error??null,expanded:$,onResizeStart:Pe,onRefresh:x=>{Re?he.refresh(x):it(x)},onToggleExpanded:Je,onOpenBrowser:Wt,onOpenBrowserUrl:Rs,onViewStateChange:Ce,onCloseSideChat:lt,onOpenSideChat:n==="chat"?_t:void 0,onSelectSideChat:x=>{Se(x),Ks()},goalDetails:{active:L==="goal",createRuntime:le,goalRuntime:g,subagentRuntime:y},sandboxFileSource:We?{sandboxId:St,emptyMessage:"No sandbox filesystem yet."}:null,trainingSummary:cr}):null,na=es?s.jsx(Wu,{conversationId:Ie,expanded:$,onResizeStart:Pe}):null,sa=ns?o.createElement(Zu,{...r,key:r.aiThread?.conversationId,onResizeStart:Pe}):null,ra=En?o.createElement(ed,{...r,key:r.agentConversation?.run.id,onResizeStart:Pe}):null,oa=wn?s.jsx(Xu,{panels:Te,runtimeEventStore:et,actionCatalog:Qn,createImproveActions:U,contextCompaction:Fe.contextCompaction,steerActiveResponses:Fe.steerActiveResponses,busy:z,codexPermissionMode:xe,codexReasoningEffort:be,openPondCommandAccessMode:$e,connection:I,connectedAppMentions:P,mentionApps:C,codexPersonalSkills:i?.codexPersonalSkills??[],profileSkills:b,profileLibrary:i?.profileLibrary??{lastUsed:null,profiles:[]},extensionCatalog:i?.extensionCatalog??null,projectTarget:Me,providerSettings:i?.providers??null,accountBaseUrl:Ns,billingOrganizationSlug:l.organizationSlug,billingTeamId:l.teamId,showToast:Z,workspaceTarget:K,onAddChat:_t,onActivatePanel:Se,onClosePanel:lt,onCodexPermissionModeChange:at,onCodexReasoningEffortChange:On,onOpenPondCommandAccessModeChange:dn,onModelChange:Xt,onOpenAttachmentInSidebar:Or,onOpenFileInSidebar:Lr,onOpenProfileSettings:Rt,onOpenSession:ve,onProviderChange:Kt,onProviderSetupOpen:un,onPromptChange:Zs,onProfileTargetChange:(x,R)=>{Kn(R,x)},onScrollStateChange:er,onProjectTargetChange:It,onResolveApproval:Dn,onResizeStart:Pe,onSelectFiles:gt,onShowBrowserPanel:Wt,onStop:tr,onSubmit:ks,onWorkspaceTargetChange:x=>{ot(x)}}):null,aa=An?s.jsx(Ou,{expanded:$,terminalOpen:T,sideChatAvailable:n==="chat"||n==="labs",onOpenBrowser:Wt,onOpenFiles:gt,onOpenReview:Ye,onOpenSideChat:_t,onOpenTrainingDraft:Xs,trainingDraftAvailable:!!m,onResizeStart:Pe,onToggleExpanded:Je,onToggleTerminal:ie}):null,ia=sn?s.jsx(Du,{chatMessages:bt,connection:I,contextWindowStatus:f,expanded:$,runtimeEvents:Qt,sessionId:m,showToast:Z,onResizeStart:Pe,onToggleExpanded:Je,onUseOutput:x=>gn({id:Date.now(),file:x}),onHandoffOutput:async(x,R,ee)=>{await Mt({target:x,sourceSessionId:m,output:R,prompt:ti(R,x)}),ee&&gn({id:Date.now(),file:ee})},onReviseOutput:(x,R,ee)=>{gn({id:Date.now(),file:R}),p.set(`Create revision ${x.revision+1} of "${x.title}" from the attached revision ${x.revision}. Apply only this requested change:
|
|
7
|
-
|
|
8
|
-
${ee}`)},onAgentPackageInstalled:async()=>{I&&Nt(await De.bootstrap(I))}}):null,la=Mn?s.jsx(o.Suspense,{fallback:null,children:s.jsx(td,{training:q,sessionId:m,expanded:$,onOpenTraining:()=>ge("labs"),onResizeStart:Pe,onToggleExpanded:Je})}):null,Tn=ra??sa??oa??(ts&&J?s.jsx(Ku,{expanded:$,skill:J,onClose:Ve,onResizeStart:Pe,onToggleExpanded:Je}):null)??(fr&&O?s.jsx(xo,{connection:I,expanded:$,selection:O,onClose:Ve,onResizeStart:Pe,onToggleExpanded:Je}):null)??(tn&&Yt?s.jsx(xo,{connection:I,expanded:$,selection:Yt,onClose:or,onResizeStart:Pe,onToggleExpanded:Je}):null)??ta??na??la??ia??aa,mr=s.jsx(o.Suspense,{fallback:null,children:s.jsx(Lu,{open:T,connection:I,scope:mt,tabs:an,onTabsChange:je,cwd:de,appId:X,workspaceName:ae,queuedCommand:k,onClose:ct})});return s.jsxs("main",{className:`main-pane ${yt} ${T?"terminal-open":""} ${Nn?"diff-open":""} ${ss?"diff-expanded":""}`,children:[n==="team"||n==="community"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Fu,{onSelect:ge,view:n})}):null,n==="apps"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Bu,{account:i?.account??null,connection:I,defaultTeamId:i?.preferences.defaultTeamId??null,onToast:Z})}):n==="team"?s.jsxs(o.Suspense,{fallback:null,children:[r.teamId?s.jsx(Qu,{...r}):s.jsx(Ju,{}),Nn?Tn:null]}):n==="community"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Yu,{...a})}):n==="get-started"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(qu,{})}):n==="scheduled"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Hu,{connection:I,detailOpen:Js,detailExpanded:$,onDetailOpenChange:Ys,onDetailResizeStart:Pe,onToggleDetailExpanded:Je})}):n==="outputs"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Vu,{connection:I,onViewChat:ve})}):n==="projects"?s.jsx(o.Suspense,{fallback:null,children:s.jsx(Gu,{accountBaseUrl:ms,connection:I,onNewCloudProject:cn,onNewTask:ps,onTogglePinned:Ut,onUploadLocalProject:gs,projects:Et,taskCountByProjectId:hs,teamName:ln})}):n==="labs"?ss?s.jsx(o.Suspense,{fallback:null,children:Tn}):s.jsxs(s.Fragment,{children:[s.jsx(o.Suspense,{fallback:null,children:s.jsx(Uu,{account:i?.account??null,closeDetailRequestId:v,closeDetailKind:N,onNewModel:(x,R,ee)=>{Zt({id:Date.now(),objective:null,initialSessionIds:[],initialTasksetId:x,learnedPreferenceReward:R,initialModelId:ee})},onUseAgent:ar,onCreateAgent:Yn,onImproveAgent:lr,onDetailOpenChange:Qs,onSkillSelectionChange:rr,onOpenRunConversation:Un,onAnswerQuestion:fn,onApplyCandidate:zn,onApprove:mn,onCancel:Ht,candidateReview:{diff:he.diff,error:he.error,loading:he.loading},onCandidateReviewChange:Jn,onOpenPullRequest:hn,onOpenCandidateFiles:yn,onPause:Fn,onReconcilePullRequest:Vt,onRejectCandidate:Bn,onResume:qn,onRevise:Gt,profileView:{payload:i,connection:I,onPayload:Nt,onError:Tt,onToast:Z,onSkillCommand:ir},training:{training:q,sessions:Ne,localProjects:i?.localProjects??[],connection:I,defaultModel:{providerId:F,modelId:se},onError:Tt,onToast:Z,onSettingsPreferences:x=>{i&&Nt({...i,preferences:x.preferences})},onOpenTrainingSettings:Gs,onOpenProviderSettings:un,onOpenDatasetStorageSettings:rt,onOpenChat:ve,onChatWithModel:Ws,onOpenTasksetFiles:gt,launchRequest:j??xn,onLaunchHandled:x=>{if(j?.id===x){E(x);return}Zt(R=>R?.id===x?null:R)},preferences:Cs,settingsPreferences:Fe,providerSettings:i?.providers??null,reasoningEffort:be,selectedTasksetId:Lt,onSelectedTasksetIdChange:ys,onSelectedTrainingJobIdChange:Ze,detailTasksetId:Ke,onDetailTasksetIdChange:Le}})}),mr,Nn?s.jsx(o.Suspense,{fallback:null,children:Tn}):null]}):ss?s.jsx(o.Suspense,{fallback:null,children:Tn}):A?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:`chat-column ${ce?"has-approval":""}`,style:rn,children:[s.jsx(o.Suspense,{fallback:null,children:s.jsx(nd,{accountBaseUrl:Ns,activeWorkspaceAppId:X,billingOrganizationSlug:l.organizationSlug,billingTeamId:l.teamId,connection:I,conversationKey:Ie??"draft",creation:Ot,onOpenBrowserLink:Rs,onOpenAttachmentInSidebar:Or,onOpenFileInSidebar:Lr,onOpenProfileSettings:Rt,onResolveUserQuestion:async(x,R)=>{const ee=R.action==="answer"?R.text:"Dismiss this question";if(!await ze([],null,ee,{displayPrompt:ee,turnMetadata:{userQuestionResolution:R}}))throw new Error("The question response could not be sent.")},onOpenSession:ve,onScroll:x=>Jo(x.currentTarget),rows:Ko,sessionId:Ie,turnRunning:V,userAttachmentDisplay:F==="codex"?"compact":"full",threadRef:Xo,workspaceRootPath:Is})}),s.jsxs("div",{className:`composer-stack dock ${ce?"has-approval":""}`,ref:Qo,children:[Ot?s.jsx(o.Suspense,{fallback:null,children:s.jsx(sd,{compact:!0,creation:Ot,training:q,onOpenTraining:()=>ge("labs")})}):null,G,s.jsx(ho,{approval:ce,onResolve:Dn}),Zo&&!Xe?s.jsx(Tu,{canGoNext:Ts.canGoNext,canGoPrevious:Ts.canGoPrevious,onJumpToLatest:Yo,onNext:()=>{Ts.canGoNext&&$r("next")},onPrevious:()=>{Ts.canGoPrevious&&$r("previous")}}):null,s.jsx(mo,{experience:e,draftStore:p,attachmentRequest:Ss,mode:"dock",focusRequestId:S,mentionApps:vt?C:[],connectedAppMentions:P,profileSkills:F==="codex"?i?.codexPersonalSkills??[]:Sn,selectedMentionAppId:_,contextWindowStatus:f,goalRuntime:e!=="chat"?g:null,subagentRuntime:e!=="chat"?y:null,createImproveRuntime:vt?le:null,busy:V,running:V,steerActiveResponses:Fe.steerActiveResponses,submissionScopeKey:M,getCurrentSubmissionScopeKey:Hn,voiceInputChannelKey:`main-composer:${M}`,showProjectFooter:!1,connection:I,providerSettings:i?.providers??null,provider:F,model:se,projectTarget:Me,profileTarget:null,actionCatalog:Qn,requestedAction:kn,workspaceTarget:K,codexPermissionMode:xe,codexReasoningEffort:be,openPondCommandAccessMode:$e,onProviderChange:nt,onProviderSetupOpen:un,onProjectTargetChange:It,onProfileTargetChange:x=>{Kn(x)},onWorkspaceTargetChange:x=>{ot(x)},onModelChange:zt,onCodexPermissionModeChange:at,onCodexReasoningEffortChange:On,onOpenPondCommandAccessModeChange:dn,onMentionAppSelect:tt,onSaveTaskDraft:_e,showToast:Z,onSubmit:Dt,onStop:xs})]})]}),mr,s.jsx(o.Suspense,{fallback:null,children:Tn})]}):s.jsxs(s.Fragment,{children:[s.jsxs("section",{className:"start-panel",children:[s.jsx(o.Suspense,{fallback:null,children:s.jsx(zu,{value:e==="chat"?"chat":"work",onChange:t})}),s.jsxs("div",{className:"start-welcome",children:[s.jsx("h1",{children:pt}),Vs&&s.jsx(Ru,{busy:ue,onSync:()=>{bs()}})]}),s.jsxs("div",{className:"composer-stack start",children:[G,s.jsx(ho,{approval:ce,onResolve:Dn}),s.jsx(mo,{experience:e,draftStore:p,attachmentRequest:Ss,mode:"start",autoFocus:!0,focusRequestId:S,mentionApps:vt?C:[],connectedAppMentions:P,profileSkills:F==="codex"?i?.codexPersonalSkills??[]:Sn,selectedMentionAppId:_,contextWindowStatus:f,goalRuntime:e!=="chat"?g:null,subagentRuntime:e!=="chat"?y:null,createImproveRuntime:vt?le:null,busy:V,running:V,steerActiveResponses:Fe.steerActiveResponses,submissionScopeKey:M,getCurrentSubmissionScopeKey:Hn,voiceInputChannelKey:`main-composer:${M}`,connection:I,providerSettings:i?.providers??null,provider:F,model:se,showProjectFooter:e!=="chat",projectTarget:Me,profileTarget:null,actionCatalog:Qn,requestedAction:kn,workspaceTarget:K,codexPermissionMode:xe,codexReasoningEffort:be,openPondCommandAccessMode:$e,onProviderChange:nt,onProviderSetupOpen:un,onProjectTargetChange:It,onProfileTargetChange:x=>{Kn(x)},onWorkspaceTargetChange:x=>{ot(x)},onModelChange:zt,onCodexPermissionModeChange:at,onCodexReasoningEffortChange:On,onOpenPondCommandAccessModeChange:dn,onMentionAppSelect:tt,onSaveTaskDraft:_e,showToast:Z,onSubmit:Dt,onStop:xs})]})]}),mr,s.jsx(o.Suspense,{fallback:null,children:Tn})]})]})}function od(e){const t=e.path.toLowerCase();return t.endsWith(".md")||t.endsWith(".mdx")?"text/markdown":t.endsWith(".json")?"application/json":t.endsWith(".yaml")||t.endsWith(".yml")?"application/yaml":"text/plain"}const xd=Object.freeze(Object.defineProperty({__proto__:null,MainPane:rd,shouldShowRightSidebarHomePanel:Wo},Symbol.toStringTag,{value:"Module"}));export{ho as A,Si as C,ji as F,Ni as I,xd as M,Wr as P,Li as R,_i as a,wi as b,Ei as c,Oi as d,ou as e,Pu as f,eu as g,wc as h,gd as i,Ec as j,Ic as k,pd as l,Fl as m,hi as n,Pc as o,$c as r,iu as s,Bi as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as a,j as i}from"./index-BoaTQ0Rb.js";import{F as ve}from"./folder-open-B_Ayxxo8.js";import{du as we,dv as Re,dw as ye,dx as Ie,a2 as je,a6 as Ce,aj as Pe,dy as Te,a7 as Ae,a8 as Se,ac as Me,a9 as Ne,X as Fe,P as Ee,aq as Be}from"./App-DNZ5VhFd.js";import{u as $e,a as De,T as Le,M as Oe}from"./Messages-DxctstDI.js";import{d as qe,u as Ue,s as ze,e as He,l as Ke,f as Ve,i as We,A as Qe,g as Ge}from"./MainPane-DjnT-kvm.js";import"./chevron-up-CHxYR4AX.js";import"./MarkdownText-_zVYW4pN.js";import"./chat-file-links-BQe708gU.js";import"./desktop-files-BQj1J-ob.js";import"./arrow-up-right-BK6EpHpC.js";import"./play-D9jaK5MP.js";import"./refresh-cw-DZHqZGos.js";import"./cloud-upload-DLtawDYW.js";import"./square-D_1V6onE.js";function Xe({panel:t,runtimeEventStore:L,actionCatalog:I,createImproveActions:j,contextCompaction:C,steerActiveResponses:O,initialScrollState:g,codexPermissionMode:q,codexReasoningEffort:U,openPondCommandAccessMode:P,connection:b,connectedAppMentions:z,mentionApps:H,codexPersonalSkills:K,profileSkills:V,profileTarget:T,projectTarget:W,providerSettings:Q,accountBaseUrl:G,billingOrganizationSlug:X,billingTeamId:_,showToast:J,workspaceTarget:Y,onCodexPermissionModeChange:Z,onCodexReasoningEffortChange:ee,onOpenPondCommandAccessModeChange:A,onModelChange:te,onOpenAttachmentInSidebar:se,onOpenFileInSidebar:ie,onOpenProfileSettings:oe,onOpenSession:ne,onProviderChange:ae,onProviderSetupOpen:re,onPromptChange:ce,onProfileTargetChange:de,onScrollStateChange:le,onProjectTargetChange:ue,onResolveApproval:me,onShowBrowserPanel:S,onStop:he,onSubmit:x,onWorkspaceTargetChange:fe}){const w=a.useRef(null),[v]=a.useState(()=>new qe),R=a.useRef(g?.stickyToBottom??!0),M=a.useRef(!1),N=Ue(L,t.runtimeSource==="live"?t.sessionId:null),s=a.useMemo(()=>{if(t.runtimeSource==="history"||!t.sessionId)return t;const o=N.events,l=we(o,[]);return{...t,messages:Ce(v.project(o),t.pendingUserMessage),createImproveRun:je({events:o}),contextWindowStatus:ye({provider:t.provider,snapshot:Ie(l,t.sessionId),preferences:C}),goalRuntime:Re(l,t.sessionId)}},[v,C,N,t]),u=s.running&&!s.pendingApproval&&ze(s.messages),f=a.useMemo(()=>s.createImproveRun?{...j,run:s.createImproveRun}:null,[s.createImproveRun,j]),F=a.useMemo(()=>He(s.messages,{showThinkingIndicator:u}),[s.messages,u]),E=$e(s.messages,s.sessionId??`draft:${s.id}`),p=s.messages.at(-1),y=a.useMemo(()=>Ke(s.messages),[s.messages]),B=De({connection:b,latestTurnId:p?.turnId??null,sessionId:s.sessionId,turnRunning:s.running}),$=[s.id,s.sessionId??"draft",F.length,p?.id??"",p?.content?.length??0,p?.timestamp??"",u?"thinking":""].join(":");a.useLayoutEffect(()=>{const o=w.current;!o||M.current||(M.current=!0,o.scrollTop=g?.stickyToBottom?o.scrollHeight:g?.scrollTop??0)},[g]),Ve({contentKey:$,onContentChange:o=>{R.current&&(o.scrollTop=o.scrollHeight)},threadRef:w});const c=a.useCallback((o,l)=>{const k=s.sessionId??`side-chat:${s.id}`;Pe({conversationId:k,href:o,explicitFile:l?.explicitFile,newTab:l?.newTab}).then(m=>{m&&S()})},[s.id,s.sessionId,S]),pe=a.useCallback(async(o,l)=>{const k=l.action==="answer"?l.text:"Dismiss this question";if(!await x([],null,null,{displayPrompt:k,promptOverride:k,turnMetadata:{userQuestionResolution:l}}))throw new Error("The question response could not be sent.")},[x]);return i.jsxs("section",{className:`right-chat-pane ${s.pendingApproval?"has-approval":""}`,id:`right-chat-panel-${s.id}`,role:"tabpanel","aria-labelledby":`right-chat-tab-${s.id}`,children:[i.jsx("div",{className:"chat-thread right-chat-thread",ref:w,onScroll:o=>{const l=o.currentTarget;R.current=l.scrollHeight-l.scrollTop-l.clientHeight<=72,le({scrollTop:l.scrollTop,stickyToBottom:R.current})},children:F.map(o=>o.type==="thinking"?i.jsx(Le,{},o.id):i.jsx(Oe,{activeWorkspaceAppId:s.activeWorkspaceAppId,accountBaseUrl:G,billingOrganizationSlug:X,billingTeamId:_,connection:b,animateInitialContent:o.message.role==="assistant"&&E.has(o.message.id),kvCacheSummary:We(o.message,y)&&o.message.turnId?B.get(o.message.turnId)??null:null,message:o.message,onOpenBrowserLink:c,onOpenAttachmentInSidebar:se,onOpenFileInSidebar:ie,onOpenProfileSettings:oe,onResolveUserQuestion:pe,onOpenSession:ne,userAttachmentDisplay:t.provider==="codex"?"compact":"full",workspaceRootPath:s.workspaceRootPath,showFooter:o.showFooter},o.id))}),i.jsxs("div",{className:`composer-stack dock right-chat-composer ${s.pendingApproval?"has-approval":""}`,children:[i.jsx(Qe,{approval:s.pendingApproval,onResolve:me}),i.jsx(Ge,{mode:"dock",prompt:t.prompt,mentionApps:H,connectedAppMentions:z,profileSkills:t.provider==="codex"?K:V,profileTarget:t.provider==="codex"?null:T,selectedMentionAppId:null,contextWindowStatus:s.contextWindowStatus,goalRuntime:s.goalRuntime,createImproveRuntime:f,busy:s.running,running:s.running,steerActiveResponses:O,submissionScopeKey:s.sessionId??s.id,showProjectFooter:!1,connection:b,providerSettings:Q,provider:t.provider,model:t.model,projectTarget:W,actionCatalog:I,workspaceTarget:Y,codexPermissionMode:q,codexReasoningEffort:U,openPondCommandAccessMode:t.provider==="codex"?P:s.session?.openPondCommandAccessMode??P,onProviderChange:ae,onProviderSetupOpen:re,onProjectTargetChange:ue,onWorkspaceTargetChange:fe,onModelChange:te,onCodexPermissionModeChange:Z,onCodexReasoningEffortChange:ee,onOpenPondCommandAccessModeChange:A,onPromptChange:ce,onProfileTargetChange:de,onMentionAppSelect:void 0,showToast:J,onSubmit:x,onStop:he})]})]})}function lt({panels:t,runtimeEventStore:L,actionCatalog:I=[],createImproveActions:j,contextCompaction:C,steerActiveResponses:O,busy:g,codexPermissionMode:q,codexReasoningEffort:U,openPondCommandAccessMode:P,connection:b,connectedAppMentions:z,mentionApps:H,codexPersonalSkills:K,profileSkills:V=[],profileLibrary:T={lastUsed:null,profiles:[]},extensionCatalog:W,projectTarget:Q,providerSettings:G,accountBaseUrl:X,billingOrganizationSlug:_,billingTeamId:J,showToast:Y,workspaceTarget:Z,onAddChat:ee,onActivatePanel:A,onClosePanel:te,onCodexPermissionModeChange:se,onCodexReasoningEffortChange:ie,onOpenPondCommandAccessModeChange:oe,onModelChange:ne,onOpenAttachmentInSidebar:ae,onOpenFileInSidebar:re,onOpenProfileSettings:ce,onOpenSession:de,onProviderChange:le,onProviderSetupOpen:ue,onPromptChange:me,onProfileTargetChange:S,onScrollStateChange:he,onProjectTargetChange:x,onResolveApproval:fe,onResizeStart:w,onSelectFiles:v,onShowBrowserPanel:R,onStop:M,onSubmit:N,onWorkspaceTargetChange:s}){const[u,f]=a.useState(!1),[F,E]=a.useState(()=>Te(t)?.id??null),p=a.useRef(null),y=a.useRef(new Map),B=a.useRef(new Set(t.map(e=>e.id))),$=a.useRef(new Map(t.map(e=>[e.id,e.activationVersion]))),c=t.find(e=>e.id===F)??t.at(-1)??null,pe=c?.session?.currentProfile??T.lastUsed,o=Ae(T,pe),l=o?Se(o,W):V,k=o?[...I.filter(e=>!Me(e)),...Ne(o)]:I;a.useEffect(()=>{const e=B.current,d=$.current;let r=null,h=null;for(const n of t)e.has(n.id)||(r=n),e.has(n.id)&&n.activationVersion>(d.get(n.id)??0)&&(h=n);B.current=new Set(t.map(n=>n.id)),$.current=new Map(t.map(n=>[n.id,n.activationVersion])),E(n=>h?h.id:r?r.id:n&&t.some(D=>D.id===n)?n:t.at(-1)?.id??null)},[t]),a.useEffect(()=>{if(!u)return;function e(r){p.current?.contains(r.target)||f(!1)}function d(r){r.key==="Escape"&&f(!1)}return document.addEventListener("pointerdown",e),document.addEventListener("keydown",d),()=>{document.removeEventListener("pointerdown",e),document.removeEventListener("keydown",d)}},[u]);const m=a.useCallback((e,d=!1)=>{E(e),A(e),d&&window.requestAnimationFrame(()=>y.current.get(e)?.focus())},[A]),ge=a.useCallback((e=!1)=>{v(),e&&window.requestAnimationFrame(()=>{document.getElementById("right-sidebar-files-tab")?.focus()})},[v]),ke=a.useCallback((e,d)=>{const r=t.findIndex(xe=>xe.id===d);if(r<0)return;const h=r+1;let n=null;if(e.key==="ArrowRight"&&(n=(h+1)%(t.length+1)),e.key==="ArrowLeft"&&(n=(h-1+t.length+1)%(t.length+1)),e.key==="Home"&&(n=0),e.key==="End"&&(n=t.length),n===null)return;if(e.preventDefault(),n===0){ge(!0);return}const D=t[n-1];D&&m(D.id,!0)},[t,ge,m]),be=a.useCallback(e=>{if(!["ArrowRight","ArrowLeft","Home","End"].includes(e.key)||(e.preventDefault(),e.key==="Home"))return;const d=e.key==="ArrowLeft"||e.key==="End"?t.at(-1):t[0];d&&m(d.id,!0)},[t,m]);return i.jsxs("aside",{className:"workspace-diff-panel right-chat-panel-stack","aria-label":"Side chats",children:[i.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize side chat panel",onPointerDown:w}),i.jsx("div",{className:"workspace-diff-topbar right-chat-topbar",children:i.jsxs("div",{className:"workspace-diff-tabs",role:"tablist","aria-label":"Right sidebar views",children:[i.jsxs("button",{type:"button",className:"workspace-diff-tab",role:"tab",id:"right-sidebar-files-tab","aria-controls":"right-sidebar-files-panel","aria-selected":!1,tabIndex:-1,onClick:()=>ge(!1),onKeyDown:be,children:[i.jsx(ve,{size:14}),i.jsx("span",{children:"Files"})]}),t.map(e=>{const d=e.id===c?.id;return i.jsxs("div",{className:`workspace-diff-tab right-chat-tab ${d?"active":""}`,children:[i.jsxs("button",{type:"button",className:"workspace-diff-tab-main",role:"tab",id:`right-chat-tab-${e.id}`,"aria-controls":`right-chat-panel-${e.id}`,"aria-selected":d,tabIndex:d?0:-1,title:e.title,ref:r=>{r?y.current.set(e.id,r):y.current.delete(e.id)},onClick:()=>m(e.id),onKeyDown:r=>ke(r,e.id),children:[e.running?i.jsx("span",{className:"right-chat-status-dot","aria-label":"Running"}):null,i.jsx("span",{children:e.title})]}),i.jsx("button",{type:"button",className:"workspace-diff-tab-close",title:`Close ${e.title}`,"aria-label":`Close ${e.title}`,onClick:r=>{r.stopPropagation(),te(e.id)},children:i.jsx(Fe,{size:12})})]},e.id)}),i.jsxs("div",{className:"workspace-diff-add-anchor",ref:p,children:[i.jsx("button",{type:"button",className:`workspace-diff-add-tab ${u?"active":""}`,title:"Add to right sidebar","aria-label":"Add to right sidebar","aria-haspopup":"menu","aria-expanded":u,onClick:()=>f(e=>!e),children:i.jsx(Ee,{size:15})}),u?i.jsxs("div",{className:"workspace-diff-add-menu right-chat-add-popover",role:"menu",children:[i.jsxs("button",{type:"button",role:"menuitem",onClick:()=>{f(!1),ee()},children:[i.jsx(Be,{size:13}),i.jsx("span",{children:"New task"})]}),i.jsxs("button",{type:"button",role:"menuitem",onClick:()=>{f(!1),v()},children:[i.jsx(ve,{size:13}),i.jsx("span",{children:"Files"})]})]}):null]})]})}),i.jsx("div",{className:"right-chat-stack-body panes-1",children:c?i.jsx(Xe,{busy:g,createImproveActions:j,contextCompaction:C,steerActiveResponses:O,codexPermissionMode:q,codexReasoningEffort:U,openPondCommandAccessMode:P,connection:b,connectedAppMentions:z,actionCatalog:k,mentionApps:H,codexPersonalSkills:K,profileSkills:l,profileTarget:null,panel:c,runtimeEventStore:L,initialScrollState:{scrollTop:c.scrollTop,stickyToBottom:c.stickyToBottom},projectTarget:Q,providerSettings:G,accountBaseUrl:X,billingOrganizationSlug:_,billingTeamId:J,showToast:Y,workspaceTarget:Z,onCodexPermissionModeChange:se,onCodexReasoningEffortChange:ie,onOpenPondCommandAccessModeChange:e=>oe(e,c.session),onModelChange:e=>ne(c.id,e),onOpenAttachmentInSidebar:ae,onOpenFileInSidebar:re,onOpenProfileSettings:ce,onOpenSession:de,onProviderChange:e=>le(c.id,e),onProviderSetupOpen:ue,onPromptChange:e=>me(c.id,e),onProfileTargetChange:e=>S(c.sessionId,e),onScrollStateChange:e=>he(c.id,e),onProjectTargetChange:x,onResolveApproval:fe,onShowBrowserPanel:R,onStop:()=>M(c.sessionId),onSubmit:(e,d,r,h)=>N(c.id,e,d,r,h),onWorkspaceTargetChange:s},c.id):null})]})}export{lt as RightChatPanelStack};
|