@openchambery/web 2.0.2-beta.1 → 2.0.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/{AssistantView-nQrigS4V.js → AssistantView-CWviBCAP.js} +3 -3
- package/dist/assets/{DiagramView-DjTaMDNe.js → DiagramView-Cm7xDZ5t.js} +1 -1
- package/dist/assets/MarkdownRenderer-CJ5t5GCJ.js +2 -0
- package/dist/assets/{MarkdownRendererImpl-DyIUIr4N.js → MarkdownRendererImpl-De4VmTtg.js} +1 -1
- package/dist/assets/{MarkstreamRendererImpl-DO9IukOP.js → MarkstreamRendererImpl-B0zZVAuv.js} +1 -1
- package/dist/assets/{MobileDetailNavigation-CsmkM6q9.js → MobileDetailNavigation-BOuvF4sv.js} +1 -1
- package/dist/assets/{MobileShareBridge-WU4cZ2YS.js → MobileShareBridge-Brsf5H1u.js} +1 -1
- package/dist/assets/MobileTabPageHeader-BLlFC_jN.js +2 -0
- package/dist/assets/{MultiRunWindow-X7nbM3XI.js → MultiRunWindow-BUdK_rVf.js} +1 -1
- package/dist/assets/{SettingsView-Z1JssjqY.js → SettingsView-LnqgjCmk.js} +1 -1
- package/dist/assets/{SettingsWindow-BhfyWkL2.js → SettingsWindow-AfOCGfXC.js} +1 -1
- package/dist/assets/{TerminalView-CqxD82fz.js → TerminalView-Csox-OUH.js} +1 -1
- package/dist/assets/{ToolOutputDialog-WgwI-9al.js → ToolOutputDialog-DYnLpM-I.js} +1 -1
- package/dist/assets/{appThemeRegistry-BoxYSKnf.js → appThemeRegistry-Dh7evuFT.js} +1 -1
- package/dist/assets/{fileMentionTouchSelection-Du5yXyiw.js → fileMentionTouchSelection-DGcKhwNg.js} +1 -1
- package/dist/assets/{gitApi-0zlv_uGd.js → gitApi-DJiNTnOw.js} +1 -1
- package/dist/assets/{insertionBoundaries-DEmm2KEx.js → insertionBoundaries-BZ4y7_dO.js} +1 -1
- package/dist/assets/{main-D4XFK0Ul.js → main-C5K1b2p3.js} +4 -4
- package/dist/assets/{main-BTIowmls.js → main-D10YD-D5.js} +2 -2
- package/dist/assets/{mcpQueries-Ct1GVJ1_.js → mcpQueries-om4qg52L.js} +1 -1
- package/dist/assets/{miniChat-B076IsbD.js → miniChat-YtAlWDXn.js} +2 -2
- package/dist/assets/{mobile-Ch9Y067K.js → mobile-Bix-1h3p.js} +2 -2
- package/dist/assets/{multirun-DU_s2vv-.js → multirun-Cl0qI_UR.js} +1 -1
- package/dist/assets/{projectMeta-Br-6p4Ek.js → projectMeta-ClpG1g5k.js} +1 -1
- package/dist/assets/{renderElectronMiniChatApp-2SCJo2V5.js → renderElectronMiniChatApp-knc9ALFK.js} +2 -2
- package/dist/assets/{renderMobileApp-So0sDER7.js → renderMobileApp-DvPGytV9.js} +4 -4
- package/dist/assets/{runtimeConfig-BNgQOf6h.js → runtimeConfig-CkGIFPXV.js} +1 -1
- package/dist/assets/{runtimeEndpointReset-CJh46Mcc.js → runtimeEndpointReset-BFrS_Yci.js} +1 -1
- package/dist/assets/{sessionChangeSummary-DLDfqKFw.js → sessionChangeSummary-DYAsA6Bi.js} +1 -1
- package/dist/assets/{sessionLookup-DSwSyWLE.js → sessionLookup-Bc8f5Scn.js} +1 -1
- package/dist/assets/{useAppFontEffects-F8byXxse.js → useAppFontEffects-CU_CeyJe.js} +5 -5
- package/dist/assets/{useDesktopWindowControlsLayout-CLQU_f5A.js → useDesktopWindowControlsLayout-D5pQxhEz.js} +1 -1
- package/dist/assets/{useEffectiveDirectory-CePbms3i.js → useEffectiveDirectory-Cn5YmSaO.js} +1 -1
- package/dist/assets/{useMobileNavigationStore-Bjq9HvrR.js → useMobileNavigationStore-Bww4SOiv.js} +19 -19
- package/dist/assets/{useSessionAutoCleanup-DdiIB8Vv.js → useSessionAutoCleanup--P_vAP6v.js} +1 -1
- package/dist/assets/{useWorkerHighlightedLines-CKjzXbrt.js → useWorkerHighlightedLines-DOkM0xy4.js} +1 -1
- package/dist/index.html +2 -2
- package/dist/mini-chat.html +2 -2
- package/dist/mobile.html +2 -2
- package/package.json +1 -1
- package/server/lib/session-index/DOCUMENTATION.md +10 -4
- package/server/lib/session-index/service.js +19 -2
- package/server/lib/session-index/service.test.js +52 -0
- package/server/lib/session-index/sync-runtime.js +3 -17
- package/server/lib/session-index/sync-runtime.test.js +29 -0
- package/server/lib/session-metadata/DOCUMENTATION.md +6 -4
- package/dist/assets/MarkdownRenderer-DejwwmAe.js +0 -2
- package/dist/assets/MobileTabPageHeader-8v-HjesS.js +0 -2
package/dist/assets/{renderElectronMiniChatApp-2SCJo2V5.js → renderElectronMiniChatApp-knc9ALFK.js}
RENAMED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/gitApi-
|
|
2
|
-
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{Ht as t,en as n,in as r,kn as i,n as a,t as o}from"./persistence-CwHY3fDg.js";import{nt as s,rt as c}from"./vendor-base-ui-CnHfUmDN.js";import{Ct as l,Nt as u}from"./platform-Bxaalnc8.js";import{n as d}from"./useUIStore-DNkuudYO.js";import{n as f,t as p}from"./vendor-react-DLPElpoQ.js";import{o as m}from"./vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js";/* empty css */import{n as h,s as g}from"./vendor-reactuses-core-Dq5ocTF8.js";import{f as _,m as v,r as y,t as b}from"./button-CcOoDLE1.js";import{n as x}from"./store-l_X_jQNz.js";import{Pt as ee,S as te,cn as ne,d as S,pa as C,tn as re,to as ie,vn as ae,ya as oe}from"./useMobileNavigationStore-Bjq9HvrR.js";import{n as se}from"./Icon-BE2hkaYc.js";import{Bt as ce,Ct as le,Dt as ue,E as w,Et as de,Ft as T,Nt as fe,Pt as pe,St as me,T as E,Tt as he,a as ge,bt as _e,st as D,t as O,w as ve,wt as ye,xt as be,yt as xe}from"./useAppFontEffects-F8byXxse.js";import{s as Se}from"./projectMeta-Br-6p4Ek.js";import{r as Ce}from"./tooltip-CBHR50fA.js";import{Ct as we,ft as k,gt as Te}from"./useSessionAutoCleanup-DdiIB8Vv.js";import{n as Ee}from"./useRuntimeAPIs-DSLXJybW.js";import{d as De,y as Oe}from"./insertionBoundaries-DEmm2KEx.js";import{i as ke,n as Ae,r as je,t as Me}from"./useDesktopWindowControlsLayout-CLQU_f5A.js";var Ne=p(),A=f(),j=e(c(),1),M=s(),Pe=e=>{let t=(0,A.c)(3),{mode:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,M.jsx)(D.Provider,{value:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i},Fe=e=>{let t=typeof e==`string`?e.trim():``;if(!t)return``;let n=typeof window<`u`?window.__OPENCHAMBER_HOME__:``;if(n&&t===n)return`~`;if(n&&t.startsWith(`${n}/`))return`~/${t.slice(n.length+1)}`;let r=t.split(`/`).filter(Boolean);return r.length<=3?t:`.../${r.slice(-3).join(`/`)}`},N=e=>{let t=typeof e==`string`?e.trim():``;if(!t)return``;let n=t.replace(/\\/g,`/`);return n===`/`?`/`:n.replace(/\/+$/,``)},P=e=>{let t=(0,A.c)(117),{mode:i}=e,{t:a}=_(),o=S(Le),s=S(Re),c=S(ze),u=l(Be),d=ie(Ve),f=ie(He),p=C(Ue),m=C(We),h=ae(),g=ne(o??``),v=Ee(),x=Oe(Ge),ee;t[0]===o?ee=t[1]:(ee=e=>o?e.worktreeMetadata.get(o)?.path??``:``,t[0]=o,t[1]=ee);let oe=S(ee),ce;t[2]===o?ce=t[3]:(ce=e=>o?e.worktreeMetadata.get(o)?.branch?.trim()??null:null,t[2]=o,t[3]=ce);let le=S(ce),ue;t[4]===o?ue=t[5]:(ue=e=>o?e.getAttachment(o):void 0,t[4]=o,t[5]=ue);let w=te(ue),de=S(Ke),[T,fe]=j.useState(!1),pe=typeof window<`u`?window.__OPENCHAMBER_MACOS_MAJOR__??0:0,me=Number.isFinite(pe)&&pe>0,{usesFramelessChrome:E,side:he}=Me(),ge=me?pe>=26?`h-12`:pe<=15?`h-14`:``:``,_e;t[6]!==o||t[7]!==h?(_e=o?h.find(e=>e.id===o)??null:null,t[6]=o,t[7]=h,t[8]=_e):_e=t[8];let D=_e,O=D?.worktreeMetadata??null,ve,ye;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(ve=()=>{r()&&n(`desktop_get_window_pinned`).then(e=>{typeof e?.pinned==`boolean`&&fe(e.pinned)})},ye=[],t[9]=ve,t[10]=ye):(ve=t[9],ye=t[10]),j.useEffect(ve,ye);let be;t[11]!==s||t[12]!==i||t[13]!==D?.title||t[14]!==a?(be=D?.title?.trim()||a(s||i===`draft`?`miniChat.header.newSession`:`miniChat.header.session`),t[11]=s,t[12]=i,t[13]=D?.title,t[14]=a,t[15]=be):be=t[15];let xe=be,Se=D?.directory??null,Ce;t[16]===Se?Ce=t[17]:(Ce=N(Se),t[16]=Se,t[17]=Ce);let we=Ce,k=oe||O?.path||w?.cwd||w?.worktreeRoot||``,Te;t[18]===k?Te=t[19]:(Te=N(k),t[18]=k,t[19]=Te);let Ne=Te,Pe;t[20]===u?Pe=t[21]:(Pe=N(u),t[20]=u,t[21]=Pe);let P=Ne||we||de||Pe,Ie;t[22]===P?Ie=t[23]:(Ie=Fe(P),t[22]=P,t[23]=Ie);let $e=Ie,et;t[24]!==we||t[25]!==Ne?(et=e=>{let t=N(Ne||we||``);if(!t)return null;for(let n of e.availableWorktreesByProject.values()){let e=n.find(e=>N(e.path)===t)?.branch?.trim();if(e)return e}return null},t[24]=we,t[25]=Ne,t[26]=et):et=t[26];let tt=S(et),nt,rt;t[27]!==x||t[28]!==P||t[29]!==v.git?(nt=()=>{P&&x(P,v.git).catch(qe)},rt=[x,P,v.git],t[27]=x,t[28]=P,t[29]=v.git,t[30]=nt,t[31]=rt):(nt=t[30],rt=t[31]),j.useEffect(nt,rt),O?.projectDirectory,w?.worktreeRoot;let it;bb0:{let e=O?.projectDirectory??w?.worktreeRoot??null,n;t[32]===e?n=t[33]:(n=N(e),t[32]=e,t[33]=n);let r=n||P;if(!r){it=null;break bb0}let i;t[34]!==r||t[35]!==d?(i=d.map(Je).filter(e=>e.normalizedPath&&(e.normalizedPath===r||r.startsWith(`${e.normalizedPath}/`))).sort(Ye)[0]??null,t[34]=r,t[35]=d,t[36]=i):i=t[36],it=i}let at=it,ot;bb1:{let e=at??f;if(!e){ot=$e||`OpenChamber`;break bb1}let n;t[37]===e.path?n=t[38]:(n=e.path.split(/[\\/]/).filter(Boolean).at(-1)??e.path,t[37]=e.path,t[38]=n),ot=n}let st=ot,ct=De(P||null),lt;t[39]!==tt||t[40]!==ct||t[41]!==O?.branch||t[42]!==w?.branch||t[43]!==le?(lt=ct||le||O?.branch?.trim()||w?.branch?.trim()||tt,t[39]=tt,t[40]=ct,t[41]=O?.branch,t[42]=w?.branch,t[43]=le,t[44]=lt):lt=t[44];let ut=lt,dt=ut&&ut!==`HEAD`?ut:null,ft;t[45]===p?ft=t[46]:(ft=p(),t[45]=p,t[46]=ft);let pt=ft,mt;bb2:{for(let e=g.length-1;e>=0;--e){let t=g[e];if(t.role!==`assistant`||typeof t.providerID!=`string`||typeof t.modelID!=`string`)continue;let n=m.find(e=>e.id===t.providerID)?.models.find(e=>e.id===t.modelID);if(n){mt=n;break bb2}}mt=void 0}let ht=mt,gt=pt?.limit?pt:ht,F=gt&&typeof gt.limit==`object`&>.limit!==null?gt.limit:null,_t=F&&typeof F.context==`number`?F.context:0,vt=F&&typeof F.output==`number`?F.output:0,I=re(o??``,_t,vt),[L,yt]=j.useState(null),bt;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(bt={WebkitAppRegion:`drag`},t[47]=bt):bt=t[47];let xt=bt,St;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(St={WebkitAppRegion:`no-drag`},t[48]=St):St=t[48];let Ct=St,wt,Tt;t[49]!==I||t[50]!==o?(wt=()=>{if(!o){yt(Xe);return}if(I){yt(e=>e&&e.pending===I.pending&&e.totalTokens===I.totalTokens&&e.percentage===I.percentage&&e.contextLimit===I.contextLimit&&(e.outputLimit??0)===(I.outputLimit??0)&&(e.normalizedOutput??0)===(I.normalizedOutput??0)&&e.thresholdLimit===I.thresholdLimit&&e.lastMessageId===I.lastMessageId?e:I);return}yt(Ze)},Tt=[I,o],t[49]=I,t[50]=o,t[51]=wt,t[52]=Tt):(wt=t[51],Tt=t[52]),j.useEffect(wt,Tt);let Et=L&&L.contextLimit>0?Math.min(999,L.totalTokens/L.contextLimit*100):0,Dt;t[53]===T?Dt=t[54]:(Dt=()=>{let e=!T;fe(e),n(`desktop_set_window_pinned`,{pinned:e}).catch(()=>{fe(!e)})},t[53]=T,t[54]=Dt);let Ot=Dt,kt;t[55]!==u||t[56]!==o||t[57]!==c||t[58]!==P||t[59]!==D?(kt=()=>{let e=o?{sessionId:o,directory:D?.directory??u??``}:{mode:`draft`,directory:P||u||``,projectId:c};n(`desktop_focus_main_window`,e).then(Qe)},t[55]=u,t[56]=o,t[57]=c,t[58]=P,t[59]=D,t[60]=kt):kt=t[60];let At=kt,jt=E?`h-12`:ge||`min-h-14`,R;t[61]===jt?R=t[62]:(R=y(`flex items-center gap-3 bg-background pr-3`,me?`pl-[5.5rem]`:`pl-3`,jt),t[61]=jt,t[62]=R);let z;t[63]!==E||t[64]!==he?(z=E&&he===`left`?(0,M.jsx)(je,{visible:!0,position:`left`}):null,t[63]=E,t[64]=he,t[65]=z):z=t[65];let B;t[66]===a?B=t[67]:(B=a(`sessions.switcher.openAria`),t[66]=a,t[67]=B);let V;t[68]===xe?V=t[69]:(V=(0,M.jsx)(`span`,{className:`truncate typography-ui-label text-[14px] font-normal leading-tight text-foreground max-w-full`,children:xe}),t[68]=xe,t[69]=V);let H;t[70]===st?H=t[71]:(H=(0,M.jsx)(`span`,{className:`truncate`,children:st}),t[70]=st,t[71]=H);let U;t[72]===dt?U=t[73]:(U=dt?(0,M.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-0.5`,children:[(0,M.jsx)(se,{name:`git-branch`,className:`h-3 w-3 flex-shrink-0 text-muted-foreground/70`}),(0,M.jsx)(`span`,{className:`truncate`,children:dt})]}):null,t[72]=dt,t[73]=U);let W;t[74]!==H||t[75]!==U?(W=(0,M.jsxs)(`span`,{className:`flex min-w-0 max-w-full items-center gap-1.5 truncate typography-micro text-[10.5px] font-normal leading-tight text-muted-foreground/75`,children:[H,U]}),t[74]=H,t[75]=U,t[76]=W):W=t[76];let G;t[77]!==B||t[78]!==V||t[79]!==W?(G=(0,M.jsx)(Ae,{children:(0,M.jsxs)(`button`,{type:`button`,"aria-label":B,style:Ct,className:`flex min-w-0 max-w-full flex-col items-start rounded-md px-1 py-0.5 text-left transition-colors hover:bg-interactive-hover/60 focus-visible:outline-none focus-visible:bg-interactive-hover/60`,children:[V,W]})}),t[77]=B,t[78]=V,t[79]=W,t[80]=G):G=t[80];let Mt;t[81]===Symbol.for(`react.memo_cache_sentinel`)?(Mt=(0,M.jsx)(`div`,{className:`min-w-0 flex-1`}),t[81]=Mt):Mt=t[81];let K;t[82]!==Et||t[83]!==L?(K=L?(0,M.jsx)(ke,{pending:L.pending,totalTokens:L.totalTokens,percentage:Et,colorPercentage:L.percentage,contextLimit:L.contextLimit,outputLimit:L.outputLimit??0,className:`h-9 shrink-0 pl-1 pr-1 typography-ui-label`,valueClassName:`font-semibold leading-none`,hideIcon:!0,showPercentIcon:!0,percentIconClassName:`h-4.5 w-4.5`}):null,t[82]=Et,t[83]=L,t[84]=K):K=t[84];let q;t[85]!==T||t[86]!==a?(q=a(T?`miniChat.actions.unpinAria`:`miniChat.actions.pinAria`),t[85]=T,t[86]=a,t[87]=q):q=t[87];let J;t[88]!==T||t[89]!==a?(J=a(T?`miniChat.actions.unpin`:`miniChat.actions.pin`),t[88]=T,t[89]=a,t[90]=J):J=t[90];let Y;t[91]===T?Y=t[92]:(Y=T?(0,M.jsx)(se,{name:`pushpin-2-fill`,className:`h-4 w-4`}):(0,M.jsx)(se,{name:`pushpin-2`,className:`h-4 w-4`}),t[91]=T,t[92]=Y);let X;t[93]!==Ot||t[94]!==q||t[95]!==J||t[96]!==Y?(X=(0,M.jsx)(b,{type:`button`,variant:`ghost`,size:`icon`,onClick:Ot,"aria-label":q,title:J,style:Ct,children:Y}),t[93]=Ot,t[94]=q,t[95]=J,t[96]=Y,t[97]=X):X=t[97];let Z;t[98]===a?Z=t[99]:(Z=a(`miniChat.actions.openMainAria`),t[98]=a,t[99]=Z);let Q;t[100]===a?Q=t[101]:(Q=a(`miniChat.actions.openMain`),t[100]=a,t[101]=Q);let Nt;t[102]===Symbol.for(`react.memo_cache_sentinel`)?(Nt=(0,M.jsx)(se,{name:`external-link`,className:`h-4 w-4`}),t[102]=Nt):Nt=t[102];let $;t[103]!==At||t[104]!==Z||t[105]!==Q?($=(0,M.jsx)(b,{type:`button`,variant:`ghost`,size:`icon`,onClick:At,"aria-label":Z,title:Q,style:Ct,children:Nt}),t[103]=At,t[104]=Z,t[105]=Q,t[106]=$):$=t[106];let Pt=E&&he===`right`,Ft;t[107]===Pt?Ft=t[108]:(Ft=(0,M.jsx)(je,{visible:Pt,position:`right`}),t[107]=Pt,t[108]=Ft);let It;return t[109]!==R||t[110]!==z||t[111]!==G||t[112]!==K||t[113]!==X||t[114]!==$||t[115]!==Ft?(It=(0,M.jsxs)(`header`,{className:R,style:xt,children:[z,G,Mt,K,X,$,Ft]}),t[109]=R,t[110]=z,t[111]=G,t[112]=K,t[113]=X,t[114]=$,t[115]=Ft,t[116]=It):It=t[116],It},Ie=e=>{let t=(0,A.c)(9),{mode:n,autoOpenDraft:r,unavailable:i}=e,a=r!==void 0&&r,o=i!==void 0&&i,{t:s}=_(),c;t[0]===n?c=t[1]:(c=(0,M.jsx)(P,{mode:n}),t[0]=n,t[1]=c);let l;t[2]!==a||t[3]!==s||t[4]!==o?(l=(0,M.jsx)(`main`,{className:`min-h-0 flex-1`,children:o?(0,M.jsx)(`div`,{className:`flex h-full items-center justify-center px-6 text-center typography-ui-label text-muted-foreground`,children:(0,M.jsxs)(`div`,{className:`max-w-sm rounded-lg border border-[var(--interactive-border)] bg-[var(--surface-elevated)] px-4 py-3`,children:[(0,M.jsx)(`div`,{className:`font-medium text-foreground`,children:s(`miniChat.unavailable.title`)}),(0,M.jsx)(`div`,{className:`mt-1 typography-small text-muted-foreground`,children:s(`miniChat.unavailable.description`)})]})}):(0,M.jsx)(Pe,{mode:`mini-chat`,children:(0,M.jsx)(w,{autoOpenDraft:a})})}),t[2]=a,t[3]=s,t[4]=o,t[5]=l):l=t[5];let u;return t[6]!==c||t[7]!==l?(u=(0,M.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col bg-background text-foreground`,children:[c,l]}),t[6]=c,t[7]=l,t[8]=u):u=t[8],u};function Le(e){return e.currentSessionId}function Re(e){return!!e.newSessionDraft?.open}function ze(e){return e.newSessionDraft?.selectedProjectId??null}function Be(e){return e.currentDirectory}function Ve(e){return e.projects}function He(e){return e.getActiveProject()}function Ue(e){return e.getCurrentModel}function We(e){return e.providers}function Ge(e){return e.ensureStatus}function Ke(e){return e.newSessionDraft?.open?N(e.newSessionDraft.bootstrapPendingDirectory??e.newSessionDraft.directoryOverride??``):``}function qe(){}function Je(e){return{...e,normalizedPath:N(e.path)}}function Ye(e,t){return t.path.length-e.path.length}function Xe(e){return e===null?e:null}function Ze(e){return e===null?e:null}function Qe(e){return e?.focused===!0?n(`desktop_close_current_window`):null}var $e=()=>{document.querySelector(`textarea[data-chat-input="true"]`)?.focus()},et=()=>{let e=d(e=>e.shortcutOverrides),r=l(e=>e.currentDirectory),i=ie(e=>e.getActiveProject()),a=S(e=>e.openNewSessionDraft);j.useEffect(()=>{let o=t=>Te(t,e),s=e=>{if(k(e,o(`focus_input`))){e.preventDefault(),$e();return}if(t()&&k(e,o(`close_context_panel_tab`))){e.preventDefault(),n(`desktop_close_current_window`).catch(e=>{console.warn(`[mini-chat-shortcuts] failed to close current window`,e)});return}if(t()&&k(e,o(`new_mini_chat`))){e.preventDefault(),n(`desktop_open_draft_mini_chat_window`,{directory:r||i?.path||``,projectId:i?.id??null})?.catch(e=>{console.warn(`[mini-chat-shortcuts] failed to open draft mini chat window`,e)});return}if(k(e,o(`new_chat`))){e.preventDefault(),a({selectedProjectId:i?.id??null,directoryOverride:r||i?.path||null,preserveDirectoryOverride:!!(r||i?.path)}),$e();return}if(k(e,o(`open_model_selector`))){e.preventDefault();let{isModelSelectorOpen:t,setModelSelectorOpen:n}=d.getState();n(!t,{instant:!0});return}if(k(e,o(`cycle_thinking_variant`))){let t=C.getState();if(t.getCurrentModelVariants().length===0)return;e.preventDefault(),t.cycleCurrentVariant();let n=C.getState().currentVariant,r=S.getState().currentSessionId,i=C.getState().currentAgentName,a=C.getState().currentProviderId,o=C.getState().currentModelId;r&&i&&a&&o&&oe.getState().saveAgentModelVariantForSession(r,i,a,o,n),i&&a&&o&&C.getState().saveAgentModelSelection(i,a,o,n);return}let s=k(e,o(`cycle_favorite_model_forward`)),c=k(e,o(`cycle_favorite_model_backward`));if(s||c){let{favoriteModels:t,addRecentModel:n}=d.getState();if(t.length===0)return;e.preventDefault();let{currentProviderId:r,currentModelId:i,providers:a,setProvider:o,setModel:c,setCurrentVariant:l}=C.getState(),u=t[(t.findIndex(e=>e.providerID===r&&e.modelID===i)+(s?1:-1)+t.length)%t.length];o(u.providerID),c(u.modelID);let f=a.find(e=>e.id===u.providerID)?.models?.find(e=>e.id===u.modelID),p=f?.variants?Object.keys(f.variants):[],m=u.variant!==void 0&&p.includes(u.variant)?u.variant:void 0;l(m),n(u.providerID,u.modelID,m)}};return window.addEventListener(`keydown`,s),()=>window.removeEventListener(`keydown`,s)},[i?.id,i?.path,r,a,e])},tt=`openchamber:mini-chat-presence`,nt=()=>{let e=typeof window<`u`?new URLSearchParams(window.location.search):new URLSearchParams;return{mode:e.get(`mode`)===`session`?`session`:`draft`,sessionId:e.get(`sessionId`)?.trim()||null,directory:e.get(`directory`)?.trim()||null,projectId:e.get(`projectId`)?.trim()||null}},rt=({config:e})=>{let t=ae(),n=l(e=>e.currentDirectory),r=l(e=>e.setDirectory),i=ie(e=>e.projects),a=S(e=>e.currentSessionId),o=S(e=>!!e.newSessionDraft?.open),s=S(e=>e.newSessionDraft?.open?e.newSessionDraft.bootstrapPendingDirectory??e.newSessionDraft.directoryOverride??``:``),c=S(e=>e.setCurrentSession),u=S(e=>e.openNewSessionDraft),d=C(e=>e.initializeApp),f=C(e=>e.isInitialized),p=xe();j.useEffect(()=>{d()},[d]),j.useEffect(()=>{if(f)return;let e=!0,t=0,n=window.setInterval(()=>{if(e){if(t+=1,t>10){window.clearInterval(n);return}C.getState().isInitialized||C.getState().initializeApp()}},1e3);return()=>{e=!1,window.clearInterval(n)}},[f]);let _=j.useRef(!1);j.useEffect(()=>{if(!_.current&&e.mode===`session`&&e.directory){if(n===e.directory){_.current=!0;return}r(e.directory,{showOverlay:!1}),_.current=!0}},[e.directory,e.mode,n,r]),j.useEffect(()=>{e.mode!==`draft`||!o||a||!s||n===s||r(s,{showOverlay:!1})},[e.mode,n,a,s,o,r]),me({enabled:!0,source:`electronMiniChat:recovery`});let v=j.useRef(!1);j.useEffect(()=>{if(v.current||e.mode!==`session`||!e.sessionId)return;if(a===e.sessionId){v.current=!0;return}if(a){v.current=!0;return}let n=t.find(t=>t.id===e.sessionId);if(!n){p.ensureSessionRenderable(e.sessionId);return}let r=n.directory??e.directory;c(e.sessionId,r),v.current=!0},[e,a,t,c,p]);let y=g(t),b=h(e=>{let t=e.detail,n=typeof t?.sessionId==`string`?t.sessionId.trim():``;if(!n||S.getState().currentSessionId===n)return;let r=typeof t?.directory==`string`&&t.directory.trim().length>0?t.directory.trim():y.current.find(e=>e.id===n)?.directory??null;p.ensureSessionRenderable(n),c(n,r),v.current=!0});j.useEffect(()=>(window.addEventListener(`openchamber:open-session`,b),()=>window.removeEventListener(`openchamber:open-session`,b)),[b]),j.useEffect(()=>{e.mode!==`draft`||o||a||u({selectedProjectId:e.projectId,directoryOverride:e.directory,preserveDirectoryOverride:!!e.directory})},[e,a,o,u]),j.useEffect(()=>{if(i.length===0)return;let e=!1;return(async()=>{await Promise.all(i.map(async t=>{let n=t.path.replace(/\\/g,`/`).replace(/\/+$/,``);if(n)try{if(!(Oe.getState().directories.get(n)?.isGitRepo??await m(()=>import(`./gitApi-0zlv_uGd.js`).then(e=>e.S).then(e=>e.checkIsGitRepository(n)),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27])))||e)return;await Se({id:t.id,path:n},{isCurrent:()=>!e})}catch{}}))})(),()=>{e=!0}},[i]);let x=j.useRef(!1);return j.useEffect(()=>{if(x.current||!f)return;let t=()=>{if(x.current)return;x.current=!0;let e=typeof document<`u`?document.getElementById(`initial-loading`):null;e&&(e.classList.add(`fade-out`),window.setTimeout(()=>e.remove(),300))},n=e.mode===`session`?a===e.sessionId:o,r=window.setTimeout(t,n?100:1500);return()=>window.clearTimeout(r)},[f,e.mode,e.sessionId,a,o]),null},it=()=>{let e=(0,A.c)(4),t=S(ft),n=l(pt),r,i;return e[0]!==n||e[1]!==t?(r=()=>{if(!t||!n||typeof BroadcastChannel>`u`)return;let e=new BroadcastChannel(tt),r=r=>{e.postMessage({type:`mini-chat-session-presence`,sessionId:t,directory:n,viewed:r})};r(!0);let i=window.setInterval(()=>r(!0),5e3),a=()=>r(!1);return window.addEventListener(`beforeunload`,a),()=>{window.clearInterval(i),window.removeEventListener(`beforeunload`,a),r(!1),e.close()}},i=[n,t],e[0]=n,e[1]=t,e[2]=r,e[3]=i):(r=e[2],i=e[3]),j.useEffect(r,i),null},at=e=>{let t=(0,A.c)(6),n=ae(),r=S(mt),[i,a]=j.useState(!1),o,s;return t[0]!==e.mode||t[1]!==e.sessionId||t[2]!==r||t[3]!==n?(o=()=>{if(e.mode!==`session`||!e.sessionId||r===e.sessionId){a(!1);return}if(n.some(t=>t.id===e.sessionId)){a(!1);return}let t=window.setTimeout(()=>a(!0),5e3);return()=>window.clearTimeout(t)},s=[e.mode,e.sessionId,r,n],t[0]=e.mode,t[1]=e.sessionId,t[2]=r,t[3]=n,t[4]=o,t[5]=s):(o=t[4],s=t[5]),j.useEffect(o,s),i};function ot(e){let t=(0,A.c)(16),{apis:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=nt(),t[0]=r):r=t[0];let a=r,o=l(ut),s=S(lt),c=S(ct),d,f;t[1]===o?(d=t[2],f=t[3]):(d=()=>{u.setDirectory(o||a.directory||void 0)},f=[a.directory,o],t[1]=o,t[2]=d,t[3]=f),j.useEffect(d,f);let p,m;t[4]===n?(p=t[5],m=t[6]):(p=()=>(i(n),st),m=[n],t[4]=n,t[5]=p,t[6]=m),j.useEffect(p,m),O(),et();let h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h={enabled:!0},t[7]=h):h=t[7],E(h),ve();let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g=u.getSdkClient(),t[8]=g):g=t[8];let _=o||a.directory||``,v=!(c&&s===null),y;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,M.jsx)(Ce,{delayDuration:300,skipDelayDuration:150,children:(0,M.jsxs)(`div`,{className:`h-full text-foreground bg-background`,children:[(0,M.jsx)(dt,{config:a}),(0,M.jsx)(_e,{})]})}),t[9]=y):y=t[9];let b;t[10]===n?b=t[11]:(b=(0,M.jsx)(be,{apis:n,children:y}),t[10]=n,t[11]=b);let x;return t[12]!==b||t[13]!==_||t[14]!==v?(x=(0,M.jsx)(we,{children:(0,M.jsx)(ee,{sdk:g,directory:_,bootstrapDirectory:v,children:b})}),t[12]=b,t[13]=_,t[14]=v,t[15]=x):x=t[15],x}function st(){return i(null)}function ct(e){return!!e.newSessionDraft?.open}function lt(e){return e.currentSessionId}function ut(e){return e.currentDirectory}var dt=e=>{let t=(0,A.c)(11),{config:n}=e,r=at(n),i;t[0]===n?i=t[1]:(i=(0,M.jsx)(rt,{config:n}),t[0]=n,t[1]=i);let a,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,M.jsx)(it,{}),o=(0,M.jsx)(ge,{embeddedBackgroundWorkEnabled:!0}),t[2]=a,t[3]=o):(a=t[2],o=t[3]);let s=n.mode===`draft`,c;t[4]!==n.mode||t[5]!==r||t[6]!==s?(c=(0,M.jsx)(Ie,{mode:n.mode,autoOpenDraft:s,unavailable:r}),t[4]=n.mode,t[5]=r,t[6]=s,t[7]=c):c=t[7];let l;return t[8]!==i||t[9]!==c?(l=(0,M.jsxs)(M.Fragment,{children:[i,a,o,c]}),t[8]=i,t[9]=c,t[10]=l):l=t[10],l};function ft(e){return e.currentSessionId}function pt(e){return e.currentDirectory}function mt(e){return e.currentSessionId}var ht=()=>{x(),o().then(()=>{Promise.all([a(),ce()]).catch(e=>{console.error(`[mini-chat-main] settings init failed:`,e)}),de(),he(),ye()}).catch(e=>{console.error(`[mini-chat-main] appearance init failed:`,e)})};function gt(e){ht();let t=document.getElementById(`root`);if(!t)throw Error(`Root element not found`);(0,Ne.createRoot)(t).render((0,M.jsx)(j.StrictMode,{children:(0,M.jsx)(le,{children:(0,M.jsx)(v,{children:(0,M.jsx)(ue,{children:(0,M.jsx)(fe,{children:(0,M.jsx)(pe,{children:(0,M.jsx)(T,{children:(0,M.jsx)(ot,{apis:e})})})})})})})}))}export{gt as renderElectronMiniChatApp};
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/gitApi-DJiNTnOw.js","assets/rolldown-runtime-C0FnF6B9.js","assets/runtime-switch-BJM2k_uH.js","assets/runtime-auth-D66yq6ie.js","assets/runtime-fetch-CiqQd__Y.js","assets/persistence-CwHY3fDg.js","assets/vendor-zustand-DzRqcymP.js","assets/vendor-base-ui-CnHfUmDN.js","assets/useUIStore-DNkuudYO.js","assets/vendor-react-DLPElpoQ.js","assets/vendor-pathe-vBmvQE8f.js","assets/vendor-tanstack-query-core-BWz0ose6.js","assets/platform-Bxaalnc8.js","assets/vendor-opencode-client-MF2GBrFx.js","assets/vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js","assets/useMobileNavigationStore-Bww4SOiv.js","assets/vendor-tanstack-react-query-D7pys_c9.js","assets/vendor-sonner-DVzioF3d.js","assets/vendor-reactuses-core-Dq5ocTF8.js","assets/vendor-lodash-es-DfLbG5Af.js","assets/vendor-js-cookie-hSOiFTtX.js","assets/button-CcOoDLE1.js","assets/store-l_X_jQNz.js","assets/vendor-class-variance-authority-BLUaYARZ.js","assets/vendor-tailwind-merge-BicNWLTg.js","assets/useAssistantUIStore-CXj8c_tt.js","assets/vendor-zod-Dzk5kdUU.js","assets/vendor-fuse.js-DB5wDJbI.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{Ht as t,en as n,in as r,kn as i,n as a,t as o}from"./persistence-CwHY3fDg.js";import{nt as s,rt as c}from"./vendor-base-ui-CnHfUmDN.js";import{Ct as l,Nt as u}from"./platform-Bxaalnc8.js";import{n as d}from"./useUIStore-DNkuudYO.js";import{n as f,t as p}from"./vendor-react-DLPElpoQ.js";import{o as m}from"./vendor-aparajita-capacitor-secure-storage-CjQdwfjS.js";/* empty css */import{n as h,s as g}from"./vendor-reactuses-core-Dq5ocTF8.js";import{f as _,m as v,r as y,t as b}from"./button-CcOoDLE1.js";import{n as x}from"./store-l_X_jQNz.js";import{Pt as ee,S as te,cn as ne,d as S,pa as C,tn as re,to as ie,vn as ae,ya as oe}from"./useMobileNavigationStore-Bww4SOiv.js";import{n as se}from"./Icon-BE2hkaYc.js";import{Bt as ce,Ct as le,Dt as ue,E as w,Et as de,Ft as T,Nt as fe,Pt as pe,St as me,T as E,Tt as he,a as ge,bt as _e,st as D,t as O,w as ve,wt as ye,xt as be,yt as xe}from"./useAppFontEffects-CU_CeyJe.js";import{s as Se}from"./projectMeta-ClpG1g5k.js";import{r as Ce}from"./tooltip-CBHR50fA.js";import{Ct as we,ft as k,gt as Te}from"./useSessionAutoCleanup--P_vAP6v.js";import{n as Ee}from"./useRuntimeAPIs-DSLXJybW.js";import{d as De,y as Oe}from"./insertionBoundaries-BZ4y7_dO.js";import{i as ke,n as Ae,r as je,t as Me}from"./useDesktopWindowControlsLayout-D5pQxhEz.js";var Ne=p(),A=f(),j=e(c(),1),M=s(),Pe=e=>{let t=(0,A.c)(3),{mode:n,children:r}=e,i;return t[0]!==r||t[1]!==n?(i=(0,M.jsx)(D.Provider,{value:n,children:r}),t[0]=r,t[1]=n,t[2]=i):i=t[2],i},Fe=e=>{let t=typeof e==`string`?e.trim():``;if(!t)return``;let n=typeof window<`u`?window.__OPENCHAMBER_HOME__:``;if(n&&t===n)return`~`;if(n&&t.startsWith(`${n}/`))return`~/${t.slice(n.length+1)}`;let r=t.split(`/`).filter(Boolean);return r.length<=3?t:`.../${r.slice(-3).join(`/`)}`},N=e=>{let t=typeof e==`string`?e.trim():``;if(!t)return``;let n=t.replace(/\\/g,`/`);return n===`/`?`/`:n.replace(/\/+$/,``)},P=e=>{let t=(0,A.c)(117),{mode:i}=e,{t:a}=_(),o=S(Le),s=S(Re),c=S(ze),u=l(Be),d=ie(Ve),f=ie(He),p=C(Ue),m=C(We),h=ae(),g=ne(o??``),v=Ee(),x=Oe(Ge),ee;t[0]===o?ee=t[1]:(ee=e=>o?e.worktreeMetadata.get(o)?.path??``:``,t[0]=o,t[1]=ee);let oe=S(ee),ce;t[2]===o?ce=t[3]:(ce=e=>o?e.worktreeMetadata.get(o)?.branch?.trim()??null:null,t[2]=o,t[3]=ce);let le=S(ce),ue;t[4]===o?ue=t[5]:(ue=e=>o?e.getAttachment(o):void 0,t[4]=o,t[5]=ue);let w=te(ue),de=S(Ke),[T,fe]=j.useState(!1),pe=typeof window<`u`?window.__OPENCHAMBER_MACOS_MAJOR__??0:0,me=Number.isFinite(pe)&&pe>0,{usesFramelessChrome:E,side:he}=Me(),ge=me?pe>=26?`h-12`:pe<=15?`h-14`:``:``,_e;t[6]!==o||t[7]!==h?(_e=o?h.find(e=>e.id===o)??null:null,t[6]=o,t[7]=h,t[8]=_e):_e=t[8];let D=_e,O=D?.worktreeMetadata??null,ve,ye;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(ve=()=>{r()&&n(`desktop_get_window_pinned`).then(e=>{typeof e?.pinned==`boolean`&&fe(e.pinned)})},ye=[],t[9]=ve,t[10]=ye):(ve=t[9],ye=t[10]),j.useEffect(ve,ye);let be;t[11]!==s||t[12]!==i||t[13]!==D?.title||t[14]!==a?(be=D?.title?.trim()||a(s||i===`draft`?`miniChat.header.newSession`:`miniChat.header.session`),t[11]=s,t[12]=i,t[13]=D?.title,t[14]=a,t[15]=be):be=t[15];let xe=be,Se=D?.directory??null,Ce;t[16]===Se?Ce=t[17]:(Ce=N(Se),t[16]=Se,t[17]=Ce);let we=Ce,k=oe||O?.path||w?.cwd||w?.worktreeRoot||``,Te;t[18]===k?Te=t[19]:(Te=N(k),t[18]=k,t[19]=Te);let Ne=Te,Pe;t[20]===u?Pe=t[21]:(Pe=N(u),t[20]=u,t[21]=Pe);let P=Ne||we||de||Pe,Ie;t[22]===P?Ie=t[23]:(Ie=Fe(P),t[22]=P,t[23]=Ie);let $e=Ie,et;t[24]!==we||t[25]!==Ne?(et=e=>{let t=N(Ne||we||``);if(!t)return null;for(let n of e.availableWorktreesByProject.values()){let e=n.find(e=>N(e.path)===t)?.branch?.trim();if(e)return e}return null},t[24]=we,t[25]=Ne,t[26]=et):et=t[26];let tt=S(et),nt,rt;t[27]!==x||t[28]!==P||t[29]!==v.git?(nt=()=>{P&&x(P,v.git).catch(qe)},rt=[x,P,v.git],t[27]=x,t[28]=P,t[29]=v.git,t[30]=nt,t[31]=rt):(nt=t[30],rt=t[31]),j.useEffect(nt,rt),O?.projectDirectory,w?.worktreeRoot;let it;bb0:{let e=O?.projectDirectory??w?.worktreeRoot??null,n;t[32]===e?n=t[33]:(n=N(e),t[32]=e,t[33]=n);let r=n||P;if(!r){it=null;break bb0}let i;t[34]!==r||t[35]!==d?(i=d.map(Je).filter(e=>e.normalizedPath&&(e.normalizedPath===r||r.startsWith(`${e.normalizedPath}/`))).sort(Ye)[0]??null,t[34]=r,t[35]=d,t[36]=i):i=t[36],it=i}let at=it,ot;bb1:{let e=at??f;if(!e){ot=$e||`OpenChamber`;break bb1}let n;t[37]===e.path?n=t[38]:(n=e.path.split(/[\\/]/).filter(Boolean).at(-1)??e.path,t[37]=e.path,t[38]=n),ot=n}let st=ot,ct=De(P||null),lt;t[39]!==tt||t[40]!==ct||t[41]!==O?.branch||t[42]!==w?.branch||t[43]!==le?(lt=ct||le||O?.branch?.trim()||w?.branch?.trim()||tt,t[39]=tt,t[40]=ct,t[41]=O?.branch,t[42]=w?.branch,t[43]=le,t[44]=lt):lt=t[44];let ut=lt,dt=ut&&ut!==`HEAD`?ut:null,ft;t[45]===p?ft=t[46]:(ft=p(),t[45]=p,t[46]=ft);let pt=ft,mt;bb2:{for(let e=g.length-1;e>=0;--e){let t=g[e];if(t.role!==`assistant`||typeof t.providerID!=`string`||typeof t.modelID!=`string`)continue;let n=m.find(e=>e.id===t.providerID)?.models.find(e=>e.id===t.modelID);if(n){mt=n;break bb2}}mt=void 0}let ht=mt,gt=pt?.limit?pt:ht,F=gt&&typeof gt.limit==`object`&>.limit!==null?gt.limit:null,_t=F&&typeof F.context==`number`?F.context:0,vt=F&&typeof F.output==`number`?F.output:0,I=re(o??``,_t,vt),[L,yt]=j.useState(null),bt;t[47]===Symbol.for(`react.memo_cache_sentinel`)?(bt={WebkitAppRegion:`drag`},t[47]=bt):bt=t[47];let xt=bt,St;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(St={WebkitAppRegion:`no-drag`},t[48]=St):St=t[48];let Ct=St,wt,Tt;t[49]!==I||t[50]!==o?(wt=()=>{if(!o){yt(Xe);return}if(I){yt(e=>e&&e.pending===I.pending&&e.totalTokens===I.totalTokens&&e.percentage===I.percentage&&e.contextLimit===I.contextLimit&&(e.outputLimit??0)===(I.outputLimit??0)&&(e.normalizedOutput??0)===(I.normalizedOutput??0)&&e.thresholdLimit===I.thresholdLimit&&e.lastMessageId===I.lastMessageId?e:I);return}yt(Ze)},Tt=[I,o],t[49]=I,t[50]=o,t[51]=wt,t[52]=Tt):(wt=t[51],Tt=t[52]),j.useEffect(wt,Tt);let Et=L&&L.contextLimit>0?Math.min(999,L.totalTokens/L.contextLimit*100):0,Dt;t[53]===T?Dt=t[54]:(Dt=()=>{let e=!T;fe(e),n(`desktop_set_window_pinned`,{pinned:e}).catch(()=>{fe(!e)})},t[53]=T,t[54]=Dt);let Ot=Dt,kt;t[55]!==u||t[56]!==o||t[57]!==c||t[58]!==P||t[59]!==D?(kt=()=>{let e=o?{sessionId:o,directory:D?.directory??u??``}:{mode:`draft`,directory:P||u||``,projectId:c};n(`desktop_focus_main_window`,e).then(Qe)},t[55]=u,t[56]=o,t[57]=c,t[58]=P,t[59]=D,t[60]=kt):kt=t[60];let At=kt,jt=E?`h-12`:ge||`min-h-14`,R;t[61]===jt?R=t[62]:(R=y(`flex items-center gap-3 bg-background pr-3`,me?`pl-[5.5rem]`:`pl-3`,jt),t[61]=jt,t[62]=R);let z;t[63]!==E||t[64]!==he?(z=E&&he===`left`?(0,M.jsx)(je,{visible:!0,position:`left`}):null,t[63]=E,t[64]=he,t[65]=z):z=t[65];let B;t[66]===a?B=t[67]:(B=a(`sessions.switcher.openAria`),t[66]=a,t[67]=B);let V;t[68]===xe?V=t[69]:(V=(0,M.jsx)(`span`,{className:`truncate typography-ui-label text-[14px] font-normal leading-tight text-foreground max-w-full`,children:xe}),t[68]=xe,t[69]=V);let H;t[70]===st?H=t[71]:(H=(0,M.jsx)(`span`,{className:`truncate`,children:st}),t[70]=st,t[71]=H);let U;t[72]===dt?U=t[73]:(U=dt?(0,M.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-0.5`,children:[(0,M.jsx)(se,{name:`git-branch`,className:`h-3 w-3 flex-shrink-0 text-muted-foreground/70`}),(0,M.jsx)(`span`,{className:`truncate`,children:dt})]}):null,t[72]=dt,t[73]=U);let W;t[74]!==H||t[75]!==U?(W=(0,M.jsxs)(`span`,{className:`flex min-w-0 max-w-full items-center gap-1.5 truncate typography-micro text-[10.5px] font-normal leading-tight text-muted-foreground/75`,children:[H,U]}),t[74]=H,t[75]=U,t[76]=W):W=t[76];let G;t[77]!==B||t[78]!==V||t[79]!==W?(G=(0,M.jsx)(Ae,{children:(0,M.jsxs)(`button`,{type:`button`,"aria-label":B,style:Ct,className:`flex min-w-0 max-w-full flex-col items-start rounded-md px-1 py-0.5 text-left transition-colors hover:bg-interactive-hover/60 focus-visible:outline-none focus-visible:bg-interactive-hover/60`,children:[V,W]})}),t[77]=B,t[78]=V,t[79]=W,t[80]=G):G=t[80];let Mt;t[81]===Symbol.for(`react.memo_cache_sentinel`)?(Mt=(0,M.jsx)(`div`,{className:`min-w-0 flex-1`}),t[81]=Mt):Mt=t[81];let K;t[82]!==Et||t[83]!==L?(K=L?(0,M.jsx)(ke,{pending:L.pending,totalTokens:L.totalTokens,percentage:Et,colorPercentage:L.percentage,contextLimit:L.contextLimit,outputLimit:L.outputLimit??0,className:`h-9 shrink-0 pl-1 pr-1 typography-ui-label`,valueClassName:`font-semibold leading-none`,hideIcon:!0,showPercentIcon:!0,percentIconClassName:`h-4.5 w-4.5`}):null,t[82]=Et,t[83]=L,t[84]=K):K=t[84];let q;t[85]!==T||t[86]!==a?(q=a(T?`miniChat.actions.unpinAria`:`miniChat.actions.pinAria`),t[85]=T,t[86]=a,t[87]=q):q=t[87];let J;t[88]!==T||t[89]!==a?(J=a(T?`miniChat.actions.unpin`:`miniChat.actions.pin`),t[88]=T,t[89]=a,t[90]=J):J=t[90];let Y;t[91]===T?Y=t[92]:(Y=T?(0,M.jsx)(se,{name:`pushpin-2-fill`,className:`h-4 w-4`}):(0,M.jsx)(se,{name:`pushpin-2`,className:`h-4 w-4`}),t[91]=T,t[92]=Y);let X;t[93]!==Ot||t[94]!==q||t[95]!==J||t[96]!==Y?(X=(0,M.jsx)(b,{type:`button`,variant:`ghost`,size:`icon`,onClick:Ot,"aria-label":q,title:J,style:Ct,children:Y}),t[93]=Ot,t[94]=q,t[95]=J,t[96]=Y,t[97]=X):X=t[97];let Z;t[98]===a?Z=t[99]:(Z=a(`miniChat.actions.openMainAria`),t[98]=a,t[99]=Z);let Q;t[100]===a?Q=t[101]:(Q=a(`miniChat.actions.openMain`),t[100]=a,t[101]=Q);let Nt;t[102]===Symbol.for(`react.memo_cache_sentinel`)?(Nt=(0,M.jsx)(se,{name:`external-link`,className:`h-4 w-4`}),t[102]=Nt):Nt=t[102];let $;t[103]!==At||t[104]!==Z||t[105]!==Q?($=(0,M.jsx)(b,{type:`button`,variant:`ghost`,size:`icon`,onClick:At,"aria-label":Z,title:Q,style:Ct,children:Nt}),t[103]=At,t[104]=Z,t[105]=Q,t[106]=$):$=t[106];let Pt=E&&he===`right`,Ft;t[107]===Pt?Ft=t[108]:(Ft=(0,M.jsx)(je,{visible:Pt,position:`right`}),t[107]=Pt,t[108]=Ft);let It;return t[109]!==R||t[110]!==z||t[111]!==G||t[112]!==K||t[113]!==X||t[114]!==$||t[115]!==Ft?(It=(0,M.jsxs)(`header`,{className:R,style:xt,children:[z,G,Mt,K,X,$,Ft]}),t[109]=R,t[110]=z,t[111]=G,t[112]=K,t[113]=X,t[114]=$,t[115]=Ft,t[116]=It):It=t[116],It},Ie=e=>{let t=(0,A.c)(9),{mode:n,autoOpenDraft:r,unavailable:i}=e,a=r!==void 0&&r,o=i!==void 0&&i,{t:s}=_(),c;t[0]===n?c=t[1]:(c=(0,M.jsx)(P,{mode:n}),t[0]=n,t[1]=c);let l;t[2]!==a||t[3]!==s||t[4]!==o?(l=(0,M.jsx)(`main`,{className:`min-h-0 flex-1`,children:o?(0,M.jsx)(`div`,{className:`flex h-full items-center justify-center px-6 text-center typography-ui-label text-muted-foreground`,children:(0,M.jsxs)(`div`,{className:`max-w-sm rounded-lg border border-[var(--interactive-border)] bg-[var(--surface-elevated)] px-4 py-3`,children:[(0,M.jsx)(`div`,{className:`font-medium text-foreground`,children:s(`miniChat.unavailable.title`)}),(0,M.jsx)(`div`,{className:`mt-1 typography-small text-muted-foreground`,children:s(`miniChat.unavailable.description`)})]})}):(0,M.jsx)(Pe,{mode:`mini-chat`,children:(0,M.jsx)(w,{autoOpenDraft:a})})}),t[2]=a,t[3]=s,t[4]=o,t[5]=l):l=t[5];let u;return t[6]!==c||t[7]!==l?(u=(0,M.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col bg-background text-foreground`,children:[c,l]}),t[6]=c,t[7]=l,t[8]=u):u=t[8],u};function Le(e){return e.currentSessionId}function Re(e){return!!e.newSessionDraft?.open}function ze(e){return e.newSessionDraft?.selectedProjectId??null}function Be(e){return e.currentDirectory}function Ve(e){return e.projects}function He(e){return e.getActiveProject()}function Ue(e){return e.getCurrentModel}function We(e){return e.providers}function Ge(e){return e.ensureStatus}function Ke(e){return e.newSessionDraft?.open?N(e.newSessionDraft.bootstrapPendingDirectory??e.newSessionDraft.directoryOverride??``):``}function qe(){}function Je(e){return{...e,normalizedPath:N(e.path)}}function Ye(e,t){return t.path.length-e.path.length}function Xe(e){return e===null?e:null}function Ze(e){return e===null?e:null}function Qe(e){return e?.focused===!0?n(`desktop_close_current_window`):null}var $e=()=>{document.querySelector(`textarea[data-chat-input="true"]`)?.focus()},et=()=>{let e=d(e=>e.shortcutOverrides),r=l(e=>e.currentDirectory),i=ie(e=>e.getActiveProject()),a=S(e=>e.openNewSessionDraft);j.useEffect(()=>{let o=t=>Te(t,e),s=e=>{if(k(e,o(`focus_input`))){e.preventDefault(),$e();return}if(t()&&k(e,o(`close_context_panel_tab`))){e.preventDefault(),n(`desktop_close_current_window`).catch(e=>{console.warn(`[mini-chat-shortcuts] failed to close current window`,e)});return}if(t()&&k(e,o(`new_mini_chat`))){e.preventDefault(),n(`desktop_open_draft_mini_chat_window`,{directory:r||i?.path||``,projectId:i?.id??null})?.catch(e=>{console.warn(`[mini-chat-shortcuts] failed to open draft mini chat window`,e)});return}if(k(e,o(`new_chat`))){e.preventDefault(),a({selectedProjectId:i?.id??null,directoryOverride:r||i?.path||null,preserveDirectoryOverride:!!(r||i?.path)}),$e();return}if(k(e,o(`open_model_selector`))){e.preventDefault();let{isModelSelectorOpen:t,setModelSelectorOpen:n}=d.getState();n(!t,{instant:!0});return}if(k(e,o(`cycle_thinking_variant`))){let t=C.getState();if(t.getCurrentModelVariants().length===0)return;e.preventDefault(),t.cycleCurrentVariant();let n=C.getState().currentVariant,r=S.getState().currentSessionId,i=C.getState().currentAgentName,a=C.getState().currentProviderId,o=C.getState().currentModelId;r&&i&&a&&o&&oe.getState().saveAgentModelVariantForSession(r,i,a,o,n),i&&a&&o&&C.getState().saveAgentModelSelection(i,a,o,n);return}let s=k(e,o(`cycle_favorite_model_forward`)),c=k(e,o(`cycle_favorite_model_backward`));if(s||c){let{favoriteModels:t,addRecentModel:n}=d.getState();if(t.length===0)return;e.preventDefault();let{currentProviderId:r,currentModelId:i,providers:a,setProvider:o,setModel:c,setCurrentVariant:l}=C.getState(),u=t[(t.findIndex(e=>e.providerID===r&&e.modelID===i)+(s?1:-1)+t.length)%t.length];o(u.providerID),c(u.modelID);let f=a.find(e=>e.id===u.providerID)?.models?.find(e=>e.id===u.modelID),p=f?.variants?Object.keys(f.variants):[],m=u.variant!==void 0&&p.includes(u.variant)?u.variant:void 0;l(m),n(u.providerID,u.modelID,m)}};return window.addEventListener(`keydown`,s),()=>window.removeEventListener(`keydown`,s)},[i?.id,i?.path,r,a,e])},tt=`openchamber:mini-chat-presence`,nt=()=>{let e=typeof window<`u`?new URLSearchParams(window.location.search):new URLSearchParams;return{mode:e.get(`mode`)===`session`?`session`:`draft`,sessionId:e.get(`sessionId`)?.trim()||null,directory:e.get(`directory`)?.trim()||null,projectId:e.get(`projectId`)?.trim()||null}},rt=({config:e})=>{let t=ae(),n=l(e=>e.currentDirectory),r=l(e=>e.setDirectory),i=ie(e=>e.projects),a=S(e=>e.currentSessionId),o=S(e=>!!e.newSessionDraft?.open),s=S(e=>e.newSessionDraft?.open?e.newSessionDraft.bootstrapPendingDirectory??e.newSessionDraft.directoryOverride??``:``),c=S(e=>e.setCurrentSession),u=S(e=>e.openNewSessionDraft),d=C(e=>e.initializeApp),f=C(e=>e.isInitialized),p=xe();j.useEffect(()=>{d()},[d]),j.useEffect(()=>{if(f)return;let e=!0,t=0,n=window.setInterval(()=>{if(e){if(t+=1,t>10){window.clearInterval(n);return}C.getState().isInitialized||C.getState().initializeApp()}},1e3);return()=>{e=!1,window.clearInterval(n)}},[f]);let _=j.useRef(!1);j.useEffect(()=>{if(!_.current&&e.mode===`session`&&e.directory){if(n===e.directory){_.current=!0;return}r(e.directory,{showOverlay:!1}),_.current=!0}},[e.directory,e.mode,n,r]),j.useEffect(()=>{e.mode!==`draft`||!o||a||!s||n===s||r(s,{showOverlay:!1})},[e.mode,n,a,s,o,r]),me({enabled:!0,source:`electronMiniChat:recovery`});let v=j.useRef(!1);j.useEffect(()=>{if(v.current||e.mode!==`session`||!e.sessionId)return;if(a===e.sessionId){v.current=!0;return}if(a){v.current=!0;return}let n=t.find(t=>t.id===e.sessionId);if(!n){p.ensureSessionRenderable(e.sessionId);return}let r=n.directory??e.directory;c(e.sessionId,r),v.current=!0},[e,a,t,c,p]);let y=g(t),b=h(e=>{let t=e.detail,n=typeof t?.sessionId==`string`?t.sessionId.trim():``;if(!n||S.getState().currentSessionId===n)return;let r=typeof t?.directory==`string`&&t.directory.trim().length>0?t.directory.trim():y.current.find(e=>e.id===n)?.directory??null;p.ensureSessionRenderable(n),c(n,r),v.current=!0});j.useEffect(()=>(window.addEventListener(`openchamber:open-session`,b),()=>window.removeEventListener(`openchamber:open-session`,b)),[b]),j.useEffect(()=>{e.mode!==`draft`||o||a||u({selectedProjectId:e.projectId,directoryOverride:e.directory,preserveDirectoryOverride:!!e.directory})},[e,a,o,u]),j.useEffect(()=>{if(i.length===0)return;let e=!1;return(async()=>{await Promise.all(i.map(async t=>{let n=t.path.replace(/\\/g,`/`).replace(/\/+$/,``);if(n)try{if(!(Oe.getState().directories.get(n)?.isGitRepo??await m(()=>import(`./gitApi-DJiNTnOw.js`).then(e=>e.S).then(e=>e.checkIsGitRepository(n)),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27])))||e)return;await Se({id:t.id,path:n},{isCurrent:()=>!e})}catch{}}))})(),()=>{e=!0}},[i]);let x=j.useRef(!1);return j.useEffect(()=>{if(x.current||!f)return;let t=()=>{if(x.current)return;x.current=!0;let e=typeof document<`u`?document.getElementById(`initial-loading`):null;e&&(e.classList.add(`fade-out`),window.setTimeout(()=>e.remove(),300))},n=e.mode===`session`?a===e.sessionId:o,r=window.setTimeout(t,n?100:1500);return()=>window.clearTimeout(r)},[f,e.mode,e.sessionId,a,o]),null},it=()=>{let e=(0,A.c)(4),t=S(ft),n=l(pt),r,i;return e[0]!==n||e[1]!==t?(r=()=>{if(!t||!n||typeof BroadcastChannel>`u`)return;let e=new BroadcastChannel(tt),r=r=>{e.postMessage({type:`mini-chat-session-presence`,sessionId:t,directory:n,viewed:r})};r(!0);let i=window.setInterval(()=>r(!0),5e3),a=()=>r(!1);return window.addEventListener(`beforeunload`,a),()=>{window.clearInterval(i),window.removeEventListener(`beforeunload`,a),r(!1),e.close()}},i=[n,t],e[0]=n,e[1]=t,e[2]=r,e[3]=i):(r=e[2],i=e[3]),j.useEffect(r,i),null},at=e=>{let t=(0,A.c)(6),n=ae(),r=S(mt),[i,a]=j.useState(!1),o,s;return t[0]!==e.mode||t[1]!==e.sessionId||t[2]!==r||t[3]!==n?(o=()=>{if(e.mode!==`session`||!e.sessionId||r===e.sessionId){a(!1);return}if(n.some(t=>t.id===e.sessionId)){a(!1);return}let t=window.setTimeout(()=>a(!0),5e3);return()=>window.clearTimeout(t)},s=[e.mode,e.sessionId,r,n],t[0]=e.mode,t[1]=e.sessionId,t[2]=r,t[3]=n,t[4]=o,t[5]=s):(o=t[4],s=t[5]),j.useEffect(o,s),i};function ot(e){let t=(0,A.c)(16),{apis:n}=e,r;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(r=nt(),t[0]=r):r=t[0];let a=r,o=l(ut),s=S(lt),c=S(ct),d,f;t[1]===o?(d=t[2],f=t[3]):(d=()=>{u.setDirectory(o||a.directory||void 0)},f=[a.directory,o],t[1]=o,t[2]=d,t[3]=f),j.useEffect(d,f);let p,m;t[4]===n?(p=t[5],m=t[6]):(p=()=>(i(n),st),m=[n],t[4]=n,t[5]=p,t[6]=m),j.useEffect(p,m),O(),et();let h;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(h={enabled:!0},t[7]=h):h=t[7],E(h),ve();let g;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(g=u.getSdkClient(),t[8]=g):g=t[8];let _=o||a.directory||``,v=!(c&&s===null),y;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,M.jsx)(Ce,{delayDuration:300,skipDelayDuration:150,children:(0,M.jsxs)(`div`,{className:`h-full text-foreground bg-background`,children:[(0,M.jsx)(dt,{config:a}),(0,M.jsx)(_e,{})]})}),t[9]=y):y=t[9];let b;t[10]===n?b=t[11]:(b=(0,M.jsx)(be,{apis:n,children:y}),t[10]=n,t[11]=b);let x;return t[12]!==b||t[13]!==_||t[14]!==v?(x=(0,M.jsx)(we,{children:(0,M.jsx)(ee,{sdk:g,directory:_,bootstrapDirectory:v,children:b})}),t[12]=b,t[13]=_,t[14]=v,t[15]=x):x=t[15],x}function st(){return i(null)}function ct(e){return!!e.newSessionDraft?.open}function lt(e){return e.currentSessionId}function ut(e){return e.currentDirectory}var dt=e=>{let t=(0,A.c)(11),{config:n}=e,r=at(n),i;t[0]===n?i=t[1]:(i=(0,M.jsx)(rt,{config:n}),t[0]=n,t[1]=i);let a,o;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,M.jsx)(it,{}),o=(0,M.jsx)(ge,{embeddedBackgroundWorkEnabled:!0}),t[2]=a,t[3]=o):(a=t[2],o=t[3]);let s=n.mode===`draft`,c;t[4]!==n.mode||t[5]!==r||t[6]!==s?(c=(0,M.jsx)(Ie,{mode:n.mode,autoOpenDraft:s,unavailable:r}),t[4]=n.mode,t[5]=r,t[6]=s,t[7]=c):c=t[7];let l;return t[8]!==i||t[9]!==c?(l=(0,M.jsxs)(M.Fragment,{children:[i,a,o,c]}),t[8]=i,t[9]=c,t[10]=l):l=t[10],l};function ft(e){return e.currentSessionId}function pt(e){return e.currentDirectory}function mt(e){return e.currentSessionId}var ht=()=>{x(),o().then(()=>{Promise.all([a(),ce()]).catch(e=>{console.error(`[mini-chat-main] settings init failed:`,e)}),de(),he(),ye()}).catch(e=>{console.error(`[mini-chat-main] appearance init failed:`,e)})};function gt(e){ht();let t=document.getElementById(`root`);if(!t)throw Error(`Root element not found`);(0,Ne.createRoot)(t).render((0,M.jsx)(j.StrictMode,{children:(0,M.jsx)(le,{children:(0,M.jsx)(v,{children:(0,M.jsx)(ue,{children:(0,M.jsx)(fe,{children:(0,M.jsx)(pe,{children:(0,M.jsx)(T,{children:(0,M.jsx)(ot,{apis:e})})})})})})})}))}export{gt as renderElectronMiniChatApp};
|