@openchambery/web 2.1.9-beta.1 → 2.1.9-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AgentAvatar-CJQwq8UM.js → AgentAvatar-qLxaEaDh.js} +1 -1
- package/dist/assets/{AssistantView-j9aI8OWI.js → AssistantView-CeP8V0X-.js} +3 -3
- package/dist/assets/{DiagramView-EsIuVPrU.js → DiagramView-DRCsjVx9.js} +1 -1
- package/dist/assets/{FadeInOnReveal-BNVExwoL.js → FadeInOnReveal-CX8Bkq-l.js} +1 -1
- package/dist/assets/{Icon-B4xKSuz3.js → Icon-BCFeHDWx.js} +1 -1
- package/dist/assets/{ImageLoadingPlaceholder-xB8WeKks.js → ImageLoadingPlaceholder-DEpMJXzV.js} +1 -1
- package/dist/assets/{LoadingImage-CoT3GWhg.js → LoadingImage-BAT9D9wN.js} +1 -1
- package/dist/assets/{MarkdownRenderer-TmfHeWHu.js → MarkdownRenderer-BvKaN2KX.js} +2 -2
- package/dist/assets/{MarkdownRendererImpl-vkv1QLTd.js → MarkdownRendererImpl-D6iUJhtT.js} +1 -1
- package/dist/assets/{MarkstreamRendererImpl-BbnksqWU.js → MarkstreamRendererImpl-B14yVm7-.js} +1 -1
- package/dist/assets/{MobileDetailNavigation-CtGncmBY.js → MobileDetailNavigation-e4vO0lXT.js} +1 -1
- package/dist/assets/{MobileShareBridge-pYQFFYmm.js → MobileShareBridge-BnA02Mps.js} +2 -2
- package/dist/assets/{MobileTabPageHeader-D7NAfatx.js → MobileTabPageHeader-nApqJ-1X.js} +1 -1
- package/dist/assets/{MultiRunWindow-gZk-f5lA.js → MultiRunWindow-C7Vgvpoz.js} +1 -1
- package/dist/assets/{OnboardingScreen-BiLurnX5.js → OnboardingScreen-CqcZEptL.js} +1 -1
- package/dist/assets/{OverlayScrollbar-DIsrS93m.js → OverlayScrollbar-BY5HaNrb.js} +1 -1
- package/dist/assets/{SettingsView-D7Ykm-CM.js → SettingsView-Be7_mr8t.js} +1 -1
- package/dist/assets/{SettingsWindow-CyPZw4xx.js → SettingsWindow-ZnWK6Itb.js} +1 -1
- package/dist/assets/{TerminalView-D-X0mGO4.js → TerminalView-BluEtXH8.js} +1 -1
- package/dist/assets/{ToolOutputDialog-C4vQBg3z.js → ToolOutputDialog-6gouT_GS.js} +1 -1
- package/dist/assets/{appThemeRegistry-DUH4Fprj.js → appThemeRegistry-D59Upe3t.js} +1 -1
- package/dist/assets/{assistant-attachment-cache-Bzewqov4.js → assistant-attachment-cache-B2UAUHUZ.js} +1 -1
- package/dist/assets/{button-BupmKVUs.js → button-CWSs9Baz.js} +1 -1
- package/dist/assets/{collapsible-BAPWS6G-.js → collapsible-ngtoKADo.js} +1 -1
- package/dist/assets/{desktopHosts-BZ7iYE-l.js → desktopHosts-C0e7Nes2.js} +1 -1
- package/dist/assets/{desktopRelayRestore-S9wEiY2U.js → desktopRelayRestore-DckkHKsi.js} +1 -1
- package/dist/assets/{diagram-0a7vH45N.js → diagram-DmlTCkmV.js} +1 -1
- package/dist/assets/{dialog-BYLD4Cm3.js → dialog-BMa16qrs.js} +1 -1
- package/dist/assets/{dropdown-menu.styles-HOWSubFF.js → dropdown-menu.styles-BNwZmBRp.js} +1 -1
- package/dist/assets/{fileMentionTouchSelection-BcqQPEDT.js → fileMentionTouchSelection-DbICTM0g.js} +1 -1
- package/dist/assets/{fileQueries-DZR-mK8h.js → fileQueries-DVpZC5ha.js} +1 -1
- package/dist/assets/{gitApi-BtJfaFQy.js → gitApi-Bq2BWLAz.js} +1 -1
- package/dist/assets/{image-loading-CsxDGgek.js → image-loading-Bj11k4gM.js} +1 -1
- package/dist/assets/{input-DgrLdIys.js → input-CALwaZEB.js} +1 -1
- package/dist/assets/{insertionBoundaries-z2K9a6oY.js → insertionBoundaries-n7dVxiuI.js} +1 -1
- package/dist/assets/{main-DAHeBbJJ.js → main-BlZ-gMwg.js} +2 -2
- package/dist/assets/{main-BDCqUxWf.js → main-DRGmBqpD.js} +4 -4
- package/dist/assets/{markdownHeightCache-Dyctmwqv.js → markdownHeightCache-DXM_5jTe.js} +1 -1
- package/dist/assets/{mcpQueries-BSwb38Pz.js → mcpQueries-BxICKLst.js} +1 -1
- package/dist/assets/miniChat-PxCQIMUm.js +2 -0
- package/dist/assets/mobile-Bs5d4s3_.js +2 -0
- package/dist/assets/{multirun-DldZm-Aq.js → multirun-BxUSBUb_.js} +1 -1
- package/dist/assets/{persistence-B4Ni3Gmv.js → persistence-BKszKaoQ.js} +1 -1
- package/dist/assets/{platform-BQPsr8Zl.js → platform-CgwxwfA4.js} +1 -1
- package/dist/assets/{projectMeta-zESSNFVw.js → projectMeta-dZJ-hOil.js} +1 -1
- package/dist/assets/{relay-image-stream-qI2NTXbG.js → relay-image-stream-SV0lH6aG.js} +1 -1
- package/dist/assets/{renderElectronMiniChatApp-t1IsnPfc.js → renderElectronMiniChatApp-CGWfxiDc.js} +2 -2
- package/dist/assets/{renderMobileApp-BrC28EkU.js → renderMobileApp-DJmWaXgS.js} +4 -4
- package/dist/assets/runtime-auth-BpCQ-dPr.js +1 -0
- package/dist/assets/{runtime-fetch-QCWYlAx0.js → runtime-fetch-WgH0pROs.js} +1 -1
- package/dist/assets/{runtime-switch-3ad3yzM7.js → runtime-switch-CMiMO5Yj.js} +1 -1
- package/dist/assets/{runtimeConfig-5NAbSrPI.js → runtimeConfig-B-2tboUz.js} +1 -1
- package/dist/assets/{runtimeEndpointReset-CxreCHBU.js → runtimeEndpointReset-BbJRibgL.js} +2 -2
- package/dist/assets/{scheduledTaskNavigation-C1PrFEhV.js → scheduledTaskNavigation-DQcLqQ52.js} +1 -1
- package/dist/assets/{sessionChangeSummary-CUMpXSiU.js → sessionChangeSummary-DTeJLaNT.js} +1 -1
- package/dist/assets/{sessionLookup-DD8YnthC.js → sessionLookup-_U9nCuBN.js} +1 -1
- package/dist/assets/{sortable-tabs-strip-DogWaIrG.js → sortable-tabs-strip-CscHgCaq.js} +1 -1
- package/dist/assets/{speechSettingsQueries-PsDvs5QG.js → speechSettingsQueries-CdlOc_sI.js} +2 -2
- package/dist/assets/{terminalApi-kRMttlcP.js → terminalApi-rxsMWL0o.js} +1 -1
- package/dist/assets/{textarea-Boj9axpc.js → textarea-ClV5sMS-.js} +1 -1
- package/dist/assets/{tooltip-Dbgnq-Mh.js → tooltip-CV6dvLBp.js} +1 -1
- package/dist/assets/{url-Bd61gNgl.js → url-nBOUbtV_.js} +1 -1
- package/dist/assets/{useAppFontEffects-Ba6H7bLU.js → useAppFontEffects-YhyFj8z3.js} +5 -5
- package/dist/assets/{useAssistantUIStore-Dlvb7P0q.js → useAssistantUIStore-OyPm_4M_.js} +1 -1
- package/dist/assets/{useDesktopWindowControlsLayout-CbeUwtDM.js → useDesktopWindowControlsLayout-jdIXqoD8.js} +1 -1
- package/dist/assets/{useEffectiveDirectory-wtPL_zdo.js → useEffectiveDirectory-COgvBW0Q.js} +1 -1
- package/dist/assets/{useFontPreferences-lAw0Cbza.js → useFontPreferences-DqEIKMEW.js} +1 -1
- package/dist/assets/{useMobileNavigationStore-DXpdkzw_.js → useMobileNavigationStore-CuOiHjP1.js} +11 -11
- package/dist/assets/{useUIStore-CDMI_Yzu.js → useUIStore-CEqU9Ujv.js} +1 -1
- package/dist/assets/{useWorkerHighlightedLines-BXDSKlPX.js → useWorkerHighlightedLines-DGH-O6ZJ.js} +1 -1
- package/dist/index.html +11 -11
- package/dist/mini-chat.html +11 -11
- package/dist/mobile.html +11 -11
- package/package.json +1 -1
- package/server/lib/git/DOCUMENTATION.md +1 -1
- package/server/lib/git/branches.test.js +39 -0
- package/server/lib/git/service.js +3 -43
- package/server/lib/relay/DOCUMENTATION.md +20 -0
- package/server/lib/relay/relay-server.e2e.test.ts +35 -0
- package/server/lib/relay/tunnel-host.js +14 -4
- package/server/lib/relay/tunnel-host.test.js +37 -1
- package/dist/assets/miniChat-DEIx3C4R.js +0 -2
- package/dist/assets/mobile-DmNNI21w.js +0 -2
- package/dist/assets/runtime-auth-C8w0nlKy.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/OnboardingScreen-
|
|
2
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n,n as r,o as i,r as a,s as o}from"./runtime-switch-3ad3yzM7.js";import{n as s}from"./runtime-fetch-QCWYlAx0.js";import{An as c,On as l,Rt as u,Wt as d,_n as f,h as p,ln as m,m as h,mt as g,on as _,ot as v,rn as y,un as b}from"./persistence-B4Ni3Gmv.js";import{a as x,i as S,o as C}from"./vendor-zustand-o69pgTEK.js";import{it as w,nt as T,o as E,rt as D,s as O}from"./vendor-base-ui-CdzJ6My_.js";import{Ct as k,Mt as A,Nt as j,dr as M,r as N}from"./platform-BQPsr8Zl.js";import{n as P,t as F,x as I}from"./useUIStore-CDMI_Yzu.js";import{n as L}from"./vendor-react-BP2cRVqX.js";import{o as ee}from"./vendor-aparajita-capacitor-secure-storage-xol_6BsB.js";import{l as te,n as R,o as z,s as B,t as ne}from"./vendor-tanstack-react-query-CdqCAt40.js";import{i as re}from"./terminalApi-kRMttlcP.js";import{c as V,d as ie,f as ae,l as oe,m as H,n as U,o as W,p as G,s as K,t as q,u as J}from"./vendor-pierre-diffs-DPBtNDJ5.js";import{r as se}from"./vendor-sonner-ZS8XIOVl.js";import{l as ce,n as le,p as ue,r as de}from"./vendor-reactuses-core-BpfIZ1tg.js";import{d as fe,f as pe,i as me,l as he,p as ge,r as Y,t as X,u as _e}from"./button-BupmKVUs.js";import{i as ve,t as ye}from"./store-CG7Ytsg9.js";import{A as be,M as xe,O as Se,j as Ce,k as we,t as Te}from"./MobileDetailNavigation-CtGncmBY.js";import{An as Ee,Ar as De,Bt as Oe,Cn as ke,Cr as Ae,Er as je,Fr as Me,Gt as Ne,Ir as Pe,Mr as Fe,Na as Ie,Or as Le,Pr as Re,Rr as ze,Sa as Be,Sn as Ve,So as He,Vt as Ue,Wn as We,Xn as Ge,Xr as Ke,Zr as qe,ba as Je,bo as Ye,br as Xe,d as Ze,di as Qe,do as $e,fo as et,jr as tt,kr as nt,la as rt,ln as it,o as at,pi as ot,ti as st,uo as ct,vi as lt,vo as ut,vr as dt,wn as ft,wr as pt,xr as mt,yr as ht,zi as gt}from"./useMobileNavigationStore-DXpdkzw_.js";import{i as _t,t as vt}from"./useAssistantUIStore-Dlvb7P0q.js";import{t as yt}from"./AgentAvatar-CJQwq8UM.js";import{n as bt,t as xt}from"./useThemeSystem-8jhE4Zyk.js";import{n as Z}from"./Icon-B4xKSuz3.js";import{a as St,i as Ct,n as wt,o as Tt,r as Et,t as Dt}from"./dialog-BYLD4Cm3.js";import{d as Ot}from"./gitApi-BtJfaFQy.js";import{$ as kt,Ct as At,E as jt,G as Mt,O as Nt,Rt as Pt,St as Ft,U as It,W as Lt,at as Rt,c as zt,ct as Bt,it as Vt,lt as Ht,mt as Ut,o as Wt,ot as Gt,rt as Kt,s as qt,st as Jt,tt as Yt,vt as Xt,xt as Zt,yt as Qt}from"./useAppFontEffects-Ba6H7bLU.js";import{A as $t,_ as en,a as tn,b as nn,d as rn,f as an,h as on,i as sn,l as cn,m as ln,n as un,p as dn,r as fn,s as pn,t as mn,x as hn}from"./projectMeta-zESSNFVw.js";import{t as gn}from"./input-DgrLdIys.js";import{i as _n,n as vn,t as yn}from"./tooltip-Dbgnq-Mh.js";import{Dt as bn,Et as xn,J as Sn,Rt as Cn,Tt as wn,_ as Tn,at as En,ct as Dn,g as On,gt as kn,it as An,mt as jn,q as Mn,rt as Nn,st as Pn,tt as Fn,ut as In,wt as Ln}from"./speechSettingsQueries-PsDvs5QG.js";import{i as Rn,t as zn}from"./OverlayScrollbar-DIsrS93m.js";import{h as Bn,v as Vn}from"./image-loading-CsxDGgek.js";import{x as Hn}from"./dropdown-menu.styles-HOWSubFF.js";import{n as Un,t as Wn}from"./useRuntimeAPIs-Cx8S1HLz.js";import{T as Gn,a as Kn,g as qn,h as Jn,i as Yn,n as Xn,o as Zn,p as Qn,r as $n,t as er,x as tr,y as nr}from"./textarea-Boj9axpc.js";import{T as rr}from"./sessionChangeSummary-CUMpXSiU.js";import{i as ir,t as ar}from"./vendor-framer-motion-D-oiwsxL.js";import{D as or,b as sr,h as cr,k as lr,r as ur,v as dr,w as fr,y as pr}from"./insertionBoundaries-z2K9a6oY.js";import{i as mr,n as hr,t as gr}from"./appThemeRegistry-DUH4Fprj.js";import{o as _r}from"./MarkdownRenderer-TmfHeWHu.js";import{_ as vr,c as yr,g as br,i as xr,l as Sr,n as Cr,o as wr,s as Tr,t as Er,v as Dr,y as Or}from"./vendor-dnd-kit-core-5pNnzVdw.js";import{a as kr,o as Ar,s as jr,t as Mr}from"./vendor-dnd-kit-sortable-Dm50I0m7.js";import{f as Nr,l as Pr}from"./markdown-worker-DFNZ3KJ_.js";import{n as Fr}from"./useEffectiveDirectory-wtPL_zdo.js";import{u as Ir}from"./FadeInOnReveal-BNVExwoL.js";import{t as Lr}from"./LoadingImage-CoT3GWhg.js";import{n as Rr}from"./useWorkerHighlightedLines-BXDSKlPX.js";import{t as zr}from"./vendor-tanstack-react-virtual-B_EO--9t.js";import{t as Br}from"./vendor-motion-88WXBOBf.js";import{B as Vr,t as Hr,u as Ur,v as Wr,x as Gr}from"./MobileTabPageHeader-D7NAfatx.js";import{c as Kr,l as qr}from"./mcpQueries-BSwb38Pz.js";import{a as Jr,c as Yr,d as Xr,i as Zr,l as Qr,m as $r,n as ei,o as ti,r as ni,s as ri,t as ii}from"./scheduledTaskNavigation-C1PrFEhV.js";import{n as ai,r as oi}from"./sessionLookup-DD8YnthC.js";import{n as si,r as ci,t as li}from"./collapsible-BAPWS6G-.js";import{t as ui}from"./vendor-cron-parser-BmO80h0C.js";var Q=e(w(),1),di=L(),$=D(),fi=e(T(),1);function pi(){return new Worker(q,{type:`module`})}var mi=[`typescript`,`javascript`,`tsx`,`jsx`,`json`,`markdown`],hi={unified:{poolSize:1,totalASTLRUCacheSize:24,lineDiffType:`none`},split:{poolSize:2,totalASTLRUCacheSize:56,lineDiffType:`word-alt`}},gi,_i,vi=e=>{let t=hi[e],n=new G({workerFactory:pi,poolSize:t.poolSize,totalASTLRUCacheSize:t.totalASTLRUCacheSize},{theme:{light:`pierre-light`,dark:`pierre-dark`},langs:mi,lineDiffType:t.lineDiffType,preferredHighlighter:`shiki-wasm`});return n.initialize(),n},yi=e=>{if(!(typeof window>`u`))return e===`split`?(_i??=vi(`split`),_i):(gi??=vi(`unified`),gi)},bi=e=>{let t=(0,di.c)(7),{children:n,renderTheme:r}=e,i=Si(`unified`),a=Si(`split`),o,s;t[0]!==r||t[1]!==a||t[2]!==i?(o=()=>{i&&i.setRenderOptions({theme:r,lineDiffType:hi.unified.lineDiffType}),a&&a.setRenderOptions({theme:r,lineDiffType:hi.split.lineDiffType})},s=[r,a,i],t[0]=r,t[1]=a,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,Q.useEffect)(o,s);let c;return t[5]===n?c=t[6]:(c=(0,$.jsx)($.Fragment,{children:n}),t[5]=n,t[6]=c),c},xi=e=>{let t=(0,di.c)(11),{children:n}=e,r=xt(),i,a;if(t[0]!==r?.availableThemes||t[1]!==r?.darkThemeId||t[2]!==r?.lightThemeId){let e=Vn(!1),n=Vn(!0),o=r?.lightThemeId??e.metadata.id,s=r?.darkThemeId??n.metadata.id;a=r?.availableThemes.find(e=>e.metadata.id===o)??e,i=r?.availableThemes.find(e=>e.metadata.id===s)??n,gr(a),gr(i),t[0]=r?.availableThemes,t[1]=r?.darkThemeId,t[2]=r?.lightThemeId,t[3]=i,t[4]=a}else i=t[3],a=t[4];let o;t[5]!==i.metadata.id||t[6]!==a.metadata.id?(o={light:a.metadata.id,dark:i.metadata.id},t[5]=i.metadata.id,t[6]=a.metadata.id,t[7]=o):o=t[7];let s=o,c;return t[8]!==n||t[9]!==s?(c=(0,$.jsx)(bi,{renderTheme:s,children:n}),t[8]=n,t[9]=s,t[10]=c):c=t[10],c},Si=e=>{let t=(0,di.c)(2),n=e===void 0?`unified`:e,r;return t[0]===n?r=t[1]:(r=yi(n),t[0]=n,t[1]=r),r},Ci=(e,t)=>{if(!e||typeof e!=`object`)return!1;let n=e;return(n.role===`user`||n.role===`assistant`)&&typeof n.sessionID==`string`&&n.sessionID.length>0&&typeof n.messageID==`string`&&n.messageID.length>0&&typeof n.snippet==`string`&&typeof n.createdAt==`number`&&Number.isFinite(n.createdAt)&&t.length>0},wi=async e=>{let t=e.query.trim();if(!t)return[];let n=await(e.fetch??s)(`/api/openchamber/content-search`,{query:{q:t,limit:String(e.limit??30)},signal:e.signal});if(!n.ok)throw Error(`session content search failed (${n.status})`);let r=await n.json();if(!Array.isArray(r?.hits))throw Error(`session content search returned no hits`);return r.hits.flatMap(e=>Ci(e,typeof e?.directory==`string`?e.directory:``)?[e]:[])},Ti=(e,t)=>{let i=e.trim(),a=t.scope,o=a?.transport??n(),s=a?.generation??r(),c=t.searchContent??wi;return z({queryKey:p.sessionContentSearch.query(i,``,s,o),enabled:i.length>0&&a!==null,queryFn:({signal:e})=>a?c({scope:a,query:i,limit:30,signal:e}):[],staleTime:0,refetchInterval:3e3,retry:1})},Ei=(e=s)=>z({queryKey:[n(),`contentSearchStatus`,r()],queryFn:async({signal:t})=>{let n=await e(`/api/openchamber/content-search`,{signal:t});if(n.status===404||n.status===501)return null;if(!n.ok)throw Error(`Content index unavailable (${n.status})`);let{index:r}=await n.json();if(!r||![`pending`,`indexing`,`ready`,`partial`,`error`].includes(r.phase)||![r.total,r.completed,r.failed,r.messages].every(e=>Number.isFinite(e)&&e>=0)||r.initializationRequired!==void 0&&typeof r.initializationRequired!=`boolean`||[r.indexStartedAt,r.indexCompletedAt,r.coveredSince,r.verifiedAt,r.updatedAt].some(e=>e!=null&&!Number.isFinite(e)))throw Error(`Invalid content index status`);return r},refetchInterval:3e3,staleTime:0}),Di=_r(()=>ee(()=>import(`./OnboardingScreen-BiLurnX5.js`).then(e=>({default:e.OnboardingScreen})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Oi(){let e=(0,di.c)(11),[t,n]=Q.useState(!1),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=Ei(),e[0]=r):r=e[0];let i=!t,a;e[1]===i?a=e[2]:(a={...r,enabled:i,refetchOnWindowFocus:!1,refetchInterval:ki},e[1]=i,e[2]=a);let o=B(a),s=o.data,c=o.isFetchedAfterMount&&!o.isError&&(s===null||s&&(s.initializationRequired===void 0||s.initializationRequired===!1&&s.updatedAt!=null)),l,u;if(e[3]===c?(l=e[4],u=e[5]):(l=()=>{c&&n(!0)},u=[c],e[3]=c,e[4]=l,e[5]=u),Q.useEffect(l,u),t||!s?.initializationRequired)return null;let d;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{e||n(!0)},e[6]=d):d=e[6];let f;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>n(!0),e[7]=f):f=e[7];let p;return e[8]!==s||e[9]!==o.isError?(p=(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Dt,{open:!0,onOpenChange:d,children:(0,$.jsx)(wt,{showCloseButton:!1,className:`h-full max-w-none rounded-none border-0 p-0`,overlayClassName:`z-[9997]`,containerClassName:`z-[9997] items-stretch p-0`,children:(0,$.jsx)(Di,{mode:`content-index`,indexStatus:s,indexStatusError:o.isError,onContinueInBackground:f})})})}),e[8]=s,e[9]=o.isError,e[10]=p):p=e[10],p}function ki(e){let t=e.state.data;return t===null||t&&t.initializationRequired===void 0||t?.initializationRequired===!1&&t.updatedAt!=null?!1:3e3}function Ai(){let e=(0,di.c)(4);if(Wn())return null;let t,n;if(e[0]===Symbol.for(`react.memo_cache_sentinel`)){let r=Ei().queryKey;t=Oi,n=JSON.stringify(r),e[0]=t,e[1]=n}else t=e[0],n=e[1];let r;return e[2]===n?r=e[3]:(r=(0,$.jsx)(t,{},n),e[2]=n,e[3]=r),r}var ji=Q.forwardRef((e,t)=>{let n=(0,di.c)(11),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=Y(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)] focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[checked]:bg-primary data-[unchecked]:bg-[var(--interactive-border)]`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o={width:`36px`,height:`20px`,minWidth:`36px`,minHeight:`20px`},n[5]=o):o=n[5];let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(E,{className:Y(`pointer-events-none block rounded-full bg-background shadow-none ring-0 transition-transform data-[checked]:translate-x-4 data-[unchecked]:translate-x-0`),style:{width:`16px`,height:`16px`,minWidth:`16px`,minHeight:`16px`}}),n[6]=s):s=n[6];let c;return n[7]!==i||n[8]!==t||n[9]!==a?(c=(0,$.jsx)(O,{className:a,style:o,...i,ref:t,children:s}),n[7]=i,n[8]=t,n[9]=a,n[10]=c):c=n[10],c});ji.displayName=`Switch`;var Mi={},Ni=[],Pi=(e,t)=>{if(!e)return t(`mcpDropdown.status.unknown`);switch(e.status){case`connected`:return t(`mcpDropdown.status.connected`);case`failed`:return t(`mcpDropdown.status.failed`,{error:e.error||t(`mcpDropdown.status.unknownError`)});case`needs_auth`:return t(`mcpDropdown.status.needsAuth`);case`needs_client_registration`:return t(`mcpDropdown.status.needsRegistration`,{error:e.error||``});default:return e.status}},Fi=e=>{switch(e?.status){case`connected`:return`success`;case`failed`:return`error`;case`needs_auth`:case`needs_client_registration`:return`warning`;default:return`default`}},Ii=({active:e,className:t,headerAction:n,listClassName:r,hideHeader:i=!1,mobileListDensity:a=!1})=>{let{t:o}=pe(),s=k(e=>e.currentDirectory)??null,c=Vr(e=>e.connect),l=Vr(e=>e.disconnect),{data:u,refetch:d,isError:f,error:p}=qr(s,{enabled:e}),{data:m}=Kr(s,{enabled:e}),h=u??Mi,g=m??Ni,[_,v]=Q.useState(!1),[y,b]=Q.useState(null),x=Q.useMemo(()=>{let e=new Set(Object.keys(h));for(let t of g)t?.name&&e.add(t.name);return Array.from(e).sort((e,t)=>e.localeCompare(t))},[g,h]),S=Q.useCallback(e=>{if(e?.preventDefault(),_)return;v(!0);let t=new Promise(e=>setTimeout(e,500));Promise.all([d(),t]).finally(()=>{v(!1)})},[_,d]);return(0,$.jsxs)(`div`,{className:Y(`w-full`,t),children:[i?null:(0,$.jsx)(`div`,{className:`border-b border-[var(--interactive-border)]`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-4 py-2.5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex items-baseline gap-2`,children:[(0,$.jsx)(`div`,{className:`typography-ui-header font-semibold text-foreground`,children:o(`mcpDropdown.title`)}),s&&(0,$.jsx)(`div`,{className:`truncate typography-micro text-muted-foreground`,children:s.split(`/`).pop()||s})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[n,(0,$.jsx)(`button`,{type:`button`,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-interactive-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,disabled:_,onClick:S,"aria-label":o(`mcpDropdown.actions.refreshAria`),children:(0,$.jsx)(Z,{name:`refresh`,className:Y(`h-4 w-4`,_&&`animate-spin`)})})]})]})}),(0,$.jsx)(`div`,{className:Y(`max-h-64 overflow-y-auto`,a?`space-y-1 py-3`:`px-3 py-2.5`,r),children:(0,$.jsxs)(`div`,{className:Y(!a&&x.length>0&&`rounded-xl bg-[var(--surface-muted)] p-1.5`),children:[x.map(e=>{let t=h[e]??(f&&!u&&g.some(t=>t.name===e)?{status:`failed`,error:p.message}:void 0),n=Fi(t),r=t?.status===`connected`,i=y===e,d=Pi(t,o);return(0,$.jsxs)(`div`,{className:Y(`flex items-center justify-between rounded-lg hover:bg-interactive-hover/50`,a?`gap-3 px-4 py-3`:`gap-2 px-2.5 py-2`),children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,$.jsxs)(yn,{children:[(0,$.jsx)(_n,{asChild:!0,children:(0,$.jsx)(`span`,{className:Y(`rounded-full flex-shrink-0`,a?`h-2.5 w-2.5`:`h-2 w-2`,n===`success`&&`bg-status-success`,n===`error`&&`bg-status-error`,n===`warning`&&`bg-status-warning`,n==="default"&&`bg-muted-foreground/40`),"aria-label":d})}),(0,$.jsx)(vn,{side:`left`,children:(0,$.jsx)(`p`,{children:d})})]}),(0,$.jsx)(`span`,{className:Y(`truncate`,a?`text-[17px] leading-6 font-medium`:`typography-ui-label`),children:e})]})}),(0,$.jsx)(ji,{checked:r,disabled:i,className:`data-[checked]:bg-status-info`,onCheckedChange:async t=>{b(e);try{t?await c(e,s):await l(e,s)}finally{b(null)}}})]},e)}),x.length===0&&(0,$.jsx)(`div`,{className:`px-4 py-5 typography-ui-label text-muted-foreground text-center`,children:o(`mcpDropdown.empty.configureInConfig`)})]})})]})},Li=e=>!(e.dismissed===`true`||e.sessionShown===`true`||e.hasActiveToast),Ri=e=>!(!e.version||e.seenVersions.has(e.version)||e.dismissedVersion!==null&&e.dismissedVersion===e.version),zi=e=>{if(typeof e!=`object`||!e)return``;let t=e.version;return typeof t==`string`?t.trim():``},Bi=e=>{if(!e||e.available!==!0||e.canManage===!1)return``;let t=typeof e.latestVersion==`string`?e.latestVersion:typeof e.targetVersion==`string`?e.targetVersion:``;return t?t.trim():``},Vi=e=>{let t=e.trim().replace(/^v/i,``);return t?{target:t}:null},Hi=5e3,Ui={setTimeout:(e,t)=>globalThis.setTimeout(e,t),clearTimeout:e=>globalThis.clearTimeout(e)};function Wi(e,t,n=Ui){if(!e)return()=>void 0;let r=n.setTimeout(()=>{t().catch(()=>void 0)},Hi);return()=>n.clearTimeout(r)}var Gi=(e,t)=>({queryKey:[e,`opencode-update`,t],queryFn:async({signal:i})=>{let a=()=>e===n()&&t===r();if(!a())throw Error(`Stale OpenCode update check`);let o=await s(`/api/opencode/upgrade-status`,{headers:{Accept:`application/json`},signal:i});if(!o.ok)throw Error(`OpenCode update check failed`);let c=await o.json();if(i.aborted||!a())throw Error(`Stale OpenCode update check`);if(!c||typeof c!=`object`||Array.isArray(c))throw Error(`Invalid OpenCode update status`);return c},staleTime:3e4,refetchInterval:3e5,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:1}),Ki=`opencode-update-available`,qi=`opencode-upgrade-progress`,Ji=`opencode-update-toast-dismissed-version`,Yi=()=>{let{t:e}=pe(),i=P(e=>e.showOpenCodeUpdateNotifications),a=Q.useRef(new Set),o=Q.useRef(!1),c=Q.useSyncExternalStore(t,n,n),l=Q.useSyncExternalStore(t,r,r),u=te(),[d,f]=Q.useState(!1);Q.useEffect(()=>Wi(i,async()=>{f(!0)}),[i]);let p=B({...Gi(c,l),enabled:i&&d});de(`openchamber:opencode-update-available`,e=>{i&&zi(e.detail)&&p.refetch()});let m=`${Ji}:${c}`;Q.useEffect(()=>{a.current.clear(),Pe.dismiss(Ki),Pe.dismiss(qi)},[c,l]),Q.useEffect(()=>{i||Pe.dismiss(Ki)},[i]);let h=le(async(t,i=!1)=>{if(o.current)return;o.current=!0;let a=()=>c===n()&&l===r();Pe.dismiss(Ki),Pe.message(e(`opencodeUpdate.toast.upgrading.title`),{id:qi,description:e(`opencodeUpdate.toast.upgrading.description`),duration:1/0,icon:(0,$.jsx)(Z,{name:`refresh`,className:`h-4 w-4 animate-spin text-muted-foreground`})});try{let n=Vi(t);if(!n)throw Error(e(`opencodeUpdate.toast.failed.description`));let r=await s(`/api/opencode/upgrade`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`},body:JSON.stringify({...n,confirmActiveTasks:i})}),o=await r.json().catch(()=>null);if(!a())return;if(o?.errorCode===`UPGRADE_ACTIVE_TASKS`){Pe.error(e(`opencodeUpdate.toast.failed.title`),{id:qi,description:o.error,duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{a()&&h(t,!0)}}});return}if(!r.ok||o?.success!==!0)throw Error(o?.error||r.statusText||e(`opencodeUpdate.toast.failed.description`));Pe.success(e(`opencodeUpdate.toast.updated.title`),{id:qi,description:o?.version?e(`opencodeUpdate.toast.updated.descriptionWithVersion`,{version:o.version}):e(`opencodeUpdate.toast.updated.description`),duration:1/0,icon:(0,$.jsx)(Z,{name:`check`,className:`h-4 w-4 text-[var(--status-success)]`})}),u.invalidateQueries({queryKey:[c,`opencode-update`,l]}),u.invalidateQueries({queryKey:[c,`about`,l]})}catch(n){if(!a())return;Pe.error(e(`opencodeUpdate.toast.failed.title`),{id:qi,description:n instanceof Error?n.message:e(`opencodeUpdate.toast.failed.description`),duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{a()&&h(t)}}})}finally{o.current=!1}});return Q.useEffect(()=>{let t=t=>{if(!P.getState().showOpenCodeUpdateNotifications){Pe.dismiss(Ki);return}Ri({version:t,dismissedVersion:I().getItem(m),seenVersions:a.current})&&(a.current.add(t),Pe.info(e(`opencodeUpdate.toast.available.title`),{id:Ki,description:e(`opencodeUpdate.toast.available.description`,{version:t}),duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{c===n()&&l===r()&&h(t)}},cancel:{label:e(`opencodeUpdate.toast.actions.dismiss`),onClick:()=>{I().setItem(m,t),Pe.dismiss(Ki)}}}))},i=Bi(p.data);i?t(i):(p.data?.available===!1||p.data?.canManage===!1)&&Pe.dismiss(Ki)},[i,e,p.data,m,c,l,h]),null},Xi=()=>{let e=(0,di.c)(3),[t,n]=Q.useState(Zi),{isUpdating:r}=t,i,a;if(e[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=()=>et(n),a=[],e[0]=i,e[1]=a):(i=e[0],a=e[1]),Q.useEffect(i,a),!r)return null;let o;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`div`,{className:`fixed inset-0 z-[9999] flex items-center justify-center bg-background/90`,children:(0,$.jsx)(Cn,{width:80,height:80,isAnimated:!0})}),e[2]=o):o=e[2],o};function Zi(){return $e()}var Qi=5e3,$i=(e,t)=>{if(!e)return 1;let n=1;for(let r=0;r<e.length;r+=1)if(e.charCodeAt(r)===10&&(n+=1,n>t))return n;return n},ea=(e,t)=>ye(ve.getState().dictionary,e,t),ta=e=>{let t=(e instanceof Error?e.message:String(e??``)).toLowerCase();return t.includes(`file not found`)||t.includes(`not found`)||t.includes(`enoent`)||t.includes(`no such file`)||t.includes(`does not exist`)?`missing`:`unreadable`},na=async(e,t)=>{if(e.readFile){let n=await e.readFile(t,{optional:!0});if(typeof n.exists!=`boolean`)throw Error(`Optional file read requires an existence response header`);return{content:n.content??``,exists:n.exists}}let n=new URLSearchParams({path:t,optional:`true`}),r=await s(`/api/fs/read?${n.toString()}`,{cache:`no-store`});if(!r.ok){let e=await r.json().catch(()=>({error:r.statusText}));throw Error(e.error||`Failed to read file`)}let i=r.headers.get(`x-openchamber-file-exists`);if(i!==`true`&&i!==`false`)throw Error(`Optional file read requires an existence response header`);return{content:await r.text(),exists:i===`true`}},ra=async(e,t)=>{try{let{content:n,exists:r}=await na(e,t);return r?$i(n,5e3)>5e3?{ok:!1,reason:`too-large`}:{ok:!0}:{ok:!1,reason:`missing`}}catch(e){return{ok:!1,reason:ta(e)}}},ia=e=>e===`too-large`?ea(`contextFileOpen.failure.tooLarge`,{count:Qi.toLocaleString(ge())}):ea(e===`missing`?`contextFileOpen.failure.missing`:`contextFileOpen.failure.unreadable`),aa=(e,t)=>!e||t.length===0?``:JSON.stringify([e,t]),oa=(e,t,n,r)=>!n||r!==n||e.length===0?[]:We(e,t,e=>e.name,{limit:10,threshold:.4}),sa=(e,t={})=>{let r=e.trim(),i=t.transport??n(),a=t.searchSessions??(e=>j.searchSessionsByTitle(e));return z({queryKey:p.sessionTitleSearch.query(r,i),enabled:r.length>0,queryFn:({signal:e})=>a({search:r,limit:30,signal:e}),staleTime:5e3,retry:1})},ca=e=>{let t=(0,di.c)(13),{title:n,description:r,trailing:i}=e,a=r?`min-w-0 max-w-[58%] shrink-0 truncate typography-meta font-medium leading-4 text-foreground`:`min-w-0 flex-1 truncate typography-meta font-medium leading-4 text-foreground`,o;t[0]!==a||t[1]!==n?(o=(0,$.jsx)(`span`,{className:a,children:n}),t[0]=a,t[1]=n,t[2]=o):o=t[2];let s;t[3]===r?s=t[4]:(s=r?(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-micro leading-4 text-muted-foreground/65`,children:r}):null,t[3]=r,t[4]=s);let c;t[5]!==o||t[6]!==s?(c=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2.5`,children:[o,s]}),t[5]=o,t[6]=s,t[7]=c):c=t[7];let l;t[8]===i?l=t[9]:(l=i?(0,$.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center pl-2 text-muted-foreground/50`,children:i}):null,t[8]=i,t[9]=l);let u;return t[10]!==c||t[11]!==l?(u=(0,$.jsxs)($.Fragment,{children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12],u},la=`min-h-9 gap-2 rounded-lg px-3 py-2 typography-meta`,ua=`py-0 [&_[cmdk-group-heading]]:px-2.5 [&_[cmdk-group-heading]]:pb-2 [&_[cmdk-group-heading]]:pt-3 [&_[cmdk-group-heading]]:font-normal [&_[cmdk-group-heading]]:text-muted-foreground`,da=`rounded-[3px] bg-[color-mix(in_srgb,var(--primary-base)_28%,transparent)] px-0.5 font-[inherit] text-foreground`;function fa(e,t){let n=t.trim().toLowerCase().split(/\s+/).filter(Boolean);if(!n.length||!e)return e;let r=n.map(e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)),i=RegExp(`(${r.join(`|`)})`,`gi`);return e.split(i).map((e,t)=>n.includes(e.toLowerCase())?(0,$.jsx)(`mark`,{className:da,children:e},t):(0,$.jsx)(`span`,{children:e},t))}var pa=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+/g,`/`);n&&!r.startsWith(`//`)&&(r=`/${r}`);let i=r===`/`,a=/^[A-Za-z]:\/$/.test(r);return!i&&!a&&(r=r.replace(/\/+$/,``)),r},ma=[],ha=Q.memo(function({presentation:e=`dialog`,onBack:t}){let{t:i}=pe(),a=rr(),o=P(e=>e.isCommandPaletteOpen),[s,c]=Q.useState(o),l=P(e=>e.setCommandPaletteOpen),u=P(e=>e.setActiveMainTab),f=P(e=>e.setSettingsDialogOpen),p=P(e=>e.setSettingsPage),h=P(e=>e.setSessionSwitcherOpen),g=P(e=>e.toggleSidebar),v=P(e=>e.toggleRightSidebar),x=P(e=>e.toggleBottomTerminal),S=P(e=>e.openContextOverview),C=P(e=>e.openContextFile),w=P(e=>e.shortcutOverrides),T=Ze(e=>e.openNewSessionDraft),E=Ze(e=>e.setCurrentSession),D=o||s,O=Fe(e=>D?e.activeSessions:ma),j=Fe(e=>D?e.status:`idle`),M=k(e=>e.currentDirectory),N=ct(e=>e.getActiveProject()),F=ct(e=>e.projects),I=Fr(),L=A(e=>e.searchFiles),{files:ee}=Un(),{isMobile:te}=Rn(),R=e===`page`||te,z=he(),ne=Q.useRef(null),re=Q.useRef(null),V=le(()=>{if(!R||!o||!ne.current)return;let e=window.visualViewport;ne.current.style.setProperty(`--search-viewport-height`,`${e?.height??window.innerHeight}px`),ne.current.style.setProperty(`--search-viewport-top`,`${e?.offsetTop??0}px`)});de(`resize`,V,()=>R&&o?window.visualViewport??window:null),de(`scroll`,V,()=>R&&o?window.visualViewport:null),Q.useEffect(()=>{V()},[R,o]),Q.useEffect(()=>{e===`page`&&o&&re.current?.focus({preventScroll:!0})},[e,o]);let ie=Q.useMemo(()=>I?pa(I):null,[I]),[ae,oe]=Q.useState(``),[H,U]=Q.useState({query:``,groups:[]}),W=lr(ae,200).trim(),G=ae.trim();Q.useEffect(()=>{o&&(oe(``),U({query:``,groups:[]}),c(!0))},[o]);let K=le(()=>l(!1)),q=le(e=>()=>{K(),e()}),J=Q.useMemo(()=>{let e=[{id:`new-session`,title:i(`commandPalette.item.newSession`),shortcutId:`new_chat`,searchText:i(`commandPalette.item.newSession`),onSelect:q(()=>{u(`chat`),h(!1),T()})},{id:`new-worktree`,title:i(`commandPalette.item.newWorktreeDraft`),shortcutId:`new_chat_worktree`,searchText:i(`commandPalette.item.newWorktreeDraft`),onSelect:q(()=>{Ht()})},{id:`add-project`,title:i(`commandPalette.item.addProject`),searchText:i(`commandPalette.item.addProject`),onSelect:q(()=>{lt.requestDirectoryDialog()})},{id:`toggle-sidebar`,title:i(R?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),shortcutId:`toggle_sidebar`,searchText:i(R?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),onSelect:q(()=>{if(R){let{isSessionSwitcherOpen:e}=P.getState();h(!e)}else g()})},{id:`toggle-right-sidebar`,title:i(`commandPalette.item.toggleRightSidebar`),shortcutId:`toggle_right_sidebar`,searchText:i(`commandPalette.item.toggleRightSidebar`),onSelect:q(()=>v())},{id:`toggle-terminal`,title:i(`commandPalette.item.toggleTerminal`),shortcutId:`toggle_terminal`,searchText:i(`commandPalette.item.toggleTerminal`),onSelect:q(()=>x())},{id:`new-terminal-tab`,title:i(`commandPalette.item.newTerminalTab`),shortcutId:`open_new_terminal`,searchText:i(`commandPalette.item.newTerminalTab`),onSelect:q(()=>{I&&zt(I)})},{id:`context-usage`,title:i(`commandPalette.item.showContextUsage`),searchText:i(`commandPalette.item.showContextUsage`),onSelect:q(()=>{M&&S(M)})},{id:`open-settings`,title:i(`commandPalette.item.openSettings`),shortcutId:`open_settings`,searchText:i(`commandPalette.item.openSettings`),onSelect:q(()=>f(!0))}];return d()&&e.splice(1,0,{id:`new-mini-chat`,title:i(`commandPalette.item.newMiniChat`),shortcutId:`new_mini_chat`,searchText:i(`commandPalette.item.newMiniChat`),onSelect:q(()=>{y(`desktop_open_draft_mini_chat_window`,{directory:pa(M||N?.path||``),projectId:N?.id??null}).catch(e=>{console.warn(`[command-palette] failed to open draft mini chat window`,e)})})}),e},[i,q,R,u,h,T,g,v,x,M,I,S,f,N?.id,N?.path]),se=Q.useMemo(()=>{let e=_();return{isVSCode:m(),isWeb:!e&&b(),isDesktop:e,isMobile:R}},[R]),ce=Q.useMemo(()=>Xr.filter(e=>e.slug!==`home`).filter(e=>!e.isAvailable||e.isAvailable(se)).map(e=>{let t=(e.keywords??[]).join(` `);return{id:`settings:${e.slug}`,title:e.title,searchText:`${e.title} ${e.group} ${t}`,onSelect:q(()=>{p(e.slug),f(!0)})}}),[se,q,p,f]),ue=Q.useMemo(()=>{let e=e=>(typeof e.time?.updated==`number`?e.time.updated:0)||(typeof e.time?.created==`number`?e.time.created:0);return[...O].sort((t,n)=>e(n)-e(t))},[O]),fe=Ze(e=>e.worktreeMetadata),me=Ze(e=>e.availableWorktreesByProject),[ge,Y]=Q.useState([]),[X,ve]=Q.useState(``),[ye,be]=Q.useState(``),xe=aa(ie,W);Q.useEffect(()=>{if(!o){Y([]),ve(``),be(``);return}if(!xe){Y([]),ve(``),be(``);return}if(!ie){Y([]),ve(``),be(``);return}let e=!1;return be(``),L(ie,W,10,{type:`file`}).then(t=>{e||(Y(t.map(e=>({path:pa(e.path),name:e.name,relativePath:e.relativePath}))),ve(xe),be(``))}).catch(()=>{e||(Y([]),ve(``),be(xe))}),()=>{e=!0}},[o,ie,W,xe,L]);let Se=G.length>0,Ce=Q.useMemo(()=>Se?We(J,G,e=>e.searchText,{limit:7,noFuzzy:!0}):J.map(e=>({item:e,score:0})),[J,G,Se]),we=Q.useMemo(()=>Se?We(ce,G,e=>e.searchText,{limit:7,noFuzzy:!0}):[],[ce,G,Se]),Ee=B({...sa(W),enabled:(o||s)&&(W.length>0||e===`page`)}),De={transport:n(),generation:r(),directory:``},Oe=JSON.stringify([De.transport,De.generation,ie,G,o]),[ke,Ae]=Q.useState(null),je=ke?.key===Oe?ke:null;ke&&!je&&Ae(null);let Me=B({...Ei(),enabled:o||s}),Ne=B({...Ti(W,{scope:De}),enabled:(o||s)&&W.length>0&&De!==null}),Ie=Q.useMemo(()=>je?.hits??Ne.data??[],[je,Ne.data]),Le=Se&&G===W&&Ne.isError,Re=Se&&G===W&&Ee.isSuccess,ze=(Se||e===`page`)&&G===W&&Ee.isError,Be=Q.useMemo(()=>ze?We(ue,G,e=>e.title||``,{limit:30,threshold:.2}).map(({item:e})=>e):[],[ze,ue,G]),Ve=Q.useMemo(()=>je?je.sessions:Se?Re?Ee.data??[]:ze?Be:[]:e===`page`&&!W&&Ee.isSuccess?Ee.data:ue.slice(0,e===`page`?30:9),[Se,ue,Re,ze,Be,Ee.data,Ee.isSuccess,e,W,je]),He=Q.useMemo(()=>!o&&!s||G!==W||ye===xe?[]:oa(ge,W,xe,X),[o,s,ge,X,xe,W,G,ye]),Ue=(o||s)&&xe.length>0&&X!==xe&&ye!==xe,Ge=Q.useMemo(()=>{if(!Se)return[];let e=F.map(e=>({...e,displayName:e.label||e.path.split(`/`).pop()||e.path,searchText:`${e.label||``} ${e.path}`}));return We(e,G,e=>e.searchText,{limit:7,threshold:.4})},[F,G,Se]),Ke=JSON.stringify([ie,G]),qe=H.query===Ke?H.groups:[],Je=(e,t)=>Se&&!qe.includes(e)?t.slice(0,5):t,Ye=Je(`commands`,Ce.map(e=>e.item)),Xe=Je(`settings`,we.map(e=>e.item)),Qe=Q.useMemo(()=>{let e=new Map;for(let t of Ie){let n=e.get(t.sessionID)??[];n.push(t),e.set(t.sessionID,n)}let t=[],n=new Map(O.map(e=>[e.id,e]));for(let n of Ve){let r=e.get(n.id);if(r){for(let e of r)t.push({session:n,hit:e});e.delete(n.id)}else t.push({session:n})}for(let r of e.values())for(let e of r)t.push({session:n.get(e.sessionID)??{id:e.sessionID,title:e.title??``,directory:e.directory,location:{directory:e.directory}},hit:e});return t},[Ve,Ie,O]),$e=Je(`sessions`,Qe),et=Se?Je(`files`,He.map(e=>e.item)):[],tt=Se?Je(`projects`,Ge.map(e=>e.item)):[],rt=(e,t,n)=>t>n?(0,$.jsx)(Jt,{value:`more:${e}`,onSelect:()=>U({query:Ke,groups:[...qe,e]}),className:`${la} text-muted-foreground`,children:i(`commandPalette.group.showMore`,{count:t-n})}):null,it=Q.useMemo(()=>{if(!Se)return[`sessions`,`commands`];let e=e=>e.length?e[0].score:1/0,t=[{key:`commands`,score:e(Ce)},{key:`settings`,score:e(we)},{key:`files`,score:e(He)},{key:`projects`,score:e(Ge)}];return t.sort((e,t)=>e.score-t.score),[`sessions`,...t.map(e=>e.key)]},[Se,Ce,we,He,Ge]),ot=le((e,t)=>{K(),u(`chat`),h(!1);let n=nt(e)||``;a?at.getState().openSession({sessionId:e.id,directory:n}):E(e.id,n),t&&Nt(t)}),st=le(e=>{let t=ue.find(t=>t.id===e.sessionID)??Ve.find(t=>t.id===e.sessionID)??{id:e.sessionID,title:e.title??``,directory:e.directory,location:{directory:e.directory}};ot(t,e.messageID)}),ut=le(async e=>{if(!ie)return;let t=await ra(ee,e);if(!t.ok){Pe.error(ia(t.reason));return}a?a.openFile({path:e}):C(ie,e),K()}),dt=le((e,t)=>{K();let n={selectedProjectId:e,directoryOverride:t};a?at.getState().openDraft(n):T(n)}),ft=e=>jn(kn(e,w)),pt=e=>!xt&&(e.key===`Enter`||e.key===`ArrowDown`||e.key===`ArrowUp`)&&(e.preventDefault(),e.stopPropagation(),!0),mt=le(e=>{if(pt(e)||(!je&&!e.nativeEvent.isComposing&&[`ArrowDown`,`ArrowUp`,`Enter`].includes(e.key)&&Ae({key:Oe,hits:Ie,sessions:Ve}),R||e.nativeEvent.isComposing||e.altKey||e.shiftKey)||(z?!e.metaKey||e.ctrlKey:!e.ctrlKey||e.metaKey)||!/^[1-9]$/.test(e.key)||(e.preventDefault(),e.stopPropagation(),e.repeat||!xt))return;let t=$e[Number(e.key)-1];t?.hit?st(t.hit):t&&ot(t.session)}),ht=e=>{let t=pa(fe.get(e.id)?.projectDirectory||nt(e)||``),n=gt(F,me,t);return n?.label||(n?.path||t).split(`/`).pop()||``},_t=Se&&G===W&&!!xe&&ye===xe,vt=Se&&(G!==W||!!ie&&Ue||Ee.isFetching&&!Ee.isSuccess||De!==null&&Ne.isFetching&&!Ne.isSuccess),[yt,bt]=Q.useState(W);!vt&&yt!==W&&bt(W);let xt=!Se||yt===W&&!vt,Z=(0,$.jsx)(Gt,{ref:re,variant:R?`mobileGlass`:`default`,className:`font-normal`,"aria-label":i(`commandPalette.title`),inputMode:`search`,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,value:ae,onValueChange:e=>{Ae(null),oe(e),U({query:``,groups:[]})},placeholder:i(`commandPalette.input.placeholder`)}),Ct=(0,$.jsxs)(Kt,{shouldFilter:!1,onKeyDownCapture:mt,onPointerDownCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&qn({currentTarget:t})},onPointerCancelCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&Jn({currentTarget:t,detail:1})},onClickCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&e.detail>0&&!Jn({currentTarget:t,detail:e.detail})&&(e.preventDefault(),e.stopPropagation())},className:`max-h-full min-h-0 rounded-[inherit] bg-transparent [&_[cmdk-group]]:px-0 [&_[cmdk-item][data-selected=true]]:!bg-[color-mix(in_srgb,var(--interactive-selection)_40%,transparent)] [&_[cmdk-item]:hover]:!bg-[color-mix(in_srgb,var(--interactive-selection)_40%,transparent)]`,children:[R?(0,$.jsx)(Te,{title:Z,backAriaLabel:i(`header.actions.backAria`),onBack:t??K}):Z,(0,$.jsxs)(Bt,{"aria-label":i(`commandPalette.title`),className:`overscroll-contain p-1.5`,children:[(0,$.jsx)(`div`,{className:`px-3 py-2 typography-meta text-muted-foreground`,"aria-live":`polite`,children:Me.isError||Me.data?.phase===`error`||Me.data?.phase===`partial`?i(`commandPalette.index.partial`):Me.data?.phase===`ready`?i(`commandPalette.index.ready`,{count:Me.data.messages}):i(`commandPalette.index.progress`,{completed:Me.data?.completed??0,total:Me.data?.total??0})}),xt&&!_t&&!ze&&!Le&&j!==`loading`&&j!==`error`?(0,$.jsx)(Vt,{className:`py-10 text-center typography-meta text-muted-foreground`,children:i(`commandPalette.empty.noResults`)}):null,xt?it.map(e=>e===`commands`&&Ye.length>0?(0,$.jsxs)(Rt,{heading:i(`settings.page.commands.title`),className:ua,children:[Ye.map(e=>(0,$.jsx)(Jt,{value:e.id,onSelect:e.onSelect,className:la,children:(0,$.jsx)(ca,{title:fa(e.title,G),trailing:!R&&e.shortcutId?(0,$.jsx)(Xt,{className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,children:ft(e.shortcutId)}):void 0})},e.id)),rt(`commands`,Ce.length,Ye.length)]},`commands`):e===`settings`&&Xe.length>0?(0,$.jsxs)(Rt,{heading:i(`settings.view.home.title`),className:ua,children:[Xe.map(e=>(0,$.jsx)(Jt,{value:e.id,onSelect:e.onSelect,className:la,children:(0,$.jsx)(ca,{title:fa(e.title,G)})},e.id)),rt(`settings`,we.length,Xe.length)]},`settings`):e===`sessions`&&$e.length>0?(0,$.jsxs)(Rt,{heading:i(`layout.mainTab.chat`),className:ua,children:[$e.map(({session:e,hit:t},n)=>{let r=t?.title||e.title||i(`commandPalette.session.untitled`),a=ht(e);return(0,$.jsxs)(Jt,{value:t?`message:${e.id}:${t.messageID}`:`session:${e.id}`,onSelect:()=>t?st(t):ot(e),className:`flex-col items-stretch gap-1 rounded-lg px-3 py-2`,"aria-keyshortcuts":!R&&n<9?`${z?`Meta`:`Control`}+${n+1}`:void 0,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label text-foreground`,title:r,children:fa(r,G)}),(0,$.jsx)(`span`,{className:`max-w-[28%] shrink-0 truncate typography-meta text-muted-foreground`,title:a,children:a}),!R&&n<9?(0,$.jsxs)(Xt,{className:`h-5 min-w-8 shrink-0 rounded-full border-0 bg-interactive-selection px-2 text-muted-foreground shadow-none`,children:[z?`⌘`:`Ctrl+`,n+1]}):null]}),t?(0,$.jsxs)(`span`,{className:`line-clamp-3 whitespace-pre-wrap break-words typography-ui-label text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`font-medium`,children:[i(t.role===`user`?`commandPalette.message.user`:`commandPalette.message.assistant`),`: `]}),fa(t.snippet,G)]}):null]},t?`message:${e.id}:${t.messageID}`:`session:${e.id}`)}),rt(`sessions`,Qe.length,$e.length)]},`sessions`):e===`files`&&et.length>0?(0,$.jsxs)(Rt,{heading:i(`layout.mainTab.files`),className:ua,children:[et.map(e=>{let t=_e(e.relativePath||e.name,{maxLength:80});return(0,$.jsx)(Jt,{value:`file:${e.path}`,onSelect:()=>{ut(e.path)},className:la,children:(0,$.jsx)(ca,{title:fa(e.name,G),description:t===e.name?void 0:fa(t,G)})},`file:${e.path}`)}),rt(`files`,He.length,et.length)]},`files`):e===`projects`&&tt.length>0?(0,$.jsxs)(Rt,{heading:i(`sessions.sidebar.projectsTitle`),className:ua,children:[tt.map(e=>{let t=e.displayName;return(0,$.jsx)(Jt,{value:`project:${e.id}`,onSelect:()=>dt(e.id,e.path),className:la,children:(0,$.jsx)(ca,{title:fa(t,G)})},`project:${e.id}`)}),rt(`projects`,Ge.length,tt.length)]},`projects`):null):(0,$.jsx)(`div`,{role:`status`,className:`px-3 py-10 text-center typography-meta text-muted-foreground`,children:i(`common.loading`)}),xt&&j===`loading`?(0,$.jsx)(`div`,{role:`status`,className:`px-3 py-4 text-center typography-meta text-muted-foreground`,children:i(`common.loading`)}):null,xt&&j===`error`?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.sessions`)}):null,xt&&ze?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.sessions`)}):null,xt&&Le?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.messages`)}):null,xt&&_t?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`mobile.files.error.listFailed`)}):null]})]});return e===`page`?(0,$.jsx)(`section`,{ref:ne,"data-global-search":`true`,"data-page-scroll-lock":`true`,"aria-label":i(`commandPalette.title`),className:`oc-global-search-page flex min-h-0 w-full flex-col bg-background text-foreground`,children:Ct}):(0,$.jsx)(Dt,{open:o,onOpenChange:l,onOpenChangeComplete:e=>{e||c(!1)},children:(0,$.jsxs)(wt,{ref:ne,initialFocus:re,"data-global-search":`true`,"data-mobile":R,"data-page-scroll-lock":`true`,className:R?`oc-global-search-page oc-global-search-mobile fixed inset-0 z-50 m-0 flex max-w-none translate-x-0 translate-y-0 flex-col gap-0 overflow-hidden rounded-none border-0 bg-background p-0`:`oc-global-search oc-mobile-overlay-surface oc-mobile-overlay-surface--translucent oc-composer-autocomplete-surface fixed left-1/2 top-[10vh] z-50 w-[min(56rem,calc(100vw-3rem))] max-w-none -translate-x-1/2 translate-y-0 gap-0 overflow-hidden rounded-3xl border-0 p-0`,containerClassName:`block p-0`,overlayClassName:`bg-transparent dark:bg-transparent`,showCloseButton:!1,children:[(0,$.jsxs)(St,{className:`sr-only`,children:[(0,$.jsx)(Tt,{children:i(`commandPalette.title`)}),(0,$.jsx)(Et,{children:i(`commandPalette.description`)})]}),Ct]})})}),ga=class extends Q.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.setState({error:e,errorInfo:t})}handleReset=()=>{this.setState({hasError:!1,error:void 0,errorInfo:void 0})};render(){return this.state.hasError?(0,$.jsx)(`div`,{className:`flex items-center justify-center min-h-screen p-4`,children:(0,$.jsxs)(Ln,{className:`w-full max-w-md`,children:[(0,$.jsx)(xn,{className:`text-center`,children:(0,$.jsxs)(bn,{className:`flex items-center justify-center gap-2 text-destructive`,children:[(0,$.jsx)(Z,{name:`chat-3`,className:`h-5 w-5`}),this.props.texts.title]})}),(0,$.jsxs)(wn,{className:`space-y-4`,children:[(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground text-center`,children:this.props.texts.description}),this.props.sessionId&&(0,$.jsxs)(`div`,{className:`text-xs text-muted-foreground text-center`,children:[this.props.texts.sessionLabel,`: `,this.props.sessionId]}),this.state.error&&(0,$.jsxs)(`details`,{className:`text-xs font-mono bg-muted p-3 rounded`,children:[(0,$.jsx)(`summary`,{className:`cursor-pointer hover:bg-interactive-hover/80`,children:this.props.texts.detailsSummary}),(0,$.jsx)(`pre`,{className:`mt-2 max-h-48 overflow-auto`,children:this.state.error.toString()})]}),(0,$.jsx)(`div`,{className:`flex gap-2`,children:(0,$.jsxs)(X,{onClick:this.handleReset,variant:`outline`,className:`flex-1`,children:[(0,$.jsx)(Z,{name:`restart`,className:`h-4 w-4 mr-2`}),this.props.texts.resetAction]})}),(0,$.jsx)(`div`,{className:`text-xs text-muted-foreground text-center`,children:this.props.texts.persistentHint})]})]})}):this.props.children}};function _a(e){let t=(0,di.c)(22),{t:n}=pe(),r;t[0]===n?r=t[1]:(r=n(`chat.errorBoundary.title`),t[0]=n,t[1]=r);let i;t[2]===n?i=t[3]:(i=n(`chat.errorBoundary.description`),t[2]=n,t[3]=i);let a;t[4]===n?a=t[5]:(a=n(`chat.errorBoundary.sessionLabel`),t[4]=n,t[5]=a);let o;t[6]===n?o=t[7]:(o=n(`chat.errorBoundary.detailsSummary`),t[6]=n,t[7]=o);let s;t[8]===n?s=t[9]:(s=n(`chat.errorBoundary.resetAction`),t[8]=n,t[9]=s);let c;t[10]===n?c=t[11]:(c=n(`chat.errorBoundary.persistentHint`),t[10]=n,t[11]=c);let l;t[12]!==r||t[13]!==i||t[14]!==a||t[15]!==o||t[16]!==s||t[17]!==c?(l={title:r,description:i,sessionLabel:a,detailsSummary:o,resetAction:s,persistentHint:c},t[12]=r,t[13]=i,t[14]=a,t[15]=o,t[16]=s,t[17]=c,t[18]=l):l=t[18];let u;return t[19]!==e||t[20]!==l?(u=(0,$.jsx)(ga,{...e,texts:l}),t[19]=e,t[20]=l,t[21]=u):u=t[21],u}var va=1440,ya=e=>{let t=(0,di.c)(8),{isMobile:n,isVSCode:r,directory:i}=e,a=ce(`(min-width: ${va}px)`),o;t[0]===i?o=t[1]:(o=i?F(i):``,t[0]=i,t[1]=o);let s=o,c;t[2]===s?c=t[3]:(c=e=>{let t=s?e.contextPanelByDirectory[s]:void 0;if(!t?.isOpen)return!1;let n=t.tabs.find(e=>e.id===t.activeTabId)??t.tabs[t.tabs.length-1]??null;return!!(n&&n.mode!==`chat`)},t[2]=s,t[3]=c);let l=P(c),u=P(ba),d=P(xa),f=!n&&!r&&!l&&!d,p=f&&a,m=u&&p,h;return t[4]!==p||t[5]!==f||t[6]!==m?(h={visible:m,fits:p,layoutAllows:f},t[4]=p,t[5]=f,t[6]=m,t[7]=h):h=t[7],h};function ba(e){return e.workStatusPanelEnabled}function xa(e){return e.isRightSidebarOpen}var Sa=async({directory:e,sessionID:t,signal:n})=>{let r=await j.getScopedSdkClient(e).session.list({directory:e,parentID:t,limit:200},{signal:n});if(!Array.isArray(r?.data))throw Error(`session.list children returned no data`);return r.data.flatMap(e=>{if(!e?.id)return[];let t=typeof e.title==`string`?e.title:void 0;return[{id:e.id,title:t}]})},Ca=(e,t,n={})=>{let r=n.listChildren??Sa;return z({queryKey:p.workStatusChildren.list(e,t,n.transport),enabled:!!(e&&t),queryFn:({signal:n})=>r({directory:e,sessionID:t,signal:n}),staleTime:5e3,refetchInterval:1e4})},wa=[],Ta=(...e)=>{let t=Mt(...e);return t?t.charAt(0).toUpperCase()+t.slice(1):``},Ea=(...e)=>{for(let t of e){if(!t||typeof t!=`object`)continue;let e=t.description;if(typeof e!=`string`)continue;let n=e.trim();if(n)return n}return``},Da=e=>e===`pending`||e===`running`,Oa=e=>{let t=[],n=new Set;for(let r of e.messageOrder){let i=e.partsByMessageID[r];if(i)for(let e of i){if(!e?.id||n.has(e.id))continue;if(e.type===`tool`&&It(e.tool)){n.add(e.id);let r=e.state;t.push({id:e.id,sessionID:Lt(e),label:Ta(r?.input,r?.metadata,e.metadata),description:Ea(r?.input,e.metadata,r?.metadata),running:Da(r?.status)});continue}if(e.type!==`subtask`)continue;let r=e,i=typeof r.taskSessionID==`string`?r.taskSessionID.trim():``,a=typeof r.agent==`string`?r.agent.trim():``,o=typeof r.description==`string`?r.description.trim():``;n.add(e.id),t.push({id:e.id,sessionID:i||void 0,label:a?a.charAt(0).toUpperCase()+a.slice(1):``,description:o,running:Da(r.status)})}}return t.length===0?wa:t},ka=(e,t)=>{if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(!r||!i||r.id!==i.id||r.sessionID!==i.sessionID||r.label!==i.label||r.description!==i.description||r.running!==i.running)return!1}return!0},Aa=e=>e.childTitle||e.description||e.agent,ja=e=>({key:e.key,sessionID:e.sessionID,seed:e.key,label:Aa(e),phase:e.working?`working`:`done`}),Ma=(e,t,n)=>{let r=new Map(t.map(e=>[e.id,e])),i=new Set,a=[],o=new Map,s=e=>{let t=e.sessionID;if(!t){a.push(e);return}i.add(t);let n=o.get(t);if(n===void 0){o.set(t,a.length),a.push({...e,key:t,sessionID:t});return}let r=a[n];r&&(a[n]={...r,description:r.description||e.description,agent:r.agent||e.agent,childTitle:e.childTitle||r.childTitle,working:r.working||e.working})};for(let t of e){let e=t.sessionID?r.get(t.sessionID):void 0;s({key:t.id,sessionID:t.sessionID,description:t.description,agent:t.label,childTitle:e?.title?.trim()||``,working:t.running||!!e?.busy||!!(t.sessionID&&n?.has(t.sessionID))})}for(let e of t)i.has(e.id)||s({key:e.id,sessionID:e.id,description:``,agent:``,childTitle:e.title?.trim()||``,working:e.busy});let c=a.map(ja),l=c.filter(e=>e.phase===`working`),u=c.filter(e=>e.phase===`done`);return l.length===0?u:u.length===0?l:[...l,...u]},Na=new Set,Pa=e=>{if(!e)return``;let t=[];for(let n of Object.keys(e)){let r=e[n]?.type;(r===`busy`||r===`retry`)&&t.push(n)}return t.sort(),t.join(`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/OnboardingScreen-CqcZEptL.js","assets/rolldown-runtime-hePW80VL.js","assets/runtime-fetch-WgH0pROs.js","assets/runtime-auth-BpCQ-dPr.js","assets/runtime-switch-CMiMO5Yj.js","assets/persistence-BKszKaoQ.js","assets/vendor-zustand-o69pgTEK.js","assets/vendor-base-ui-CdzJ6My_.js","assets/useUIStore-CEqU9Ujv.js","assets/vendor-react-BP2cRVqX.js","assets/vendor-pathe-vBmvQE8f.js","assets/vendor-tanstack-query-core-BWz0ose6.js","assets/desktopHosts-C0e7Nes2.js","assets/button-CWSs9Baz.js","assets/store-CG7Ytsg9.js","assets/vendor-aparajita-capacitor-secure-storage-xol_6BsB.js","assets/vendor-class-variance-authority-BLUaYARZ.js","assets/vendor-tailwind-merge-BicNWLTg.js","assets/Icon-BCFeHDWx.js","assets/dialog-BMa16qrs.js","assets/input-CALwaZEB.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{c as t,i as n,n as r,o as i,r as a,s as o}from"./runtime-switch-CMiMO5Yj.js";import{n as s}from"./runtime-fetch-WgH0pROs.js";import{An as c,On as l,Rt as u,Wt as d,_n as f,h as p,ln as m,m as h,mt as g,on as _,ot as v,rn as y,un as b}from"./persistence-BKszKaoQ.js";import{a as x,i as S,o as C}from"./vendor-zustand-o69pgTEK.js";import{it as w,nt as T,o as E,rt as D,s as O}from"./vendor-base-ui-CdzJ6My_.js";import{Ct as k,Mt as A,Nt as j,dr as M,r as N}from"./platform-CgwxwfA4.js";import{n as P,t as F,x as I}from"./useUIStore-CEqU9Ujv.js";import{n as L}from"./vendor-react-BP2cRVqX.js";import{o as ee}from"./vendor-aparajita-capacitor-secure-storage-xol_6BsB.js";import{l as te,n as R,o as z,s as B,t as ne}from"./vendor-tanstack-react-query-CdqCAt40.js";import{i as re}from"./terminalApi-rxsMWL0o.js";import{c as V,d as ie,f as ae,l as oe,m as H,n as U,o as W,p as G,s as K,t as q,u as J}from"./vendor-pierre-diffs-DPBtNDJ5.js";import{r as se}from"./vendor-sonner-ZS8XIOVl.js";import{l as ce,n as le,p as ue,r as de}from"./vendor-reactuses-core-BpfIZ1tg.js";import{d as fe,f as pe,i as me,l as he,p as ge,r as Y,t as X,u as _e}from"./button-CWSs9Baz.js";import{i as ve,t as ye}from"./store-CG7Ytsg9.js";import{A as be,M as xe,O as Se,j as Ce,k as we,t as Te}from"./MobileDetailNavigation-e4vO0lXT.js";import{An as Ee,Ar as De,Bt as Oe,Cn as ke,Cr as Ae,Er as je,Fr as Me,Gt as Ne,Ir as Pe,Mr as Fe,Na as Ie,Or as Le,Pr as Re,Rr as ze,Sa as Be,Sn as Ve,So as He,Vt as Ue,Wn as We,Xn as Ge,Xr as Ke,Zr as qe,ba as Je,bo as Ye,br as Xe,d as Ze,di as Qe,do as $e,fo as et,jr as tt,kr as nt,la as rt,ln as it,o as at,pi as ot,ti as st,uo as ct,vi as lt,vo as ut,vr as dt,wn as ft,wr as pt,xr as mt,yr as ht,zi as gt}from"./useMobileNavigationStore-CuOiHjP1.js";import{i as _t,t as vt}from"./useAssistantUIStore-OyPm_4M_.js";import{t as yt}from"./AgentAvatar-qLxaEaDh.js";import{n as bt,t as xt}from"./useThemeSystem-8jhE4Zyk.js";import{n as Z}from"./Icon-BCFeHDWx.js";import{a as St,i as Ct,n as wt,o as Tt,r as Et,t as Dt}from"./dialog-BMa16qrs.js";import{d as Ot}from"./gitApi-Bq2BWLAz.js";import{$ as kt,Ct as At,E as jt,G as Mt,O as Nt,Rt as Pt,St as Ft,U as It,W as Lt,at as Rt,c as zt,ct as Bt,it as Vt,lt as Ht,mt as Ut,o as Wt,ot as Gt,rt as Kt,s as qt,st as Jt,tt as Yt,vt as Xt,xt as Zt,yt as Qt}from"./useAppFontEffects-YhyFj8z3.js";import{A as $t,_ as en,a as tn,b as nn,d as rn,f as an,h as on,i as sn,l as cn,m as ln,n as un,p as dn,r as fn,s as pn,t as mn,x as hn}from"./projectMeta-dZJ-hOil.js";import{t as gn}from"./input-CALwaZEB.js";import{i as _n,n as vn,t as yn}from"./tooltip-CV6dvLBp.js";import{Dt as bn,Et as xn,J as Sn,Rt as Cn,Tt as wn,_ as Tn,at as En,ct as Dn,g as On,gt as kn,it as An,mt as jn,q as Mn,rt as Nn,st as Pn,tt as Fn,ut as In,wt as Ln}from"./speechSettingsQueries-CdlOc_sI.js";import{i as Rn,t as zn}from"./OverlayScrollbar-BY5HaNrb.js";import{h as Bn,v as Vn}from"./image-loading-Bj11k4gM.js";import{x as Hn}from"./dropdown-menu.styles-BNwZmBRp.js";import{n as Un,t as Wn}from"./useRuntimeAPIs-Cx8S1HLz.js";import{T as Gn,a as Kn,g as qn,h as Jn,i as Yn,n as Xn,o as Zn,p as Qn,r as $n,t as er,x as tr,y as nr}from"./textarea-ClV5sMS-.js";import{T as rr}from"./sessionChangeSummary-DTeJLaNT.js";import{i as ir,t as ar}from"./vendor-framer-motion-D-oiwsxL.js";import{D as or,b as sr,h as cr,k as lr,r as ur,v as dr,w as fr,y as pr}from"./insertionBoundaries-n7dVxiuI.js";import{i as mr,n as hr,t as gr}from"./appThemeRegistry-D59Upe3t.js";import{o as _r}from"./MarkdownRenderer-BvKaN2KX.js";import{_ as vr,c as yr,g as br,i as xr,l as Sr,n as Cr,o as wr,s as Tr,t as Er,v as Dr,y as Or}from"./vendor-dnd-kit-core-5pNnzVdw.js";import{a as kr,o as Ar,s as jr,t as Mr}from"./vendor-dnd-kit-sortable-Dm50I0m7.js";import{f as Nr,l as Pr}from"./markdown-worker-DFNZ3KJ_.js";import{n as Fr}from"./useEffectiveDirectory-COgvBW0Q.js";import{u as Ir}from"./FadeInOnReveal-CX8Bkq-l.js";import{t as Lr}from"./LoadingImage-BAT9D9wN.js";import{n as Rr}from"./useWorkerHighlightedLines-DGH-O6ZJ.js";import{t as zr}from"./vendor-tanstack-react-virtual-B_EO--9t.js";import{t as Br}from"./vendor-motion-88WXBOBf.js";import{B as Vr,t as Hr,u as Ur,v as Wr,x as Gr}from"./MobileTabPageHeader-nApqJ-1X.js";import{c as Kr,l as qr}from"./mcpQueries-BxICKLst.js";import{a as Jr,c as Yr,d as Xr,i as Zr,l as Qr,m as $r,n as ei,o as ti,r as ni,s as ri,t as ii}from"./scheduledTaskNavigation-DQcLqQ52.js";import{n as ai,r as oi}from"./sessionLookup-_U9nCuBN.js";import{n as si,r as ci,t as li}from"./collapsible-ngtoKADo.js";import{t as ui}from"./vendor-cron-parser-BmO80h0C.js";var Q=e(w(),1),di=L(),$=D(),fi=e(T(),1);function pi(){return new Worker(q,{type:`module`})}var mi=[`typescript`,`javascript`,`tsx`,`jsx`,`json`,`markdown`],hi={unified:{poolSize:1,totalASTLRUCacheSize:24,lineDiffType:`none`},split:{poolSize:2,totalASTLRUCacheSize:56,lineDiffType:`word-alt`}},gi,_i,vi=e=>{let t=hi[e],n=new G({workerFactory:pi,poolSize:t.poolSize,totalASTLRUCacheSize:t.totalASTLRUCacheSize},{theme:{light:`pierre-light`,dark:`pierre-dark`},langs:mi,lineDiffType:t.lineDiffType,preferredHighlighter:`shiki-wasm`});return n.initialize(),n},yi=e=>{if(!(typeof window>`u`))return e===`split`?(_i??=vi(`split`),_i):(gi??=vi(`unified`),gi)},bi=e=>{let t=(0,di.c)(7),{children:n,renderTheme:r}=e,i=Si(`unified`),a=Si(`split`),o,s;t[0]!==r||t[1]!==a||t[2]!==i?(o=()=>{i&&i.setRenderOptions({theme:r,lineDiffType:hi.unified.lineDiffType}),a&&a.setRenderOptions({theme:r,lineDiffType:hi.split.lineDiffType})},s=[r,a,i],t[0]=r,t[1]=a,t[2]=i,t[3]=o,t[4]=s):(o=t[3],s=t[4]),(0,Q.useEffect)(o,s);let c;return t[5]===n?c=t[6]:(c=(0,$.jsx)($.Fragment,{children:n}),t[5]=n,t[6]=c),c},xi=e=>{let t=(0,di.c)(11),{children:n}=e,r=xt(),i,a;if(t[0]!==r?.availableThemes||t[1]!==r?.darkThemeId||t[2]!==r?.lightThemeId){let e=Vn(!1),n=Vn(!0),o=r?.lightThemeId??e.metadata.id,s=r?.darkThemeId??n.metadata.id;a=r?.availableThemes.find(e=>e.metadata.id===o)??e,i=r?.availableThemes.find(e=>e.metadata.id===s)??n,gr(a),gr(i),t[0]=r?.availableThemes,t[1]=r?.darkThemeId,t[2]=r?.lightThemeId,t[3]=i,t[4]=a}else i=t[3],a=t[4];let o;t[5]!==i.metadata.id||t[6]!==a.metadata.id?(o={light:a.metadata.id,dark:i.metadata.id},t[5]=i.metadata.id,t[6]=a.metadata.id,t[7]=o):o=t[7];let s=o,c;return t[8]!==n||t[9]!==s?(c=(0,$.jsx)(bi,{renderTheme:s,children:n}),t[8]=n,t[9]=s,t[10]=c):c=t[10],c},Si=e=>{let t=(0,di.c)(2),n=e===void 0?`unified`:e,r;return t[0]===n?r=t[1]:(r=yi(n),t[0]=n,t[1]=r),r},Ci=(e,t)=>{if(!e||typeof e!=`object`)return!1;let n=e;return(n.role===`user`||n.role===`assistant`)&&typeof n.sessionID==`string`&&n.sessionID.length>0&&typeof n.messageID==`string`&&n.messageID.length>0&&typeof n.snippet==`string`&&typeof n.createdAt==`number`&&Number.isFinite(n.createdAt)&&t.length>0},wi=async e=>{let t=e.query.trim();if(!t)return[];let n=await(e.fetch??s)(`/api/openchamber/content-search`,{query:{q:t,limit:String(e.limit??30)},signal:e.signal});if(!n.ok)throw Error(`session content search failed (${n.status})`);let r=await n.json();if(!Array.isArray(r?.hits))throw Error(`session content search returned no hits`);return r.hits.flatMap(e=>Ci(e,typeof e?.directory==`string`?e.directory:``)?[e]:[])},Ti=(e,t)=>{let i=e.trim(),a=t.scope,o=a?.transport??n(),s=a?.generation??r(),c=t.searchContent??wi;return z({queryKey:p.sessionContentSearch.query(i,``,s,o),enabled:i.length>0&&a!==null,queryFn:({signal:e})=>a?c({scope:a,query:i,limit:30,signal:e}):[],staleTime:0,refetchInterval:3e3,retry:1})},Ei=(e=s)=>z({queryKey:[n(),`contentSearchStatus`,r()],queryFn:async({signal:t})=>{let n=await e(`/api/openchamber/content-search`,{signal:t});if(n.status===404||n.status===501)return null;if(!n.ok)throw Error(`Content index unavailable (${n.status})`);let{index:r}=await n.json();if(!r||![`pending`,`indexing`,`ready`,`partial`,`error`].includes(r.phase)||![r.total,r.completed,r.failed,r.messages].every(e=>Number.isFinite(e)&&e>=0)||r.initializationRequired!==void 0&&typeof r.initializationRequired!=`boolean`||[r.indexStartedAt,r.indexCompletedAt,r.coveredSince,r.verifiedAt,r.updatedAt].some(e=>e!=null&&!Number.isFinite(e)))throw Error(`Invalid content index status`);return r},refetchInterval:3e3,staleTime:0}),Di=_r(()=>ee(()=>import(`./OnboardingScreen-CqcZEptL.js`).then(e=>({default:e.OnboardingScreen})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20])));function Oi(){let e=(0,di.c)(11),[t,n]=Q.useState(!1),r;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=Ei(),e[0]=r):r=e[0];let i=!t,a;e[1]===i?a=e[2]:(a={...r,enabled:i,refetchOnWindowFocus:!1,refetchInterval:ki},e[1]=i,e[2]=a);let o=B(a),s=o.data,c=o.isFetchedAfterMount&&!o.isError&&(s===null||s&&(s.initializationRequired===void 0||s.initializationRequired===!1&&s.updatedAt!=null)),l,u;if(e[3]===c?(l=e[4],u=e[5]):(l=()=>{c&&n(!0)},u=[c],e[3]=c,e[4]=l,e[5]=u),Q.useEffect(l,u),t||!s?.initializationRequired)return null;let d;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{e||n(!0)},e[6]=d):d=e[6];let f;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>n(!0),e[7]=f):f=e[7];let p;return e[8]!==s||e[9]!==o.isError?(p=(0,$.jsx)(Q.Suspense,{fallback:null,children:(0,$.jsx)(Dt,{open:!0,onOpenChange:d,children:(0,$.jsx)(wt,{showCloseButton:!1,className:`h-full max-w-none rounded-none border-0 p-0`,overlayClassName:`z-[9997]`,containerClassName:`z-[9997] items-stretch p-0`,children:(0,$.jsx)(Di,{mode:`content-index`,indexStatus:s,indexStatusError:o.isError,onContinueInBackground:f})})})}),e[8]=s,e[9]=o.isError,e[10]=p):p=e[10],p}function ki(e){let t=e.state.data;return t===null||t&&t.initializationRequired===void 0||t?.initializationRequired===!1&&t.updatedAt!=null?!1:3e3}function Ai(){let e=(0,di.c)(4);if(Wn())return null;let t,n;if(e[0]===Symbol.for(`react.memo_cache_sentinel`)){let r=Ei().queryKey;t=Oi,n=JSON.stringify(r),e[0]=t,e[1]=n}else t=e[0],n=e[1];let r;return e[2]===n?r=e[3]:(r=(0,$.jsx)(t,{},n),e[2]=n,e[3]=r),r}var ji=Q.forwardRef((e,t)=>{let n=(0,di.c)(11),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=Y(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-none transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--interactive-focus-ring)] focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[checked]:bg-primary data-[unchecked]:bg-[var(--interactive-border)]`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o={width:`36px`,height:`20px`,minWidth:`36px`,minHeight:`20px`},n[5]=o):o=n[5];let s;n[6]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,$.jsx)(E,{className:Y(`pointer-events-none block rounded-full bg-background shadow-none ring-0 transition-transform data-[checked]:translate-x-4 data-[unchecked]:translate-x-0`),style:{width:`16px`,height:`16px`,minWidth:`16px`,minHeight:`16px`}}),n[6]=s):s=n[6];let c;return n[7]!==i||n[8]!==t||n[9]!==a?(c=(0,$.jsx)(O,{className:a,style:o,...i,ref:t,children:s}),n[7]=i,n[8]=t,n[9]=a,n[10]=c):c=n[10],c});ji.displayName=`Switch`;var Mi={},Ni=[],Pi=(e,t)=>{if(!e)return t(`mcpDropdown.status.unknown`);switch(e.status){case`connected`:return t(`mcpDropdown.status.connected`);case`failed`:return t(`mcpDropdown.status.failed`,{error:e.error||t(`mcpDropdown.status.unknownError`)});case`needs_auth`:return t(`mcpDropdown.status.needsAuth`);case`needs_client_registration`:return t(`mcpDropdown.status.needsRegistration`,{error:e.error||``});default:return e.status}},Fi=e=>{switch(e?.status){case`connected`:return`success`;case`failed`:return`error`;case`needs_auth`:case`needs_client_registration`:return`warning`;default:return`default`}},Ii=({active:e,className:t,headerAction:n,listClassName:r,hideHeader:i=!1,mobileListDensity:a=!1})=>{let{t:o}=pe(),s=k(e=>e.currentDirectory)??null,c=Vr(e=>e.connect),l=Vr(e=>e.disconnect),{data:u,refetch:d,isError:f,error:p}=qr(s,{enabled:e}),{data:m}=Kr(s,{enabled:e}),h=u??Mi,g=m??Ni,[_,v]=Q.useState(!1),[y,b]=Q.useState(null),x=Q.useMemo(()=>{let e=new Set(Object.keys(h));for(let t of g)t?.name&&e.add(t.name);return Array.from(e).sort((e,t)=>e.localeCompare(t))},[g,h]),S=Q.useCallback(e=>{if(e?.preventDefault(),_)return;v(!0);let t=new Promise(e=>setTimeout(e,500));Promise.all([d(),t]).finally(()=>{v(!1)})},[_,d]);return(0,$.jsxs)(`div`,{className:Y(`w-full`,t),children:[i?null:(0,$.jsx)(`div`,{className:`border-b border-[var(--interactive-border)]`,children:(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-4 py-2.5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex items-baseline gap-2`,children:[(0,$.jsx)(`div`,{className:`typography-ui-header font-semibold text-foreground`,children:o(`mcpDropdown.title`)}),s&&(0,$.jsx)(`div`,{className:`truncate typography-micro text-muted-foreground`,children:s.split(`/`).pop()||s})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[n,(0,$.jsx)(`button`,{type:`button`,className:`inline-flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:text-foreground hover:bg-interactive-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary`,disabled:_,onClick:S,"aria-label":o(`mcpDropdown.actions.refreshAria`),children:(0,$.jsx)(Z,{name:`refresh`,className:Y(`h-4 w-4`,_&&`animate-spin`)})})]})]})}),(0,$.jsx)(`div`,{className:Y(`max-h-64 overflow-y-auto`,a?`space-y-1 py-3`:`px-3 py-2.5`,r),children:(0,$.jsxs)(`div`,{className:Y(!a&&x.length>0&&`rounded-xl bg-[var(--surface-muted)] p-1.5`),children:[x.map(e=>{let t=h[e]??(f&&!u&&g.some(t=>t.name===e)?{status:`failed`,error:p.message}:void 0),n=Fi(t),r=t?.status===`connected`,i=y===e,d=Pi(t,o);return(0,$.jsxs)(`div`,{className:Y(`flex items-center justify-between rounded-lg hover:bg-interactive-hover/50`,a?`gap-3 px-4 py-3`:`gap-2 px-2.5 py-2`),children:[(0,$.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,$.jsxs)(yn,{children:[(0,$.jsx)(_n,{asChild:!0,children:(0,$.jsx)(`span`,{className:Y(`rounded-full flex-shrink-0`,a?`h-2.5 w-2.5`:`h-2 w-2`,n===`success`&&`bg-status-success`,n===`error`&&`bg-status-error`,n===`warning`&&`bg-status-warning`,n==="default"&&`bg-muted-foreground/40`),"aria-label":d})}),(0,$.jsx)(vn,{side:`left`,children:(0,$.jsx)(`p`,{children:d})})]}),(0,$.jsx)(`span`,{className:Y(`truncate`,a?`text-[17px] leading-6 font-medium`:`typography-ui-label`),children:e})]})}),(0,$.jsx)(ji,{checked:r,disabled:i,className:`data-[checked]:bg-status-info`,onCheckedChange:async t=>{b(e);try{t?await c(e,s):await l(e,s)}finally{b(null)}}})]},e)}),x.length===0&&(0,$.jsx)(`div`,{className:`px-4 py-5 typography-ui-label text-muted-foreground text-center`,children:o(`mcpDropdown.empty.configureInConfig`)})]})})]})},Li=e=>!(e.dismissed===`true`||e.sessionShown===`true`||e.hasActiveToast),Ri=e=>!(!e.version||e.seenVersions.has(e.version)||e.dismissedVersion!==null&&e.dismissedVersion===e.version),zi=e=>{if(typeof e!=`object`||!e)return``;let t=e.version;return typeof t==`string`?t.trim():``},Bi=e=>{if(!e||e.available!==!0||e.canManage===!1)return``;let t=typeof e.latestVersion==`string`?e.latestVersion:typeof e.targetVersion==`string`?e.targetVersion:``;return t?t.trim():``},Vi=e=>{let t=e.trim().replace(/^v/i,``);return t?{target:t}:null},Hi=5e3,Ui={setTimeout:(e,t)=>globalThis.setTimeout(e,t),clearTimeout:e=>globalThis.clearTimeout(e)};function Wi(e,t,n=Ui){if(!e)return()=>void 0;let r=n.setTimeout(()=>{t().catch(()=>void 0)},Hi);return()=>n.clearTimeout(r)}var Gi=(e,t)=>({queryKey:[e,`opencode-update`,t],queryFn:async({signal:i})=>{let a=()=>e===n()&&t===r();if(!a())throw Error(`Stale OpenCode update check`);let o=await s(`/api/opencode/upgrade-status`,{headers:{Accept:`application/json`},signal:i});if(!o.ok)throw Error(`OpenCode update check failed`);let c=await o.json();if(i.aborted||!a())throw Error(`Stale OpenCode update check`);if(!c||typeof c!=`object`||Array.isArray(c))throw Error(`Invalid OpenCode update status`);return c},staleTime:3e4,refetchInterval:3e5,refetchOnWindowFocus:!0,refetchOnReconnect:!0,retry:1}),Ki=`opencode-update-available`,qi=`opencode-upgrade-progress`,Ji=`opencode-update-toast-dismissed-version`,Yi=()=>{let{t:e}=pe(),i=P(e=>e.showOpenCodeUpdateNotifications),a=Q.useRef(new Set),o=Q.useRef(!1),c=Q.useSyncExternalStore(t,n,n),l=Q.useSyncExternalStore(t,r,r),u=te(),[d,f]=Q.useState(!1);Q.useEffect(()=>Wi(i,async()=>{f(!0)}),[i]);let p=B({...Gi(c,l),enabled:i&&d});de(`openchamber:opencode-update-available`,e=>{i&&zi(e.detail)&&p.refetch()});let m=`${Ji}:${c}`;Q.useEffect(()=>{a.current.clear(),Pe.dismiss(Ki),Pe.dismiss(qi)},[c,l]),Q.useEffect(()=>{i||Pe.dismiss(Ki)},[i]);let h=le(async(t,i=!1)=>{if(o.current)return;o.current=!0;let a=()=>c===n()&&l===r();Pe.dismiss(Ki),Pe.message(e(`opencodeUpdate.toast.upgrading.title`),{id:qi,description:e(`opencodeUpdate.toast.upgrading.description`),duration:1/0,icon:(0,$.jsx)(Z,{name:`refresh`,className:`h-4 w-4 animate-spin text-muted-foreground`})});try{let n=Vi(t);if(!n)throw Error(e(`opencodeUpdate.toast.failed.description`));let r=await s(`/api/opencode/upgrade`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`},body:JSON.stringify({...n,confirmActiveTasks:i})}),o=await r.json().catch(()=>null);if(!a())return;if(o?.errorCode===`UPGRADE_ACTIVE_TASKS`){Pe.error(e(`opencodeUpdate.toast.failed.title`),{id:qi,description:o.error,duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{a()&&h(t,!0)}}});return}if(!r.ok||o?.success!==!0)throw Error(o?.error||r.statusText||e(`opencodeUpdate.toast.failed.description`));Pe.success(e(`opencodeUpdate.toast.updated.title`),{id:qi,description:o?.version?e(`opencodeUpdate.toast.updated.descriptionWithVersion`,{version:o.version}):e(`opencodeUpdate.toast.updated.description`),duration:1/0,icon:(0,$.jsx)(Z,{name:`check`,className:`h-4 w-4 text-[var(--status-success)]`})}),u.invalidateQueries({queryKey:[c,`opencode-update`,l]}),u.invalidateQueries({queryKey:[c,`about`,l]})}catch(n){if(!a())return;Pe.error(e(`opencodeUpdate.toast.failed.title`),{id:qi,description:n instanceof Error?n.message:e(`opencodeUpdate.toast.failed.description`),duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{a()&&h(t)}}})}finally{o.current=!1}});return Q.useEffect(()=>{let t=t=>{if(!P.getState().showOpenCodeUpdateNotifications){Pe.dismiss(Ki);return}Ri({version:t,dismissedVersion:I().getItem(m),seenVersions:a.current})&&(a.current.add(t),Pe.info(e(`opencodeUpdate.toast.available.title`),{id:Ki,description:e(`opencodeUpdate.toast.available.description`,{version:t}),duration:1/0,action:{label:e(`opencodeUpdate.toast.actions.update`),onClick:()=>{c===n()&&l===r()&&h(t)}},cancel:{label:e(`opencodeUpdate.toast.actions.dismiss`),onClick:()=>{I().setItem(m,t),Pe.dismiss(Ki)}}}))},i=Bi(p.data);i?t(i):(p.data?.available===!1||p.data?.canManage===!1)&&Pe.dismiss(Ki)},[i,e,p.data,m,c,l,h]),null},Xi=()=>{let e=(0,di.c)(3),[t,n]=Q.useState(Zi),{isUpdating:r}=t,i,a;if(e[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=()=>et(n),a=[],e[0]=i,e[1]=a):(i=e[0],a=e[1]),Q.useEffect(i,a),!r)return null;let o;return e[2]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,$.jsx)(`div`,{className:`fixed inset-0 z-[9999] flex items-center justify-center bg-background/90`,children:(0,$.jsx)(Cn,{width:80,height:80,isAnimated:!0})}),e[2]=o):o=e[2],o};function Zi(){return $e()}var Qi=5e3,$i=(e,t)=>{if(!e)return 1;let n=1;for(let r=0;r<e.length;r+=1)if(e.charCodeAt(r)===10&&(n+=1,n>t))return n;return n},ea=(e,t)=>ye(ve.getState().dictionary,e,t),ta=e=>{let t=(e instanceof Error?e.message:String(e??``)).toLowerCase();return t.includes(`file not found`)||t.includes(`not found`)||t.includes(`enoent`)||t.includes(`no such file`)||t.includes(`does not exist`)?`missing`:`unreadable`},na=async(e,t)=>{if(e.readFile){let n=await e.readFile(t,{optional:!0});if(typeof n.exists!=`boolean`)throw Error(`Optional file read requires an existence response header`);return{content:n.content??``,exists:n.exists}}let n=new URLSearchParams({path:t,optional:`true`}),r=await s(`/api/fs/read?${n.toString()}`,{cache:`no-store`});if(!r.ok){let e=await r.json().catch(()=>({error:r.statusText}));throw Error(e.error||`Failed to read file`)}let i=r.headers.get(`x-openchamber-file-exists`);if(i!==`true`&&i!==`false`)throw Error(`Optional file read requires an existence response header`);return{content:await r.text(),exists:i===`true`}},ra=async(e,t)=>{try{let{content:n,exists:r}=await na(e,t);return r?$i(n,5e3)>5e3?{ok:!1,reason:`too-large`}:{ok:!0}:{ok:!1,reason:`missing`}}catch(e){return{ok:!1,reason:ta(e)}}},ia=e=>e===`too-large`?ea(`contextFileOpen.failure.tooLarge`,{count:Qi.toLocaleString(ge())}):ea(e===`missing`?`contextFileOpen.failure.missing`:`contextFileOpen.failure.unreadable`),aa=(e,t)=>!e||t.length===0?``:JSON.stringify([e,t]),oa=(e,t,n,r)=>!n||r!==n||e.length===0?[]:We(e,t,e=>e.name,{limit:10,threshold:.4}),sa=(e,t={})=>{let r=e.trim(),i=t.transport??n(),a=t.searchSessions??(e=>j.searchSessionsByTitle(e));return z({queryKey:p.sessionTitleSearch.query(r,i),enabled:r.length>0,queryFn:({signal:e})=>a({search:r,limit:30,signal:e}),staleTime:5e3,retry:1})},ca=e=>{let t=(0,di.c)(13),{title:n,description:r,trailing:i}=e,a=r?`min-w-0 max-w-[58%] shrink-0 truncate typography-meta font-medium leading-4 text-foreground`:`min-w-0 flex-1 truncate typography-meta font-medium leading-4 text-foreground`,o;t[0]!==a||t[1]!==n?(o=(0,$.jsx)(`span`,{className:a,children:n}),t[0]=a,t[1]=n,t[2]=o):o=t[2];let s;t[3]===r?s=t[4]:(s=r?(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-micro leading-4 text-muted-foreground/65`,children:r}):null,t[3]=r,t[4]=s);let c;t[5]!==o||t[6]!==s?(c=(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2.5`,children:[o,s]}),t[5]=o,t[6]=s,t[7]=c):c=t[7];let l;t[8]===i?l=t[9]:(l=i?(0,$.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center pl-2 text-muted-foreground/50`,children:i}):null,t[8]=i,t[9]=l);let u;return t[10]!==c||t[11]!==l?(u=(0,$.jsxs)($.Fragment,{children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12],u},la=`min-h-9 gap-2 rounded-lg px-3 py-2 typography-meta`,ua=`py-0 [&_[cmdk-group-heading]]:px-2.5 [&_[cmdk-group-heading]]:pb-2 [&_[cmdk-group-heading]]:pt-3 [&_[cmdk-group-heading]]:font-normal [&_[cmdk-group-heading]]:text-muted-foreground`,da=`rounded-[3px] bg-[color-mix(in_srgb,var(--primary-base)_28%,transparent)] px-0.5 font-[inherit] text-foreground`;function fa(e,t){let n=t.trim().toLowerCase().split(/\s+/).filter(Boolean);if(!n.length||!e)return e;let r=n.map(e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)),i=RegExp(`(${r.join(`|`)})`,`gi`);return e.split(i).map((e,t)=>n.includes(e.toLowerCase())?(0,$.jsx)(`mark`,{className:da,children:e},t):(0,$.jsx)(`span`,{children:e},t))}var pa=e=>{if(!e)return``;let t=e.replace(/\\/g,`/`),n=t.startsWith(`//`),r=t.replace(/\/+/g,`/`);n&&!r.startsWith(`//`)&&(r=`/${r}`);let i=r===`/`,a=/^[A-Za-z]:\/$/.test(r);return!i&&!a&&(r=r.replace(/\/+$/,``)),r},ma=[],ha=Q.memo(function({presentation:e=`dialog`,onBack:t}){let{t:i}=pe(),a=rr(),o=P(e=>e.isCommandPaletteOpen),[s,c]=Q.useState(o),l=P(e=>e.setCommandPaletteOpen),u=P(e=>e.setActiveMainTab),f=P(e=>e.setSettingsDialogOpen),p=P(e=>e.setSettingsPage),h=P(e=>e.setSessionSwitcherOpen),g=P(e=>e.toggleSidebar),v=P(e=>e.toggleRightSidebar),x=P(e=>e.toggleBottomTerminal),S=P(e=>e.openContextOverview),C=P(e=>e.openContextFile),w=P(e=>e.shortcutOverrides),T=Ze(e=>e.openNewSessionDraft),E=Ze(e=>e.setCurrentSession),D=o||s,O=Fe(e=>D?e.activeSessions:ma),j=Fe(e=>D?e.status:`idle`),M=k(e=>e.currentDirectory),N=ct(e=>e.getActiveProject()),F=ct(e=>e.projects),I=Fr(),L=A(e=>e.searchFiles),{files:ee}=Un(),{isMobile:te}=Rn(),R=e===`page`||te,z=he(),ne=Q.useRef(null),re=Q.useRef(null),V=le(()=>{if(!R||!o||!ne.current)return;let e=window.visualViewport;ne.current.style.setProperty(`--search-viewport-height`,`${e?.height??window.innerHeight}px`),ne.current.style.setProperty(`--search-viewport-top`,`${e?.offsetTop??0}px`)});de(`resize`,V,()=>R&&o?window.visualViewport??window:null),de(`scroll`,V,()=>R&&o?window.visualViewport:null),Q.useEffect(()=>{V()},[R,o]),Q.useEffect(()=>{e===`page`&&o&&re.current?.focus({preventScroll:!0})},[e,o]);let ie=Q.useMemo(()=>I?pa(I):null,[I]),[ae,oe]=Q.useState(``),[H,U]=Q.useState({query:``,groups:[]}),W=lr(ae,200).trim(),G=ae.trim();Q.useEffect(()=>{o&&(oe(``),U({query:``,groups:[]}),c(!0))},[o]);let K=le(()=>l(!1)),q=le(e=>()=>{K(),e()}),J=Q.useMemo(()=>{let e=[{id:`new-session`,title:i(`commandPalette.item.newSession`),shortcutId:`new_chat`,searchText:i(`commandPalette.item.newSession`),onSelect:q(()=>{u(`chat`),h(!1),T()})},{id:`new-worktree`,title:i(`commandPalette.item.newWorktreeDraft`),shortcutId:`new_chat_worktree`,searchText:i(`commandPalette.item.newWorktreeDraft`),onSelect:q(()=>{Ht()})},{id:`add-project`,title:i(`commandPalette.item.addProject`),searchText:i(`commandPalette.item.addProject`),onSelect:q(()=>{lt.requestDirectoryDialog()})},{id:`toggle-sidebar`,title:i(R?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),shortcutId:`toggle_sidebar`,searchText:i(R?`commandPalette.item.showSessionSwitcher`:`commandPalette.item.toggleSidebar`),onSelect:q(()=>{if(R){let{isSessionSwitcherOpen:e}=P.getState();h(!e)}else g()})},{id:`toggle-right-sidebar`,title:i(`commandPalette.item.toggleRightSidebar`),shortcutId:`toggle_right_sidebar`,searchText:i(`commandPalette.item.toggleRightSidebar`),onSelect:q(()=>v())},{id:`toggle-terminal`,title:i(`commandPalette.item.toggleTerminal`),shortcutId:`toggle_terminal`,searchText:i(`commandPalette.item.toggleTerminal`),onSelect:q(()=>x())},{id:`new-terminal-tab`,title:i(`commandPalette.item.newTerminalTab`),shortcutId:`open_new_terminal`,searchText:i(`commandPalette.item.newTerminalTab`),onSelect:q(()=>{I&&zt(I)})},{id:`context-usage`,title:i(`commandPalette.item.showContextUsage`),searchText:i(`commandPalette.item.showContextUsage`),onSelect:q(()=>{M&&S(M)})},{id:`open-settings`,title:i(`commandPalette.item.openSettings`),shortcutId:`open_settings`,searchText:i(`commandPalette.item.openSettings`),onSelect:q(()=>f(!0))}];return d()&&e.splice(1,0,{id:`new-mini-chat`,title:i(`commandPalette.item.newMiniChat`),shortcutId:`new_mini_chat`,searchText:i(`commandPalette.item.newMiniChat`),onSelect:q(()=>{y(`desktop_open_draft_mini_chat_window`,{directory:pa(M||N?.path||``),projectId:N?.id??null}).catch(e=>{console.warn(`[command-palette] failed to open draft mini chat window`,e)})})}),e},[i,q,R,u,h,T,g,v,x,M,I,S,f,N?.id,N?.path]),se=Q.useMemo(()=>{let e=_();return{isVSCode:m(),isWeb:!e&&b(),isDesktop:e,isMobile:R}},[R]),ce=Q.useMemo(()=>Xr.filter(e=>e.slug!==`home`).filter(e=>!e.isAvailable||e.isAvailable(se)).map(e=>{let t=(e.keywords??[]).join(` `);return{id:`settings:${e.slug}`,title:e.title,searchText:`${e.title} ${e.group} ${t}`,onSelect:q(()=>{p(e.slug),f(!0)})}}),[se,q,p,f]),ue=Q.useMemo(()=>{let e=e=>(typeof e.time?.updated==`number`?e.time.updated:0)||(typeof e.time?.created==`number`?e.time.created:0);return[...O].sort((t,n)=>e(n)-e(t))},[O]),fe=Ze(e=>e.worktreeMetadata),me=Ze(e=>e.availableWorktreesByProject),[ge,Y]=Q.useState([]),[X,ve]=Q.useState(``),[ye,be]=Q.useState(``),xe=aa(ie,W);Q.useEffect(()=>{if(!o){Y([]),ve(``),be(``);return}if(!xe){Y([]),ve(``),be(``);return}if(!ie){Y([]),ve(``),be(``);return}let e=!1;return be(``),L(ie,W,10,{type:`file`}).then(t=>{e||(Y(t.map(e=>({path:pa(e.path),name:e.name,relativePath:e.relativePath}))),ve(xe),be(``))}).catch(()=>{e||(Y([]),ve(``),be(xe))}),()=>{e=!0}},[o,ie,W,xe,L]);let Se=G.length>0,Ce=Q.useMemo(()=>Se?We(J,G,e=>e.searchText,{limit:7,noFuzzy:!0}):J.map(e=>({item:e,score:0})),[J,G,Se]),we=Q.useMemo(()=>Se?We(ce,G,e=>e.searchText,{limit:7,noFuzzy:!0}):[],[ce,G,Se]),Ee=B({...sa(W),enabled:(o||s)&&(W.length>0||e===`page`)}),De={transport:n(),generation:r(),directory:``},Oe=JSON.stringify([De.transport,De.generation,ie,G,o]),[ke,Ae]=Q.useState(null),je=ke?.key===Oe?ke:null;ke&&!je&&Ae(null);let Me=B({...Ei(),enabled:o||s}),Ne=B({...Ti(W,{scope:De}),enabled:(o||s)&&W.length>0&&De!==null}),Ie=Q.useMemo(()=>je?.hits??Ne.data??[],[je,Ne.data]),Le=Se&&G===W&&Ne.isError,Re=Se&&G===W&&Ee.isSuccess,ze=(Se||e===`page`)&&G===W&&Ee.isError,Be=Q.useMemo(()=>ze?We(ue,G,e=>e.title||``,{limit:30,threshold:.2}).map(({item:e})=>e):[],[ze,ue,G]),Ve=Q.useMemo(()=>je?je.sessions:Se?Re?Ee.data??[]:ze?Be:[]:e===`page`&&!W&&Ee.isSuccess?Ee.data:ue.slice(0,e===`page`?30:9),[Se,ue,Re,ze,Be,Ee.data,Ee.isSuccess,e,W,je]),He=Q.useMemo(()=>!o&&!s||G!==W||ye===xe?[]:oa(ge,W,xe,X),[o,s,ge,X,xe,W,G,ye]),Ue=(o||s)&&xe.length>0&&X!==xe&&ye!==xe,Ge=Q.useMemo(()=>{if(!Se)return[];let e=F.map(e=>({...e,displayName:e.label||e.path.split(`/`).pop()||e.path,searchText:`${e.label||``} ${e.path}`}));return We(e,G,e=>e.searchText,{limit:7,threshold:.4})},[F,G,Se]),Ke=JSON.stringify([ie,G]),qe=H.query===Ke?H.groups:[],Je=(e,t)=>Se&&!qe.includes(e)?t.slice(0,5):t,Ye=Je(`commands`,Ce.map(e=>e.item)),Xe=Je(`settings`,we.map(e=>e.item)),Qe=Q.useMemo(()=>{let e=new Map;for(let t of Ie){let n=e.get(t.sessionID)??[];n.push(t),e.set(t.sessionID,n)}let t=[],n=new Map(O.map(e=>[e.id,e]));for(let n of Ve){let r=e.get(n.id);if(r){for(let e of r)t.push({session:n,hit:e});e.delete(n.id)}else t.push({session:n})}for(let r of e.values())for(let e of r)t.push({session:n.get(e.sessionID)??{id:e.sessionID,title:e.title??``,directory:e.directory,location:{directory:e.directory}},hit:e});return t},[Ve,Ie,O]),$e=Je(`sessions`,Qe),et=Se?Je(`files`,He.map(e=>e.item)):[],tt=Se?Je(`projects`,Ge.map(e=>e.item)):[],rt=(e,t,n)=>t>n?(0,$.jsx)(Jt,{value:`more:${e}`,onSelect:()=>U({query:Ke,groups:[...qe,e]}),className:`${la} text-muted-foreground`,children:i(`commandPalette.group.showMore`,{count:t-n})}):null,it=Q.useMemo(()=>{if(!Se)return[`sessions`,`commands`];let e=e=>e.length?e[0].score:1/0,t=[{key:`commands`,score:e(Ce)},{key:`settings`,score:e(we)},{key:`files`,score:e(He)},{key:`projects`,score:e(Ge)}];return t.sort((e,t)=>e.score-t.score),[`sessions`,...t.map(e=>e.key)]},[Se,Ce,we,He,Ge]),ot=le((e,t)=>{K(),u(`chat`),h(!1);let n=nt(e)||``;a?at.getState().openSession({sessionId:e.id,directory:n}):E(e.id,n),t&&Nt(t)}),st=le(e=>{let t=ue.find(t=>t.id===e.sessionID)??Ve.find(t=>t.id===e.sessionID)??{id:e.sessionID,title:e.title??``,directory:e.directory,location:{directory:e.directory}};ot(t,e.messageID)}),ut=le(async e=>{if(!ie)return;let t=await ra(ee,e);if(!t.ok){Pe.error(ia(t.reason));return}a?a.openFile({path:e}):C(ie,e),K()}),dt=le((e,t)=>{K();let n={selectedProjectId:e,directoryOverride:t};a?at.getState().openDraft(n):T(n)}),ft=e=>jn(kn(e,w)),pt=e=>!xt&&(e.key===`Enter`||e.key===`ArrowDown`||e.key===`ArrowUp`)&&(e.preventDefault(),e.stopPropagation(),!0),mt=le(e=>{if(pt(e)||(!je&&!e.nativeEvent.isComposing&&[`ArrowDown`,`ArrowUp`,`Enter`].includes(e.key)&&Ae({key:Oe,hits:Ie,sessions:Ve}),R||e.nativeEvent.isComposing||e.altKey||e.shiftKey)||(z?!e.metaKey||e.ctrlKey:!e.ctrlKey||e.metaKey)||!/^[1-9]$/.test(e.key)||(e.preventDefault(),e.stopPropagation(),e.repeat||!xt))return;let t=$e[Number(e.key)-1];t?.hit?st(t.hit):t&&ot(t.session)}),ht=e=>{let t=pa(fe.get(e.id)?.projectDirectory||nt(e)||``),n=gt(F,me,t);return n?.label||(n?.path||t).split(`/`).pop()||``},_t=Se&&G===W&&!!xe&&ye===xe,vt=Se&&(G!==W||!!ie&&Ue||Ee.isFetching&&!Ee.isSuccess||De!==null&&Ne.isFetching&&!Ne.isSuccess),[yt,bt]=Q.useState(W);!vt&&yt!==W&&bt(W);let xt=!Se||yt===W&&!vt,Z=(0,$.jsx)(Gt,{ref:re,variant:R?`mobileGlass`:`default`,className:`font-normal`,"aria-label":i(`commandPalette.title`),inputMode:`search`,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,value:ae,onValueChange:e=>{Ae(null),oe(e),U({query:``,groups:[]})},placeholder:i(`commandPalette.input.placeholder`)}),Ct=(0,$.jsxs)(Kt,{shouldFilter:!1,onKeyDownCapture:mt,onPointerDownCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&qn({currentTarget:t})},onPointerCancelCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&Jn({currentTarget:t,detail:1})},onClickCapture:e=>{let t=e.target.closest(`[cmdk-item]`);R&&t&&e.detail>0&&!Jn({currentTarget:t,detail:e.detail})&&(e.preventDefault(),e.stopPropagation())},className:`max-h-full min-h-0 rounded-[inherit] bg-transparent [&_[cmdk-group]]:px-0 [&_[cmdk-item][data-selected=true]]:!bg-[color-mix(in_srgb,var(--interactive-selection)_40%,transparent)] [&_[cmdk-item]:hover]:!bg-[color-mix(in_srgb,var(--interactive-selection)_40%,transparent)]`,children:[R?(0,$.jsx)(Te,{title:Z,backAriaLabel:i(`header.actions.backAria`),onBack:t??K}):Z,(0,$.jsxs)(Bt,{"aria-label":i(`commandPalette.title`),className:`overscroll-contain p-1.5`,children:[(0,$.jsx)(`div`,{className:`px-3 py-2 typography-meta text-muted-foreground`,"aria-live":`polite`,children:Me.isError||Me.data?.phase===`error`||Me.data?.phase===`partial`?i(`commandPalette.index.partial`):Me.data?.phase===`ready`?i(`commandPalette.index.ready`,{count:Me.data.messages}):i(`commandPalette.index.progress`,{completed:Me.data?.completed??0,total:Me.data?.total??0})}),xt&&!_t&&!ze&&!Le&&j!==`loading`&&j!==`error`?(0,$.jsx)(Vt,{className:`py-10 text-center typography-meta text-muted-foreground`,children:i(`commandPalette.empty.noResults`)}):null,xt?it.map(e=>e===`commands`&&Ye.length>0?(0,$.jsxs)(Rt,{heading:i(`settings.page.commands.title`),className:ua,children:[Ye.map(e=>(0,$.jsx)(Jt,{value:e.id,onSelect:e.onSelect,className:la,children:(0,$.jsx)(ca,{title:fa(e.title,G),trailing:!R&&e.shortcutId?(0,$.jsx)(Xt,{className:`h-3.5 min-w-0 shrink-0 rounded-full border-0 bg-[color-mix(in_srgb,var(--surface-foreground)_6%,transparent)] px-1.5 font-sans text-[10px] font-medium tracking-tight text-muted-foreground/65 shadow-none`,children:ft(e.shortcutId)}):void 0})},e.id)),rt(`commands`,Ce.length,Ye.length)]},`commands`):e===`settings`&&Xe.length>0?(0,$.jsxs)(Rt,{heading:i(`settings.view.home.title`),className:ua,children:[Xe.map(e=>(0,$.jsx)(Jt,{value:e.id,onSelect:e.onSelect,className:la,children:(0,$.jsx)(ca,{title:fa(e.title,G)})},e.id)),rt(`settings`,we.length,Xe.length)]},`settings`):e===`sessions`&&$e.length>0?(0,$.jsxs)(Rt,{heading:i(`layout.mainTab.chat`),className:ua,children:[$e.map(({session:e,hit:t},n)=>{let r=t?.title||e.title||i(`commandPalette.session.untitled`),a=ht(e);return(0,$.jsxs)(Jt,{value:t?`message:${e.id}:${t.messageID}`:`session:${e.id}`,onSelect:()=>t?st(t):ot(e),className:`flex-col items-stretch gap-1 rounded-lg px-3 py-2`,"aria-keyshortcuts":!R&&n<9?`${z?`Meta`:`Control`}+${n+1}`:void 0,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate typography-ui-label text-foreground`,title:r,children:fa(r,G)}),(0,$.jsx)(`span`,{className:`max-w-[28%] shrink-0 truncate typography-meta text-muted-foreground`,title:a,children:a}),!R&&n<9?(0,$.jsxs)(Xt,{className:`h-5 min-w-8 shrink-0 rounded-full border-0 bg-interactive-selection px-2 text-muted-foreground shadow-none`,children:[z?`⌘`:`Ctrl+`,n+1]}):null]}),t?(0,$.jsxs)(`span`,{className:`line-clamp-3 whitespace-pre-wrap break-words typography-ui-label text-muted-foreground`,children:[(0,$.jsxs)(`span`,{className:`font-medium`,children:[i(t.role===`user`?`commandPalette.message.user`:`commandPalette.message.assistant`),`: `]}),fa(t.snippet,G)]}):null]},t?`message:${e.id}:${t.messageID}`:`session:${e.id}`)}),rt(`sessions`,Qe.length,$e.length)]},`sessions`):e===`files`&&et.length>0?(0,$.jsxs)(Rt,{heading:i(`layout.mainTab.files`),className:ua,children:[et.map(e=>{let t=_e(e.relativePath||e.name,{maxLength:80});return(0,$.jsx)(Jt,{value:`file:${e.path}`,onSelect:()=>{ut(e.path)},className:la,children:(0,$.jsx)(ca,{title:fa(e.name,G),description:t===e.name?void 0:fa(t,G)})},`file:${e.path}`)}),rt(`files`,He.length,et.length)]},`files`):e===`projects`&&tt.length>0?(0,$.jsxs)(Rt,{heading:i(`sessions.sidebar.projectsTitle`),className:ua,children:[tt.map(e=>{let t=e.displayName;return(0,$.jsx)(Jt,{value:`project:${e.id}`,onSelect:()=>dt(e.id,e.path),className:la,children:(0,$.jsx)(ca,{title:fa(t,G)})},`project:${e.id}`)}),rt(`projects`,Ge.length,tt.length)]},`projects`):null):(0,$.jsx)(`div`,{role:`status`,className:`px-3 py-10 text-center typography-meta text-muted-foreground`,children:i(`common.loading`)}),xt&&j===`loading`?(0,$.jsx)(`div`,{role:`status`,className:`px-3 py-4 text-center typography-meta text-muted-foreground`,children:i(`common.loading`)}):null,xt&&j===`error`?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.sessions`)}):null,xt&&ze?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.sessions`)}):null,xt&&Le?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`commandPalette.error.messages`)}):null,xt&&_t?(0,$.jsx)(`div`,{role:`alert`,className:`px-3 py-4 typography-meta text-[var(--status-error)]`,children:i(`mobile.files.error.listFailed`)}):null]})]});return e===`page`?(0,$.jsx)(`section`,{ref:ne,"data-global-search":`true`,"data-page-scroll-lock":`true`,"aria-label":i(`commandPalette.title`),className:`oc-global-search-page flex min-h-0 w-full flex-col bg-background text-foreground`,children:Ct}):(0,$.jsx)(Dt,{open:o,onOpenChange:l,onOpenChangeComplete:e=>{e||c(!1)},children:(0,$.jsxs)(wt,{ref:ne,initialFocus:re,"data-global-search":`true`,"data-mobile":R,"data-page-scroll-lock":`true`,className:R?`oc-global-search-page oc-global-search-mobile fixed inset-0 z-50 m-0 flex max-w-none translate-x-0 translate-y-0 flex-col gap-0 overflow-hidden rounded-none border-0 bg-background p-0`:`oc-global-search oc-mobile-overlay-surface oc-mobile-overlay-surface--translucent oc-composer-autocomplete-surface fixed left-1/2 top-[10vh] z-50 w-[min(56rem,calc(100vw-3rem))] max-w-none -translate-x-1/2 translate-y-0 gap-0 overflow-hidden rounded-3xl border-0 p-0`,containerClassName:`block p-0`,overlayClassName:`bg-transparent dark:bg-transparent`,showCloseButton:!1,children:[(0,$.jsxs)(St,{className:`sr-only`,children:[(0,$.jsx)(Tt,{children:i(`commandPalette.title`)}),(0,$.jsx)(Et,{children:i(`commandPalette.description`)})]}),Ct]})})}),ga=class extends Q.Component{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){this.setState({error:e,errorInfo:t})}handleReset=()=>{this.setState({hasError:!1,error:void 0,errorInfo:void 0})};render(){return this.state.hasError?(0,$.jsx)(`div`,{className:`flex items-center justify-center min-h-screen p-4`,children:(0,$.jsxs)(Ln,{className:`w-full max-w-md`,children:[(0,$.jsx)(xn,{className:`text-center`,children:(0,$.jsxs)(bn,{className:`flex items-center justify-center gap-2 text-destructive`,children:[(0,$.jsx)(Z,{name:`chat-3`,className:`h-5 w-5`}),this.props.texts.title]})}),(0,$.jsxs)(wn,{className:`space-y-4`,children:[(0,$.jsx)(`p`,{className:`text-sm text-muted-foreground text-center`,children:this.props.texts.description}),this.props.sessionId&&(0,$.jsxs)(`div`,{className:`text-xs text-muted-foreground text-center`,children:[this.props.texts.sessionLabel,`: `,this.props.sessionId]}),this.state.error&&(0,$.jsxs)(`details`,{className:`text-xs font-mono bg-muted p-3 rounded`,children:[(0,$.jsx)(`summary`,{className:`cursor-pointer hover:bg-interactive-hover/80`,children:this.props.texts.detailsSummary}),(0,$.jsx)(`pre`,{className:`mt-2 max-h-48 overflow-auto`,children:this.state.error.toString()})]}),(0,$.jsx)(`div`,{className:`flex gap-2`,children:(0,$.jsxs)(X,{onClick:this.handleReset,variant:`outline`,className:`flex-1`,children:[(0,$.jsx)(Z,{name:`restart`,className:`h-4 w-4 mr-2`}),this.props.texts.resetAction]})}),(0,$.jsx)(`div`,{className:`text-xs text-muted-foreground text-center`,children:this.props.texts.persistentHint})]})]})}):this.props.children}};function _a(e){let t=(0,di.c)(22),{t:n}=pe(),r;t[0]===n?r=t[1]:(r=n(`chat.errorBoundary.title`),t[0]=n,t[1]=r);let i;t[2]===n?i=t[3]:(i=n(`chat.errorBoundary.description`),t[2]=n,t[3]=i);let a;t[4]===n?a=t[5]:(a=n(`chat.errorBoundary.sessionLabel`),t[4]=n,t[5]=a);let o;t[6]===n?o=t[7]:(o=n(`chat.errorBoundary.detailsSummary`),t[6]=n,t[7]=o);let s;t[8]===n?s=t[9]:(s=n(`chat.errorBoundary.resetAction`),t[8]=n,t[9]=s);let c;t[10]===n?c=t[11]:(c=n(`chat.errorBoundary.persistentHint`),t[10]=n,t[11]=c);let l;t[12]!==r||t[13]!==i||t[14]!==a||t[15]!==o||t[16]!==s||t[17]!==c?(l={title:r,description:i,sessionLabel:a,detailsSummary:o,resetAction:s,persistentHint:c},t[12]=r,t[13]=i,t[14]=a,t[15]=o,t[16]=s,t[17]=c,t[18]=l):l=t[18];let u;return t[19]!==e||t[20]!==l?(u=(0,$.jsx)(ga,{...e,texts:l}),t[19]=e,t[20]=l,t[21]=u):u=t[21],u}var va=1440,ya=e=>{let t=(0,di.c)(8),{isMobile:n,isVSCode:r,directory:i}=e,a=ce(`(min-width: ${va}px)`),o;t[0]===i?o=t[1]:(o=i?F(i):``,t[0]=i,t[1]=o);let s=o,c;t[2]===s?c=t[3]:(c=e=>{let t=s?e.contextPanelByDirectory[s]:void 0;if(!t?.isOpen)return!1;let n=t.tabs.find(e=>e.id===t.activeTabId)??t.tabs[t.tabs.length-1]??null;return!!(n&&n.mode!==`chat`)},t[2]=s,t[3]=c);let l=P(c),u=P(ba),d=P(xa),f=!n&&!r&&!l&&!d,p=f&&a,m=u&&p,h;return t[4]!==p||t[5]!==f||t[6]!==m?(h={visible:m,fits:p,layoutAllows:f},t[4]=p,t[5]=f,t[6]=m,t[7]=h):h=t[7],h};function ba(e){return e.workStatusPanelEnabled}function xa(e){return e.isRightSidebarOpen}var Sa=async({directory:e,sessionID:t,signal:n})=>{let r=await j.getScopedSdkClient(e).session.list({directory:e,parentID:t,limit:200},{signal:n});if(!Array.isArray(r?.data))throw Error(`session.list children returned no data`);return r.data.flatMap(e=>{if(!e?.id)return[];let t=typeof e.title==`string`?e.title:void 0;return[{id:e.id,title:t}]})},Ca=(e,t,n={})=>{let r=n.listChildren??Sa;return z({queryKey:p.workStatusChildren.list(e,t,n.transport),enabled:!!(e&&t),queryFn:({signal:n})=>r({directory:e,sessionID:t,signal:n}),staleTime:5e3,refetchInterval:1e4})},wa=[],Ta=(...e)=>{let t=Mt(...e);return t?t.charAt(0).toUpperCase()+t.slice(1):``},Ea=(...e)=>{for(let t of e){if(!t||typeof t!=`object`)continue;let e=t.description;if(typeof e!=`string`)continue;let n=e.trim();if(n)return n}return``},Da=e=>e===`pending`||e===`running`,Oa=e=>{let t=[],n=new Set;for(let r of e.messageOrder){let i=e.partsByMessageID[r];if(i)for(let e of i){if(!e?.id||n.has(e.id))continue;if(e.type===`tool`&&It(e.tool)){n.add(e.id);let r=e.state;t.push({id:e.id,sessionID:Lt(e),label:Ta(r?.input,r?.metadata,e.metadata),description:Ea(r?.input,e.metadata,r?.metadata),running:Da(r?.status)});continue}if(e.type!==`subtask`)continue;let r=e,i=typeof r.taskSessionID==`string`?r.taskSessionID.trim():``,a=typeof r.agent==`string`?r.agent.trim():``,o=typeof r.description==`string`?r.description.trim():``;n.add(e.id),t.push({id:e.id,sessionID:i||void 0,label:a?a.charAt(0).toUpperCase()+a.slice(1):``,description:o,running:Da(r.status)})}}return t.length===0?wa:t},ka=(e,t)=>{if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){let r=e[n],i=t[n];if(!r||!i||r.id!==i.id||r.sessionID!==i.sessionID||r.label!==i.label||r.description!==i.description||r.running!==i.running)return!1}return!0},Aa=e=>e.childTitle||e.description||e.agent,ja=e=>({key:e.key,sessionID:e.sessionID,seed:e.key,label:Aa(e),phase:e.working?`working`:`done`}),Ma=(e,t,n)=>{let r=new Map(t.map(e=>[e.id,e])),i=new Set,a=[],o=new Map,s=e=>{let t=e.sessionID;if(!t){a.push(e);return}i.add(t);let n=o.get(t);if(n===void 0){o.set(t,a.length),a.push({...e,key:t,sessionID:t});return}let r=a[n];r&&(a[n]={...r,description:r.description||e.description,agent:r.agent||e.agent,childTitle:e.childTitle||r.childTitle,working:r.working||e.working})};for(let t of e){let e=t.sessionID?r.get(t.sessionID):void 0;s({key:t.id,sessionID:t.sessionID,description:t.description,agent:t.label,childTitle:e?.title?.trim()||``,working:t.running||!!e?.busy||!!(t.sessionID&&n?.has(t.sessionID))})}for(let e of t)i.has(e.id)||s({key:e.id,sessionID:e.id,description:``,agent:``,childTitle:e.title?.trim()||``,working:e.busy});let c=a.map(ja),l=c.filter(e=>e.phase===`working`),u=c.filter(e=>e.phase===`done`);return l.length===0?u:u.length===0?l:[...l,...u]},Na=new Set,Pa=e=>{if(!e)return``;let t=[];for(let n of Object.keys(e)){let r=e[n]?.type;(r===`busy`||r===`retry`)&&t.push(n)}return t.sort(),t.join(`
|
|
3
3
|
`)},Fa=(e,t)=>{let n=(0,di.c)(4),r;n[0]===t?r=n[1]:(r=e=>t?Pa(e.session_status):``,n[0]=t,n[1]=r);let i=C(e,r),a;return n[2]===i?a=n[3]:(a=i?new Set(i.split(`
|
|
4
4
|
`)):Na,n[2]=i,n[3]=a),a},Ia=(e,t)=>{let n=[];for(let r of e)!r.id||r.parentID!==t||n.push(`${r.id}\u0001${r.title??``}`);return n.join(``)},La=e=>e?e.split(``).map(e=>{let t=e.indexOf(``);return{id:e.slice(0,t),title:e.slice(t+1)}}):[],Ra=(e,t,n)=>{let r=new Map;for(let t of e)t.id&&r.set(t.id,{id:t.id,title:t.title,busy:n.has(t.id)});for(let e of t??[]){if(!e.id)continue;let t=r.get(e.id),i=e.title?.trim()||t?.title;r.set(e.id,{id:e.id,title:i,busy:n.has(e.id)})}return[...r.values()]},za=(e,t)=>{let n=(0,di.c)(18),r=!!(e&&t),i;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(i={bootstrap:!1},n[0]=i):i=n[0];let a=Ne(t||void 0,i),o;n[1]!==r||n[2]!==e?(o=t=>r&&e?Ia(t.session,e):``,n[1]=r,n[2]=e,n[3]=o):o=n[3];let s=C(a,o),c=t??``,l=e??``,u;n[4]!==c||n[5]!==l?(u=Ca(c,l),n[4]=c,n[5]=l,n[6]=u):u=n[6];let d;n[7]!==r||n[8]!==u?(d={...u,enabled:r},n[7]=r,n[8]=u,n[9]=d):d=n[9];let f=B(d),p;n[10]===r?p=n[11]:(p={enabled:r},n[10]=r,n[11]=p);let m=M(e??``,t??``,a,Oa,ka,p),h=Fa(a,r),g;bb0:{if(!e){let e;n[12]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],n[12]=e):e=n[12],g=e;break bb0}let t;n[13]!==h||n[14]!==s||n[15]!==f.data||n[16]!==m?(t=Ma(m,Ra(La(s),f.data,h),h),n[13]=h,n[14]=s,n[15]=f.data,n[16]=m,n[17]=t):t=n[17],g=t}return g},Ba=`flex w-full min-w-0 items-center justify-start gap-2 text-left text-[13px] font-normal leading-5 tracking-normal text-muted-foreground`,Va=`size-3.5 shrink-0`,Ha=`oc-work-status-action pointer-events-none shrink-0 text-muted-foreground opacity-0 transition-opacity group-hover/copy:pointer-events-auto group-hover/copy:opacity-100 focus-visible:pointer-events-auto focus-visible:opacity-100`,Ua=e=>e.split(/[\\/]/).filter(Boolean).pop()||e,Wa=({sessionId:e,directory:t})=>{let{t:n}=pe(),{git:r}=Un(),i=pr(e=>e.ensureStatus),a=dr(t),o=ct(e=>e.projects),s=Ze(e=>e.availableWorktreesByProject),c=Ze(t=>e?t.worktreeMetadata.get(e):void 0),{project:l,worktree:u}=Q.useMemo(()=>{let e=v(t),n=t=>{let n=v(t);return!!(e&&n&&(e===n||e.startsWith(`${n}/`)))},r=c&&n(c.path)?c:void 0,i=gt(o,s,r?.projectDirectory||t),a=i?s.get(i.path):void 0;return{project:i,worktree:r??a?.filter(e=>n(e.path)).sort((e,t)=>t.path.length-e.path.length)[0]}},[s,t,o,c]),d=l?.path||u?.projectDirectory||t,f=l?.label?.trim()||(d?Ua(d):null),p=u&&v(u.path)!==v(d)?u.name?.trim()||Ua(u.path):null,m=za(e,t),h=[{phase:`working`,labelKey:`chat.workStatus.subagent.workingCount`,items:m.filter(e=>e.phase===`working`)},{phase:`done`,labelKey:`chat.workStatus.subagent.doneCount`,items:m.filter(e=>e.phase===`done`)}],g=h[0].items,_=(g.length>0?g:m).slice(0,3),[y,b]=Q.useState(!1),x=Q.useId(),S=P(e=>e.setRightSidebarOpen),C=P(e=>e.openContextPanelTab),w=P(e=>e.setRightSidebarTab),[T,E]=Q.useState(null),[,D]=ue(()=>E(null),1500,{immediate:!1}),O=le(async(e,t)=>{try{let n=await fe(t);if(!n.ok)throw Error(n.error);E(e),D()}catch{se.error(n(`gitView.toast.copyFailed`))}});Q.useEffect(()=>{!t||!r||i(t,r)},[t,i,r]);let k=a?.current||null,A=u?.worktreeStatus===`pending`?0:a?.files.length??0,j=0,M=0;if(a?.diffStats)for(let e of Object.values(a.diffStats))j+=e?.insertions??0,M+=e?.deletions??0;let N=k?`branch:${k}`:``,F=u?.path?`worktree:${u.path}`:``,I=!!(N&&T===N),L=!!(F&&T===F),ee=le(()=>{k&&O(N,k)}),te=le(()=>{let e=u?.path;e&&O(F,e)}),R=le(()=>{w(`git`),S(!0)});return(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[f?(0,$.jsxs)(`div`,{className:`${Ba} h-8 px-2`,title:`${n(`chat.workStatus.section.project`)}: ${d}`,children:[(0,$.jsx)(Z,{name:`folder`,weight:`medium`,className:Va}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:f})]}):null,k?(0,$.jsxs)(`div`,{className:`${Ba} group/copy h-8 px-2`,title:`${n(`gitView.branch.currentBranchTooltip`)}: ${k}`,children:[(0,$.jsx)(Z,{name:`git-branch`,weight:`medium`,className:Va}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:k}),(0,$.jsx)(X,{variant:`ghost`,size:`xs`,className:Ha,"aria-label":n(`chat.workStatus.action.copyBranch`),title:n(I?`contextSidebar.actions.copied`:`chat.workStatus.action.copyBranch`),onClick:ee,children:(0,$.jsx)(Z,{name:I?`check`:`file-copy`,className:Va})})]}):null,p?(0,$.jsxs)(`div`,{className:`${Ba} group/copy h-8 px-2`,title:`${n(`sessions.sidebar.sessionDialogs.worktree.label`)}: ${u?.path}`,children:[(0,$.jsx)(Z,{name:`node-tree`,weight:`medium`,className:Va}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:p}),(0,$.jsx)(X,{variant:`ghost`,size:`xs`,className:Ha,"aria-label":n(`agentManager.detail.actions.copyWorktreePath`),title:n(L?`contextSidebar.actions.copied`:`agentManager.detail.actions.copyWorktreePath`),onClick:te,children:(0,$.jsx)(Z,{name:L?`check`:`file-copy`,className:Va})})]}):null,A>0?(0,$.jsxs)(X,{variant:`ghost`,size:`sm`,className:`oc-work-status-action ${Ba}`,title:n(A===1?`chat.workStatus.git.changedFileSingle`:`chat.workStatus.git.changedFilePlural`,{count:A}),"aria-label":n(`chat.workStatus.action.openGit`),onClick:R,children:[(0,$.jsx)(Z,{name:`changes`,weight:`medium`,className:Va}),(0,$.jsx)(`span`,{className:`min-w-0 truncate`,children:n(`chat.workStatus.compact.changes`)}),j>0||M>0?(0,$.jsxs)(`span`,{className:`ml-auto flex shrink-0 gap-1.5 text-[12px] tabular-nums`,children:[(0,$.jsx)(`span`,{className:`text-[var(--status-success)]`,children:`+${j}`}),(0,$.jsx)(`span`,{className:`text-[var(--status-error)]`,children:`−${M}`})]}):(0,$.jsx)(`span`,{className:`ml-auto tabular-nums`,children:A})]}):null,m.length>0?(0,$.jsxs)(`div`,{role:`group`,"aria-label":n(`chat.workStatus.section.subagents`),className:`flex min-w-0 flex-col`,children:[(0,$.jsxs)(X,{type:`button`,variant:`ghost`,size:`sm`,className:`oc-work-status-action ${Ba} gap-1.5`,"aria-expanded":y,"aria-controls":x,onClick:()=>b(e=>!e),children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`inline-flex shrink-0 items-center`,children:_.map((e,t)=>{let r=e.label.trim()||n(`chat.workStatus.subagent.untitled`);return(0,$.jsx)(yt,{name:e.seed,label:r,size:14,className:`relative bg-background ring-2 ring-background ${t>0?`-ml-1`:``}`},e.key)})}),(0,$.jsx)(`span`,{className:`flex min-w-0 flex-1 items-center gap-x-1 whitespace-nowrap text-left text-[11px] leading-5 tabular-nums`,children:h.filter(e=>e.items.length>0).map((e,t)=>(0,$.jsxs)(Q.Fragment,{children:[t>0?(0,$.jsx)(`span`,{"aria-hidden":`true`,children:`·`}):null,(0,$.jsx)(`span`,{children:n(e.labelKey,{count:e.items.length})})]},e.phase))}),(0,$.jsx)(Z,{name:y?`arrow-down-s`:`arrow-right-s`,className:`size-3.5 shrink-0 text-muted-foreground opacity-70`})]}),(0,$.jsx)(`div`,{id:x,hidden:!y,className:y?`mt-1 mb-1 flex min-w-0 flex-col gap-1`:`hidden`,children:y?h.filter(e=>e.items.length>0).map(e=>(0,$.jsxs)(`section`,{"aria-label":n(e.labelKey,{count:e.items.length}),className:`flex min-w-0 flex-col gap-1 [&+section]:mt-2`,children:[(0,$.jsx)(`div`,{className:`px-2 py-1 text-[11px] leading-4 text-muted-foreground/70`,children:n(e.labelKey,{count:e.items.length})}),e.items.map(e=>{let r=e.label.trim()||n(`chat.workStatus.subagent.untitled`);return(0,$.jsxs)(X,{variant:`ghost`,size:`sm`,disabled:!e.sessionID||!t,className:`oc-work-status-action flex w-full min-w-0 items-center justify-start gap-2 text-left text-[12px] font-normal leading-5 text-muted-foreground`,onClick:()=>{!e.sessionID||!t||C(t,{mode:`chat`,dedupeKey:`session:${e.sessionID}`,label:r,readOnly:!0})},children:[(0,$.jsx)(yt,{name:e.seed,label:r,size:14}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,title:r,children:r})]},e.key)})]},e.phase)):null})]}):null]})},Ga=200,Ka=e=>{let t=(0,di.c)(31),{sessionId:n,directory:r,visible:i,overlay:a}=e,o=a!==void 0&&a,{t:s}=pe(),c=P(qa),l=Q.useRef(null),[u,d]=Q.useState(i),f,p;t[0]===i?(f=t[1],p=t[2]):(f=()=>{if(i){d(!0);return}let e=window.setTimeout(()=>d(!1),Ga);return()=>window.clearTimeout(e)},p=[i],t[0]=i,t[1]=f,t[2]=p),Q.useEffect(f,p);let m,h;t[3]!==o||t[4]!==c||t[5]!==i?(m=()=>{if(!o||!i)return;let e=e=>{let t=e.target instanceof Element?e.target:null;l.current?.contains(t)||t?.closest(`[data-work-status-toggle]`)||c(!1)},t=e=>{e.key===`Escape`&&c(!1)};return document.addEventListener(`pointerdown`,e,!0),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`pointerdown`,e,!0),document.removeEventListener(`keydown`,t)}},h=[o,c,i],t[3]=o,t[4]=c,t[5]=i,t[6]=m,t[7]=h):(m=t[6],h=t[7]),Q.useEffect(m,h);let g;t[8]===s?g=t[9]:(g=s(`chat.workStatus.ariaLabel`),t[8]=s,t[9]=g);let _=!i,v=!i,y=o?`top-3 z-30 max-h-[calc(100%-1.5rem)] rounded-lg bg-[var(--surface-elevated)]/95 px-1 backdrop-blur-md`:`top-2`,b;t[10]===y?b=t[11]:(b=Y(`absolute z-20 flex max-h-[calc(100%-1rem)] flex-col overflow-x-hidden overflow-y-auto scrollbar-hidden bg-transparent`,y),t[10]=y,t[11]=b);let x=o||i?196:0,S=+!!i,C=i?`none`:o?`translateY(-6px)`:`translateX(24px)`,w=o?`opacity, transform`:`none`,T=i?void 0:`none`,E;t[12]!==x||t[13]!==S||t[14]!==C||t[15]!==w||t[16]!==T?(E={right:14,width:x,opacity:S,transform:C,transitionProperty:w,transitionDuration:`${Ga}ms`,transitionTimingFunction:`cubic-bezier(0.22, 1, 0.36, 1)`,pointerEvents:T},t[12]=x,t[13]=S,t[14]=C,t[15]=w,t[16]=T,t[17]=E):E=t[17];let D;t[18]!==u||t[19]!==r||t[20]!==o||t[21]!==n||t[22]!==i?(D=i||o&&u?(0,$.jsx)(Wa,{sessionId:n,directory:r}):null,t[18]=u,t[19]=r,t[20]=o,t[21]=n,t[22]=i,t[23]=D):D=t[23];let O;return t[24]!==b||t[25]!==E||t[26]!==D||t[27]!==g||t[28]!==_||t[29]!==v?(O=(0,$.jsx)(`aside`,{ref:l,"aria-label":g,"aria-hidden":_,inert:v,className:b,style:E,children:D}),t[24]=b,t[25]=E,t[26]=D,t[27]=g,t[28]=_,t[29]=v,t[30]=O):O=t[30],O};function qa(e){return e.setWorkStatusOverlayOpen}var Ja=e=>{let t=(0,di.c)(10),{sessionId:n,directory:r,visible:i,overlay:a,publishVisible:o}=e,s=a!==void 0&&a,c=o!==void 0&&o,l=P(Xa),u,d;t[0]!==c||t[1]!==l||t[2]!==i?(u=()=>{if(c)return l(i),()=>l(!1)},d=[c,l,i],t[0]=c,t[1]=l,t[2]=i,t[3]=u,t[4]=d):(u=t[3],d=t[4]),Q.useEffect(u,d);let f;return t[5]!==r||t[6]!==s||t[7]!==n||t[8]!==i?(f=(0,$.jsx)(Ka,{overlay:s,visible:i,sessionId:n,directory:r}),t[5]=r,t[6]=s,t[7]=n,t[8]=i,t[9]=f):f=t[9],f},Ya=({readOnly:e=!1,active:t=!0,selectionOverride:n})=>{let r=Ze(e=>e.currentSessionId),i=Ze(e=>e.currentSessionDirectory),a=Ze(e=>!!e.newSessionDraft?.open),o=Ze(e=>!!(e.newSessionDraft?.open&&e.newSessionDraft.pendingUserMessage&&(e.newSessionDraft.draftEstablishing||e.newSessionDraft.draftSubmitting))),s=Fr(),c=P(e=>e.isMobile),l=P(e=>e.isExpandedInput),u=m(),d=P(e=>e.workStatusPanelEnabled),f=P(e=>e.workStatusOverlayOpen),p=P(e=>e.setWorkStatusPanelFits),h=n?.sessionId??r,g=n?.sessionId??r,_=n?.directory??i??s??null,{visible:v,fits:y,layoutAllows:b}=ya({isMobile:c,isVSCode:u,directory:_}),x=n?!!n.sessionId:a?o:!!g,S=t&&b&&!l&&x,C=S&&v,w=S&&d&&!y&&f;return Q.useEffect(()=>(p(S&&y),()=>p(!1)),[y,S,p]),(0,$.jsxs)(`div`,{className:Y(`relative h-full min-h-0 min-w-0`,C&&`oc-chat-work-status-inline`),style:C?{"--oc-work-status-reserve":`210px`}:void 0,children:[(0,$.jsx)(`div`,{className:`absolute inset-0 min-h-0 min-w-0`,children:(0,$.jsx)(_a,{sessionId:h||void 0,children:(0,$.jsx)(jt,{readOnly:e,active:t,explicitSession:n?{...n,active:t}:void 0})})}),S?(0,$.jsx)(Ja,{publishVisible:!0,visible:C,sessionId:g,directory:_}):null,S&&d&&!y?(0,$.jsx)(Ja,{overlay:!0,visible:w,sessionId:g,directory:_}):null]})};function Xa(e){return e.setWorkStatusPanelVisible}function Za(e){let t=(0,di.c)(85),{draft:n,onEdit:r,onDelete:i,className:a,maxWidth:o}=e,{t:s}=pe(),c=xt()?.currentTheme,[l,u]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(!1),p=typeof n.text==`string`?n.text:``,m;t[0]===p?m=t[1]:(m=p.length>150||p.split(`
|
|
5
5
|
`).length>3,t[0]=p,t[1]=m);let h=m,g;t[2]===a?g=t[3]:(g=Y(`rounded-lg border shadow-none w-full max-w-[min(100%,calc(var(--oc-context-panel-width,100vw)-var(--oc-editor-gutter-width,0px)))] overflow-hidden transition-all duration-200`,a),t[2]=a,t[3]=g);let _=c?.colors?.surface?.elevated,v=c?.colors?.interactive?.border,y=o?`${Math.max(200,Math.floor(o))}px`:void 0,b;t[4]!==_||t[5]!==v||t[6]!==y?(b={backgroundColor:_,borderColor:v,maxWidth:y},t[4]=_,t[5]=v,t[6]=y,t[7]=b):b=t[7];let x;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(x=e=>{e.preventDefault(),f(!0)},t[8]=x):x=t[8];let S;t[9]!==g||t[10]!==b?(S=(0,$.jsx)(`div`,{className:g,style:b,"data-comment-card":`true`,onContextMenu:x}),t[9]=g,t[10]=b,t[11]=S):S=t[11];let C;t[12]===n.fileLabel?C=t[13]:(C=(0,$.jsx)(`span`,{className:`truncate max-w-[200px]`,title:n.fileLabel,children:n.fileLabel}),t[12]=n.fileLabel,t[13]=C);let w;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(`span`,{children:`•`}),t[14]=w):w=t[14];let T;t[15]!==n.endLine||t[16]!==n.startLine||t[17]!==s?(T=s(`inlineComment.range.lines`,{start:n.startLine,end:n.endLine}),t[15]=n.endLine,t[16]=n.startLine,t[17]=s,t[18]=T):T=t[18];let E;t[19]===T?E=t[20]:(E=(0,$.jsx)(`span`,{children:T}),t[19]=T,t[20]=E);let D;t[21]===n.side?D=t[22]:(D=n.side&&(0,$.jsxs)(`span`,{children:[`(`,n.side,`)`]}),t[21]=n.side,t[22]=D);let O;t[23]!==E||t[24]!==D||t[25]!==C?(O=(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-medium text-muted-foreground mb-1.5`,children:[C,w,E,D]}),t[23]=E,t[24]=D,t[25]=C,t[26]=O):O=t[26];let k=l||!h,A=!l&&h&&`line-clamp-3`,j;t[27]===A?j=t[28]:(j=Y(`text-sm whitespace-pre-wrap break-words leading-relaxed`,A),t[27]=A,t[28]=j);let M;t[29]!==p||t[30]!==j?(M=(0,$.jsx)(`div`,{className:j,children:p}),t[29]=p,t[30]=j,t[31]=M):M=t[31];let N;t[32]!==h||t[33]!==l||t[34]!==s?(N=h&&(0,$.jsx)(ci,{asChild:!0,children:(0,$.jsx)(X,{variant:`ghost`,size:`sm`,className:`h-6 px-0 mt-1 text-xs text-muted-foreground hover:text-foreground w-full justify-start`,children:l?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`arrow-up-s`,className:`size-3 mr-1`}),s(`inlineComment.actions.showLess`)]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Z,{name:`arrow-down-s`,className:`size-3 mr-1`}),s(`inlineComment.actions.showMore`)]})})}),t[32]=h,t[33]=l,t[34]=s,t[35]=N):N=t[35];let P;t[36]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,$.jsx)(si,{}),t[36]=P):P=t[36];let F;t[37]!==k||t[38]!==M||t[39]!==N?(F=(0,$.jsxs)(li,{open:k,onOpenChange:u,children:[M,N,P]}),t[37]=k,t[38]=M,t[39]=N,t[40]=F):F=t[40];let I;t[41]!==O||t[42]!==F?(I=(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[O,F]}),t[41]=O,t[42]=F,t[43]=I):I=t[43];let L;t[44]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,$.jsx)(In,{asChild:!0,children:(0,$.jsx)(X,{variant:`ghost`,size:`icon`,className:`h-6 w-6 -mr-1 text-muted-foreground hover:text-foreground`,children:(0,$.jsx)(Z,{name:`more`,className:`size-4`})})}),t[44]=L):L=t[44];let ee;t[45]===Symbol.for(`react.memo_cache_sentinel`)?(ee=(0,$.jsx)(Z,{name:`edit`,className:`size-4 mr-2`}),t[45]=ee):ee=t[45];let te;t[46]===s?te=t[47]:(te=s(`inlineComment.actions.editComment`),t[46]=s,t[47]=te);let R;t[48]!==r||t[49]!==te?(R=(0,$.jsxs)(En,{onClick:r,children:[ee,te]}),t[48]=r,t[49]=te,t[50]=R):R=t[50];let z;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,$.jsx)(Z,{name:`delete-bin`,className:`size-4 mr-2`}),t[51]=z):z=t[51];let B;t[52]===s?B=t[53]:(B=s(`inlineComment.actions.deleteComment`),t[52]=s,t[53]=B);let ne;t[54]!==i||t[55]!==B?(ne=(0,$.jsxs)(En,{onClick:i,className:`text-destructive`,children:[z,B]}),t[54]=i,t[55]=B,t[56]=ne):ne=t[56];let re;t[57]!==R||t[58]!==ne?(re=(0,$.jsxs)(Nn,{children:[L,(0,$.jsxs)(An,{align:`end`,children:[R,ne]})]}),t[57]=R,t[58]=ne,t[59]=re):re=t[59];let V;t[60]!==I||t[61]!==re?(V=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-2 p-3`,children:[I,re]}),t[60]=I,t[61]=re,t[62]=V):V=t[62];let ie;t[63]!==V||t[64]!==S?(ie=(0,$.jsx)(Qr,{render:S,children:V}),t[63]=V,t[64]=S,t[65]=ie):ie=t[65];let ae;t[66]===Symbol.for(`react.memo_cache_sentinel`)?(ae=(0,$.jsx)(Z,{name:`edit`,className:`size-4 mr-2`}),t[66]=ae):ae=t[66];let oe;t[67]===s?oe=t[68]:(oe=s(`inlineComment.actions.editComment`),t[67]=s,t[68]=oe);let H;t[69]!==r||t[70]!==oe?(H=(0,$.jsxs)(ri,{onClick:r,children:[ae,oe]}),t[69]=r,t[70]=oe,t[71]=H):H=t[71];let U;t[72]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,$.jsx)(Z,{name:`delete-bin`,className:`size-4 mr-2`}),t[72]=U):U=t[72];let W;t[73]===s?W=t[74]:(W=s(`inlineComment.actions.deleteComment`),t[73]=s,t[74]=W);let G;t[75]!==i||t[76]!==W?(G=(0,$.jsxs)(ri,{onClick:i,className:`text-destructive focus:text-destructive`,children:[U,W]}),t[75]=i,t[76]=W,t[77]=G):G=t[77];let K;t[78]!==H||t[79]!==G?(K=(0,$.jsxs)(ti,{children:[H,G]}),t[78]=H,t[79]=G,t[80]=K):K=t[80];let q;return t[81]!==d||t[82]!==ie||t[83]!==K?(q=(0,$.jsxs)(Jr,{open:d,onOpenChange:f,children:[ie,K]}),t[81]=d,t[82]=ie,t[83]=K,t[84]=q):q=t[84],q}function Qa(e){let t=(0,di.c)(67),{initialText:n,onTextChange:r,onSave:i,onCancel:a,fileLabel:o,lineRange:s,isEditing:c,className:l,maxWidth:u,onAddToChat:d}=e,f=n===void 0?``:n,p=c!==void 0&&c,{t:m}=pe(),h=xt()?.currentTheme,{isMobile:g}=Rn(),[_,v]=Q.useState(f),y=(0,Q.useRef)(null),b;t[0]===r?b=t[1]:(b=e=>{v(e),r?.(e)},t[0]=r,t[1]=b);let x=b,S=(0,Q.useRef)(s),C,w;t[2]===s?(C=t[3],w=t[4]):(C=()=>{s&&(S.current=s)},w=[s],t[2]=s,t[3]=C,t[4]=w),(0,Q.useEffect)(C,w);let T=oo,E=T(s),D,O;t[5]===g?(D=t[6],O=t[7]):(D=()=>{let e=y.current;if(!e)return;let t=e.closest(`.overlay-scrollbar-container`),n=t?.scrollTop??window.scrollY,r=t?.scrollLeft??window.scrollX;if(g){e.scrollIntoView({behavior:`auto`,block:`nearest`});try{e.focus({preventScroll:!0})}catch{e.focus()}return}try{e.focus({preventScroll:!0})}catch{e.focus()}let i=e.value.length;try{e.setSelectionRange(i,i)}catch{}requestAnimationFrame(()=>{t?(t.scrollTop=n,t.scrollLeft=r):window.scrollTo({top:n,left:r})})},O=[g],t[5]=g,t[6]=D,t[7]=O),(0,Q.useEffect)(D,O);let k;t[8]!==a||t[9]!==i||t[10]!==_?(k=e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`?(e.preventDefault(),_.trim()&&i(_,T(S.current))):e.key===`Escape`&&(e.preventDefault(),a())},t[8]=a,t[9]=i,t[10]=_,t[11]=k):k=t[11];let A=k,j;t[12]!==i||t[13]!==_?(j=e=>{e.stopPropagation(),_.trim()&&i(_,T(S.current))},t[12]=i,t[13]=_,t[14]=j):j=t[14];let M=j,N;t[15]===l?N=t[16]:(N=Y(`rounded-lg border shadow-none w-full max-w-[min(100%,calc(var(--oc-context-panel-width,100vw)-var(--oc-editor-gutter-width,0px)))] overflow-hidden animate-in fade-in zoom-in-95 duration-200`,l),t[15]=l,t[16]=N);let P=h?.colors?.surface?.elevated,F=h?.colors?.interactive?.border,I=u?`${Math.max(200,Math.floor(u))}px`:void 0,L;t[17]!==P||t[18]!==F||t[19]!==I?(L={backgroundColor:P,borderColor:F,maxWidth:I},t[17]=P,t[18]=F,t[19]=I,t[20]=L):L=t[20];let ee=ao,te=io,R=(o||s)&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs font-medium text-muted-foreground mb-2`,children:[o&&(0,$.jsx)(`span`,{className:`truncate max-w-[200px]`,children:o}),o&&s&&(0,$.jsx)(`span`,{children:`•`}),E&&(0,$.jsx)(`span`,{children:m(`inlineComment.range.lines`,{start:E.start,end:E.end})})]}),z;t[21]===x?z=t[22]:(z=e=>x(e.target.value),t[21]=x,t[22]=z);let B;t[23]!==g||t[24]!==m?(B=m(g?`inlineComment.input.placeholderShort`:`inlineComment.input.placeholder`),t[23]=g,t[24]=m,t[25]=B):B=t[25];let ne;t[26]!==A||t[27]!==z||t[28]!==B||t[29]!==_?(ne=(0,$.jsx)(er,{simple:!0,ref:y,value:_,onChange:z,onKeyDown:A,placeholder:B,outerClassName:`rounded-[var(--radius-xl)] bg-[var(--surface-subtle)] ring-1 ring-inset ring-border/60 focus-within:ring-2 focus-within:ring-[var(--interactive-focus-ring)]`,className:`min-h-[80px] px-3 py-2.5 text-sm resize-y`}),t[26]=A,t[27]=z,t[28]=B,t[29]=_,t[30]=ne):ne=t[30];let re;t[31]!==E||t[32]!==d||t[33]!==m?(re=E&&d?(0,$.jsxs)(X,{variant:`outline`,size:`sm`,onClick:()=>d(E),onPointerDown:ro,className:`mr-auto h-8 gap-1.5`,children:[(0,$.jsx)(Z,{name:`add`,className:`size-4`}),m(`chat.textSelection.actions.addToChat`),(0,$.jsx)(Qt,{shortcut:`⌘+I`})]}):null,t[31]=E,t[32]=d,t[33]=m,t[34]=re):re=t[34];let V;t[35]===m?V=t[36]:(V=m(`inlineComment.actions.cancel`),t[35]=m,t[36]=V);let ie;t[37]!==a||t[38]!==V?(ie=(0,$.jsx)(X,{variant:`ghost`,size:`sm`,onClick:a,onPointerDown:no,onTouchStart:to,className:`h-8 text-muted-foreground hover:text-foreground`,children:V}),t[37]=a,t[38]=V,t[39]=ie):ie=t[39];let ae;t[40]===_?ae=t[41]:(ae=_.trim(),t[40]=_,t[41]=ae);let oe=!ae,H=h?.colors?.status?.success,U=h?.colors?.status?.successForeground,W;t[42]!==H||t[43]!==U?(W={backgroundColor:H,color:U},t[42]=H,t[43]=U,t[44]=W):W=t[44];let G;t[45]!==p||t[46]!==m?(G=m(p?`inlineComment.actions.save`:`inlineComment.actions.comment`),t[45]=p,t[46]=m,t[47]=G):G=t[47];let K;t[48]!==M||t[49]!==oe||t[50]!==W||t[51]!==G?(K=(0,$.jsx)(X,{size:`sm`,onClick:M,onPointerDown:eo,onTouchStart:$a,disabled:oe,className:`h-8 min-w-[80px]`,style:W,children:G}),t[48]=M,t[49]=oe,t[50]=W,t[51]=G,t[52]=K):K=t[52];let q;t[53]!==re||t[54]!==ie||t[55]!==K?(q=(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2 mt-3`,children:[re,ie,K]}),t[53]=re,t[54]=ie,t[55]=K,t[56]=q):q=t[56];let J;t[57]!==R||t[58]!==ne||t[59]!==q?(J=(0,$.jsxs)(`div`,{className:`p-3`,children:[R,ne,q]}),t[57]=R,t[58]=ne,t[59]=q,t[60]=J):J=t[60];let se;return t[61]!==N||t[62]!==L||t[63]!==ee||t[64]!==te||t[65]!==J?(se=(0,$.jsx)(`div`,{className:N,style:L,"data-comment-input":`true`,onPointerDown:ee,onTouchStart:te,children:J}),t[61]=N,t[62]=L,t[63]=ee,t[64]=te,t[65]=J,t[66]=se):se=t[66],se}function $a(e){return e.stopPropagation()}function eo(e){return e.stopPropagation()}function to(e){return e.stopPropagation()}function no(e){return e.stopPropagation()}function ro(e){return e.stopPropagation()}function io(e){return e.stopPropagation()}function ao(e){return e.stopPropagation()}function oo(e){if(!e)return;let t=Math.min(e.start,e.end),n=Math.max(e.start,e.end);return{...e,start:t,end:n}}var so=e=>{let t=Math.min(e.startLine,e.endLine),n=Math.max(e.startLine,e.endLine);return{...e,startLine:t,endLine:n}},co=e=>{let t=Math.min(e.start,e.end),n=Math.max(e.start,e.end);return{...e,start:t,end:n}};function lo(e){let t=(0,di.c)(40),{t:n}=pe(),{source:r,fileLabel:i,language:a,getCodeForRange:o,toStoreRange:s,fromDraftRange:c}=e,l=Ze(go),u=Ze(ho),d=At(mo),f=At(po),p=At(fo),m=At(uo),[h,g]=Q.useState(null),[_,v]=Q.useState(``),[y,b]=Q.useState(null),x=l??(u?`draft`:null),S;bb0:{if(!x||!i){let e;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=[],t[0]=e):e=t[0],S=e;break bb0}let e;t[1]!==m||t[2]!==x?(e=m[x]??[],t[1]=m,t[2]=x,t[3]=e):e=t[3];let n=e,a;if(t[4]!==i||t[5]!==n||t[6]!==r){let e;t[8]!==i||t[9]!==r?(e=e=>e.source===r&&e.fileLabel===i,t[8]=i,t[9]=r,t[10]=e):e=t[10],a=n.filter(e),t[4]=i,t[5]=n,t[6]=r,t[7]=a}else a=t[7];S=a}let C=S,w;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(w=()=>{g(null),v(``),b(null)},t[11]=w):w=t[11];let T=w,E;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(E=()=>{T()},t[12]=E):E=t[12];let D=E,O;t[13]===c?O=t[14]:(O=e=>{let t=co(c(e));g(t),v(e.text),b(e.id)},t[13]=c,t[14]=O);let k=O,A;t[15]!==y||t[16]!==p?(A=e=>{p(e.sessionKey,e.id),y===e.id&&T()},t[15]=y,t[16]=p,t[17]=A):A=t[17];let j=A,M;t[18]!==d||t[19]!==y||t[20]!==i||t[21]!==o||t[22]!==a||t[23]!==h||t[24]!==x||t[25]!==r||t[26]!==n||t[27]!==s||t[28]!==f?(M=(e,t)=>{let c=t??h,l=e.trim();if(!c||!l||!i)return;if(!x){Pe.error(n(`inlineComment.toast.selectSessionToSave`));return}let u=co(c),p=so(s(u)),m=o(u);y?f(x,y,{fileLabel:i,startLine:p.startLine,endLine:p.endLine,side:p.side,code:m,language:a,text:l}):d({sessionKey:x,source:r,fileLabel:i,startLine:p.startLine,endLine:p.endLine,side:p.side,code:m,language:a,text:l}),T()},t[18]=d,t[19]=y,t[20]=i,t[21]=o,t[22]=a,t[23]=h,t[24]=x,t[25]=r,t[26]=n,t[27]=s,t[28]=f,t[29]=M):M=t[29];let N=M,P;return t[30]!==_||t[31]!==j||t[32]!==C||t[33]!==y||t[34]!==c||t[35]!==N||t[36]!==h||t[37]!==x||t[38]!==k?(P={sessionKey:x,drafts:C,selection:h,setSelection:g,commentText:_,setCommentText:v,editingDraftId:y,setEditingDraftId:b,reset:T,cancel:D,startEdit:k,deleteDraft:j,saveComment:N,fromDraftRange:c},t[30]=_,t[31]=j,t[32]=C,t[33]=y,t[34]=c,t[35]=N,t[36]=h,t[37]=x,t[38]=k,t[39]=P):P=t[39],P}function uo(e){return e.drafts}function fo(e){return e.removeDraft}function po(e){return e.updateDraft}function mo(e){return e.addDraft}function ho(e){return e.newSessionDraft?.open}function go(e){return e.currentSessionId}function _o(e){let{drafts:t,editingDraftId:n,commentText:r,onTextChange:i,selection:a,isDragging:o,fileLabel:s,newWidgetId:c,mapDraftToRange:l,onSave:u,onCancel:d,onEdit:f,onDelete:p,onAddToChat:m}=e,h=[];for(let e of t){let t=l(e);if(e.id===n){h.push({afterLine:t.end,id:`edit-${e.id}`,content:(0,$.jsx)(Qa,{initialText:r,onTextChange:i,fileLabel:s,lineRange:t,isEditing:!0,onSave:u,onCancel:d,onAddToChat:m},`edit-${e.id}`)});continue}h.push({afterLine:t.end,id:`card-${e.id}`,content:(0,$.jsx)(Za,{draft:e,onEdit:()=>f(e),onDelete:()=>p(e)},`card-${e.id}`)})}if(a&&!n&&!o){let e={...a,start:Math.min(a.start,a.end),end:Math.max(a.start,a.end)};h.push({afterLine:e.end,id:c,content:(0,$.jsx)(Qa,{initialText:r,onTextChange:i,fileLabel:s,lineRange:e,isEditing:!1,onSave:u,onCancel:d,onAddToChat:m},c)})}return h}var vo=e=>{if(e.type===`new`){let t=Math.min(e.selection.start,e.selection.end),n=Math.max(e.selection.start,e.selection.end);return`new-comment-${e.selection.side??`additions`}-${t}-${n}`}return`draft-${e.draft.id}`},yo=e=>{let{drafts:t,editingDraftId:n,selection:r}=e,i=[];for(let e of t){if(!Number.isFinite(e.endLine))continue;let t=Math.max(1,Math.floor(e.endLine)),r=e.side===`original`?`deletions`:`additions`;i.push({lineNumber:t,side:r,metadata:{type:e.id===n?`edit`:`saved`,draft:e}})}return r&&!n&&i.push({lineNumber:Math.max(r.start,r.end),side:r.side??`additions`,metadata:{type:`new`,selection:r}}),i};function bo(e){let t=e.trim();if(!t)return null;if(/^-?\d+(\.\d+)?$/.test(t)){let e=Number.parseFloat(t);return Number.isFinite(e)?e:null}if(t.endsWith(`px`)){let e=Number.parseFloat(t.slice(0,-2));return Number.isFinite(e)?e:null}return null}function xo(e){if(!(!e||e<=0))return Math.max(200,Math.floor(e))}function So(e){let{diffRootRef:t,drafts:n,selection:r,editingDraftId:i,commentText:a,onTextChange:o,fileLabel:s,onSave:c,onCancel:l,onEdit:u,onDelete:d,onAddToChat:f}=e,[p,m]=Q.useState(0),[h,g]=Q.useState(null),_=Q.useMemo(()=>!r||i?null:vo({type:`new`,selection:r}),[i,r]),v=Q.useMemo(()=>{let e=n.map(e=>vo({type:e.id===i?`edit`:`saved`,draft:e}));return _&&e.push(_),e},[n,i,_]),y=Q.useCallback(e=>{let n=t.current;if(!n)return null;let r=n.querySelector(`diffs-container`);if(!(r instanceof HTMLElement))return null;let i=r.querySelector(`[data-annotation-id="${e}"]`);if(i instanceof HTMLElement)return i;let a=r.shadowRoot;return a?a.querySelector(`[data-annotation-id="${e}"]`):null},[t]);Q.useEffect(()=>{if(v.length===0)return;let e=!1,t=0,n=()=>{e||v.every(e=>!!y(e))||t>=12||(t+=1,requestAnimationFrame(()=>{e||(m(e=>e+1),n())}))};return n(),()=>{e=!0}},[v,y]),Q.useEffect(()=>{let e=t.current;if(!e)return;let n=()=>{let t=bo(getComputedStyle(e).getPropertyValue(`--oc-context-panel-width`)),n=e.getBoundingClientRect(),r=t??n.width;g(r>0?r:null)};n();let r=new ResizeObserver(()=>{n()});return r.observe(e),window.addEventListener(`resize`,n),()=>{r.disconnect(),window.removeEventListener(`resize`,n)}},[t]);let b=Q.useCallback(e=>{let n=t.current?.getBoundingClientRect(),r=e.closest(`[data-annotation-content]`),i=r instanceof HTMLElement?r.getBoundingClientRect():e.getBoundingClientRect(),a=[i.width];n&&a.push(n.right-i.left);let o=a.filter(e=>Number.isFinite(e)&&e>0);return o.length>0?xo(Math.min(...o)):xo(h)},[t,h]);return(0,$.jsxs)($.Fragment,{children:[n.map(e=>{let t=vo({type:e.id===i?`edit`:`saved`,draft:e}),n=y(t);if(!n)return null;let r=b(n);return e.id===i?(0,fi.createPortal)((0,$.jsx)(Qa,{initialText:a,onTextChange:o,fileLabel:s,lineRange:{start:e.startLine,end:e.endLine,side:e.side===`original`?`deletions`:`additions`},isEditing:!0,onSave:c,onCancel:l,onAddToChat:f,maxWidth:r}),n,`draft-edit-${e.id}`):(0,fi.createPortal)((0,$.jsx)(Za,{draft:e,onEdit:()=>u(e),onDelete:()=>d(e),maxWidth:r}),n,`draft-card-${e.id}`)}),r&&!i&&_&&(()=>{let e=y(_);if(!e)return null;let t=b(e);return(0,fi.createPortal)((0,$.jsx)(Qa,{initialText:a,onTextChange:o,fileLabel:s,lineRange:r,isEditing:!1,onSave:c,onCancel:l,onAddToChat:f,maxWidth:t}),e,_)})()]})}function Co(e){let t=(0,di.c)(16),{position:n,onAddToChat:r,onDismiss:i}=e,{t:a}=pe(),o=Q.useRef(null),s,c;t[0]===i?(s=t[1],c=t[2]):(s=()=>{if(!i)return;let e=e=>{o.current&&e.target instanceof Node&&o.current.contains(e.target)||i()};return window.addEventListener(`scroll`,e,{capture:!0,passive:!0}),()=>{window.removeEventListener(`scroll`,e,!0)}},c=[i],t[0]=i,t[1]=s,t[2]=c),Q.useEffect(s,c);let l;t[3]!==n.x||t[4]!==n.y?(l={left:n.x,top:n.y},t[3]=n.x,t[4]=n.y,t[5]=l):l=t[5];let u;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,$.jsx)(Z,{name:`add`,className:`size-4`}),t[6]=u):u=t[6];let d;t[7]===a?d=t[8]:(d=a(`chat.textSelection.actions.addToChat`),t[7]=a,t[8]=d);let f;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,$.jsx)(Qt,{shortcut:`⌘+I`}),t[9]=f):f=t[9];let p;t[10]!==r||t[11]!==d?(p=(0,$.jsxs)(X,{variant:`ghost`,size:`sm`,className:`h-7 gap-1.5 px-2`,onClick:r,children:[u,d,f]}),t[10]=r,t[11]=d,t[12]=p):p=t[12];let m;return t[13]!==l||t[14]!==p?(m=(0,fi.createPortal)((0,$.jsx)(`div`,{ref:o,"data-code-selection-action":`true`,className:`fixed z-[100] -translate-y-full rounded-lg border border-[var(--interactive-border)] bg-[var(--surface-elevated)] p-1 shadow-lg`,style:l,onPointerDown:wo,children:p}),document.body),t[13]=l,t[14]=p,t[15]=m):m=t[15],m}function wo(e){return e.preventDefault()}var To=`[data-code-selection-action]`;function Eo(e){return e instanceof Element&&!!e.closest(To)}function Do(e,t=[]){return Eo(e)?!0:t.some(e=>e instanceof Element&&e.matches(`[data-column-number]`))}function Oo(e,t){return e&&!!t?.trim()}function ko(e,t,n,r){let i=r.side===`deletions`,a=Math.min(r.start,r.end),o=Math.max(r.start,r.end);if(!n){let n=(i?e:t).split(`
|
package/dist/assets/{scheduledTaskNavigation-C1PrFEhV.js → scheduledTaskNavigation-DQcLqQ52.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime-hePW80VL.js";import{D as e,F as t,I as n,L as r,P as i,a,i as o,it as s,rt as c}from"./vendor-base-ui-CdzJ6My_.js";import{n as l}from"./useUIStore-CDMI_Yzu.js";import{n as u}from"./vendor-react-BP2cRVqX.js";import{r as d}from"./button-BupmKVUs.js";import{n as f,r as p,t as m,x as h}from"./dropdown-menu.styles-HOWSubFF.js";s();var g=u(),_=c(),v=[`connection`,`personalization`,`workspace`,`opencode`,`content`,`system`],y=[`instances`,`appearance`,`chat`,`notifications`,`sessions`,`archived-sessions`,`summary-ai`,`shortcuts`,`projects`,`git`,`remote-instances`,`providers`,`agents`,`assistants`,`behavior`,`commands`,`mcp`,`plugins`,`global-config`,`magic-prompts`,`skills.installed`,`skills.catalog`,`usage`,`voice`,`about`],b=[`instances`,`appearance`,`chat`,`notifications`,`sessions`,`archived-sessions`,`summary-ai`,`projects`,`git`,`providers`,`agents`,`assistants`,`behavior`,`commands`,`mcp`,`plugins`,`magic-prompts`,`skills.installed`,`usage`,`voice`,`about`],x=[{slug:`home`,title:`Settings`,group:`personalization`,kind:`single`,description:`Search and jump to common pages.`,keywords:[`search`,`settings`]},{slug:`projects`,title:`Projects`,group:`workspace`,kind:`split`,keywords:[`project`,`projects`,`worktree`,`worktrees`,`repo`,`repository`,`directory`]},{slug:`instances`,title:`Switch instance`,group:`connection`,kind:`single`,keywords:[`instance`,`instances`,`server`,`connection`,`switch`],isAvailable:e=>e.isMobile},{slug:`remote-instances`,title:`Remote Instances`,group:`workspace`,kind:`single`,keywords:[`ssh`,`remote`,`instances`,`forwarding`,`connection`],isAvailable:e=>!e.isVSCode},{slug:`providers`,title:`Providers`,group:`opencode`,kind:`split`,keywords:[`provider`,`providers`,`models`,`model`,`api key`,`api keys`,`openai`,`anthropic`,`ollama`,`credentials`]},{slug:`usage`,title:`Usage`,group:`system`,kind:`split`,keywords:[`quota`,`billing`,`tokens`,`usage`,`limits`]},{slug:`agents`,title:`Agents`,group:`opencode`,kind:`split`,keywords:[`agent`,`agents`,`prompts`,`tools`,`permissions`]},{slug:`assistants`,title:`Assistants`,group:`opencode`,kind:`split`,keywords:[`assistant`,`assistants`,`sharing`]},{slug:`behavior`,title:`Behavior`,group:`opencode`,kind:`single`,keywords:[`behavior`,`agents.md`,`system prompt`,`global rules`,`instructions`,`override`]},{slug:`commands`,title:`Commands`,group:`opencode`,kind:`split`,keywords:[`command`,`commands`,`slash`,`macros`,`automation`]},{slug:`mcp`,title:`MCP`,group:`opencode`,kind:`split`,keywords:[`mcp`,`model context protocol`,`servers`,`tools`,`remote`,`stdio`]},{slug:`plugins`,title:`Plugins`,group:`opencode`,kind:`split`,keywords:[`plugin`,`plugins`,`extensions`,`addons`,`npm`,`opencode-wakatime`]},{slug:`global-config`,title:`Global Configuration`,group:`opencode`,kind:`single`,keywords:[`global`,`configuration`,`opencode.json`,`opencode.jsonc`,`oh-my-opencode`,`oh-my-openagent`]},{slug:`skills.installed`,title:`Skills`,group:`content`,kind:`split`,keywords:[`skill`,`skills`,`instructions`,`install`,`catalog`]},{slug:`skills.catalog`,title:`Skills Catalog`,group:`content`,kind:`single`,keywords:[`install`,`catalog`,`external`,`repository`,`skills catalog`]},{slug:`git`,title:`Git`,group:`workspace`,kind:`single`,keywords:[`git`,`github`,`identity`,`identities`,`ssh`,`profiles`,`credentials`,`keys`,`commit`,`gitmoji`,`oauth`,`prs`,`issues`],isAvailable:e=>!e.isVSCode},{slug:`appearance`,title:`Appearance`,group:`personalization`,kind:`single`,keywords:[`theme`,`font`,`spacing`,`padding`,`corner radius`,`radius`,`input bar`,`keyboard`,`viewport`,`mobile`,`terminal`,`pwa`,`install name`,`app shortcuts`]},{slug:`chat`,title:`Chat`,group:`personalization`,kind:`single`,keywords:[`tools`,`diff`,`reasoning`,`dotfiles`,`draft`,`queue`,`output`,`copy`,`image`,`split messages`,`message actions`]},{slug:`shortcuts`,title:`Shortcuts`,group:`personalization`,kind:`single`,keywords:[`keyboard`,`hotkeys`,`shortcuts`,`bindings`],isAvailable:e=>!e.isVSCode},{slug:`sessions`,title:`Sessions`,group:`personalization`,kind:`single`,keywords:[`defaults`,`default agent`,`default model`,`retention`,`memory`,`limits`,`zen`]},{slug:`archived-sessions`,title:`Archived sessions`,group:`personalization`,kind:`single`,keywords:[`archive`,`archived`,`restore`,`preview`,`history`]},{slug:`summary-ai`,title:`Summary AI`,group:`personalization`,kind:`single`,keywords:[`summary`,`commit`,`session title`,`prompt`,`provider`,`custom api`,`base url`,`api token`]},{slug:`magic-prompts`,title:`Magic Prompts`,group:`content`,kind:`split`,keywords:[`prompts`,`templates`,`git`,`github`,`review`,`commit`,`pull request`],isAvailable:e=>!e.isVSCode},{slug:`notifications`,title:`Notifications`,group:`personalization`,kind:`single`,keywords:[`alerts`,`native`,`summary`,`summarization`]},{slug:`voice`,title:`Voice`,group:`system`,kind:`single`,keywords:[`tts`,`speech`,`voice`],isAvailable:e=>!e.isVSCode},{slug:`about`,title:`About`,group:`system`,kind:`single`,keywords:[`about`,`version`,`updates`,`release`,`changelog`],isAvailable:e=>e.isMobile||e.isDesktop}];function S(e){let t=new Map(y.map((e,t)=>[e,t])),n=new Map;for(let t of e){let e=n.get(t.group)??[];e.push(t),n.set(t.group,e)}return v.flatMap(e=>{let r=n.get(e);return r?.length?[{group:e,pages:r.sort((e,n)=>(t.get(e.slug)??999)-(t.get(n.slug)??999))}]:[]})}var C={sessions:`sessions`,agents:`agents`,commands:`commands`,mcp:`mcp`,skills:`skills.installed`,providers:`providers`,usage:`usage`,"git-identities":`git`,settings:`home`};function w(e){let t=e.trim().toLowerCase();return x.find(e=>e.slug===t)??null}function T(e){let t=(e??``).trim().toLowerCase();if(!t)return`home`;let n=C[t];if(n)return n;let r=w(t);return r?r.slug:`home`}function E(e){let t=(0,g.c)(4),n;t[0]===e?n=t[1]:({...n}=e,t[0]=e,t[1]=n);let r;return t[2]===n?r=t[3]:(r=(0,_.jsx)(a,{...n}),t[2]=n,t[3]=r),r}function D(e){let t=(0,g.c)(4),n;t[0]===e?n=t[1]:({...n}=e,t[0]=e,t[1]=n);let r;return t[2]===n?r=t[3]:(r=(0,_.jsx)(o,{...n}),t[2]=n,t[3]=r),r}function O(e){let r=(0,g.c)(20),a,o,s,c,l;r[0]===e?(a=r[1],o=r[2],s=r[3],c=r[4],l=r[5]):({className:o,positionerClassName:s,children:a,style:l,...c}=e,r[0]=e,r[1]=a,r[2]=o,r[3]=s,r[4]=c,r[5]=l);let u;r[6]===s?u=r[7]:(u=d(`app-region-no-drag z-50`,s),r[6]=s,r[7]=u);let p;r[8]===l?p=r[9]:(p={backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`,...l},r[8]=l,r[9]=p);let m;r[10]===o?m=r[11]:(m=d(f,o),r[10]=o,r[11]=m);let h;r[12]!==a||r[13]!==c||r[14]!==p||r[15]!==m?(h=(0,_.jsx)(n,{"data-slot":`dropdown-menu-content`,style:p,className:m,...c,children:a}),r[12]=a,r[13]=c,r[14]=p,r[15]=m,r[16]=h):h=r[16];let v;return r[17]!==u||r[18]!==h?(v=(0,_.jsx)(t,{children:(0,_.jsx)(i,{className:u,children:h})}),r[17]=u,r[18]=h,r[19]=v):v=r[19],v}function k(e){let t=(0,g.c)(8),n,i;t[0]===e?(n=t[1],i=t[2]):({className:n,...i}=e,t[0]=e,t[1]=n,t[2]=i);let a;t[3]===n?a=t[4]:(a=d(m,n),t[3]=n,t[4]=a);let o;return t[5]!==i||t[6]!==a?(o=(0,_.jsx)(r,{className:a,...i}),t[5]=i,t[6]=a,t[7]=o):o=t[7],o}function A(t){let n=(0,g.c)(8),r,i;n[0]===t?(r=n[1],i=n[2]):({className:r,...i}=t,n[0]=t,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=d(p,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==a?(o=(0,_.jsx)(e,{className:a,...i}),n[5]=i,n[6]=a,n[7]=o):o=n[7],o}var j=`schedule`,M=[`git`,`diff`,`terminal`,`files`,`diagram`],ee=[`tasks`,`history`],te=`/session/new`,ne=new Set(M),N=new Set(ee),P=new Set([`staged`,`working`,`turn`]);function F(e){return!e||e===`chat`?`chat`:e===`scheduled`||e===`schedule`?j:e===`assistant`?`assistant`:ne.has(e)?e:`chat`}function I(e){return T(e)}function L(e){return e&&N.has(e)?e:null}function R(e){return e&&P.has(e)?e:null}function z(){return te}function B(e,t){let n=I(typeof e==`string`?e:e.slug),r=typeof e==`string`?t:e.entityId,i=`/settings/${n}`;return r&&r.trim().length>0?`${i}/${encodeURIComponent(r.trim())}`:i}function V(e,t){return t&&t.trim().length>0?`${e}/agent/${encodeURIComponent(t.trim())}`:e}function H(e={}){let t=L(e.scheduleView??e.scheduledView)??`tasks`,n=e.scheduleProjectId??e.scheduledProjectId??null,r=e.scheduleTaskId??e.scheduledTaskId??null,i;return i=n&&r?`/schedule/tasks/${encodeURIComponent(n)}/${encodeURIComponent(r)}`:t===`history`?`/schedule/history`:`/schedule`,V(i,e.focusSessionId)}function U(e={}){let t=`/assistant`;return e.assistantId&&e.assistantId.trim().length>0&&(t=`/assistant/${encodeURIComponent(e.assistantId.trim())}`),V(t,e.focusSessionId)}function W(e){let t=encodeURIComponent(e.sessionId),n=F(e.tab);if(n===`schedule`)return H({});if(n===`assistant`)return U({});let r;r=n===`chat`?`/session/${t}`:`/session/${t}/${n}`;let i=new URLSearchParams;e.file&&i.set(`file`,e.file);let a=R(e.scope);a&&i.set(`scope`,a);let o=i.toString();return o?`${r}?${o}`:r}function G(e){let t=F(e.tab);return t===`schedule`?H({scheduleView:e.scheduleView??e.scheduledView,scheduleProjectId:e.scheduleProjectId??e.scheduledProjectId,scheduleTaskId:e.scheduleTaskId??e.scheduledTaskId,focusSessionId:e.focusSessionId}):t===`assistant`?U({assistantId:e.assistantId,focusSessionId:e.focusSessionId}):e.sessionId&&e.sessionId.trim().length>0?W({sessionId:e.sessionId.trim(),tab:t,file:e.file,scope:e.scope}):`/`}function K(e){let t=new URLSearchParams(e.startsWith(`?`)?e.slice(1):e);return{file:t.get(`file`),scope:R(t.get(`scope`))}}function q(e){let t=e.indexOf(`agent`);return t>=0&&e[t+1]?{rest:e.slice(0,t),focusSessionId:decodeURIComponent(e[t+1])}:{rest:e,focusSessionId:null}}function J(e,t){let n=e[1];return n?n===`history`?{kind:`schedule`,scheduleView:`history`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}:n===`tasks`&&e[2]&&e[3]?{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:decodeURIComponent(e[2]),scheduleTaskId:decodeURIComponent(e[3]),focusSessionId:t}:{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}:{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}}function Y(e){let t=e,n=``,r=e.indexOf(`?`);r>=0&&(t=e.slice(0,r),n=e.slice(r));let i=t.indexOf(`#`);if(i>=0&&(t=t.slice(0,i)),t===`/session/new`||t===`/new`||t===`/session/new/`)return{kind:`new`};if(t===`/connect`)return{kind:`connect`};let a=t.match(/^\/settings(?:\/([^/]+)(?:\/([^/]+))?)?$/);if(a)return{kind:`settings`,slug:I(a[1]??`home`),entityId:a[2]?decodeURIComponent(a[2]):null};let o=t.split(`/`).filter(Boolean);if(o.length===0)return{kind:`unknown`};let{rest:s,focusSessionId:c}=q(o),l=s[0];if(l===`schedule`||l===`scheduled`)return J(s,c);if(l===`assistant`)return{kind:`assistant`,assistantId:s[1]?decodeURIComponent(s[1]):null,focusSessionId:c};if(l===`session`){let e=s[1]?decodeURIComponent(s[1]):``;if(!e)return{kind:`unknown`};if(e===`new`)return{kind:`new`};let{file:t,scope:r}=K(n),i=s[2];if(i===`schedule`||i===`scheduled`)return J(s.slice(2),c);if(i===`assistant`)return{kind:`assistant`,assistantId:s[3]?decodeURIComponent(s[3]):null,focusSessionId:c};if(!i)return{kind:`session`,sessionId:e,tab:`chat`,file:t,scope:r};let a=F(i);return a===`chat`&&i!==`chat`?{kind:`session`,sessionId:e,tab:`chat`,file:t,scope:r}:{kind:`session`,sessionId:e,tab:a,file:t,scope:r}}return{kind:`unknown`}}function X(e){return typeof window>`u`?Z():re(e===void 0?`${window.location.pathname}${window.location.search}`:`${window.location.pathname}?${e.toString()}`)}function re(e){let t=Y(e);switch(t.kind){case`new`:return{...Z(),isNewSession:!0,tab:`chat`};case`session`:{let e=t.tab;return{sessionId:t.sessionId,isNewSession:!1,tab:e===`chat`?null:e,settingsPath:null,settingsEntityId:null,diffFile:t.file,diffScope:t.scope,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null}}case`schedule`:return{sessionId:null,isNewSession:!1,tab:j,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:t.scheduleView,scheduleProjectId:t.scheduleProjectId,scheduleTaskId:t.scheduleTaskId,assistantId:null,focusSessionId:t.focusSessionId};case`assistant`:return{sessionId:null,isNewSession:!1,tab:`assistant`,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:t.assistantId,focusSessionId:t.focusSessionId};case`settings`:return{sessionId:null,isNewSession:!1,tab:null,settingsPath:t.slug,settingsEntityId:t.entityId,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null};default:return Z()}}function Z(){return{sessionId:null,isNewSession:!1,tab:null,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null}}function ie(){if(typeof window>`u`)return!1;try{let e=Y(`${window.location.pathname}${window.location.search}`);return e.kind===`session`||e.kind===`new`||e.kind===`schedule`||e.kind===`assistant`||e.kind===`settings`||e.kind===`connect`}catch{return!1}}function Q(e){if(e.isSettingsOpen)return B({slug:e.settingsPath.trim().length>0?e.settingsPath:`home`,entityId:e.settingsEntityId??null});if(e.tab===`schedule`)return G({tab:j,scheduleView:e.scheduleView,scheduleProjectId:e.scheduleProjectId,scheduleTaskId:e.scheduleTaskId,focusSessionId:e.focusSessionId});if(e.tab===`assistant`)return G({tab:`assistant`,assistantId:e.assistantId,focusSessionId:e.focusSessionId});if((e.isNewSession||!e.sessionId&&e.tab===`chat`)&&e.isNewSession)return z();if(e.sessionId&&e.sessionId.trim().length>0&&e.sessionId!==`new`){let t=new Set([`diff`,`files`,`diagram`]).has(e.tab)&&e.diffFile?e.diffFile:null;return G({sessionId:e.sessionId.trim(),tab:e.tab,file:t,scope:e.tab===`diff`?e.diffScope??null:null})}return e.isNewSession?z():`/`}function ae(e){if(typeof window>`u`)return!0;try{let t=`${window.location.pathname}${window.location.search}`,n=Q(e);return JSON.stringify(Y(t))===JSON.stringify(Y(n))}catch{return!0}}function $(e,t={}){if(!(typeof window>`u`)&&!(oe()||h())&&!(!t.force&&ae(e)))try{let n=Q(e);t.replace?window.history.replaceState({...window.history.state,route:e},``,n):window.history.pushState({route:e},``,n)}catch{}}function oe(){return typeof window>`u`?!1:window.__VSCODE_CONFIG__!==void 0}function se(e,t){let n=l.getState();n.setActiveMainTab(`schedule`)&&(n.setSettingsDialogOpen(!1),$({sessionId:null,tab:`schedule`,isSettingsOpen:!1,settingsPath:n.settingsPage,diffFile:null,scheduleView:`tasks`,scheduleProjectId:e,scheduleTaskId:t}),n.setScheduledTaskOpenRequest({projectId:e,taskId:t}),n.isMobile&&n.setScheduledTasksDialogOpen(!0))}export{E as a,A as c,x as d,w as f,X as i,D as l,T as m,$ as n,O as o,S as p,ie as r,k as s,se as t,b as u};
|
|
1
|
+
import"./rolldown-runtime-hePW80VL.js";import{D as e,F as t,I as n,L as r,P as i,a,i as o,it as s,rt as c}from"./vendor-base-ui-CdzJ6My_.js";import{n as l}from"./useUIStore-CEqU9Ujv.js";import{n as u}from"./vendor-react-BP2cRVqX.js";import{r as d}from"./button-CWSs9Baz.js";import{n as f,r as p,t as m,x as h}from"./dropdown-menu.styles-BNwZmBRp.js";s();var g=u(),_=c(),v=[`connection`,`personalization`,`workspace`,`opencode`,`content`,`system`],y=[`instances`,`appearance`,`chat`,`notifications`,`sessions`,`archived-sessions`,`summary-ai`,`shortcuts`,`projects`,`git`,`remote-instances`,`providers`,`agents`,`assistants`,`behavior`,`commands`,`mcp`,`plugins`,`global-config`,`magic-prompts`,`skills.installed`,`skills.catalog`,`usage`,`voice`,`about`],b=[`instances`,`appearance`,`chat`,`notifications`,`sessions`,`archived-sessions`,`summary-ai`,`projects`,`git`,`providers`,`agents`,`assistants`,`behavior`,`commands`,`mcp`,`plugins`,`magic-prompts`,`skills.installed`,`usage`,`voice`,`about`],x=[{slug:`home`,title:`Settings`,group:`personalization`,kind:`single`,description:`Search and jump to common pages.`,keywords:[`search`,`settings`]},{slug:`projects`,title:`Projects`,group:`workspace`,kind:`split`,keywords:[`project`,`projects`,`worktree`,`worktrees`,`repo`,`repository`,`directory`]},{slug:`instances`,title:`Switch instance`,group:`connection`,kind:`single`,keywords:[`instance`,`instances`,`server`,`connection`,`switch`],isAvailable:e=>e.isMobile},{slug:`remote-instances`,title:`Remote Instances`,group:`workspace`,kind:`single`,keywords:[`ssh`,`remote`,`instances`,`forwarding`,`connection`],isAvailable:e=>!e.isVSCode},{slug:`providers`,title:`Providers`,group:`opencode`,kind:`split`,keywords:[`provider`,`providers`,`models`,`model`,`api key`,`api keys`,`openai`,`anthropic`,`ollama`,`credentials`]},{slug:`usage`,title:`Usage`,group:`system`,kind:`split`,keywords:[`quota`,`billing`,`tokens`,`usage`,`limits`]},{slug:`agents`,title:`Agents`,group:`opencode`,kind:`split`,keywords:[`agent`,`agents`,`prompts`,`tools`,`permissions`]},{slug:`assistants`,title:`Assistants`,group:`opencode`,kind:`split`,keywords:[`assistant`,`assistants`,`sharing`]},{slug:`behavior`,title:`Behavior`,group:`opencode`,kind:`single`,keywords:[`behavior`,`agents.md`,`system prompt`,`global rules`,`instructions`,`override`]},{slug:`commands`,title:`Commands`,group:`opencode`,kind:`split`,keywords:[`command`,`commands`,`slash`,`macros`,`automation`]},{slug:`mcp`,title:`MCP`,group:`opencode`,kind:`split`,keywords:[`mcp`,`model context protocol`,`servers`,`tools`,`remote`,`stdio`]},{slug:`plugins`,title:`Plugins`,group:`opencode`,kind:`split`,keywords:[`plugin`,`plugins`,`extensions`,`addons`,`npm`,`opencode-wakatime`]},{slug:`global-config`,title:`Global Configuration`,group:`opencode`,kind:`single`,keywords:[`global`,`configuration`,`opencode.json`,`opencode.jsonc`,`oh-my-opencode`,`oh-my-openagent`]},{slug:`skills.installed`,title:`Skills`,group:`content`,kind:`split`,keywords:[`skill`,`skills`,`instructions`,`install`,`catalog`]},{slug:`skills.catalog`,title:`Skills Catalog`,group:`content`,kind:`single`,keywords:[`install`,`catalog`,`external`,`repository`,`skills catalog`]},{slug:`git`,title:`Git`,group:`workspace`,kind:`single`,keywords:[`git`,`github`,`identity`,`identities`,`ssh`,`profiles`,`credentials`,`keys`,`commit`,`gitmoji`,`oauth`,`prs`,`issues`],isAvailable:e=>!e.isVSCode},{slug:`appearance`,title:`Appearance`,group:`personalization`,kind:`single`,keywords:[`theme`,`font`,`spacing`,`padding`,`corner radius`,`radius`,`input bar`,`keyboard`,`viewport`,`mobile`,`terminal`,`pwa`,`install name`,`app shortcuts`]},{slug:`chat`,title:`Chat`,group:`personalization`,kind:`single`,keywords:[`tools`,`diff`,`reasoning`,`dotfiles`,`draft`,`queue`,`output`,`copy`,`image`,`split messages`,`message actions`]},{slug:`shortcuts`,title:`Shortcuts`,group:`personalization`,kind:`single`,keywords:[`keyboard`,`hotkeys`,`shortcuts`,`bindings`],isAvailable:e=>!e.isVSCode},{slug:`sessions`,title:`Sessions`,group:`personalization`,kind:`single`,keywords:[`defaults`,`default agent`,`default model`,`retention`,`memory`,`limits`,`zen`]},{slug:`archived-sessions`,title:`Archived sessions`,group:`personalization`,kind:`single`,keywords:[`archive`,`archived`,`restore`,`preview`,`history`]},{slug:`summary-ai`,title:`Summary AI`,group:`personalization`,kind:`single`,keywords:[`summary`,`commit`,`session title`,`prompt`,`provider`,`custom api`,`base url`,`api token`]},{slug:`magic-prompts`,title:`Magic Prompts`,group:`content`,kind:`split`,keywords:[`prompts`,`templates`,`git`,`github`,`review`,`commit`,`pull request`],isAvailable:e=>!e.isVSCode},{slug:`notifications`,title:`Notifications`,group:`personalization`,kind:`single`,keywords:[`alerts`,`native`,`summary`,`summarization`]},{slug:`voice`,title:`Voice`,group:`system`,kind:`single`,keywords:[`tts`,`speech`,`voice`],isAvailable:e=>!e.isVSCode},{slug:`about`,title:`About`,group:`system`,kind:`single`,keywords:[`about`,`version`,`updates`,`release`,`changelog`],isAvailable:e=>e.isMobile||e.isDesktop}];function S(e){let t=new Map(y.map((e,t)=>[e,t])),n=new Map;for(let t of e){let e=n.get(t.group)??[];e.push(t),n.set(t.group,e)}return v.flatMap(e=>{let r=n.get(e);return r?.length?[{group:e,pages:r.sort((e,n)=>(t.get(e.slug)??999)-(t.get(n.slug)??999))}]:[]})}var C={sessions:`sessions`,agents:`agents`,commands:`commands`,mcp:`mcp`,skills:`skills.installed`,providers:`providers`,usage:`usage`,"git-identities":`git`,settings:`home`};function w(e){let t=e.trim().toLowerCase();return x.find(e=>e.slug===t)??null}function T(e){let t=(e??``).trim().toLowerCase();if(!t)return`home`;let n=C[t];if(n)return n;let r=w(t);return r?r.slug:`home`}function E(e){let t=(0,g.c)(4),n;t[0]===e?n=t[1]:({...n}=e,t[0]=e,t[1]=n);let r;return t[2]===n?r=t[3]:(r=(0,_.jsx)(a,{...n}),t[2]=n,t[3]=r),r}function D(e){let t=(0,g.c)(4),n;t[0]===e?n=t[1]:({...n}=e,t[0]=e,t[1]=n);let r;return t[2]===n?r=t[3]:(r=(0,_.jsx)(o,{...n}),t[2]=n,t[3]=r),r}function O(e){let r=(0,g.c)(20),a,o,s,c,l;r[0]===e?(a=r[1],o=r[2],s=r[3],c=r[4],l=r[5]):({className:o,positionerClassName:s,children:a,style:l,...c}=e,r[0]=e,r[1]=a,r[2]=o,r[3]=s,r[4]=c,r[5]=l);let u;r[6]===s?u=r[7]:(u=d(`app-region-no-drag z-50`,s),r[6]=s,r[7]=u);let p;r[8]===l?p=r[9]:(p={backgroundColor:`var(--surface-elevated)`,color:`var(--surface-elevated-foreground)`,...l},r[8]=l,r[9]=p);let m;r[10]===o?m=r[11]:(m=d(f,o),r[10]=o,r[11]=m);let h;r[12]!==a||r[13]!==c||r[14]!==p||r[15]!==m?(h=(0,_.jsx)(n,{"data-slot":`dropdown-menu-content`,style:p,className:m,...c,children:a}),r[12]=a,r[13]=c,r[14]=p,r[15]=m,r[16]=h):h=r[16];let v;return r[17]!==u||r[18]!==h?(v=(0,_.jsx)(t,{children:(0,_.jsx)(i,{className:u,children:h})}),r[17]=u,r[18]=h,r[19]=v):v=r[19],v}function k(e){let t=(0,g.c)(8),n,i;t[0]===e?(n=t[1],i=t[2]):({className:n,...i}=e,t[0]=e,t[1]=n,t[2]=i);let a;t[3]===n?a=t[4]:(a=d(m,n),t[3]=n,t[4]=a);let o;return t[5]!==i||t[6]!==a?(o=(0,_.jsx)(r,{className:a,...i}),t[5]=i,t[6]=a,t[7]=o):o=t[7],o}function A(t){let n=(0,g.c)(8),r,i;n[0]===t?(r=n[1],i=n[2]):({className:r,...i}=t,n[0]=t,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=d(p,r),n[3]=r,n[4]=a);let o;return n[5]!==i||n[6]!==a?(o=(0,_.jsx)(e,{className:a,...i}),n[5]=i,n[6]=a,n[7]=o):o=n[7],o}var j=`schedule`,M=[`git`,`diff`,`terminal`,`files`,`diagram`],ee=[`tasks`,`history`],te=`/session/new`,ne=new Set(M),N=new Set(ee),P=new Set([`staged`,`working`,`turn`]);function F(e){return!e||e===`chat`?`chat`:e===`scheduled`||e===`schedule`?j:e===`assistant`?`assistant`:ne.has(e)?e:`chat`}function I(e){return T(e)}function L(e){return e&&N.has(e)?e:null}function R(e){return e&&P.has(e)?e:null}function z(){return te}function B(e,t){let n=I(typeof e==`string`?e:e.slug),r=typeof e==`string`?t:e.entityId,i=`/settings/${n}`;return r&&r.trim().length>0?`${i}/${encodeURIComponent(r.trim())}`:i}function V(e,t){return t&&t.trim().length>0?`${e}/agent/${encodeURIComponent(t.trim())}`:e}function H(e={}){let t=L(e.scheduleView??e.scheduledView)??`tasks`,n=e.scheduleProjectId??e.scheduledProjectId??null,r=e.scheduleTaskId??e.scheduledTaskId??null,i;return i=n&&r?`/schedule/tasks/${encodeURIComponent(n)}/${encodeURIComponent(r)}`:t===`history`?`/schedule/history`:`/schedule`,V(i,e.focusSessionId)}function U(e={}){let t=`/assistant`;return e.assistantId&&e.assistantId.trim().length>0&&(t=`/assistant/${encodeURIComponent(e.assistantId.trim())}`),V(t,e.focusSessionId)}function W(e){let t=encodeURIComponent(e.sessionId),n=F(e.tab);if(n===`schedule`)return H({});if(n===`assistant`)return U({});let r;r=n===`chat`?`/session/${t}`:`/session/${t}/${n}`;let i=new URLSearchParams;e.file&&i.set(`file`,e.file);let a=R(e.scope);a&&i.set(`scope`,a);let o=i.toString();return o?`${r}?${o}`:r}function G(e){let t=F(e.tab);return t===`schedule`?H({scheduleView:e.scheduleView??e.scheduledView,scheduleProjectId:e.scheduleProjectId??e.scheduledProjectId,scheduleTaskId:e.scheduleTaskId??e.scheduledTaskId,focusSessionId:e.focusSessionId}):t===`assistant`?U({assistantId:e.assistantId,focusSessionId:e.focusSessionId}):e.sessionId&&e.sessionId.trim().length>0?W({sessionId:e.sessionId.trim(),tab:t,file:e.file,scope:e.scope}):`/`}function K(e){let t=new URLSearchParams(e.startsWith(`?`)?e.slice(1):e);return{file:t.get(`file`),scope:R(t.get(`scope`))}}function q(e){let t=e.indexOf(`agent`);return t>=0&&e[t+1]?{rest:e.slice(0,t),focusSessionId:decodeURIComponent(e[t+1])}:{rest:e,focusSessionId:null}}function J(e,t){let n=e[1];return n?n===`history`?{kind:`schedule`,scheduleView:`history`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}:n===`tasks`&&e[2]&&e[3]?{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:decodeURIComponent(e[2]),scheduleTaskId:decodeURIComponent(e[3]),focusSessionId:t}:{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}:{kind:`schedule`,scheduleView:`tasks`,scheduleProjectId:null,scheduleTaskId:null,focusSessionId:t}}function Y(e){let t=e,n=``,r=e.indexOf(`?`);r>=0&&(t=e.slice(0,r),n=e.slice(r));let i=t.indexOf(`#`);if(i>=0&&(t=t.slice(0,i)),t===`/session/new`||t===`/new`||t===`/session/new/`)return{kind:`new`};if(t===`/connect`)return{kind:`connect`};let a=t.match(/^\/settings(?:\/([^/]+)(?:\/([^/]+))?)?$/);if(a)return{kind:`settings`,slug:I(a[1]??`home`),entityId:a[2]?decodeURIComponent(a[2]):null};let o=t.split(`/`).filter(Boolean);if(o.length===0)return{kind:`unknown`};let{rest:s,focusSessionId:c}=q(o),l=s[0];if(l===`schedule`||l===`scheduled`)return J(s,c);if(l===`assistant`)return{kind:`assistant`,assistantId:s[1]?decodeURIComponent(s[1]):null,focusSessionId:c};if(l===`session`){let e=s[1]?decodeURIComponent(s[1]):``;if(!e)return{kind:`unknown`};if(e===`new`)return{kind:`new`};let{file:t,scope:r}=K(n),i=s[2];if(i===`schedule`||i===`scheduled`)return J(s.slice(2),c);if(i===`assistant`)return{kind:`assistant`,assistantId:s[3]?decodeURIComponent(s[3]):null,focusSessionId:c};if(!i)return{kind:`session`,sessionId:e,tab:`chat`,file:t,scope:r};let a=F(i);return a===`chat`&&i!==`chat`?{kind:`session`,sessionId:e,tab:`chat`,file:t,scope:r}:{kind:`session`,sessionId:e,tab:a,file:t,scope:r}}return{kind:`unknown`}}function X(e){return typeof window>`u`?Z():re(e===void 0?`${window.location.pathname}${window.location.search}`:`${window.location.pathname}?${e.toString()}`)}function re(e){let t=Y(e);switch(t.kind){case`new`:return{...Z(),isNewSession:!0,tab:`chat`};case`session`:{let e=t.tab;return{sessionId:t.sessionId,isNewSession:!1,tab:e===`chat`?null:e,settingsPath:null,settingsEntityId:null,diffFile:t.file,diffScope:t.scope,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null}}case`schedule`:return{sessionId:null,isNewSession:!1,tab:j,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:t.scheduleView,scheduleProjectId:t.scheduleProjectId,scheduleTaskId:t.scheduleTaskId,assistantId:null,focusSessionId:t.focusSessionId};case`assistant`:return{sessionId:null,isNewSession:!1,tab:`assistant`,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:t.assistantId,focusSessionId:t.focusSessionId};case`settings`:return{sessionId:null,isNewSession:!1,tab:null,settingsPath:t.slug,settingsEntityId:t.entityId,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null};default:return Z()}}function Z(){return{sessionId:null,isNewSession:!1,tab:null,settingsPath:null,settingsEntityId:null,diffFile:null,diffScope:null,scheduleView:null,scheduleProjectId:null,scheduleTaskId:null,assistantId:null,focusSessionId:null}}function ie(){if(typeof window>`u`)return!1;try{let e=Y(`${window.location.pathname}${window.location.search}`);return e.kind===`session`||e.kind===`new`||e.kind===`schedule`||e.kind===`assistant`||e.kind===`settings`||e.kind===`connect`}catch{return!1}}function Q(e){if(e.isSettingsOpen)return B({slug:e.settingsPath.trim().length>0?e.settingsPath:`home`,entityId:e.settingsEntityId??null});if(e.tab===`schedule`)return G({tab:j,scheduleView:e.scheduleView,scheduleProjectId:e.scheduleProjectId,scheduleTaskId:e.scheduleTaskId,focusSessionId:e.focusSessionId});if(e.tab===`assistant`)return G({tab:`assistant`,assistantId:e.assistantId,focusSessionId:e.focusSessionId});if((e.isNewSession||!e.sessionId&&e.tab===`chat`)&&e.isNewSession)return z();if(e.sessionId&&e.sessionId.trim().length>0&&e.sessionId!==`new`){let t=new Set([`diff`,`files`,`diagram`]).has(e.tab)&&e.diffFile?e.diffFile:null;return G({sessionId:e.sessionId.trim(),tab:e.tab,file:t,scope:e.tab===`diff`?e.diffScope??null:null})}return e.isNewSession?z():`/`}function ae(e){if(typeof window>`u`)return!0;try{let t=`${window.location.pathname}${window.location.search}`,n=Q(e);return JSON.stringify(Y(t))===JSON.stringify(Y(n))}catch{return!0}}function $(e,t={}){if(!(typeof window>`u`)&&!(oe()||h())&&!(!t.force&&ae(e)))try{let n=Q(e);t.replace?window.history.replaceState({...window.history.state,route:e},``,n):window.history.pushState({route:e},``,n)}catch{}}function oe(){return typeof window>`u`?!1:window.__VSCODE_CONFIG__!==void 0}function se(e,t){let n=l.getState();n.setActiveMainTab(`schedule`)&&(n.setSettingsDialogOpen(!1),$({sessionId:null,tab:`schedule`,isSettingsOpen:!1,settingsPath:n.settingsPage,diffFile:null,scheduleView:`tasks`,scheduleProjectId:e,scheduleTaskId:t}),n.setScheduledTaskOpenRequest({projectId:e,taskId:t}),n.isMobile&&n.setScheduledTasksDialogOpen(!0))}export{E as a,A as c,x as d,w as f,X as i,D as l,T as m,$ as n,O as o,S as p,ie as r,k as s,se as t,b as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{_t as t,dt as n,ft as r,gt as i,ln as a,yt as o}from"./persistence-B4Ni3Gmv.js";import{it as s,nt as c,rt as l}from"./vendor-base-ui-CdzJ6My_.js";import{n as u,t as d}from"./platform-BQPsr8Zl.js";import{n as f}from"./vendor-react-BP2cRVqX.js";import{a as p,n as m}from"./vendor-aparajita-capacitor-secure-storage-xol_6BsB.js";import{f as h,n as g,r as _}from"./vendor-reactuses-core-BpfIZ1tg.js";import{f as v,r as y,t as b}from"./button-BupmKVUs.js";import{Ir as x,Sa as S}from"./useMobileNavigationStore-DXpdkzw_.js";import{n as C}from"./Icon-B4xKSuz3.js";import{v as w}from"./image-loading-CsxDGgek.js";import{a as T,o as E}from"./dropdown-menu.styles-HOWSubFF.js";import{i as ee,t as D}from"./textarea-Boj9axpc.js";import{t as O}from"./LoadingImage-CoT3GWhg.js";var k=e(s(),1),A=f(),j=l(),te=e(c(),1),M=p(`OpenChamberMedia`);function N(e){return e.platform===`android`||/Android/i.test(e.userAgent)||e.userAgentDataPlatform===`Android`}function P(){if(typeof window>`u`)return!1;let e=navigator.userAgentData;return N({platform:d(),userAgent:navigator.userAgent||``,userAgentDataPlatform:e?.platform})}function ne(){return u()&&m.getPlatform()===`android`&&m.isPluginAvailable(`OpenChamberMedia`)}async function F(e){if(!ne())return null;let t=await M.pickMedia({limit:e});if(t.cancelled)return[];let n=[];for(let e of t.files){let t=await fetch(m.convertFileSrc(e.path));if(!t.ok)throw Error(`Native media fetch failed (${t.status})`);let r=await t.blob();n.push(new File([r],e.name,{type:e.mimeType}))}return n}var I=`h-auto min-h-12 w-full justify-start gap-3 rounded-none supports-[corner-shape:squircle]:rounded-none px-4 border-b border-[var(--surface-subtle)] last:border-b-0`,re=e=>{let t=(0,A.c)(38),{id:n,open:r,onOpenChange:i,onPickPhotos:a,onPickFiles:o}=e,{t:s}=v(),c;t[0]===s?c=t[1]:(c=s(`chat.chatInput.actions.addAttachment`),t[0]=s,t[1]=c);let l;t[2]===c?l=t[3]:(l=(0,j.jsx)(`h2`,{className:`truncate typography-ui-label font-semibold`,children:c}),t[2]=c,t[3]=l);let u;t[4]===s?u=t[5]:(u=s(`chat.chatInput.actions.addAttachment`),t[4]=s,t[5]=u);let d;t[6]===s?d=t[7]:(d=s(`mobile.surface.closeAria`),t[6]=s,t[7]=d);let f;t[8]===s?f=t[9]:(f=s(`mobile.sessions.sheet.resizeAria`),t[8]=s,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,j.jsx)(C,{name:`file-image`,className:`size-5 flex-shrink-0 text-muted-foreground`}),t[10]=p):p=t[10];let m;t[11]===s?m=t[12]:(m=s(`chat.chatInput.actions.attachPhotos`),t[11]=s,t[12]=m);let h;t[13]===m?h=t[14]:(h=(0,j.jsx)(`span`,{className:`truncate`,children:m}),t[13]=m,t[14]=h);let g;t[15]!==a||t[16]!==h?(g=(0,j.jsxs)(b,{type:`button`,variant:`ghost`,size:`lg`,className:I,"data-mobile-press-feedback":`none`,onClick:a,children:[p,h]}),t[15]=a,t[16]=h,t[17]=g):g=t[17];let _;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,j.jsx)(C,{name:`attachment-2`,className:`size-5 flex-shrink-0 text-muted-foreground`}),t[18]=_):_=t[18];let y;t[19]===s?y=t[20]:(y=s(`chat.chatInput.actions.attachFiles`),t[19]=s,t[20]=y);let x;t[21]===y?x=t[22]:(x=(0,j.jsx)(`span`,{className:`truncate`,children:y}),t[21]=y,t[22]=x);let S;t[23]!==o||t[24]!==x?(S=(0,j.jsxs)(b,{type:`button`,variant:`ghost`,size:`lg`,className:I,"data-mobile-press-feedback":`none`,onClick:o,children:[_,x]}),t[23]=o,t[24]=x,t[25]=S):S=t[25];let w;t[26]!==S||t[27]!==g?(w=(0,j.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-y-auto overscroll-contain px-3 pb-3`,children:(0,j.jsxs)(`div`,{className:`overflow-hidden rounded-2xl bg-[var(--surface-muted)]`,"data-page-scroll-lock":`true`,children:[g,S]})}),t[26]=S,t[27]=g,t[28]=w):w=t[28];let T;return t[29]!==n||t[30]!==i||t[31]!==r||t[32]!==w||t[33]!==l||t[34]!==u||t[35]!==d||t[36]!==f?(T=(0,j.jsx)(ee,{id:n,open:r,onOpenChange:i,title:l,ariaLabel:u,closeAriaLabel:d,resizeAriaLabel:f,fitContent:!0,children:w}),t[29]=n,t[30]=i,t[31]=r,t[32]=w,t[33]=l,t[34]=u,t[35]=d,t[36]=f,t[37]=T):T=t[37],T},L={glyph:`_glyph_1xs2e_1`,lens:`_lens_1xs2e_12`,shape:`_shape_1xs2e_21`,revolve:`_revolve_1xs2e_1`};function ie(e){let t=(0,A.c)(18),{decorative:n,size:r}=e,i=n!==void 0&&n,a=r===void 0?20:r,{t:o}=v(),s;t[0]===a?s=t[1]:(s={width:a,height:a},t[0]=a,t[1]=s);let c=i||void 0,l=i?void 0:`img`,u;t[2]!==i||t[3]!==o?(u=i?void 0:o(`common.loading`),t[2]=i,t[3]=o,t[4]=u):u=t[4];let d=`scale(${a/28})`,f;t[5]===d?f=t[6]:(f={transform:d},t[5]=d,t[6]=f);let p,m,h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,j.jsx)(`span`,{className:L.shape}),p=(0,j.jsx)(`span`,{className:L.shape}),m=(0,j.jsx)(`span`,{className:L.shape}),t[7]=p,t[8]=m,t[9]=h):(p=t[7],m=t[8],h=t[9]);let g;t[10]===f?g=t[11]:(g=(0,j.jsxs)(`span`,{className:L.lens,style:f,children:[h,p,m]}),t[10]=f,t[11]=g);let _;return t[12]!==g||t[13]!==s||t[14]!==c||t[15]!==l||t[16]!==u?(_=(0,j.jsx)(`span`,{"data-dictation-loading":!0,className:L.glyph,style:s,"aria-hidden":c,role:l,"aria-label":u,children:g}),t[12]=g,t[13]=s,t[14]=c,t[15]=l,t[16]=u,t[17]=_):_=t[17],_}var R=w(!1).colors,ae=`M-50 74.564 A600 600 0 0 1 147.707 22.283 A38 38 0 0 1 154.330 97.994 A524 524 0 0 0 -18.333 143.653 Z`,oe=`M450 74.564 A600 600 0 0 0 252.293 22.283 A38 38 0 0 0 245.670 97.994 A524 524 0 0 1 418.333 143.653 Z`,se={colorScheme:`light`,"--surface-background":R.surface.background,"--surface-foreground":R.surface.foreground,"--primary-base":R.primary.base,"--foreground":R.surface.background,"--interactive-hover":`color-mix(in srgb, var(--surface-background) 12%, transparent)`,"--interactive-active":`color-mix(in srgb, var(--surface-background) 20%, transparent)`,"--ring":R.interactive.focusRing,"--status-error":R.status.error};function z(e){let t=(0,A.c)(85),{containerRef:n,disabled:r,onInsert:i,onSend:a,onRelease:o,onError:s,onHintChange:c}=e,{t:l}=v(),[u,d]=(0,k.useState)(!1),[f,p]=(0,k.useState)(!1),[m,h]=(0,k.useState)(`edit`),_=(0,k.useRef)(null),y=(0,k.useRef)(null),b=(0,k.useRef)(`insert`),x=(0,k.useRef)(null),S=(0,k.useId)(),C=(0,k.useId)(),w=(0,k.useId)(),E;t[0]!==i||t[1]!==a?(E=e=>b.current===`send`?a(e):i(e),t[0]=i,t[1]=a,t[2]=E):E=t[2];let ee;t[3]!==s||t[4]!==E?(ee={onTranscript:E,onError:s},t[3]=s,t[4]=E,t[5]=ee):ee=t[5];let D=T(ee),{status:O,isStarting:M,partialTranscript:N,error:P,volume:ne}=D,F=g(c),I=u?m===`cancel`?`cancelling`:m===`edit`?`editing`:`recording`:f?`processing`:null,re,L;t[6]!==I||t[7]!==F?(re=()=>{F(I)},L=[I,F],t[6]=I,t[7]=F,t[8]=re,t[9]=L):(re=t[8],L=t[9]),(0,k.useEffect)(re,L);let R,z;t[10]===F?(R=t[11],z=t[12]):(R=()=>()=>F(null),z=[F],t[10]=F,t[11]=R,t[12]=z),(0,k.useEffect)(R,z);let le;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>{y.current&&clearTimeout(y.current),y.current=null},t[13]=le):le=t[13];let B=g(le),ue;t[14]!==n||t[15]!==r?(ue=e=>{if(r||!(e instanceof HTMLElement))return null;let t=n.current?.querySelector(`textarea`);return!t||t.value!==``||t.disabled||t.readOnly||e!==t&&!e.closest(`[data-oc-composer-compact-surface]`)||e.closest(`button, [data-composer-action]`)?null:t},t[14]=n,t[15]=r,t[16]=ue):ue=t[16];let V=g(ue),de;t[17]!==B||t[18]!==D||t[19]!==P||t[20]!==f||t[21]!==O?(de=()=>{f||(B(),_.current=null,d(!1),h(`edit`),O===`failed`||O===`idle`&&P?D.discardFailedDictation():D.cancelDictation())},t[17]=B,t[18]=D,t[19]=P,t[20]=f,t[21]=O,t[22]=de):de=t[22];let H=g(de),fe;t[23]!==D||t[24]!==r||t[25]!==V||t[26]!==f||t[27]!==O?(fe=e=>{let t=e.target;r||f||O!==`idle`||_.current||!e.isPrimary||e.button!==0||!(t instanceof HTMLElement)||V(t)&&(e.preventDefault(),e.stopPropagation(),_.current={pointer:e.pointerId,x:e.clientX,y:e.clientY,intent:`edit`,started:!1},y.current=setTimeout(()=>{if(y.current=null,!_.current)return;let e=V(t);if(!e){_.current=null;return}e.blur(),_.current.started=!0,b.current=`insert`,d(!0),h(`edit`),D.startDictation()},300))},t[23]=D,t[24]=r,t[25]=V,t[26]=f,t[27]=O,t[28]=fe):fe=t[28];let U=g(fe),pe;t[29]===B?pe=t[30]:(pe=e=>{let t=_.current;if(!t||t.pointer!==e.pointerId)return;e.preventDefault(),e.stopPropagation();let n=e.clientX-t.x,r=x.current?.getBoundingClientRect(),i=r&&r.width>0&&e.clientY>=r.top&&e.clientY<=r.bottom?e.clientX<r.left+r.width/2?`cancel`:`send`:n<=-64?`cancel`:n>=64?`send`:`edit`;if(!t.started&&Math.hypot(n,t.y-e.clientY)>12){B(),_.current=null;return}t.started&&i!==t.intent&&(t.intent=i,h(i))},t[29]=B,t[30]=pe);let me=g(pe),he;t[31]!==H||t[32]!==B||t[33]!==n||t[34]!==D||t[35]!==P||t[36]!==o||t[37]!==N||t[38]!==O?(he=e=>{let t=_.current;if(!(!t||t.pointer!==e.pointerId)){if(e.preventDefault(),e.stopPropagation(),B(),P||O===`failed`){H();return}_.current=null,d(!1),t.started?t.intent===`cancel`?D.cancelDictation():(b.current=t.intent===`edit`?`insert`:`send`,o(N),p(!0),Promise.resolve(D.confirmDictation()).finally(()=>{p(!1),D.discardFailedDictation(),t.intent===`edit`&&n.current?.querySelector(`textarea`)?.focus()})):n.current?.querySelector(`textarea`)?.focus()}},t[31]=H,t[32]=B,t[33]=n,t[34]=D,t[35]=P,t[36]=o,t[37]=N,t[38]=O,t[39]=he):he=t[39];let ge=g(he),_e;t[40]===H?_e=t[41]:(_e=e=>{_.current?.pointer===e.pointerId&&H()},t[40]=H,t[41]=_e);let W=g(_e),ve;t[42]===V?ve=t[43]:(ve=e=>{V(e.target)&&e.preventDefault()},t[42]=V,t[43]=ve);let G=g(ve),ye,K;t[44]!==H||t[45]!==B||t[46]!==n||t[47]!==U||t[48]!==W||t[49]!==me||t[50]!==G||t[51]!==ge?(ye=()=>{let e=n.current;if(!e)return;let t=()=>{document.visibilityState===`hidden`&&H()};return e.addEventListener(`pointerdown`,U,!0),e.addEventListener(`touchstart`,G,{capture:!0,passive:!1}),window.addEventListener(`pointermove`,me,{capture:!0,passive:!1}),window.addEventListener(`pointerup`,ge,!0),window.addEventListener(`pointercancel`,W,!0),e.addEventListener(`contextmenu`,G,!0),e.addEventListener(`selectstart`,G,!0),window.addEventListener(`blur`,H),document.addEventListener(`visibilitychange`,t),()=>{B(),e.removeEventListener(`pointerdown`,U,!0),e.removeEventListener(`touchstart`,G,!0),window.removeEventListener(`pointermove`,me,!0),window.removeEventListener(`pointerup`,ge,!0),window.removeEventListener(`pointercancel`,W,!0),e.removeEventListener(`contextmenu`,G,!0),e.removeEventListener(`selectstart`,G,!0),window.removeEventListener(`blur`,H),document.removeEventListener(`visibilitychange`,t)}},K=[n,U,me,ge,W,H,B,G],t[44]=H,t[45]=B,t[46]=n,t[47]=U,t[48]=W,t[49]=me,t[50]=G,t[51]=ge,t[52]=ye,t[53]=K):(ye=t[52],K=t[53]),(0,k.useEffect)(ye,K);let q,be;if(t[54]!==H||t[55]!==r?(q=()=>{r&&H()},be=[r,H],t[54]=H,t[55]=r,t[56]=q,t[57]=be):(q=t[56],be=t[57]),(0,k.useEffect)(q,be),!u&&!f)return null;let J=Math.min(1,Math.max(0,ne))**.6,xe=!!P,Se=P?H:void 0,Ce;t[58]===J?Ce=t[59]:(Ce={...se,"--speech-energy":J},t[58]=J,t[59]=Ce);let we=Ce,Te;t[60]===Symbol.for(`react.memo_cache_sentinel`)?(Te=(0,j.jsx)(`div`,{className:`oc-speech-light-field`,"aria-hidden":`true`,children:[`ice`,`lilac`,`mint`,`blush`,`mid`,`core`].map(ce)}),t[60]=Te):Te=t[60];let Y=M||f,X;t[61]!==P||t[62]!==M||t[63]!==N||t[64]!==f||t[65]!==O||t[66]!==l?(X=P&&!f?(0,j.jsx)(`p`,{role:`alert`,className:`oc-speech-caption oc-speech-error`,children:P}):(0,j.jsx)(`div`,{role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`oc-speech-caption`,children:M||f?(0,j.jsx)(ie,{size:72}):N?(0,j.jsx)(`span`,{className:`oc-speech-interim`,children:N}):l(O===`uploading`?`chat.dictation.processing`:`chat.dictation.listening`)}),t[61]=P,t[62]=M,t[63]=N,t[64]=f,t[65]=O,t[66]=l,t[67]=X):X=t[67];let Z;t[68]!==Y||t[69]!==X?(Z=(0,j.jsx)(`div`,{className:`oc-speech-content`,"data-starting":Y,children:X}),t[68]=Y,t[69]=X,t[70]=Z):Z=t[70];let Q;t[71]!==S||t[72]!==C||t[73]!==w||t[74]!==u||t[75]!==m||t[76]!==l?(Q=u&&(0,j.jsx)(`div`,{className:`oc-speech-gesture-stage`,"aria-hidden":`true`,children:(0,j.jsxs)(`div`,{className:`oc-speech-gesture-surfaces`,children:[(0,j.jsx)(`div`,{className:`oc-speech-target-glass`,style:{clipPath:`url(#${C})`}}),(0,j.jsx)(`div`,{className:`oc-speech-target-glass`,style:{clipPath:`url(#${w})`}}),(0,j.jsxs)(`svg`,{className:`oc-speech-geometry`,viewBox:`0 0 400 226`,focusable:`false`,children:[(0,j.jsxs)(`defs`,{children:[(0,j.jsx)(`clipPath`,{id:C,clipPathUnits:`objectBoundingBox`,children:(0,j.jsx)(`path`,{transform:`scale(0.0025 0.004424778761)`,d:ae})}),(0,j.jsx)(`clipPath`,{id:w,clipPathUnits:`objectBoundingBox`,children:(0,j.jsx)(`path`,{transform:`scale(0.0025 0.004424778761)`,d:oe})}),(0,j.jsxs)(`linearGradient`,{id:S,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,j.jsx)(`stop`,{offset:`0%`,className:`oc-speech-arc-top`}),(0,j.jsx)(`stop`,{offset:`100%`,className:`oc-speech-arc-bottom`})]})]}),(0,j.jsxs)(`g`,{className:`oc-speech-targets`,ref:x,children:[(0,j.jsxs)(`g`,{className:`oc-speech-target oc-speech-target--cancel`,"data-active":m===`cancel`,children:[(0,j.jsx)(`path`,{d:ae}),(0,j.jsx)(`text`,{x:`95`,y:`68`,textAnchor:`middle`,dominantBaseline:`central`,transform:`rotate(-11 95 68)`,children:l(`chat.dictation.cancelGesture`)})]}),(0,j.jsxs)(`g`,{className:`oc-speech-target oc-speech-target--send`,"data-active":m===`send`,children:[(0,j.jsx)(`path`,{d:oe}),(0,j.jsx)(`text`,{x:`305`,y:`68`,textAnchor:`middle`,dominantBaseline:`central`,transform:`rotate(11 305 68)`,children:l(`chat.dictation.send`)})]})]}),(0,j.jsx)(`path`,{className:`oc-speech-hold-arc`,fill:`url(#${S})`,d:`M-50 186.987 A500 500 0 0 1 450 186.987 L450 300 H-50 Z`})]})]})}),t[71]=S,t[72]=C,t[73]=w,t[74]=u,t[75]=m,t[76]=l,t[77]=Q):Q=t[77];let $;return t[78]!==m||t[79]!==xe||t[80]!==Se||t[81]!==we||t[82]!==Z||t[83]!==Q?($=(0,te.createPortal)((0,j.jsxs)(`div`,{className:`oc-speech-overlay`,"data-intent":m,"data-error":xe,onClick:Se,style:we,children:[Te,Z,Q]}),document.body),t[78]=m,t[79]=xe,t[80]=Se,t[81]=we,t[82]=Z,t[83]=Q,t[84]=$):$=t[84],$}function ce(e){return(0,j.jsx)(`div`,{className:`oc-speech-reactor oc-speech-reactor--${e}`,children:(0,j.jsx)(`div`,{className:`oc-speech-light`})},e)}function le(e){let t=(0,A.c)(7),{available:n}=e,r=S(B),[i,o]=(0,k.useState)(null),s;t[0]!==n||t[1]!==r?(s=n&&r&&!a()&&E(),t[0]=n,t[1]=r,t[2]=s):s=t[2];let c=s,l=c?i:null,u;return t[3]!==c||t[4]!==r||t[5]!==l?(u={globallyEnabled:r,enabled:c,hint:l,onHintChange:o},t[3]=c,t[4]=r,t[5]=l,t[6]=u):u=t[6],u}function B(e){return e.dictationEnabled}var ue=k.createContext(null),V=e=>{let t=(0,A.c)(3),{actions:n,children:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,j.jsx)(ue.Provider,{value:n,children:r}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i},de=()=>k.useContext(ue),H=e=>e.nativeEvent.isComposing||e.nativeEvent.keyCode===229;function fe(e){let t=(0,A.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:r,children:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===r?a=t[5]:(a=y(`inline-flex shrink-0 items-center justify-center rounded-full bg-foreground text-background`,r),t[4]=r,t[5]=a);let o;return t[6]!==n||t[7]!==i||t[8]!==a?(o=(0,j.jsx)(`span`,{className:a,...i,"aria-hidden":!0,children:n}),t[6]=n,t[7]=i,t[8]=a,t[9]=o):o=t[9],o}function U(e){let t=(0,A.c)(7),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,j.jsx)(`span`,{"data-stop-glyph":`true`,className:`block size-[38%] rounded-[20%] bg-current`}),t[3]=i):i=t[3];let a;return t[4]!==n||t[5]!==r?(a=(0,j.jsx)(fe,{className:n,...r,children:i}),t[4]=n,t[5]=r,t[6]=a):a=t[6],a}function pe(e){let t=(0,A.c)(13),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:n,spinning:i,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a=i!==void 0&&i,o=a?`loader-4`:`arrow-up`,s=a?`size-[50%] animate-spin`:`size-[56%]`,c;t[4]===s?c=t[5]:(c=y(s),t[4]=s,t[5]=c);let l;t[6]!==o||t[7]!==c?(l=(0,j.jsx)(C,{name:o,weight:`medium`,className:c}),t[6]=o,t[7]=c,t[8]=l):l=t[8];let u;return t[9]!==n||t[10]!==r||t[11]!==l?(u=(0,j.jsx)(fe,{className:n,...r,children:l}),t[9]=n,t[10]=r,t[11]=l,t[12]=u):u=t[12],u}var me=k.forwardRef((e,t)=>{let n=(0,A.c)(19),r,i,a,o,s,c;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5],c=n[6]):({children:r,className:i,expanded:s,focusedTone:c,style:o,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s,n[6]=c);let l=s!==void 0&&s,u=c===void 0?`primary`:c,d=l&&`min-h-0 flex-1`,f=u===`info`?`focus-within:ring-[var(--status-info)]`:`focus-within:ring-primary/50`,p;n[7]!==i||n[8]!==d||n[9]!==f?(p=y(`relative flex flex-col overflow-visible border border-border/80 focus-within:ring-1`,d,f,i),n[7]=i,n[8]=d,n[9]=f,n[10]=p):p=n[10];let m;n[11]===o?m=n[12]:(m={borderRadius:`var(--radius-xl)`,backgroundColor:`var(--surface-subtle)`,...o},n[11]=o,n[12]=m);let h;return n[13]!==r||n[14]!==a||n[15]!==t||n[16]!==p||n[17]!==m?(h=(0,j.jsx)(`div`,{ref:t,className:p,style:m,...a,children:r}),n[13]=r,n[14]=a,n[15]=t,n[16]=p,n[17]=m,n[18]=h):h=n[18],h});me.displayName=`ChatComposerSurface`;var he=k.forwardRef((e,t)=>{let n=(0,A.c)(3),r;return n[0]!==e||n[1]!==t?(r=(0,j.jsx)(D,{ref:t,...e}),n[0]=e,n[1]=t,n[2]=r):r=n[2],r});he.displayName=`ChatPromptTextarea`;var ge=e=>{let t=(0,A.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:r,children:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===r?a=t[5]:(a=y(`flex shrink-0 items-center gap-2 bg-transparent px-2.5 py-1.5`,r),t[4]=r,t[5]=a);let o;return t[6]!==n||t[7]!==i||t[8]!==a?(o=(0,j.jsx)(`div`,{className:a,"data-chat-input-footer":`true`,...i,children:n}),t[6]=n,t[7]=i,t[8]=a,t[9]=o):o=t[9],o},_e=(e,t)=>{typeof e==`function`?e(t):e&&(e.current=t)},W=({value:e,attachments:t=[],disabled:n=!1,pending:r=!1,placeholder:i,isMobile:a=!1,onChange:o,onSubmit:s,onStop:c,onAddFiles:l,onRemoveAttachment:u,addFilesLabel:d,removeAttachmentLabel:f,fileAccept:p=`image/*`,sendLabel:m,stopLabel:_,hint:b,leftControls:S,rightControls:w,footerContent:T,inputHeader:E,attachmentContent:ee,highlightedContent:D,highlightRef:A,inputRef:te,textareaProps:M,textLayoutClassName:N,inputClassName:I,inputOuterClassName:L,inputStyle:ie,footerClassName:R,footerStyle:ae,contentClassName:oe,inputSectionClassName:se,autoResize:z=!0,disableInputWhilePending:ce=!0,layout:le=`stacked`,children:B,className:ue,expanded:V=!1,...de})=>{let{t:fe}=v(),W=le===`inline`,[ve,G]=k.useState(!1),[ye,K]=k.useState(!1),q=P(),be=t.length>0||ve,J=k.useRef(null),xe=k.useRef(null),Se=k.useRef(null),Ce=k.useId().replace(/:/g,``),we=g(()=>{if(!z||V||M?.fillContainer){W&&G(!1);return}let e=J.current;if(!e)return;e.style.height=W?`0px`:`auto`;let t=Number.parseFloat(window.getComputedStyle(e).maxHeight),n=W?Math.max(e.scrollHeight,48):e.scrollHeight,r=Number.isFinite(t)?Math.min(n,t):n;e.style.height=`${r}px`,e.style.overflowY=Number.isFinite(t)&&n>t?`auto`:`hidden`;let i=r>48;W&&G(e=>e===i?e:i)});k.useLayoutEffect(()=>{we()},[z,V,W,M?.fillContainer,e]),h(W&&z&&!V&&!M?.fillContainer?J:null,we);let Te=e=>{M?.onKeyDown?.(e),!(e.defaultPrevented||H(e))&&e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),!n&&(!r||!ce)&&s())},Y=e=>{l?.(e.target.files),e.target.value=``},X=g(()=>{J.current?.blur(),K(!0)}),Z=g(e=>{K(!1),requestAnimationFrame(()=>e?.click())}),Q=g(()=>{K(!1),requestAnimationFrame(()=>{(async()=>{if(!ne()){Se.current?.click();return}try{let e=await F(20);if(e===null){Se.current?.click();return}e.length>0&&l?.(e)}catch(e){console.error(`Native photo pick failed`,e),x.error(fe(`chat.chatInput.toast.attachFileFailed`))}})()})}),$=e.trim().length>0||t.length>0,Ee=t.filter(e=>e.mime.startsWith(`image/`)),De=t.filter(e=>!e.mime.startsWith(`image/`)),Oe=l?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`input`,{ref:xe,type:`file`,accept:p,multiple:!0,className:`hidden`,onChange:Y}),q?(0,j.jsx)(`input`,{ref:Se,type:`file`,accept:`image/*`,multiple:!0,className:`hidden`,onChange:Y}):null,(0,j.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-md text-foreground outline-none hover:bg-[var(--interactive-hover)] disabled:cursor-not-allowed disabled:opacity-40`,onClick:()=>q?X():xe.current?.click(),onMouseDown:a?e=>e.preventDefault():void 0,onPointerDownCapture:a?e=>e.preventDefault():void 0,disabled:n||r,"aria-label":d,children:(0,j.jsx)(C,{name:`attachment-2`,className:`size-[18px]`})})]}):null,ke=!n&&!r&&$,Ae=a?`size-6`:`size-full`,je=r&&c?(0,j.jsx)(`button`,{type:`button`,"data-composer-stop":`true`,className:`flex size-8 shrink-0 items-center justify-center rounded-full outline-none hover:opacity-80`,onClick:c,"aria-label":_,children:(0,j.jsx)(U,{className:Ae})}):(0,j.jsx)(`button`,{type:`submit`,"data-composer-send":`true`,"data-composer-circle":ke?`true`:void 0,className:y(`flex size-8 shrink-0 items-center justify-center outline-none`,ke?`rounded-full hover:opacity-80`:`rounded-md text-primary hover:bg-[var(--interactive-hover)] disabled:cursor-not-allowed disabled:opacity-30`),disabled:n||r||!$,"aria-label":m,children:ke?(0,j.jsx)(pe,{className:Ae}):(0,j.jsx)(C,{name:r?`loader-4`:`send-plane-2`,className:y(`size-4`,r&&`animate-spin`)})}),Me=r&&c?(0,j.jsx)(`button`,{type:`button`,"data-composer-stop":`true`,className:`flex size-8 shrink-0 items-center justify-center rounded-full outline-none hover:opacity-80`,onClick:c,"aria-label":_,children:(0,j.jsx)(U,{className:Ae})}):(0,j.jsx)(`button`,{type:`submit`,"data-composer-send":`true`,"data-composer-circle":`true`,className:y(`flex size-8 shrink-0 items-center justify-center rounded-full outline-none`,ke?`hover:opacity-80`:`cursor-not-allowed opacity-30`),disabled:n||r||!$,"aria-busy":r||void 0,"aria-label":m,children:(0,j.jsx)(pe,{className:Ae,spinning:r})}),Ne=W?Me:je,Pe=S===void 0?Oe:S;return(0,j.jsxs)(me,{className:ue,expanded:V,...de,children:[B,(0,j.jsxs)(`div`,{"data-composer-content":`true`,"data-composer-layout":le,className:y(`relative flex min-h-0`,W?y(`min-h-12 flex-row`,be?`items-end`:`items-center`):`flex-col`,V&&`flex-1`,oe),children:[W&&Pe?(0,j.jsx)(`div`,{className:`flex h-12 shrink-0 items-center pl-1.5`,"data-composer-inline-attach":`true`,children:Pe}):null,(0,j.jsxs)(`div`,{className:y(`overflow-hidden`,W&&`min-w-0 flex-1`,V&&`flex min-h-0 flex-1 flex-col`,se),children:[E,ee,Ee.length>0?(0,j.jsx)(`div`,{className:`flex gap-2 overflow-x-auto px-3 pt-3`,"data-chat-prompt-attachments":`true`,children:Ee.map(e=>(0,j.jsxs)(`div`,{className:`group relative shrink-0`,children:[(0,j.jsx)(`span`,{className:`block size-16`,children:(0,j.jsx)(O,{fill:!0,src:e.url,alt:e.name,className:`size-16 rounded-lg border border-border object-cover`})}),u?(0,j.jsx)(`button`,{type:`button`,className:`absolute -right-1 -top-1 flex size-6 items-center justify-center rounded-full border border-border bg-[var(--surface-elevated)] shadow-sm hover:bg-[var(--interactive-hover)]`,onClick:()=>u(e.id),"aria-label":f,children:(0,j.jsx)(C,{name:`close`,className:`size-3`})}):null]},e.id))}):null,De.length>0?(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2 px-3 pt-3`,"data-chat-prompt-file-attachments":`true`,children:De.map(e=>(0,j.jsxs)(`div`,{className:`relative flex max-w-[12rem] items-center gap-1.5 rounded-lg border border-border bg-[var(--surface-elevated)] px-2 py-1`,children:[(0,j.jsx)(C,{name:`file-text`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,j.jsx)(`span`,{className:`min-w-0 truncate typography-micro`,children:e.name}),u?(0,j.jsx)(`button`,{type:`button`,className:`flex size-5 shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-[var(--interactive-hover)]`,onClick:()=>u(e.id),"aria-label":f,children:(0,j.jsx)(C,{name:`close`,className:`size-3`})}):null]},e.id))}):null,(0,j.jsxs)(`div`,{className:y(`relative overflow-hidden`,W&&y(`flex min-h-12`,ve?`items-end`:`items-center`),V&&`flex min-h-0 flex-1 flex-col`),"data-composer-input-shell":`true`,children:[D?(0,j.jsx)(`div`,{ref:A,"aria-hidden":!0,"data-composer-highlight":`true`,className:y(`pointer-events-none absolute inset-0 z-0 rounded-b-none`,N,I),children:D}):null,(0,j.jsx)(he,{...M,simple:!0,fillContainer:!W&&M?.fillContainer,ref:e=>{J.current=e,_e(te,e)},"data-chat-input":`true`,value:e,onChange:e=>o(e.target.value,e),onKeyDown:Te,disabled:n||r&&ce,placeholder:i,enterKeyHint:a?`send`:M?.enterKeyHint,outerClassName:y(`ring-0 bg-transparent shadow-none hover:bg-transparent focus-within:ring-0`,W&&`flex-none`,V&&`min-h-0 flex-1`,L),className:y(`relative z-10 resize-none overflow-y-hidden appearance-none border-0 bg-transparent typography-markdown hover:border-transparent md:typography-ui-label`,W?`field-sizing-fixed min-h-12 max-h-32 px-3 py-3 leading-6`:`min-h-[52px] max-h-40 rounded-b-none px-3 pb-2 pt-4`,N,I,D&&`text-transparent caret-[var(--surface-foreground)]`),style:ie,rows:M?.rows??1})]})]}),W?(0,j.jsx)(`div`,{className:y(`flex h-12 shrink-0 items-center pr-1.5`,R),style:ae,"data-composer-inline-send":`true`,children:w??Ne}):(0,j.jsx)(ge,{className:R,style:ae,children:T??(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`div`,{className:`flex items-center gap-1.5`,children:S??Oe}),b?(0,j.jsx)(`div`,{className:`min-w-0 flex-1 truncate typography-micro text-muted-foreground`,children:b}):(0,j.jsx)(`div`,{className:`flex-1`}),(0,j.jsx)(`div`,{className:`flex items-center gap-1.5`,children:w??Ne})]})})]}),q&&l?(0,j.jsx)(re,{id:`mobile-attach-pick-${Ce}`,open:ye,onOpenChange:e=>{e||K(!1)},onPickPhotos:Q,onPickFiles:()=>Z(xe.current)}):null]})},ve={dictation:102,mentionFile:100,mentionAgent:100,mentionSession:100,mentionCommand:100,mentionPaste:100,code:90,codeFence:90,link:80,linkUrl:78,heading:70,blockquote:40,listMarker:35,marker:10},G={dictation:`text-foreground underline decoration-current underline-offset-4`,mentionFile:`text-[var(--primary)]`,mentionAgent:`text-[var(--primary)]`,mentionSession:`text-[var(--primary)]`,mentionCommand:`text-[var(--primary)]`,mentionPaste:`text-[var(--primary)]`,code:`rounded-[3px] bg-[var(--surface-subtle)] text-[var(--markdown-inline-code)]`,codeFence:`bg-[var(--surface-subtle)] text-[var(--markdown-inline-code)]`,link:`text-[var(--status-info)] underline`,linkUrl:`text-muted-foreground`,heading:`text-[var(--syntax-keyword)]`,blockquote:`text-muted-foreground`,listMarker:`text-[var(--syntax-keyword)]`,marker:`text-muted-foreground`},ye=`text-foreground`;function K(e,t){if(!e||t.length===0)return null;let n=e.length,r=new Set([0,n]);for(let e of t)e.start>0&&e.start<n&&r.add(e.start),e.end>0&&e.end<n&&r.add(e.end);let i=[...r].sort((e,t)=>e-t),a=t.map((e,t)=>({range:e,index:t})).filter(e=>e.range.end>e.range.start).sort((e,t)=>e.range.start-t.range.start),s=[],c=[],l=0;for(let t=0;t<i.length-1;t+=1){let n=i[t],r=i[t+1];if(r<=n)continue;for(;l<a.length&&a[l].range.start<=n;)c.push(a[l]),l+=1;for(let e=c.length-1;e>=0;--e)c[e].range.end<=n&&c.splice(e,1);let u=null,d=-1,f=1/0;for(let{range:e,index:t}of c){let n=e.priority??ve[e.style];(n>d||n===d&&t<f)&&(d=n,f=t,u=e)}let p=u?u.className??G[u.style]:ye,m=e.slice(n,r),h=u?.visual,g=u?.skillName,_=s[s.length-1];_&&_.className===p&&o(_.visual,h)&&_.skillName===g?_.text+=m:s.push({text:m,className:p,visual:h,skillName:g})}return s.length>0?s:null}function q(e,t){let n=new Set(Array.from(t,e=>e.toLowerCase())),r=[];for(let t of[/(^|\s)\/(\u2003)?([a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?)/gi,/(^|\s)@(\u2003)?([a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?)(?=$|\s|[),.;:!?])/gi]){let i;for(;(i=t.exec(e))!==null;){let e=i[2]??``,t=i[3]||``;if(!n.has(t.toLowerCase()))continue;let a=i.index+(i[1]?.length??0);r.push({start:a,end:a+1+e.length+t.length,name:t})}}return r}function be(e,t,n){if(e===t){let t=n.find(t=>e>t.start&&e<t.end);return t?{start:t.start,end:t.end}:null}let r=n.filter(n=>n.start<t&&n.end>e);return r.length===0?null:{start:Math.min(e,...r.map(e=>e.start)),end:Math.max(t,...r.map(e=>e.end))}}function J(e,t,n){let r=q(e,t),i=Math.max(0,Math.min(n.selectionStart,e.length)),a=Math.max(i,Math.min(n.selectionEnd,e.length)),o=i,s=a;if(i===a)if(n.altKey)if(n.key===`Backspace`){for(;o>0&&/\s/.test(e[o-1]);)--o;for(;o>0&&!/\s/.test(e[o-1]);)--o}else{for(;s<e.length&&/\s/.test(e[s]);)s+=1;for(;s<e.length&&!/\s/.test(e[s]);)s+=1}else n.key===`Backspace`?o=Math.max(0,i-1):s=Math.min(e.length,i+1);if(o===s)return null;let c=r.filter(e=>e.start<s&&e.end>o);if(c.length===0)return null;let l=Math.min(o,...c.map(e=>e.start)),u=Math.max(s,...c.map(e=>e.end));return u<e.length&&/\s/.test(e[u])&&(l===0||/\s/.test(e[l-1]))?u+=1:u===e.length&&l>0&&/\s/.test(e[l-1])&&--l,{text:`${e.slice(0,l)}${e.slice(u)}`,caret:l,removedSkillNames:c.map(e=>e.name)}}function xe(e){return e.map(e=>({start:e.start,end:e.end,style:e.kind===`file`?`mentionFile`:e.kind===`session`?`mentionSession`:`mentionAgent`,visual:e.kind===`session`&&e.label?t({trigger:`@`,icon:`chat-thread`,label:e.label},i({trigger:`@`,icon:`chat-thread`,label:e.label})):void 0}))}function Se(e){let t=(0,A.c)(28),{visual:i,text:a}=e,o=i.trigger.length,s=o+i.label.length,c=s+(i.suffix?.length??0),l;t[0]!==s||t[1]!==o||t[2]!==a?(l=a.slice(o,Math.min(s,a.length)),t[0]=s,t[1]=o,t[2]=a,t[3]=l):l=t[3];let u=l,d;t[4]!==s||t[5]!==c||t[6]!==a?(d=a.slice(s,Math.min(c,a.length)),t[4]=s,t[5]=c,t[6]=a,t[7]=d):d=t[7];let f=d,p;t[8]!==c||t[9]!==a?(p=a.slice(Math.min(c,a.length)),t[8]=c,t[9]=a,t[10]=p):p=t[10];let m=p,h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h={left:n,right:n},t[11]=h):h=t[11];let g=i.icon,_;t[12]===g?_=t[13]:(_=(0,j.jsx)(`span`,{className:`pointer-events-none absolute inset-y-0 inline-flex items-center justify-center`,style:h,children:(0,j.jsx)(C,{name:g,className:`${r} shrink-0 text-[var(--primary)]`,"aria-hidden":`true`})}),t[12]=g,t[13]=_);let v;t[14]!==_||t[15]!==i.trigger?(v=(0,j.jsxs)(`span`,{className:`relative inline-block align-baseline text-transparent leading-none`,children:[i.trigger,_]}),t[14]=_,t[15]=i.trigger,t[16]=v):v=t[16];let y;t[17]===u?y=t[18]:(y=(0,j.jsx)(`span`,{children:u}),t[17]=u,t[18]=y);let b;t[19]===f?b=t[20]:(b=f?(0,j.jsx)(`span`,{className:`text-transparent`,children:f}):null,t[19]=f,t[20]=b);let x;t[21]===m?x=t[22]:(x=m?(0,j.jsx)(`span`,{className:`text-transparent`,children:m}):null,t[21]=m,t[22]=x);let S;return t[23]!==x||t[24]!==v||t[25]!==y||t[26]!==b?(S=(0,j.jsxs)(j.Fragment,{children:[v,y,b,x]}),t[23]=x,t[24]=v,t[25]=y,t[26]=b,t[27]=S):S=t[27],S}var Ce=e=>({text:e.text,references:e.references.map(e=>({...e}))}),we=e=>e.map(e=>({...e,range:{...e.range}})),Te=(e,t)=>e.text===t.text&&JSON.stringify(e.references)===JSON.stringify(t.references),Y=(e,t,n)=>({document:Ce(e),mentions:we(t),selection:{...n}}),X=()=>({undo:[],redo:[]}),Z=(e,t)=>({undo:[...e.undo,t].slice(-100),redo:[]}),Q=(e,t)=>{let n=e.undo.at(-1);return!n||!Te(n.after.document,t)?null:{history:{undo:e.undo.slice(0,-1),redo:[...e.redo,n]},snapshot:Y(n.before.document,n.before.mentions,n.before.selection)}},$=(e,t)=>{let n=e.redo.at(-1);return!n||!Te(n.before.document,t)?null:{history:{undo:[...e.undo,n],redo:e.redo.slice(0,-1)},snapshot:Y(n.after.document,n.after.mentions,n.after.selection)}},Ee=e=>{if(e.altKey||e.ctrlKey||e.metaKey)return!1;switch(e.key){case`ArrowUp`:case`PageUp`:case`Home`:return!0;default:return!1}},De=(e,t,n)=>{let r=t instanceof Element?t:t instanceof Node?t.parentElement:null;for(;r&&r!==e;){if(r instanceof HTMLElement){let e=r.scrollHeight-r.clientHeight;if(e>1&&(n===`up`?r.scrollTop>0:r.scrollTop<e-1))return!0}r=r.parentElement}return!1},Oe=(e,t)=>De(e,t,`up`),ke=(e,t)=>De(e,t,`down`),Ae=e=>{let t=(0,A.c)(15),{scrollRef:n,enabled:r,onUpwardIntent:i}=e,a=r===void 0||r,o=k.useRef(null),s;t[0]===i?s=t[1]:(s=()=>{i()},t[0]=i,t[1]=s);let c=g(s),l;t[2]!==c||t[3]!==n?(l=e=>{let t=n.current;t&&(e.deltaY>=0||t instanceof HTMLElement&&(Oe(t,e.target)||c()))},t[2]=c,t[3]=n,t[4]=l):l=t[4];let u=g(l),d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{let t=e.touches.item(0);o.current=t?t.clientY:null},t[5]=d):d=t[5];let f=g(d),p;t[6]!==c||t[7]!==n?(p=e=>{let t=n.current,r=e.touches.item(0);if(!r){o.current=null;return}let i=o.current;o.current=r.clientY,i!==null&&(r.clientY-i<=2||!t||!(t instanceof HTMLElement)||Oe(t,e.target)||c())},t[6]=c,t[7]=n,t[8]=p):p=t[8];let m=g(p),h;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>{o.current=null},t[9]=h):h=t[9];let v=g(h),y;t[10]===c?y=t[11]:(y=e=>{Ee(e)&&c()},t[10]=c,t[11]=y);let b=g(y),[x,S]=k.useState(null),C;t[12]===n?C=t[13]:(C=()=>{let e=n.current??null;S(t=>t===e?t:e)},t[12]=n,t[13]=C),k.useEffect(C);let w=a&&x?x:je,T;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(T={passive:!0},t[14]=T):T=t[14];let E=T;_(`wheel`,u,w,E),_(`touchstart`,f,w,E),_(`touchmove`,m,w,E),_(`touchend`,v,w,E),_(`touchcancel`,v,w,E),_(`keydown`,b,w)};function je(){}var Me=e=>{if(typeof e!=`number`||!Number.isFinite(e))return;let t=Math.trunc(e);return t>=0?t:void 0},Ne=e=>{if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.summary;return!t||typeof t!=`object`||Array.isArray(t)?null:t},Pe=e=>{let t=Me(e);return t!==void 0&&t>0?t:void 0};function Fe(e){let t=Ne(e);if(!t)return null;let n=Pe(t.additions),r=Pe(t.deletions),i=Pe(t.files)??Pe(t.diffCount);return n===void 0&&r===void 0&&i===void 0?null:{...n===void 0?{}:{additions:n},...r===void 0?{}:{deletions:r},...i===void 0?{}:{files:i}}}function Ie(e){if(!e)return null;let t=[];return e.additions!==void 0&&e.additions>0&&t.push(`+${e.additions}`),e.deletions!==void 0&&e.deletions>0&&t.push(`−${e.deletions}`),t.length>0?t.join(` `):null}function Le(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e,n=typeof t.providerID==`string`?t.providerID.trim():``,r=typeof t.modelID==`string`?t.modelID.trim():``;if(n&&r)return`${n}/${r}`;let i=t.model;if(typeof i==`string`&&i.trim())return i.trim();if(i&&typeof i==`object`&&!Array.isArray(i)){let e=i,t=typeof e.providerID==`string`?e.providerID.trim():typeof e.provider==`string`?e.provider.trim():``,n=typeof e.modelID==`string`?e.modelID.trim():typeof e.id==`string`?e.id.trim():``;if(t&&n)return`${t}/${n}`}return null}function Re(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e;if(typeof t.branch==`string`&&t.branch.trim())return t.branch.trim();let n=t.project;if(n&&typeof n==`object`&&!Array.isArray(n)){let e=n.branch;if(typeof e==`string`&&e.trim())return e.trim()}return null}export{ne as A,H as C,z as D,le as E,P as M,ie as O,U as S,de as T,xe as _,Ee as a,W as b,Ae as c,Z as d,$ as f,q as g,K as h,Le as i,F as j,re as k,Y as l,Se as m,Re as n,ke as o,Q as p,Fe as r,Oe as s,Ie as t,X as u,be as v,V as w,pe as x,J as y};
|
|
1
|
+
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{_t as t,dt as n,ft as r,gt as i,ln as a,yt as o}from"./persistence-BKszKaoQ.js";import{it as s,nt as c,rt as l}from"./vendor-base-ui-CdzJ6My_.js";import{n as u,t as d}from"./platform-CgwxwfA4.js";import{n as f}from"./vendor-react-BP2cRVqX.js";import{a as p,n as m}from"./vendor-aparajita-capacitor-secure-storage-xol_6BsB.js";import{f as h,n as g,r as _}from"./vendor-reactuses-core-BpfIZ1tg.js";import{f as v,r as y,t as b}from"./button-CWSs9Baz.js";import{Ir as x,Sa as S}from"./useMobileNavigationStore-CuOiHjP1.js";import{n as C}from"./Icon-BCFeHDWx.js";import{v as w}from"./image-loading-Bj11k4gM.js";import{a as T,o as E}from"./dropdown-menu.styles-BNwZmBRp.js";import{i as ee,t as D}from"./textarea-ClV5sMS-.js";import{t as O}from"./LoadingImage-BAT9D9wN.js";var k=e(s(),1),A=f(),j=l(),te=e(c(),1),M=p(`OpenChamberMedia`);function N(e){return e.platform===`android`||/Android/i.test(e.userAgent)||e.userAgentDataPlatform===`Android`}function P(){if(typeof window>`u`)return!1;let e=navigator.userAgentData;return N({platform:d(),userAgent:navigator.userAgent||``,userAgentDataPlatform:e?.platform})}function ne(){return u()&&m.getPlatform()===`android`&&m.isPluginAvailable(`OpenChamberMedia`)}async function F(e){if(!ne())return null;let t=await M.pickMedia({limit:e});if(t.cancelled)return[];let n=[];for(let e of t.files){let t=await fetch(m.convertFileSrc(e.path));if(!t.ok)throw Error(`Native media fetch failed (${t.status})`);let r=await t.blob();n.push(new File([r],e.name,{type:e.mimeType}))}return n}var I=`h-auto min-h-12 w-full justify-start gap-3 rounded-none supports-[corner-shape:squircle]:rounded-none px-4 border-b border-[var(--surface-subtle)] last:border-b-0`,re=e=>{let t=(0,A.c)(38),{id:n,open:r,onOpenChange:i,onPickPhotos:a,onPickFiles:o}=e,{t:s}=v(),c;t[0]===s?c=t[1]:(c=s(`chat.chatInput.actions.addAttachment`),t[0]=s,t[1]=c);let l;t[2]===c?l=t[3]:(l=(0,j.jsx)(`h2`,{className:`truncate typography-ui-label font-semibold`,children:c}),t[2]=c,t[3]=l);let u;t[4]===s?u=t[5]:(u=s(`chat.chatInput.actions.addAttachment`),t[4]=s,t[5]=u);let d;t[6]===s?d=t[7]:(d=s(`mobile.surface.closeAria`),t[6]=s,t[7]=d);let f;t[8]===s?f=t[9]:(f=s(`mobile.sessions.sheet.resizeAria`),t[8]=s,t[9]=f);let p;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,j.jsx)(C,{name:`file-image`,className:`size-5 flex-shrink-0 text-muted-foreground`}),t[10]=p):p=t[10];let m;t[11]===s?m=t[12]:(m=s(`chat.chatInput.actions.attachPhotos`),t[11]=s,t[12]=m);let h;t[13]===m?h=t[14]:(h=(0,j.jsx)(`span`,{className:`truncate`,children:m}),t[13]=m,t[14]=h);let g;t[15]!==a||t[16]!==h?(g=(0,j.jsxs)(b,{type:`button`,variant:`ghost`,size:`lg`,className:I,"data-mobile-press-feedback":`none`,onClick:a,children:[p,h]}),t[15]=a,t[16]=h,t[17]=g):g=t[17];let _;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(_=(0,j.jsx)(C,{name:`attachment-2`,className:`size-5 flex-shrink-0 text-muted-foreground`}),t[18]=_):_=t[18];let y;t[19]===s?y=t[20]:(y=s(`chat.chatInput.actions.attachFiles`),t[19]=s,t[20]=y);let x;t[21]===y?x=t[22]:(x=(0,j.jsx)(`span`,{className:`truncate`,children:y}),t[21]=y,t[22]=x);let S;t[23]!==o||t[24]!==x?(S=(0,j.jsxs)(b,{type:`button`,variant:`ghost`,size:`lg`,className:I,"data-mobile-press-feedback":`none`,onClick:o,children:[_,x]}),t[23]=o,t[24]=x,t[25]=S):S=t[25];let w;t[26]!==S||t[27]!==g?(w=(0,j.jsx)(`div`,{className:`flex min-h-0 flex-col overflow-y-auto overscroll-contain px-3 pb-3`,children:(0,j.jsxs)(`div`,{className:`overflow-hidden rounded-2xl bg-[var(--surface-muted)]`,"data-page-scroll-lock":`true`,children:[g,S]})}),t[26]=S,t[27]=g,t[28]=w):w=t[28];let T;return t[29]!==n||t[30]!==i||t[31]!==r||t[32]!==w||t[33]!==l||t[34]!==u||t[35]!==d||t[36]!==f?(T=(0,j.jsx)(ee,{id:n,open:r,onOpenChange:i,title:l,ariaLabel:u,closeAriaLabel:d,resizeAriaLabel:f,fitContent:!0,children:w}),t[29]=n,t[30]=i,t[31]=r,t[32]=w,t[33]=l,t[34]=u,t[35]=d,t[36]=f,t[37]=T):T=t[37],T},L={glyph:`_glyph_1xs2e_1`,lens:`_lens_1xs2e_12`,shape:`_shape_1xs2e_21`,revolve:`_revolve_1xs2e_1`};function ie(e){let t=(0,A.c)(18),{decorative:n,size:r}=e,i=n!==void 0&&n,a=r===void 0?20:r,{t:o}=v(),s;t[0]===a?s=t[1]:(s={width:a,height:a},t[0]=a,t[1]=s);let c=i||void 0,l=i?void 0:`img`,u;t[2]!==i||t[3]!==o?(u=i?void 0:o(`common.loading`),t[2]=i,t[3]=o,t[4]=u):u=t[4];let d=`scale(${a/28})`,f;t[5]===d?f=t[6]:(f={transform:d},t[5]=d,t[6]=f);let p,m,h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,j.jsx)(`span`,{className:L.shape}),p=(0,j.jsx)(`span`,{className:L.shape}),m=(0,j.jsx)(`span`,{className:L.shape}),t[7]=p,t[8]=m,t[9]=h):(p=t[7],m=t[8],h=t[9]);let g;t[10]===f?g=t[11]:(g=(0,j.jsxs)(`span`,{className:L.lens,style:f,children:[h,p,m]}),t[10]=f,t[11]=g);let _;return t[12]!==g||t[13]!==s||t[14]!==c||t[15]!==l||t[16]!==u?(_=(0,j.jsx)(`span`,{"data-dictation-loading":!0,className:L.glyph,style:s,"aria-hidden":c,role:l,"aria-label":u,children:g}),t[12]=g,t[13]=s,t[14]=c,t[15]=l,t[16]=u,t[17]=_):_=t[17],_}var R=w(!1).colors,ae=`M-50 74.564 A600 600 0 0 1 147.707 22.283 A38 38 0 0 1 154.330 97.994 A524 524 0 0 0 -18.333 143.653 Z`,oe=`M450 74.564 A600 600 0 0 0 252.293 22.283 A38 38 0 0 0 245.670 97.994 A524 524 0 0 1 418.333 143.653 Z`,se={colorScheme:`light`,"--surface-background":R.surface.background,"--surface-foreground":R.surface.foreground,"--primary-base":R.primary.base,"--foreground":R.surface.background,"--interactive-hover":`color-mix(in srgb, var(--surface-background) 12%, transparent)`,"--interactive-active":`color-mix(in srgb, var(--surface-background) 20%, transparent)`,"--ring":R.interactive.focusRing,"--status-error":R.status.error};function z(e){let t=(0,A.c)(85),{containerRef:n,disabled:r,onInsert:i,onSend:a,onRelease:o,onError:s,onHintChange:c}=e,{t:l}=v(),[u,d]=(0,k.useState)(!1),[f,p]=(0,k.useState)(!1),[m,h]=(0,k.useState)(`edit`),_=(0,k.useRef)(null),y=(0,k.useRef)(null),b=(0,k.useRef)(`insert`),x=(0,k.useRef)(null),S=(0,k.useId)(),C=(0,k.useId)(),w=(0,k.useId)(),E;t[0]!==i||t[1]!==a?(E=e=>b.current===`send`?a(e):i(e),t[0]=i,t[1]=a,t[2]=E):E=t[2];let ee;t[3]!==s||t[4]!==E?(ee={onTranscript:E,onError:s},t[3]=s,t[4]=E,t[5]=ee):ee=t[5];let D=T(ee),{status:O,isStarting:M,partialTranscript:N,error:P,volume:ne}=D,F=g(c),I=u?m===`cancel`?`cancelling`:m===`edit`?`editing`:`recording`:f?`processing`:null,re,L;t[6]!==I||t[7]!==F?(re=()=>{F(I)},L=[I,F],t[6]=I,t[7]=F,t[8]=re,t[9]=L):(re=t[8],L=t[9]),(0,k.useEffect)(re,L);let R,z;t[10]===F?(R=t[11],z=t[12]):(R=()=>()=>F(null),z=[F],t[10]=F,t[11]=R,t[12]=z),(0,k.useEffect)(R,z);let le;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(le=()=>{y.current&&clearTimeout(y.current),y.current=null},t[13]=le):le=t[13];let B=g(le),ue;t[14]!==n||t[15]!==r?(ue=e=>{if(r||!(e instanceof HTMLElement))return null;let t=n.current?.querySelector(`textarea`);return!t||t.value!==``||t.disabled||t.readOnly||e!==t&&!e.closest(`[data-oc-composer-compact-surface]`)||e.closest(`button, [data-composer-action]`)?null:t},t[14]=n,t[15]=r,t[16]=ue):ue=t[16];let V=g(ue),de;t[17]!==B||t[18]!==D||t[19]!==P||t[20]!==f||t[21]!==O?(de=()=>{f||(B(),_.current=null,d(!1),h(`edit`),O===`failed`||O===`idle`&&P?D.discardFailedDictation():D.cancelDictation())},t[17]=B,t[18]=D,t[19]=P,t[20]=f,t[21]=O,t[22]=de):de=t[22];let H=g(de),fe;t[23]!==D||t[24]!==r||t[25]!==V||t[26]!==f||t[27]!==O?(fe=e=>{let t=e.target;r||f||O!==`idle`||_.current||!e.isPrimary||e.button!==0||!(t instanceof HTMLElement)||V(t)&&(e.preventDefault(),e.stopPropagation(),_.current={pointer:e.pointerId,x:e.clientX,y:e.clientY,intent:`edit`,started:!1},y.current=setTimeout(()=>{if(y.current=null,!_.current)return;let e=V(t);if(!e){_.current=null;return}e.blur(),_.current.started=!0,b.current=`insert`,d(!0),h(`edit`),D.startDictation()},300))},t[23]=D,t[24]=r,t[25]=V,t[26]=f,t[27]=O,t[28]=fe):fe=t[28];let U=g(fe),pe;t[29]===B?pe=t[30]:(pe=e=>{let t=_.current;if(!t||t.pointer!==e.pointerId)return;e.preventDefault(),e.stopPropagation();let n=e.clientX-t.x,r=x.current?.getBoundingClientRect(),i=r&&r.width>0&&e.clientY>=r.top&&e.clientY<=r.bottom?e.clientX<r.left+r.width/2?`cancel`:`send`:n<=-64?`cancel`:n>=64?`send`:`edit`;if(!t.started&&Math.hypot(n,t.y-e.clientY)>12){B(),_.current=null;return}t.started&&i!==t.intent&&(t.intent=i,h(i))},t[29]=B,t[30]=pe);let me=g(pe),he;t[31]!==H||t[32]!==B||t[33]!==n||t[34]!==D||t[35]!==P||t[36]!==o||t[37]!==N||t[38]!==O?(he=e=>{let t=_.current;if(!(!t||t.pointer!==e.pointerId)){if(e.preventDefault(),e.stopPropagation(),B(),P||O===`failed`){H();return}_.current=null,d(!1),t.started?t.intent===`cancel`?D.cancelDictation():(b.current=t.intent===`edit`?`insert`:`send`,o(N),p(!0),Promise.resolve(D.confirmDictation()).finally(()=>{p(!1),D.discardFailedDictation(),t.intent===`edit`&&n.current?.querySelector(`textarea`)?.focus()})):n.current?.querySelector(`textarea`)?.focus()}},t[31]=H,t[32]=B,t[33]=n,t[34]=D,t[35]=P,t[36]=o,t[37]=N,t[38]=O,t[39]=he):he=t[39];let ge=g(he),_e;t[40]===H?_e=t[41]:(_e=e=>{_.current?.pointer===e.pointerId&&H()},t[40]=H,t[41]=_e);let W=g(_e),ve;t[42]===V?ve=t[43]:(ve=e=>{V(e.target)&&e.preventDefault()},t[42]=V,t[43]=ve);let G=g(ve),ye,K;t[44]!==H||t[45]!==B||t[46]!==n||t[47]!==U||t[48]!==W||t[49]!==me||t[50]!==G||t[51]!==ge?(ye=()=>{let e=n.current;if(!e)return;let t=()=>{document.visibilityState===`hidden`&&H()};return e.addEventListener(`pointerdown`,U,!0),e.addEventListener(`touchstart`,G,{capture:!0,passive:!1}),window.addEventListener(`pointermove`,me,{capture:!0,passive:!1}),window.addEventListener(`pointerup`,ge,!0),window.addEventListener(`pointercancel`,W,!0),e.addEventListener(`contextmenu`,G,!0),e.addEventListener(`selectstart`,G,!0),window.addEventListener(`blur`,H),document.addEventListener(`visibilitychange`,t),()=>{B(),e.removeEventListener(`pointerdown`,U,!0),e.removeEventListener(`touchstart`,G,!0),window.removeEventListener(`pointermove`,me,!0),window.removeEventListener(`pointerup`,ge,!0),window.removeEventListener(`pointercancel`,W,!0),e.removeEventListener(`contextmenu`,G,!0),e.removeEventListener(`selectstart`,G,!0),window.removeEventListener(`blur`,H),document.removeEventListener(`visibilitychange`,t)}},K=[n,U,me,ge,W,H,B,G],t[44]=H,t[45]=B,t[46]=n,t[47]=U,t[48]=W,t[49]=me,t[50]=G,t[51]=ge,t[52]=ye,t[53]=K):(ye=t[52],K=t[53]),(0,k.useEffect)(ye,K);let q,be;if(t[54]!==H||t[55]!==r?(q=()=>{r&&H()},be=[r,H],t[54]=H,t[55]=r,t[56]=q,t[57]=be):(q=t[56],be=t[57]),(0,k.useEffect)(q,be),!u&&!f)return null;let J=Math.min(1,Math.max(0,ne))**.6,xe=!!P,Se=P?H:void 0,Ce;t[58]===J?Ce=t[59]:(Ce={...se,"--speech-energy":J},t[58]=J,t[59]=Ce);let we=Ce,Te;t[60]===Symbol.for(`react.memo_cache_sentinel`)?(Te=(0,j.jsx)(`div`,{className:`oc-speech-light-field`,"aria-hidden":`true`,children:[`ice`,`lilac`,`mint`,`blush`,`mid`,`core`].map(ce)}),t[60]=Te):Te=t[60];let Y=M||f,X;t[61]!==P||t[62]!==M||t[63]!==N||t[64]!==f||t[65]!==O||t[66]!==l?(X=P&&!f?(0,j.jsx)(`p`,{role:`alert`,className:`oc-speech-caption oc-speech-error`,children:P}):(0,j.jsx)(`div`,{role:`status`,"aria-live":`polite`,"aria-atomic":`true`,className:`oc-speech-caption`,children:M||f?(0,j.jsx)(ie,{size:72}):N?(0,j.jsx)(`span`,{className:`oc-speech-interim`,children:N}):l(O===`uploading`?`chat.dictation.processing`:`chat.dictation.listening`)}),t[61]=P,t[62]=M,t[63]=N,t[64]=f,t[65]=O,t[66]=l,t[67]=X):X=t[67];let Z;t[68]!==Y||t[69]!==X?(Z=(0,j.jsx)(`div`,{className:`oc-speech-content`,"data-starting":Y,children:X}),t[68]=Y,t[69]=X,t[70]=Z):Z=t[70];let Q;t[71]!==S||t[72]!==C||t[73]!==w||t[74]!==u||t[75]!==m||t[76]!==l?(Q=u&&(0,j.jsx)(`div`,{className:`oc-speech-gesture-stage`,"aria-hidden":`true`,children:(0,j.jsxs)(`div`,{className:`oc-speech-gesture-surfaces`,children:[(0,j.jsx)(`div`,{className:`oc-speech-target-glass`,style:{clipPath:`url(#${C})`}}),(0,j.jsx)(`div`,{className:`oc-speech-target-glass`,style:{clipPath:`url(#${w})`}}),(0,j.jsxs)(`svg`,{className:`oc-speech-geometry`,viewBox:`0 0 400 226`,focusable:`false`,children:[(0,j.jsxs)(`defs`,{children:[(0,j.jsx)(`clipPath`,{id:C,clipPathUnits:`objectBoundingBox`,children:(0,j.jsx)(`path`,{transform:`scale(0.0025 0.004424778761)`,d:ae})}),(0,j.jsx)(`clipPath`,{id:w,clipPathUnits:`objectBoundingBox`,children:(0,j.jsx)(`path`,{transform:`scale(0.0025 0.004424778761)`,d:oe})}),(0,j.jsxs)(`linearGradient`,{id:S,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,j.jsx)(`stop`,{offset:`0%`,className:`oc-speech-arc-top`}),(0,j.jsx)(`stop`,{offset:`100%`,className:`oc-speech-arc-bottom`})]})]}),(0,j.jsxs)(`g`,{className:`oc-speech-targets`,ref:x,children:[(0,j.jsxs)(`g`,{className:`oc-speech-target oc-speech-target--cancel`,"data-active":m===`cancel`,children:[(0,j.jsx)(`path`,{d:ae}),(0,j.jsx)(`text`,{x:`95`,y:`68`,textAnchor:`middle`,dominantBaseline:`central`,transform:`rotate(-11 95 68)`,children:l(`chat.dictation.cancelGesture`)})]}),(0,j.jsxs)(`g`,{className:`oc-speech-target oc-speech-target--send`,"data-active":m===`send`,children:[(0,j.jsx)(`path`,{d:oe}),(0,j.jsx)(`text`,{x:`305`,y:`68`,textAnchor:`middle`,dominantBaseline:`central`,transform:`rotate(11 305 68)`,children:l(`chat.dictation.send`)})]})]}),(0,j.jsx)(`path`,{className:`oc-speech-hold-arc`,fill:`url(#${S})`,d:`M-50 186.987 A500 500 0 0 1 450 186.987 L450 300 H-50 Z`})]})]})}),t[71]=S,t[72]=C,t[73]=w,t[74]=u,t[75]=m,t[76]=l,t[77]=Q):Q=t[77];let $;return t[78]!==m||t[79]!==xe||t[80]!==Se||t[81]!==we||t[82]!==Z||t[83]!==Q?($=(0,te.createPortal)((0,j.jsxs)(`div`,{className:`oc-speech-overlay`,"data-intent":m,"data-error":xe,onClick:Se,style:we,children:[Te,Z,Q]}),document.body),t[78]=m,t[79]=xe,t[80]=Se,t[81]=we,t[82]=Z,t[83]=Q,t[84]=$):$=t[84],$}function ce(e){return(0,j.jsx)(`div`,{className:`oc-speech-reactor oc-speech-reactor--${e}`,children:(0,j.jsx)(`div`,{className:`oc-speech-light`})},e)}function le(e){let t=(0,A.c)(7),{available:n}=e,r=S(B),[i,o]=(0,k.useState)(null),s;t[0]!==n||t[1]!==r?(s=n&&r&&!a()&&E(),t[0]=n,t[1]=r,t[2]=s):s=t[2];let c=s,l=c?i:null,u;return t[3]!==c||t[4]!==r||t[5]!==l?(u={globallyEnabled:r,enabled:c,hint:l,onHintChange:o},t[3]=c,t[4]=r,t[5]=l,t[6]=u):u=t[6],u}function B(e){return e.dictationEnabled}var ue=k.createContext(null),V=e=>{let t=(0,A.c)(3),{actions:n,children:r}=e,i;return t[0]!==n||t[1]!==r?(i=(0,j.jsx)(ue.Provider,{value:n,children:r}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i},de=()=>k.useContext(ue),H=e=>e.nativeEvent.isComposing||e.nativeEvent.keyCode===229;function fe(e){let t=(0,A.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:r,children:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===r?a=t[5]:(a=y(`inline-flex shrink-0 items-center justify-center rounded-full bg-foreground text-background`,r),t[4]=r,t[5]=a);let o;return t[6]!==n||t[7]!==i||t[8]!==a?(o=(0,j.jsx)(`span`,{className:a,...i,"aria-hidden":!0,children:n}),t[6]=n,t[7]=i,t[8]=a,t[9]=o):o=t[9],o}function U(e){let t=(0,A.c)(7),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,j.jsx)(`span`,{"data-stop-glyph":`true`,className:`block size-[38%] rounded-[20%] bg-current`}),t[3]=i):i=t[3];let a;return t[4]!==n||t[5]!==r?(a=(0,j.jsx)(fe,{className:n,...r,children:i}),t[4]=n,t[5]=r,t[6]=a):a=t[6],a}function pe(e){let t=(0,A.c)(13),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:n,spinning:i,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a=i!==void 0&&i,o=a?`loader-4`:`arrow-up`,s=a?`size-[50%] animate-spin`:`size-[56%]`,c;t[4]===s?c=t[5]:(c=y(s),t[4]=s,t[5]=c);let l;t[6]!==o||t[7]!==c?(l=(0,j.jsx)(C,{name:o,weight:`medium`,className:c}),t[6]=o,t[7]=c,t[8]=l):l=t[8];let u;return t[9]!==n||t[10]!==r||t[11]!==l?(u=(0,j.jsx)(fe,{className:n,...r,children:l}),t[9]=n,t[10]=r,t[11]=l,t[12]=u):u=t[12],u}var me=k.forwardRef((e,t)=>{let n=(0,A.c)(19),r,i,a,o,s,c;n[0]===e?(r=n[1],i=n[2],a=n[3],o=n[4],s=n[5],c=n[6]):({children:r,className:i,expanded:s,focusedTone:c,style:o,...a}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=a,n[4]=o,n[5]=s,n[6]=c);let l=s!==void 0&&s,u=c===void 0?`primary`:c,d=l&&`min-h-0 flex-1`,f=u===`info`?`focus-within:ring-[var(--status-info)]`:`focus-within:ring-primary/50`,p;n[7]!==i||n[8]!==d||n[9]!==f?(p=y(`relative flex flex-col overflow-visible border border-border/80 focus-within:ring-1`,d,f,i),n[7]=i,n[8]=d,n[9]=f,n[10]=p):p=n[10];let m;n[11]===o?m=n[12]:(m={borderRadius:`var(--radius-xl)`,backgroundColor:`var(--surface-subtle)`,...o},n[11]=o,n[12]=m);let h;return n[13]!==r||n[14]!==a||n[15]!==t||n[16]!==p||n[17]!==m?(h=(0,j.jsx)(`div`,{ref:t,className:p,style:m,...a,children:r}),n[13]=r,n[14]=a,n[15]=t,n[16]=p,n[17]=m,n[18]=h):h=n[18],h});me.displayName=`ChatComposerSurface`;var he=k.forwardRef((e,t)=>{let n=(0,A.c)(3),r;return n[0]!==e||n[1]!==t?(r=(0,j.jsx)(D,{ref:t,...e}),n[0]=e,n[1]=t,n[2]=r):r=n[2],r});he.displayName=`ChatPromptTextarea`;var ge=e=>{let t=(0,A.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:r,children:n,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a;t[4]===r?a=t[5]:(a=y(`flex shrink-0 items-center gap-2 bg-transparent px-2.5 py-1.5`,r),t[4]=r,t[5]=a);let o;return t[6]!==n||t[7]!==i||t[8]!==a?(o=(0,j.jsx)(`div`,{className:a,"data-chat-input-footer":`true`,...i,children:n}),t[6]=n,t[7]=i,t[8]=a,t[9]=o):o=t[9],o},_e=(e,t)=>{typeof e==`function`?e(t):e&&(e.current=t)},W=({value:e,attachments:t=[],disabled:n=!1,pending:r=!1,placeholder:i,isMobile:a=!1,onChange:o,onSubmit:s,onStop:c,onAddFiles:l,onRemoveAttachment:u,addFilesLabel:d,removeAttachmentLabel:f,fileAccept:p=`image/*`,sendLabel:m,stopLabel:_,hint:b,leftControls:S,rightControls:w,footerContent:T,inputHeader:E,attachmentContent:ee,highlightedContent:D,highlightRef:A,inputRef:te,textareaProps:M,textLayoutClassName:N,inputClassName:I,inputOuterClassName:L,inputStyle:ie,footerClassName:R,footerStyle:ae,contentClassName:oe,inputSectionClassName:se,autoResize:z=!0,disableInputWhilePending:ce=!0,layout:le=`stacked`,children:B,className:ue,expanded:V=!1,...de})=>{let{t:fe}=v(),W=le===`inline`,[ve,G]=k.useState(!1),[ye,K]=k.useState(!1),q=P(),be=t.length>0||ve,J=k.useRef(null),xe=k.useRef(null),Se=k.useRef(null),Ce=k.useId().replace(/:/g,``),we=g(()=>{if(!z||V||M?.fillContainer){W&&G(!1);return}let e=J.current;if(!e)return;e.style.height=W?`0px`:`auto`;let t=Number.parseFloat(window.getComputedStyle(e).maxHeight),n=W?Math.max(e.scrollHeight,48):e.scrollHeight,r=Number.isFinite(t)?Math.min(n,t):n;e.style.height=`${r}px`,e.style.overflowY=Number.isFinite(t)&&n>t?`auto`:`hidden`;let i=r>48;W&&G(e=>e===i?e:i)});k.useLayoutEffect(()=>{we()},[z,V,W,M?.fillContainer,e]),h(W&&z&&!V&&!M?.fillContainer?J:null,we);let Te=e=>{M?.onKeyDown?.(e),!(e.defaultPrevented||H(e))&&e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),!n&&(!r||!ce)&&s())},Y=e=>{l?.(e.target.files),e.target.value=``},X=g(()=>{J.current?.blur(),K(!0)}),Z=g(e=>{K(!1),requestAnimationFrame(()=>e?.click())}),Q=g(()=>{K(!1),requestAnimationFrame(()=>{(async()=>{if(!ne()){Se.current?.click();return}try{let e=await F(20);if(e===null){Se.current?.click();return}e.length>0&&l?.(e)}catch(e){console.error(`Native photo pick failed`,e),x.error(fe(`chat.chatInput.toast.attachFileFailed`))}})()})}),$=e.trim().length>0||t.length>0,Ee=t.filter(e=>e.mime.startsWith(`image/`)),De=t.filter(e=>!e.mime.startsWith(`image/`)),Oe=l?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`input`,{ref:xe,type:`file`,accept:p,multiple:!0,className:`hidden`,onChange:Y}),q?(0,j.jsx)(`input`,{ref:Se,type:`file`,accept:`image/*`,multiple:!0,className:`hidden`,onChange:Y}):null,(0,j.jsx)(`button`,{type:`button`,className:`flex size-8 shrink-0 items-center justify-center rounded-md text-foreground outline-none hover:bg-[var(--interactive-hover)] disabled:cursor-not-allowed disabled:opacity-40`,onClick:()=>q?X():xe.current?.click(),onMouseDown:a?e=>e.preventDefault():void 0,onPointerDownCapture:a?e=>e.preventDefault():void 0,disabled:n||r,"aria-label":d,children:(0,j.jsx)(C,{name:`attachment-2`,className:`size-[18px]`})})]}):null,ke=!n&&!r&&$,Ae=a?`size-6`:`size-full`,je=r&&c?(0,j.jsx)(`button`,{type:`button`,"data-composer-stop":`true`,className:`flex size-8 shrink-0 items-center justify-center rounded-full outline-none hover:opacity-80`,onClick:c,"aria-label":_,children:(0,j.jsx)(U,{className:Ae})}):(0,j.jsx)(`button`,{type:`submit`,"data-composer-send":`true`,"data-composer-circle":ke?`true`:void 0,className:y(`flex size-8 shrink-0 items-center justify-center outline-none`,ke?`rounded-full hover:opacity-80`:`rounded-md text-primary hover:bg-[var(--interactive-hover)] disabled:cursor-not-allowed disabled:opacity-30`),disabled:n||r||!$,"aria-label":m,children:ke?(0,j.jsx)(pe,{className:Ae}):(0,j.jsx)(C,{name:r?`loader-4`:`send-plane-2`,className:y(`size-4`,r&&`animate-spin`)})}),Me=r&&c?(0,j.jsx)(`button`,{type:`button`,"data-composer-stop":`true`,className:`flex size-8 shrink-0 items-center justify-center rounded-full outline-none hover:opacity-80`,onClick:c,"aria-label":_,children:(0,j.jsx)(U,{className:Ae})}):(0,j.jsx)(`button`,{type:`submit`,"data-composer-send":`true`,"data-composer-circle":`true`,className:y(`flex size-8 shrink-0 items-center justify-center rounded-full outline-none`,ke?`hover:opacity-80`:`cursor-not-allowed opacity-30`),disabled:n||r||!$,"aria-busy":r||void 0,"aria-label":m,children:(0,j.jsx)(pe,{className:Ae,spinning:r})}),Ne=W?Me:je,Pe=S===void 0?Oe:S;return(0,j.jsxs)(me,{className:ue,expanded:V,...de,children:[B,(0,j.jsxs)(`div`,{"data-composer-content":`true`,"data-composer-layout":le,className:y(`relative flex min-h-0`,W?y(`min-h-12 flex-row`,be?`items-end`:`items-center`):`flex-col`,V&&`flex-1`,oe),children:[W&&Pe?(0,j.jsx)(`div`,{className:`flex h-12 shrink-0 items-center pl-1.5`,"data-composer-inline-attach":`true`,children:Pe}):null,(0,j.jsxs)(`div`,{className:y(`overflow-hidden`,W&&`min-w-0 flex-1`,V&&`flex min-h-0 flex-1 flex-col`,se),children:[E,ee,Ee.length>0?(0,j.jsx)(`div`,{className:`flex gap-2 overflow-x-auto px-3 pt-3`,"data-chat-prompt-attachments":`true`,children:Ee.map(e=>(0,j.jsxs)(`div`,{className:`group relative shrink-0`,children:[(0,j.jsx)(`span`,{className:`block size-16`,children:(0,j.jsx)(O,{fill:!0,src:e.url,alt:e.name,className:`size-16 rounded-lg border border-border object-cover`})}),u?(0,j.jsx)(`button`,{type:`button`,className:`absolute -right-1 -top-1 flex size-6 items-center justify-center rounded-full border border-border bg-[var(--surface-elevated)] shadow-sm hover:bg-[var(--interactive-hover)]`,onClick:()=>u(e.id),"aria-label":f,children:(0,j.jsx)(C,{name:`close`,className:`size-3`})}):null]},e.id))}):null,De.length>0?(0,j.jsx)(`div`,{className:`flex flex-wrap gap-2 px-3 pt-3`,"data-chat-prompt-file-attachments":`true`,children:De.map(e=>(0,j.jsxs)(`div`,{className:`relative flex max-w-[12rem] items-center gap-1.5 rounded-lg border border-border bg-[var(--surface-elevated)] px-2 py-1`,children:[(0,j.jsx)(C,{name:`file-text`,className:`size-3.5 shrink-0 text-muted-foreground`}),(0,j.jsx)(`span`,{className:`min-w-0 truncate typography-micro`,children:e.name}),u?(0,j.jsx)(`button`,{type:`button`,className:`flex size-5 shrink-0 items-center justify-center rounded-full text-muted-foreground hover:bg-[var(--interactive-hover)]`,onClick:()=>u(e.id),"aria-label":f,children:(0,j.jsx)(C,{name:`close`,className:`size-3`})}):null]},e.id))}):null,(0,j.jsxs)(`div`,{className:y(`relative overflow-hidden`,W&&y(`flex min-h-12`,ve?`items-end`:`items-center`),V&&`flex min-h-0 flex-1 flex-col`),"data-composer-input-shell":`true`,children:[D?(0,j.jsx)(`div`,{ref:A,"aria-hidden":!0,"data-composer-highlight":`true`,className:y(`pointer-events-none absolute inset-0 z-0 rounded-b-none`,N,I),children:D}):null,(0,j.jsx)(he,{...M,simple:!0,fillContainer:!W&&M?.fillContainer,ref:e=>{J.current=e,_e(te,e)},"data-chat-input":`true`,value:e,onChange:e=>o(e.target.value,e),onKeyDown:Te,disabled:n||r&&ce,placeholder:i,enterKeyHint:a?`send`:M?.enterKeyHint,outerClassName:y(`ring-0 bg-transparent shadow-none hover:bg-transparent focus-within:ring-0`,W&&`flex-none`,V&&`min-h-0 flex-1`,L),className:y(`relative z-10 resize-none overflow-y-hidden appearance-none border-0 bg-transparent typography-markdown hover:border-transparent md:typography-ui-label`,W?`field-sizing-fixed min-h-12 max-h-32 px-3 py-3 leading-6`:`min-h-[52px] max-h-40 rounded-b-none px-3 pb-2 pt-4`,N,I,D&&`text-transparent caret-[var(--surface-foreground)]`),style:ie,rows:M?.rows??1})]})]}),W?(0,j.jsx)(`div`,{className:y(`flex h-12 shrink-0 items-center pr-1.5`,R),style:ae,"data-composer-inline-send":`true`,children:w??Ne}):(0,j.jsx)(ge,{className:R,style:ae,children:T??(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(`div`,{className:`flex items-center gap-1.5`,children:S??Oe}),b?(0,j.jsx)(`div`,{className:`min-w-0 flex-1 truncate typography-micro text-muted-foreground`,children:b}):(0,j.jsx)(`div`,{className:`flex-1`}),(0,j.jsx)(`div`,{className:`flex items-center gap-1.5`,children:w??Ne})]})})]}),q&&l?(0,j.jsx)(re,{id:`mobile-attach-pick-${Ce}`,open:ye,onOpenChange:e=>{e||K(!1)},onPickPhotos:Q,onPickFiles:()=>Z(xe.current)}):null]})},ve={dictation:102,mentionFile:100,mentionAgent:100,mentionSession:100,mentionCommand:100,mentionPaste:100,code:90,codeFence:90,link:80,linkUrl:78,heading:70,blockquote:40,listMarker:35,marker:10},G={dictation:`text-foreground underline decoration-current underline-offset-4`,mentionFile:`text-[var(--primary)]`,mentionAgent:`text-[var(--primary)]`,mentionSession:`text-[var(--primary)]`,mentionCommand:`text-[var(--primary)]`,mentionPaste:`text-[var(--primary)]`,code:`rounded-[3px] bg-[var(--surface-subtle)] text-[var(--markdown-inline-code)]`,codeFence:`bg-[var(--surface-subtle)] text-[var(--markdown-inline-code)]`,link:`text-[var(--status-info)] underline`,linkUrl:`text-muted-foreground`,heading:`text-[var(--syntax-keyword)]`,blockquote:`text-muted-foreground`,listMarker:`text-[var(--syntax-keyword)]`,marker:`text-muted-foreground`},ye=`text-foreground`;function K(e,t){if(!e||t.length===0)return null;let n=e.length,r=new Set([0,n]);for(let e of t)e.start>0&&e.start<n&&r.add(e.start),e.end>0&&e.end<n&&r.add(e.end);let i=[...r].sort((e,t)=>e-t),a=t.map((e,t)=>({range:e,index:t})).filter(e=>e.range.end>e.range.start).sort((e,t)=>e.range.start-t.range.start),s=[],c=[],l=0;for(let t=0;t<i.length-1;t+=1){let n=i[t],r=i[t+1];if(r<=n)continue;for(;l<a.length&&a[l].range.start<=n;)c.push(a[l]),l+=1;for(let e=c.length-1;e>=0;--e)c[e].range.end<=n&&c.splice(e,1);let u=null,d=-1,f=1/0;for(let{range:e,index:t}of c){let n=e.priority??ve[e.style];(n>d||n===d&&t<f)&&(d=n,f=t,u=e)}let p=u?u.className??G[u.style]:ye,m=e.slice(n,r),h=u?.visual,g=u?.skillName,_=s[s.length-1];_&&_.className===p&&o(_.visual,h)&&_.skillName===g?_.text+=m:s.push({text:m,className:p,visual:h,skillName:g})}return s.length>0?s:null}function q(e,t){let n=new Set(Array.from(t,e=>e.toLowerCase())),r=[];for(let t of[/(^|\s)\/(\u2003)?([a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?)/gi,/(^|\s)@(\u2003)?([a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?)(?=$|\s|[),.;:!?])/gi]){let i;for(;(i=t.exec(e))!==null;){let e=i[2]??``,t=i[3]||``;if(!n.has(t.toLowerCase()))continue;let a=i.index+(i[1]?.length??0);r.push({start:a,end:a+1+e.length+t.length,name:t})}}return r}function be(e,t,n){if(e===t){let t=n.find(t=>e>t.start&&e<t.end);return t?{start:t.start,end:t.end}:null}let r=n.filter(n=>n.start<t&&n.end>e);return r.length===0?null:{start:Math.min(e,...r.map(e=>e.start)),end:Math.max(t,...r.map(e=>e.end))}}function J(e,t,n){let r=q(e,t),i=Math.max(0,Math.min(n.selectionStart,e.length)),a=Math.max(i,Math.min(n.selectionEnd,e.length)),o=i,s=a;if(i===a)if(n.altKey)if(n.key===`Backspace`){for(;o>0&&/\s/.test(e[o-1]);)--o;for(;o>0&&!/\s/.test(e[o-1]);)--o}else{for(;s<e.length&&/\s/.test(e[s]);)s+=1;for(;s<e.length&&!/\s/.test(e[s]);)s+=1}else n.key===`Backspace`?o=Math.max(0,i-1):s=Math.min(e.length,i+1);if(o===s)return null;let c=r.filter(e=>e.start<s&&e.end>o);if(c.length===0)return null;let l=Math.min(o,...c.map(e=>e.start)),u=Math.max(s,...c.map(e=>e.end));return u<e.length&&/\s/.test(e[u])&&(l===0||/\s/.test(e[l-1]))?u+=1:u===e.length&&l>0&&/\s/.test(e[l-1])&&--l,{text:`${e.slice(0,l)}${e.slice(u)}`,caret:l,removedSkillNames:c.map(e=>e.name)}}function xe(e){return e.map(e=>({start:e.start,end:e.end,style:e.kind===`file`?`mentionFile`:e.kind===`session`?`mentionSession`:`mentionAgent`,visual:e.kind===`session`&&e.label?t({trigger:`@`,icon:`chat-thread`,label:e.label},i({trigger:`@`,icon:`chat-thread`,label:e.label})):void 0}))}function Se(e){let t=(0,A.c)(28),{visual:i,text:a}=e,o=i.trigger.length,s=o+i.label.length,c=s+(i.suffix?.length??0),l;t[0]!==s||t[1]!==o||t[2]!==a?(l=a.slice(o,Math.min(s,a.length)),t[0]=s,t[1]=o,t[2]=a,t[3]=l):l=t[3];let u=l,d;t[4]!==s||t[5]!==c||t[6]!==a?(d=a.slice(s,Math.min(c,a.length)),t[4]=s,t[5]=c,t[6]=a,t[7]=d):d=t[7];let f=d,p;t[8]!==c||t[9]!==a?(p=a.slice(Math.min(c,a.length)),t[8]=c,t[9]=a,t[10]=p):p=t[10];let m=p,h;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(h={left:n,right:n},t[11]=h):h=t[11];let g=i.icon,_;t[12]===g?_=t[13]:(_=(0,j.jsx)(`span`,{className:`pointer-events-none absolute inset-y-0 inline-flex items-center justify-center`,style:h,children:(0,j.jsx)(C,{name:g,className:`${r} shrink-0 text-[var(--primary)]`,"aria-hidden":`true`})}),t[12]=g,t[13]=_);let v;t[14]!==_||t[15]!==i.trigger?(v=(0,j.jsxs)(`span`,{className:`relative inline-block align-baseline text-transparent leading-none`,children:[i.trigger,_]}),t[14]=_,t[15]=i.trigger,t[16]=v):v=t[16];let y;t[17]===u?y=t[18]:(y=(0,j.jsx)(`span`,{children:u}),t[17]=u,t[18]=y);let b;t[19]===f?b=t[20]:(b=f?(0,j.jsx)(`span`,{className:`text-transparent`,children:f}):null,t[19]=f,t[20]=b);let x;t[21]===m?x=t[22]:(x=m?(0,j.jsx)(`span`,{className:`text-transparent`,children:m}):null,t[21]=m,t[22]=x);let S;return t[23]!==x||t[24]!==v||t[25]!==y||t[26]!==b?(S=(0,j.jsxs)(j.Fragment,{children:[v,y,b,x]}),t[23]=x,t[24]=v,t[25]=y,t[26]=b,t[27]=S):S=t[27],S}var Ce=e=>({text:e.text,references:e.references.map(e=>({...e}))}),we=e=>e.map(e=>({...e,range:{...e.range}})),Te=(e,t)=>e.text===t.text&&JSON.stringify(e.references)===JSON.stringify(t.references),Y=(e,t,n)=>({document:Ce(e),mentions:we(t),selection:{...n}}),X=()=>({undo:[],redo:[]}),Z=(e,t)=>({undo:[...e.undo,t].slice(-100),redo:[]}),Q=(e,t)=>{let n=e.undo.at(-1);return!n||!Te(n.after.document,t)?null:{history:{undo:e.undo.slice(0,-1),redo:[...e.redo,n]},snapshot:Y(n.before.document,n.before.mentions,n.before.selection)}},$=(e,t)=>{let n=e.redo.at(-1);return!n||!Te(n.before.document,t)?null:{history:{undo:[...e.undo,n],redo:e.redo.slice(0,-1)},snapshot:Y(n.after.document,n.after.mentions,n.after.selection)}},Ee=e=>{if(e.altKey||e.ctrlKey||e.metaKey)return!1;switch(e.key){case`ArrowUp`:case`PageUp`:case`Home`:return!0;default:return!1}},De=(e,t,n)=>{let r=t instanceof Element?t:t instanceof Node?t.parentElement:null;for(;r&&r!==e;){if(r instanceof HTMLElement){let e=r.scrollHeight-r.clientHeight;if(e>1&&(n===`up`?r.scrollTop>0:r.scrollTop<e-1))return!0}r=r.parentElement}return!1},Oe=(e,t)=>De(e,t,`up`),ke=(e,t)=>De(e,t,`down`),Ae=e=>{let t=(0,A.c)(15),{scrollRef:n,enabled:r,onUpwardIntent:i}=e,a=r===void 0||r,o=k.useRef(null),s;t[0]===i?s=t[1]:(s=()=>{i()},t[0]=i,t[1]=s);let c=g(s),l;t[2]!==c||t[3]!==n?(l=e=>{let t=n.current;t&&(e.deltaY>=0||t instanceof HTMLElement&&(Oe(t,e.target)||c()))},t[2]=c,t[3]=n,t[4]=l):l=t[4];let u=g(l),d;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(d=e=>{let t=e.touches.item(0);o.current=t?t.clientY:null},t[5]=d):d=t[5];let f=g(d),p;t[6]!==c||t[7]!==n?(p=e=>{let t=n.current,r=e.touches.item(0);if(!r){o.current=null;return}let i=o.current;o.current=r.clientY,i!==null&&(r.clientY-i<=2||!t||!(t instanceof HTMLElement)||Oe(t,e.target)||c())},t[6]=c,t[7]=n,t[8]=p):p=t[8];let m=g(p),h;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>{o.current=null},t[9]=h):h=t[9];let v=g(h),y;t[10]===c?y=t[11]:(y=e=>{Ee(e)&&c()},t[10]=c,t[11]=y);let b=g(y),[x,S]=k.useState(null),C;t[12]===n?C=t[13]:(C=()=>{let e=n.current??null;S(t=>t===e?t:e)},t[12]=n,t[13]=C),k.useEffect(C);let w=a&&x?x:je,T;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(T={passive:!0},t[14]=T):T=t[14];let E=T;_(`wheel`,u,w,E),_(`touchstart`,f,w,E),_(`touchmove`,m,w,E),_(`touchend`,v,w,E),_(`touchcancel`,v,w,E),_(`keydown`,b,w)};function je(){}var Me=e=>{if(typeof e!=`number`||!Number.isFinite(e))return;let t=Math.trunc(e);return t>=0?t:void 0},Ne=e=>{if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.summary;return!t||typeof t!=`object`||Array.isArray(t)?null:t},Pe=e=>{let t=Me(e);return t!==void 0&&t>0?t:void 0};function Fe(e){let t=Ne(e);if(!t)return null;let n=Pe(t.additions),r=Pe(t.deletions),i=Pe(t.files)??Pe(t.diffCount);return n===void 0&&r===void 0&&i===void 0?null:{...n===void 0?{}:{additions:n},...r===void 0?{}:{deletions:r},...i===void 0?{}:{files:i}}}function Ie(e){if(!e)return null;let t=[];return e.additions!==void 0&&e.additions>0&&t.push(`+${e.additions}`),e.deletions!==void 0&&e.deletions>0&&t.push(`−${e.deletions}`),t.length>0?t.join(` `):null}function Le(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e,n=typeof t.providerID==`string`?t.providerID.trim():``,r=typeof t.modelID==`string`?t.modelID.trim():``;if(n&&r)return`${n}/${r}`;let i=t.model;if(typeof i==`string`&&i.trim())return i.trim();if(i&&typeof i==`object`&&!Array.isArray(i)){let e=i,t=typeof e.providerID==`string`?e.providerID.trim():typeof e.provider==`string`?e.provider.trim():``,n=typeof e.modelID==`string`?e.modelID.trim():typeof e.id==`string`?e.id.trim():``;if(t&&n)return`${t}/${n}`}return null}function Re(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e;if(typeof t.branch==`string`&&t.branch.trim())return t.branch.trim();let n=t.project;if(n&&typeof n==`object`&&!Array.isArray(n)){let e=n.branch;if(typeof e==`string`&&e.trim())return e.trim()}return null}export{ne as A,H as C,z as D,le as E,P as M,ie as O,U as S,de as T,xe as _,Ee as a,W as b,Ae as c,Z as d,$ as f,q as g,K as h,Le as i,F as j,re as k,Y as l,Se as m,Re as n,ke as o,Q as p,Fe as r,Oe as s,Ie as t,X as u,be as v,V as w,pe as x,J as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{rt as e}from"./vendor-base-ui-CdzJ6My_.js";import{Nt as t}from"./platform-
|
|
1
|
+
import{rt as e}from"./vendor-base-ui-CdzJ6My_.js";import{Nt as t}from"./platform-CgwxwfA4.js";import{n}from"./vendor-react-BP2cRVqX.js";import{f as r,r as i}from"./button-CWSs9Baz.js";import{x as a}from"./MobileDetailNavigation-e4vO0lXT.js";import{Kr as o,Mr as s,kr as c}from"./useMobileNavigationStore-CuOiHjP1.js";var l=n(),u=e();function d(e){let t=(0,l.c)(10),{count:n,className:a}=e,{t:o}=r();if(!(n>0))return null;let s;t[0]===a?s=t[1]:(s=i(`inline-flex h-[18px] min-w-[18px] shrink-0 items-center justify-center rounded-full bg-[var(--status-info)] px-1.5 typography-micro font-semibold leading-none text-[var(--status-info-foreground)] tabular-nums shadow-[inset_0_0_0_1px_color-mix(in_srgb,var(--status-info-foreground)_15%,transparent)]`,a),t[0]=a,t[1]=s);let c;t[2]!==n||t[3]!==o?(c=o(`assistants.unread.label`,{count:n}),t[2]=n,t[3]=o,t[4]=c):c=t[4];let d=n>99?`99+`:n,f;return t[5]!==n||t[6]!==s||t[7]!==c||t[8]!==d?(f=(0,u.jsx)(`span`,{className:s,"aria-label":c,"data-assistant-unread-count":n,children:d}),t[5]=n,t[6]=s,t[7]=c,t[8]=d,t[9]=f):f=t[9],f}function f(e){let t=(0,l.c)(3),{className:n}=e,r=a(),i;return t[0]!==n||t[1]!==r?(i=(0,u.jsx)(d,{count:r,className:n}),t[0]=n,t[1]=r,t[2]=i):i=t[2],i}function p(e){if(!e||e.trim().length===0)return null;let t=s.getState(),n=t.activeSessions.find(t=>t.id===e)??t.archivedSessions.find(t=>t.id===e)??null;if(!n)return null;let r=c(n);return r?{sessionId:e,directory:r,session:n,fromCache:!t.hasLoaded,source:`memory`}:null}function m(e){return p(e)?.directory??null}var h=new Map;async function g(e,n){let r=e.trim();if(!r)return null;let i=p(r);if(i)return i;let a=h.get(r);if(a)return a;let s=(async()=>{let e=p(r);if(e)return e;let i=await o(r,{signal:n?.signal});if(i?.directory)return{sessionId:i.id,directory:i.directory,session:null,fromCache:!1,source:`session-index`};if(n?.trySessionGet===!1)return null;try{let e=await t.getSession(r),n=typeof e.directory==`string`&&e.directory.trim()||(typeof e.project?.worktree==`string`?e.project.worktree.trim():``)||null;return n?{sessionId:r,directory:n,session:e,fromCache:!1,source:`session-get`}:null}catch{return null}})().finally(()=>{h.get(r)===s&&h.delete(r)});return h.set(r,s),s}export{d as a,f as i,m as n,g as r,p as t};
|