@bd7pil/ocrc 0.13.2 → 0.13.4

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.
@@ -1,3 +0,0 @@
1
- import"../chunks/CWj6FrbW.js";import{q as wa,r as Qe,z as dt,p as Ct,f as Ie,j as Ft,d as ka,a as yt,b as st,c as wt,e as kt,C as Nt,A as Ot,n as xa,B as jt,l as aa,k as va,m as Aa,g as Kt,v as $a,o as Ia,E as Sa,h as Wt,u as za,t as Ca,G as Ta,x as sa,D as Jt,F as Ma,s as qa}from"../chunks/B_Up4G-w.js";import{ai as La,ag as Ea,a1 as At,b4 as r,a_ as da,aa as Ba,aJ as Da,am as Oa,aE as Ye,ap as Q,aO as s,V as oe,a8 as e,aq as nt,J as a,aK as t,aU as n,aw as vt,a$ as Y,aR as M,a3 as P,w as h,aB as Ge,au as _,Z as mt,a6 as w,M as gt,a4 as We,b0 as Pt,b8 as ja,b5 as bt,$ as Mt,aI as Pa,ay as Qt,Q as Fa,b1 as Ra,a7 as ua,az as Yt,av as na,a9 as zt}from"../chunks/BjY4dxcB.js";import{i as U,a as Ee,s as ot}from"../chunks/DIEDQ_hk.js";import{m as pa,g as Lt,I as xt,v as ge,u as De,r as $t,d as Ht,B as Ua,A as Wa,h as et,a as Ja,t as ft,c as _t,w as lt,n as Gt,k as Vt,q as It,z as Na,b as ra,p as fa,o as St,C as Ka,y as Ha,j as ha,l as Bt,i as la}from"../chunks/C2LbbY8g.js";import{p as Le,b as Rt}from"../chunks/C2FuqD3s.js";import{g as Zt,a as Qa}from"../chunks/Cj_IUago.js";function Ya(q,v,b,S,D){var I;La&&Ea();var i=(I=v.$$slots)==null?void 0:I[b],L=!1;i===!0&&(i=v.children,L=!0),i===void 0||i(q,L?()=>S:S)}function Xt(q,v,b){At(()=>{var S=r(()=>v(q,b==null?void 0:b())||{});if(S!=null&&S.destroy)return()=>S.destroy()})}function Ga(q,v,b){var S=Ba(q,v);S&&S.set&&(q[v]=b,da(()=>{q[v]=null}))}function Va(q,v,b,S,D){var i=()=>{S(b[q])};b.addEventListener(v,i),D?Da(()=>{b[q]=D()}):i(),(b===document.body||b===window||b===document)&&da(()=>{b.removeEventListener(v,i)})}function Za(q,v){var i;var b=(i=q.$$events)==null?void 0:i[v.type],S=Oa(b)?b.slice():b==null?[]:[b];for(var D of S)D.call(this,v)}const Xa=!1,es=!1,ts="always",ll=Object.freeze(Object.defineProperty({__proto__:null,prerender:es,ssr:Xa,trailingSlash:ts},Symbol.toStringTag,{value:"Module"})),oa=[2e3,4e3,8e3,16e3,3e4];function as(q){const v=wa();if(!v)return q;const b=q.includes("?")?"&":"?";return`${q}${b}token=${encodeURIComponent(v)}`}function ss(q){let v=null,b=0,S=null,D=null,i=null,L=0,I=!1,x=!1;const u=[];function m(E){var R;Lt.set(E),(R=q.onStatus)==null||R.call(q,E)}function k(){S&&(clearTimeout(S),S=null),D&&(clearTimeout(D),D=null),i&&(clearTimeout(i),i=null)}function z(){D=setTimeout(()=>{(v==null?void 0:v.readyState)===WebSocket.OPEN&&(L=performance.now(),v.send(JSON.stringify({type:"ping"})),i=setTimeout(()=>{v==null||v.close(),j()},45e3))},25e3)}function $(){if(!I){m("reconnecting");try{v=new WebSocket(as(q.url))}catch{j();return}v.onopen=()=>{var E;b=0,m("connected");for(const R of u.splice(0))v==null||v.send(R);x&&((E=q.onReconnect)==null||E.call(q)),x=!0,z()},v.onmessage=E=>{var R;try{const X=JSON.parse(E.data);if(X.type==="pong"){i&&(clearTimeout(i),i=null),L&&pa.set(Math.round(performance.now()-L)),z();return}(R=q.onMessage)==null||R.call(q,X)}catch{}},v.onclose=()=>{k(),I||j()},v.onerror=()=>{v==null||v.close()}}}function j(){if(k(),I)return;m("reconnecting");const E=oa[Math.min(b,oa.length-1)];b+=1,S=setTimeout(()=>void $(),E)}return $(),{send(E){const R=JSON.stringify(E);(v==null?void 0:v.readyState)===WebSocket.OPEN?v.send(R):u.push(R)},close(){I=!0,k(),u.length=0,v==null||v.close(),v=null,m("offline")}}}let ia=new Map;const Tt=new Set;let ba,qt,Dt=!1;function ea(){if(typeof document>"u")return;const q=document.title.replace(/^(🔔 [\d]+ 新动态 — )/,"")||"ocrc";if(Tt.size===0){qt&&(clearInterval(qt),qt=void 0),Dt=!1,document.title=q;return}qt||(document.title=`🔔 ${Tt.size} 新动态 — ${q}`,qt=setInterval(()=>{Dt=!Dt,document.title=Dt?`🔔 ${Tt.size} 新动态 — ${q}`:q},1200))}function ns(q){ba=q,q&&(Tt.delete(q),ea())}function rs(q){for(const v of q){const b=ia.get(v.id);ia.set(v.id,v.lastActiveAt),!(b===void 0||v.id===ba)&&v.lastActiveAt>b+1500&&(Tt.add(v.id),ea())}}typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&(Tt.clear(),ea())});var ls=w('<span class="dot-ring svelte-hhath1"></span>'),os=w('<span class="connection-latency mono svelte-hhath1"> </span>'),is=w('<button class="install svelte-hhath1">Install</button>'),cs=w('<header class="titlebar svelte-hhath1"><button aria-label="Sessions"><!></button> <div class="brand svelte-hhath1" title="ocrc"><svg class="brand-mark svelte-hhath1" viewBox="0 0 64 64" fill="none" stroke-width="8" stroke-linecap="round" aria-hidden="true"><path d="M46 15 A24 24 0 1 0 54 32" stroke="var(--text)"></path><circle cx="49" cy="20" r="6" fill="var(--accent)" stroke="none"></circle></svg> <span class="wordmark svelte-hhath1"><b class="svelte-hhath1">ocrc</b></span></div> <button class="new-session svelte-hhath1" title="新建会话、命令面板…"><span class="new-icon svelte-hhath1" aria-hidden="true">+</span> <span class="new-label svelte-hhath1">新建</span> <span class="new-caret svelte-hhath1" aria-hidden="true"><!></span></button> <button class="palette-trigger svelte-hhath1" title="搜索会话与命令 (⌘K)"><span class="palette-icon svelte-hhath1" aria-hidden="true"><!></span> <span class="palette-label svelte-hhath1">搜索会话与命令…</span> <kbd class="palette-keycap mono svelte-hhath1">⌘K</kbd></button> <span class="spacer svelte-hhath1"></span> <button class="themebtn svelte-hhath1" title="机器人与通道" aria-label="机器人与通道"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="10" rx="2"></rect><circle cx="12" cy="5" r="2"></circle><path d="M12 7v4"></path><path d="M8 16h0M16 16h0"></path></svg></button> <button class="themebtn svelte-hhath1" aria-label="Toggle color theme"><!></button> <span><span class="dot-wrap svelte-hhath1" aria-hidden="true"><span class="dot svelte-hhath1"></span> <!></span> <span class="connection-state svelte-hhath1"> </span> <!></span> <!> <button aria-label="Inspector"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><line x1="4" y1="7" x2="20" y2="7"></line><line x1="4" y1="12" x2="20" y2="12"></line><line x1="4" y1="17" x2="14" y2="17"></line></svg></button> <div class="user svelte-hhath1"><span class="user-email mono svelte-hhath1"> </span> <span class="avatar mono svelte-hhath1" aria-hidden="true"> </span></div></header>');function vs(q,v){Ye(v,!1);const b=()=>Ee(Wa,"$theme",i),S=()=>Ee(Lt,"$connection",i),D=()=>Ee(pa,"$latency",i),[i,L]=ot(),I=_(),x=_();let u=Le(v,"email",8,""),m=Le(v,"onPalette",8),k=Le(v,"installEvent",8,null),z=Le(v,"onInstall",8,()=>{}),$=Le(v,"drawerLeft",8,!1),j=Le(v,"drawerRight",8,!1),E=Le(v,"onToggleLeft",8,()=>{}),R=Le(v,"onToggleRight",8,()=>{}),X=Le(v,"newButtonAnchor",12,null);function ae(C){return C==="connected"?"live":C==="reconnecting"?"reconnecting":"offline"}Q(()=>oe(u()),()=>{s(I,u()||"you@local")}),Q(()=>e(I),()=>{s(x,e(I).charAt(0).toUpperCase())}),nt(),Qe();var ee=cs(),O=a(ee);let se;var N=a(O);xt(N,{name:"menu",size:18}),t(O);var G=n(O,4),pe=n(a(G),4),Ae=a(pe);xt(Ae,{name:"caret-down",size:9}),t(pe),t(G),Rt(G,C=>X(C),()=>X());var ye=n(G,2),le=a(ye),we=a(le);xt(we,{name:"search",size:14}),t(le),vt(4),t(ye);var g=n(ye,4),c=n(g,2),o=a(c);{let C=mt(()=>b()==="light"?"moon":"sun");xt(o,{get name(){return e(C)},size:15})}t(c);var p=n(c,2),l=a(p),y=n(a(l),2);{var Z=C=>{var W=ls();h(C,W)};U(y,C=>{S()==="connected"&&C(Z)})}t(l);var ie=n(l,2),ke=a(ie,!0);t(ie);var $e=n(ie,2);{var te=C=>{var W=os(),ue=a(W);t(W),Y(()=>M(ue,`${D()??""}ms`)),h(C,W)};U($e,C=>{S()==="connected"&&C(te)})}t(p);var de=n(p,2);{var qe=C=>{var W=is();P("click",W,function(...ue){var Se;(Se=z())==null||Se.apply(this,ue)}),h(C,W)};U(de,C=>{k()&&C(qe)})}var Fe=n(de,2);let Pe;var d=n(Fe,2),B=a(d),re=a(B,!0);t(B);var me=n(B,2),f=a(me,!0);t(me),t(d),t(ee),Y((C,W)=>{se=ge(O,1,"iconbtn svelte-hhath1",null,se,{active:$()}),De(c,"title",b()==="light"?"Switch to dark":"Switch to light"),ge(p,1,`connection-pill ${S()??""}`,"svelte-hhath1"),De(p,"title",`WebSocket: ${C??""}`),M(ke,W),Pe=ge(Fe,1,"iconbtn svelte-hhath1",null,Pe,{active:j()}),M(re,e(I)),M(f,e(x))},[()=>(S(),r(()=>ae(S()))),()=>(S(),r(()=>ae(S())))]),P("click",O,function(...C){var W;(W=E())==null||W.apply(this,C)}),P("click",G,()=>$t.update(C=>!C)),P("click",ye,function(...C){var W;(W=m())==null||W.apply(this,C)}),P("click",g,()=>Ht.set(!0)),P("click",c,function(...C){var W;(W=Ua)==null||W.apply(this,C)}),P("click",Fe,function(...C){var W;(W=R())==null||W.apply(this,C)}),h(q,ee),Ge(),L()}var ds=w('<div role="status"><!></div>');function us(q){const v=()=>Ee(Lt,"$connection",b),[b,S]=ot();var D=gt(),i=We(D);{var L=I=>{var x=ds();let u;var m=a(x);{var k=$=>{var j=Pt("Reconnecting…");h($,j)},z=$=>{var j=Pt("Offline — live updates paused");h($,j)};U(m,$=>{v()==="reconnecting"?$(k):$(z,-1)})}t(x),Y(()=>u=ge(x,1,"banner svelte-l46k7l",null,u,{offline:v()==="offline"})),h(I,x)};U(i,I=>{v()!=="connected"&&I(L)})}h(q,D),S()}const _a="ocrc.pinnedSessions";function ps(){if(typeof localStorage>"u")return[];try{const q=localStorage.getItem(_a),v=q?JSON.parse(q):[];return Array.isArray(v)?v.filter(b=>typeof b=="string"):[]}catch{return[]}}function fs(q){if(!(typeof localStorage>"u"))try{localStorage.setItem(_a,JSON.stringify(q))}catch{}}function hs(){const{subscribe:q,update:v}=ja(ps());return{subscribe:q,toggle(b){v(S=>{const D=S.includes(b)?S.filter(i=>i!==b):[...S,b];return fs(D),D})}}}const ca=hs();function bs(q,v){return v?q.filter(b=>(b.directory??"")===v):q}var _s=w('<input class="rename-input svelte-1h8243g" placeholder="Session title" aria-label="Session title"/>'),ms=w('<span class="pin-dot svelte-1h8243g" aria-label="已钉住">●</span>'),gs=w('<span class="title svelte-1h8243g"> </span> <!> <span class="actions svelte-1h8243g"><button class="act rename svelte-1h8243g" title="重命名会话" aria-label="重命名会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h9"></path><path d="M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"></path></svg></button> <button aria-label="钉住会话"><svg width="13" height="13" viewBox="0 0 24 24" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M9 4h6l-1 6 3 3v2H7v-2l3-3-1-6z"></path><line x1="12" y1="15" x2="12" y2="21"></line></svg></button> <button class="act trash svelte-1h8243g" title="删除会话" aria-label="删除会话"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><path d="M3 6h18M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6M10 11v6M14 11v6M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"></path></svg></button></span>',1),ys=w('<span class="sep svelte-1h8243g">·</span><span class="repo svelte-1h8243g"> </span>',1),ws=w('<span class="add svelte-1h8243g"> </span>'),ks=w('<span class="del svelte-1h8243g"> </span>'),xs=w('<span class="sep svelte-1h8243g">·</span> <!> <!>',1),As=w('<div class="progress svelte-1h8243g" aria-hidden="true"><span class="progress-fill svelte-1h8243g"></span></div>'),$s=w('<a><div class="line1 svelte-1h8243g"><span><span class="sr-only svelte-1h8243g"> </span></span> <!></div> <div class="meta mono svelte-1h8243g"><span class="id svelte-1h8243g"> </span> <!> <span class="sep svelte-1h8243g">·</span><span> </span> <!></div> <!></a>'),Is=w('<div class="group-header mono svelte-1h8243g"><span class="gh-label svelte-1h8243g"> </span> <span class="gh-line svelte-1h8243g" aria-hidden="true"></span> <span class="gh-count svelte-1h8243g"> </span></div> <!>',1),Ss=w('<div class="empty mono svelte-1h8243g"> </div>'),zs=w('<div class="sidebar svelte-1h8243g"><!> <!></div>');function Cs(q,v){Ye(v,!1);const b=()=>Ee(dt,"$sessionList",I),S=()=>Ee(Ct,"$feeds",I),D=()=>Ee(Lt,"$connection",I),i=()=>Ee(Ja,"$activeWorkspace",I),L=()=>Ee(ca,"$pinnedSessions",I),[I,x]=ot(),u=_(),m=_(),k=_(),z=_(),$=_(),j=_(),E=_();let R=Le(v,"activeId",8,void 0),X=Le(v,"onSelect",8,void 0),ae=Le(v,"agentId",8,void 0),ee=Le(v,"agentName",8,void 0);const O=24*60*60*1e3;function se(d,B){return B==="connected"&&Date.now()-d<O}function N(d,B){const re=B[d];if(!re||re.order.length===0)return!1;const me=re.byId[re.order[re.order.length-1]];return(me==null?void 0:me.kind)==="thinking"||(me==null?void 0:me.kind)==="streaming"||(me==null?void 0:me.kind)==="think-stream"}function G(d,B){const re=B[d];if(!re||re.order.length===0)return!1;const me=re.byId[re.order[re.order.length-1]];return(me==null?void 0:me.kind)==="approval"}function pe(d,B,re){return N(d.id,B)?"busy":G(d.id,B)?"wait":se(d.lastActiveAt,re)?"idle":"offline"}function Ae(d){const B=Date.now()-d,re=Math.floor(B/6e4);if(re<1)return"now";if(re<60)return`${re}m`;const me=Math.floor(re/60);return me<24?`${me}h`:`${Math.floor(me/24)}d`}function ye(d){return(d.includes("_")?d.slice(d.indexOf("_")+1):d).slice(-8)}function le(d){if(!d)return"";const B=d.replace(/\/+$/,"").split("/");return B[B.length-1]||""}function we(d,B){X()&&(d.preventDefault(),X()(B))}function g(d,B){d.preventDefault(),d.stopPropagation(),ca.toggle(B)}let c=_(null),o=_(""),p=_(null);function l(d,B){d.preventDefault(),d.stopPropagation(),s(c,B.id),s(o,B.title||"")}function y(){s(c,null),s(o,"")}async function Z(d){const B=e(o).trim();if(!B||e(p)){y();return}s(p,d);try{await Ie.renameSession(d,B),dt.set(await Ie.sessions())}catch(re){alert(`重命名失败:${re.message}`)}finally{s(p,null),s(c,null),s(o,"")}}function ie(d,B){d.key==="Enter"?(d.preventDefault(),Z(B)):d.key==="Escape"&&(d.preventDefault(),y())}function ke(d){d.focus(),d.select()}let $e=_(null);async function te(d,B){if(d.preventDefault(),d.stopPropagation(),!e($e)&&confirm("Delete this session? This cannot be undone.")){s($e,B);try{await Ie.deleteSession(B),dt.set(await Ie.sessions()),R()===B&&Zt("/")}catch(re){alert(`删除失败:${re.message}`)}finally{s($e,null)}}}Q(()=>(b(),S(),D()),()=>{s(u,new Map(b().map(d=>[d.id,pe(d,S(),D())])))}),Q(()=>(oe(ae()),b()),()=>{s(m,ae()?b().filter(d=>d.backendId===ae()||!d.backendId&&ae()==="opencode"):b())}),Q(()=>(e(m),i()),()=>{s(k,bs(e(m),i()))}),Q(()=>e(k),()=>{s(z,[...e(k)].sort((d,B)=>B.lastActiveAt-d.lastActiveAt))}),Q(()=>(e(z),L()),()=>{s($,e(z).filter(d=>L().includes(d.id)))}),Q(()=>(e(z),L()),()=>{s(j,e(z).filter(d=>!L().includes(d.id)))}),Q(()=>(e($),e(j)),()=>{s(E,[{key:"pinned",label:"Pinned",rows:e($)},{key:"recent",label:"Recent",rows:e(j)}])}),nt(),Qe();var de=zs(),qe=a(de);et(qe,1,()=>e(E),d=>d.key,(d,B)=>{var re=gt(),me=We(re);{var f=C=>{var W=Is(),ue=We(W),Se=a(ue),Te=a(Se,!0);t(Se);var K=n(Se,4),V=a(K,!0);t(K),t(ue);var H=n(ue,2);et(H,1,()=>(e(B),r(()=>e(B).rows)),fe=>fe.id,(fe,T)=>{var he=$s();let A;var F=a(he),ce=a(F),ze=a(ce),ne=a(ze,!0);t(ze),t(ce);var ve=n(ce,2);{var Oe=be=>{var _e=_s();ft(_e),At(()=>_t(_e,()=>e(o),xe=>s(o,xe))),Xt(_e,xe=>ke==null?void 0:ke(xe)),At(()=>P("click",_e,xe=>xe.preventDefault())),At(()=>P("keydown",_e,xe=>ie(xe,e(T).id))),At(()=>P("blur",_e,()=>Z(e(T).id))),Y(()=>_e.disabled=(e(p),e(T),r(()=>e(p)===e(T).id))),h(be,_e)},Be=be=>{var _e=gs(),xe=We(_e),at=a(xe,!0);t(xe);var He=n(xe,2);{var ut=pt=>{var Ut=ms();h(pt,Ut)},rt=bt(()=>(L(),e(T),r(()=>L().includes(e(T).id))));U(He,pt=>{e(rt)&&pt(ut)})}var it=n(He,2),ct=a(it),ht=n(ct,2);let Et;var ga=a(ht);t(ht);var ta=n(ht,2);t(it),Y((pt,Ut,ya)=>{M(at,(e(T),r(()=>e(T).title||"Untitled session"))),Et=ge(ht,1,"act pin svelte-1h8243g",null,Et,pt),De(ht,"title",Ut),De(ga,"fill",ya),ta.disabled=(e($e),e(T),r(()=>e($e)===e(T).id))},[()=>({on:L().includes(e(T).id)}),()=>(L(),e(T),r(()=>L().includes(e(T).id)?"取消钉住":"钉住")),()=>(L(),e(T),r(()=>L().includes(e(T).id)?"currentColor":"none"))]),P("click",ct,pt=>l(pt,e(T))),P("click",ht,pt=>g(pt,e(T).id)),P("click",ta,pt=>te(pt,e(T).id)),h(be,_e)};U(ve,be=>{e(c),e(T),r(()=>e(c)===e(T).id)?be(Oe):be(Be,-1)})}t(F);var J=n(F,2),Ve=a(J),Je=a(Ve,!0);t(Ve);var Ne=n(Ve,2);{var Ce=be=>{var _e=ys(),xe=n(We(_e)),at=a(xe,!0);t(xe),Y(He=>M(at,He),[()=>(e(T),r(()=>le(e(T).directory)))]),h(be,_e)},je=bt(()=>(e(T),r(()=>le(e(T).directory))));U(Ne,be=>{e(je)&&be(Ce)})}var tt=n(Ne,3),Re=a(tt,!0);t(tt);var Me=n(tt,2);{var Ue=be=>{var _e=xs(),xe=n(We(_e),2);{var at=rt=>{var it=ws(),ct=a(it);t(it),Y(()=>M(ct,`+${e(T),r(()=>e(T).additions)??""}`)),h(rt,it)};U(xe,rt=>{e(T),r(()=>e(T).additions)&&rt(at)})}var He=n(xe,2);{var ut=rt=>{var it=ks(),ct=a(it);t(it),Y(()=>M(ct,`−${e(T),r(()=>e(T).deletions)??""}`)),h(rt,it)};U(He,rt=>{e(T),r(()=>e(T).deletions)&&rt(ut)})}h(be,_e)};U(Me,be=>{e(T),r(()=>e(T).additions||e(T).deletions)&&be(Ue)})}t(J);var Ke=n(J,2);{var Ze=be=>{var _e=As();h(be,_e)},Xe=bt(()=>(e(u),e(T),r(()=>e(u).get(e(T).id)==="busy")));U(Ke,be=>{e(Xe)&&be(Ze)})}t(he),Y((be,_e,xe,at,He)=>{De(he,"href",`/${e(T),r(()=>e(T).id)??""}/`),A=ge(he,1,"session svelte-1h8243g",null,A,be),ge(ce,1,`dot ${_e??""}`,"svelte-1h8243g"),M(ne,xe),M(Je,at),M(Re,He)},[()=>({active:R()===e(T).id,busy:e(u).get(e(T).id)==="busy"}),()=>(e(u),e(T),r(()=>e(u).get(e(T).id)??"offline")),()=>(e(u),e(T),r(()=>e(u).get(e(T).id)??"offline")),()=>(e(T),r(()=>ye(e(T).id))),()=>(e(T),r(()=>Ae(e(T).lastActiveAt)))]),P("click",he,be=>we(be,e(T).id)),h(fe,he)}),Y(()=>{M(Te,(e(B),r(()=>e(B).label))),M(V,(e(B),r(()=>e(B).rows.length)))}),h(C,W)};U(me,C=>{e(B),r(()=>e(B).rows.length)&&C(f)})}h(d,re)});var Fe=n(qe,2);{var Pe=d=>{var B=Ss(),re=a(B);t(B),Y(()=>M(re,`no sessions on ${ee()??"this agent"??""} yet`)),h(d,B)};U(Fe,d=>{e(k),r(()=>e(k).length===0)&&d(Pe)})}t(de),h(q,de),Ge(),x()}var Ts=w('<span class="host mono svelte-wmno67"> </span>'),Ms=w('<button class="collapse svelte-wmno67" title="收起面板" aria-label="收起面板"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"></path></svg></button>'),qs=w('<span class="check svelte-wmno67">✓</span>'),Ls=w('<button><span class="row-tile svelte-wmno67"> </span> <span class="row-info svelte-wmno67"><span class="row-name mono svelte-wmno67"> </span> <span class="row-host mono svelte-wmno67"> </span></span> <span><span class="sr-only svelte-wmno67"> </span></span> <!></button>'),Es=w("<button></button>"),Bs=w('<div class="picker svelte-wmno67" role="dialog" aria-label="Agent 选择"><div class="picker-list svelte-wmno67"></div> <div class="picker-footer svelte-wmno67"><div class="theme-row svelte-wmno67"><span class="theme-label mono svelte-wmno67"> </span> <div class="swatches svelte-wmno67"><!> <button>auto</button></div></div></div></div>'),Ds=w('<button><span class="switch-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="switch-name mono svelte-wmno67"> </span> <span class="switch-count mono svelte-wmno67"> </span></button>'),Os=w('<div class="agents-label svelte-wmno67">Agents</div> <div class="switcher-row svelte-wmno67"></div>',1),js=w('<button class="mobile-search svelte-wmno67"><svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"></circle><path d="M21 21l-4.3-4.3"></path></svg> <span>搜索会话与命令</span></button>'),Ps=w('<div><div class="panel svelte-wmno67"><div class="header svelte-wmno67"><button class="agent-pill svelte-wmno67" aria-haspopup="true"><span class="glyph-tile svelte-wmno67"> </span> <span><span class="sr-only svelte-wmno67"> </span></span> <span class="name mono svelte-wmno67"> </span> <!> <span class="caret svelte-wmno67" aria-hidden="true"><!></span></button> <!> <!></div> <!> <!> <div class="list svelte-wmno67"><!></div> <div class="footer mono svelte-wmno67"><span> </span> <span class="sep svelte-wmno67">·</span> <span> </span></div></div></div>');function Fs(q,v){Ye(v,!1);const b=()=>Ee(Ft,"$backends",L),S=()=>Ee(dt,"$sessionList",L),D=()=>Ee(Lt,"$connection",L),i=()=>Ee(ka,"$accentOverrides",L),[L,I]=ot(),x=_(),u=_(),m=_(),k=_(),z=_(),$=_(),j=_(),E=_();let R=Le(v,"activeId",8,void 0),X=Le(v,"drawer",8,!1),ae=_(!1);function ee(A){const F=A.split(/[\s\-_:./]+/).filter(Boolean);return F.length>=2?(F[0][0]+F[1][0]).toUpperCase():A.slice(0,2).toUpperCase()}function O(A){return ee((A==null?void 0:A.name)||(A==null?void 0:A.id)||"OC")}function se(A){return A==="online"||A==="connected"?"online":A==="connecting"||A==="reconnecting"?"connecting":A==="offline"?"offline":"online"}async function N(A){s(ae,!1),await jt(A)}function G(){s(ae,!e(ae))}async function pe(A){await jt(A)}function Ae(A){A.key==="Escape"&&s(ae,!1)}const ye=24*60*60*1e3;function le(A,F){return F==="connected"&&Date.now()-A<ye}function we(A,F){return kt(F)}Q(()=>b(),()=>{var A,F,ce;s(x,((A=b())==null?void 0:A.activeId)??((ce=(F=b())==null?void 0:F.backends[0])==null?void 0:ce.id)??"opencode")}),Q(()=>(b(),e(x)),()=>{var A;s(u,(A=b())==null?void 0:A.backends.find(F=>F.id===e(x)))}),Q(()=>b(),()=>{var A;s(m,((A=b())==null?void 0:A.backends)??[])}),Q(()=>(b(),S()),()=>{var A;s(k,Object.fromEntries((((A=b())==null?void 0:A.backends)??[]).map(F=>[F.id,S().filter(ce=>ce.backendId===F.id||!ce.backendId&&F.id==="opencode").length])))}),Q(()=>(S(),e(x),D()),()=>{s(z,S().filter(A=>(A.backendId===e(x)||!A.backendId&&e(x)==="opencode")&&le(A.lastActiveAt,D())).length)}),Q(()=>(S(),e(x)),()=>{s($,S().filter(A=>(A.backendId===e(x)||!A.backendId&&e(x)==="opencode")&&(A.additions||A.deletions)).length)}),Q(()=>(i(),e(x)),()=>{s(j,we(i(),e(x)))}),Q(()=>(e(m),i()),()=>{s(E,Object.fromEntries(e(m).map(A=>[A.id,we(i(),A.id)])))}),nt(),Qe();var g=Ps();P("keydown",Mt,Ae);let c;var o=a(g),p=a(o),l=a(p),y=a(l),Z=a(y,!0);t(y);var ie=n(y,2),ke=a(ie),$e=a(ke,!0);t(ke),t(ie);var te=n(ie,2),de=a(te,!0);t(te);var qe=n(te,2);{var Fe=A=>{var F=Ts(),ce=a(F,!0);t(F),Y(()=>M(ce,(e(u),r(()=>e(u).host)))),h(A,F)};U(qe,A=>{e(u),r(()=>{var F;return(F=e(u))==null?void 0:F.host})&&A(Fe)})}var Pe=n(qe,2),d=a(Pe);xt(d,{name:"caret-down",size:11}),t(Pe),t(l);var B=n(l,2);{var re=A=>{var F=Ms();P("click",F,()=>Gt.set(!1)),h(A,F)};U(B,A=>{X()||A(re)})}var me=n(B,2);{var f=A=>{var F=Bs(),ce=a(F);et(ce,5,()=>e(m),Ne=>Ne.id,(Ne,Ce)=>{const je=mt(()=>(e(E),e(Ce),oe(kt),r(()=>e(E)[e(Ce).id]??kt(e(Ce).id)))),tt=mt(()=>(e(Ce),e(x),r(()=>e(Ce).id===e(x))));var Re=Ls();let Me;var Ue=a(Re),Ke=a(Ue,!0);t(Ue);var Ze=n(Ue,2),Xe=a(Ze),be=a(Xe,!0);t(Xe);var _e=n(Xe,2),xe=a(_e);t(_e),t(Ze);var at=n(Ze,2),He=a(at),ut=a(He,!0);t(He),t(at);var rt=n(at,2);{var it=ct=>{var ht=qs();h(ct,ht)};U(rt,ct=>{e(tt)&&ct(it)})}t(Re),Y((ct,ht,Et)=>{Me=ge(Re,1,"agent-row svelte-wmno67",null,Me,{selected:e(tt)}),lt(Ue,`background:${oe(yt),oe(e(je)),r(()=>yt[e(je)])??""}; color:${oe(st),oe(e(je)),r(()=>st[e(je)])??""}; border-color:${oe(wt),oe(e(je)),r(()=>wt[e(je)])??""}`),M(Ke,ct),M(be,(e(Ce),r(()=>e(Ce).name??e(Ce).id))),M(xe,`${e(Ce),r(()=>e(Ce).host??"local")??""} · ${e(k),e(Ce),r(()=>e(k)[e(Ce).id]??0)??""} ses`),ge(at,1,`status-dot ${ht??""}`,"svelte-wmno67"),lt(at,`--dot:${oe(st),oe(e(je)),r(()=>st[e(je)])??""}`),M(ut,Et)},[()=>(e(Ce),r(()=>O(e(Ce)))),()=>(e(Ce),r(()=>se(e(Ce).status))),()=>(e(Ce),r(()=>se(e(Ce).status)))]),P("click",Re,()=>N(e(Ce).id)),h(Ne,Re)}),t(ce);var ze=n(ce,2),ne=a(ze),ve=a(ne),Oe=a(ve);t(ve);var Be=n(ve,2),J=a(Be);et(J,1,()=>Ot,Vt,(Ne,Ce)=>{var je=Es();let tt;Y(()=>{tt=ge(je,1,"swatch svelte-wmno67",null,tt,{active:e(j)===e(Ce)}),De(je,"aria-label",`设置 ${e(Ce)??""} 主题`),lt(je,`background:${oe(st),e(Ce),r(()=>st[e(Ce)])??""}`)}),P("click",je,()=>Nt(e(x),e(Ce))),h(Ne,je)});var Ve=n(J,2);let Je;t(Be),t(ne),t(ze),t(F),Y(Ne=>{M(Oe,`Theme · ${e(u),r(()=>{var Ce,je;return((Ce=e(u))==null?void 0:Ce.name)??((je=e(u))==null?void 0:je.id)??"Agent"})??""}`),Je=ge(Ve,1,"auto svelte-wmno67",null,Je,Ne)},[()=>({active:e(j)===xa(e(x))})]),P("click",Ve,()=>Nt(e(x),null)),h(A,F)};U(me,A=>{e(ae)&&A(f)})}t(p);var C=n(p,2);{var W=A=>{var F=Os(),ce=n(We(F),2);et(ce,5,()=>e(m),ze=>ze.id,(ze,ne)=>{const ve=mt(()=>(e(E),e(ne),oe(kt),r(()=>e(E)[e(ne).id]??kt(e(ne).id))));var Oe=Ds();let Be;var J=a(Oe),Ve=a(J,!0);t(J);var Je=n(J,2),Ne=a(Je),Ce=a(Ne,!0);t(Ne),t(Je);var je=n(Je,2),tt=a(je,!0);t(je);var Re=n(je,2),Me=a(Re,!0);t(Re),t(Oe),Y((Ue,Ke,Ze)=>{Be=ge(Oe,1,"switch-pill svelte-wmno67",null,Be,{active:e(ne).id===e(x)}),lt(J,`background:${oe(yt),oe(e(ve)),r(()=>yt[e(ve)])??""}; color:${oe(st),oe(e(ve)),r(()=>st[e(ve)])??""}; border-color:${oe(wt),oe(e(ve)),r(()=>wt[e(ve)])??""}`),M(Ve,Ue),ge(Je,1,`status-dot ${Ke??""}`,"svelte-wmno67"),lt(Je,`--dot:${oe(st),oe(e(ve)),r(()=>st[e(ve)])??""}`),M(Ce,Ze),M(tt,(e(ne),r(()=>e(ne).name??e(ne).id))),M(Me,(e(k),e(ne),r(()=>e(k)[e(ne).id]??0)))},[()=>(e(ne),r(()=>O(e(ne)))),()=>(e(ne),r(()=>se(e(ne).status))),()=>(e(ne),r(()=>se(e(ne).status)))]),P("click",Oe,()=>pe(e(ne).id)),h(ze,Oe)}),t(ce),h(A,F)};U(C,A=>{oe(X()),e(m),r(()=>X()&&e(m).length>1)&&A(W)})}var ue=n(C,2);{var Se=A=>{var F=js();P("click",F,()=>It.set(!0)),h(A,F)};U(ue,A=>{X()&&A(Se)})}var Te=n(ue,2),K=a(Te);{let A=mt(()=>(e(u),r(()=>{var F,ce;return((F=e(u))==null?void 0:F.name)??((ce=e(u))==null?void 0:ce.id)})));Cs(K,{get activeId(){return R()},get agentId(){return e(x)},get agentName(){return e(A)}})}t(Te);var V=n(Te,2),H=a(V),fe=a(H);t(H);var T=n(H,4),he=a(T);t(T),t(V),t(o),t(g),Y((A,F,ce)=>{c=ge(g,1,"agent-panel svelte-wmno67",null,c,{drawer:X()}),De(l,"aria-expanded",e(ae)),lt(y,`background:${oe(yt),e(j),r(()=>yt[e(j)])??""}; color:${oe(st),e(j),r(()=>st[e(j)])??""}; border-color:${oe(wt),e(j),r(()=>wt[e(j)])??""}`),M(Z,A),ge(ie,1,`status-dot ${F??""}`,"svelte-wmno67"),lt(ie,`--dot:${oe(st),e(j),r(()=>st[e(j)])??""}`),M($e,ce),M(de,(e(u),r(()=>{var ze,ne;return((ze=e(u))==null?void 0:ze.name)??((ne=e(u))==null?void 0:ne.id)??"Agent"}))),M(fe,`${e(z)??""} 活跃`),M(he,`${e($)??""} 已推送`)},[()=>(e(u),r(()=>O(e(u)))),()=>(e(u),r(()=>{var A;return se((A=e(u))==null?void 0:A.status)})),()=>(e(u),r(()=>{var A;return se((A=e(u))==null?void 0:A.status)}))]),P("click",l,G),h(q,g),Ge(),I()}var Rs=w('<span class="meta svelte-1h1y2gb"> </span>'),Us=w('<div class="bar svelte-1h1y2gb"><div class="fill svelte-1h1y2gb"></div></div>'),Ws=w('<button type="button"><span class="box svelte-1h1y2gb"><span class="dot svelte-1h1y2gb"></span> <span class="check svelte-1h1y2gb">✓</span></span> <span class="tx svelte-1h1y2gb"> </span></button>'),Js=w('<div class="section-label svelte-1h1y2gb">暂无任务</div>'),Ns=w('<div class="task svelte-1h1y2gb"><div class="hd svelte-1h1y2gb"><span class="section-label svelte-1h1y2gb">任务</span> <!></div> <!> <div class="items svelte-1h1y2gb"><!> <!></div></div>');function Ks(q,v){Ye(v,!1);const b=_(),S=_(),D=_();let i=Le(v,"sessionId",8,void 0),L=Le(v,"tick",8,0),I=_({total:0,done:0,items:[]}),x=_(new Set),u;async function m(N){if(!N){s(I,{total:0,done:0,items:[]}),s(x,new Set);return}N!==u&&(u=N,s(x,new Set));try{const G=await Ie.todo(N);if(N!==i())return;s(I,Na(G))}catch{}}function k(N){e(x).has(N)?e(x).delete(N):e(x).add(N),s(x,e(x))}Q(()=>(oe(i()),oe(L())),()=>{m(i()),L()}),Q(()=>(e(I),e(x)),()=>{s(b,e(I).items.map((N,G)=>({...N,status:e(x).has(G)?N.status==="done"?"pending":"done":N.status})))}),Q(()=>e(b),()=>{s(S,e(b).filter(N=>N.status==="done").length)}),Q(()=>(e(I),e(S)),()=>{s(D,e(I).total?Math.round(e(S)/e(I).total*100):0)}),nt(),Qe();var z=Ns(),$=a(z),j=n(a($),2);{var E=N=>{var G=Rs(),pe=a(G);t(G),Y(()=>M(pe,`${e(S)??""}/${e(I),r(()=>e(I).total)??""}`)),h(N,G)};U(j,N=>{e(I),r(()=>e(I).total)&&N(E)})}t($);var R=n($,2);{var X=N=>{var G=Us(),pe=a(G);t(G),Y(()=>lt(pe,`transform:scaleX(${e(D)/100})`)),h(N,G)};U(R,N=>{e(I),r(()=>e(I).total)&&N(X)})}var ae=n(R,2),ee=a(ae);et(ee,3,()=>e(b),(N,G)=>N.text+"-"+G,(N,G,pe)=>{var Ae=Ws(),ye=n(a(Ae),2),le=a(ye,!0);t(ye),t(Ae),Y(()=>{ge(Ae,1,`row ${e(G),r(()=>e(G).status)??""}`,"svelte-1h1y2gb"),M(le,(e(G),r(()=>e(G).text)))}),P("click",Ae,()=>k(e(pe))),h(N,Ae)});var O=n(ee,2);{var se=N=>{var G=Js();h(N,G)};U(O,N=>{e(I),r(()=>e(I).total===0)&&N(se)})}t(ae),t(z),h(q,z),Ge()}var Hs=w('<div><span class="dot svelte-ehf8ic" aria-hidden="true"></span><span> </span><span class="sr-only svelte-ehf8ic"> </span></div>'),Qs=w('<div class="label">未配置</div>'),Ys=w('<div class="mcp svelte-ehf8ic"><div class="label">MCP</div> <div class="list svelte-ehf8ic"><!> <!></div></div>');function Gs(q,v){Ye(v,!1);let b=Le(v,"tick",8,0),S=_([]);async function D(){try{s(S,await Ie.mcp())}catch{}}Q(()=>oe(b()),()=>{D(),b()}),nt(),Qe();var i=Ys(),L=n(a(i),2),I=a(L);et(I,1,()=>e(S),Vt,(m,k)=>{var z=Hs();let $;var j=n(a(z)),E=a(j,!0);t(j);var R=n(j),X=a(R,!0);t(R),t(z),Y(()=>{$=ge(z,1,"row svelte-ehf8ic",null,$,{off:e(k).status==="disabled"}),M(E,(e(k),r(()=>e(k).name))),M(X,(e(k),r(()=>e(k).status)))}),h(m,z)});var x=n(I,2);{var u=m=>{var k=Qs();h(m,k)};U(x,m=>{e(S),r(()=>e(S).length===0)&&m(u)})}t(L),t(i),h(q,i),Ge()}var Vs=w('<div><button><span class="dot svelte-pijcyq" aria-hidden="true"></span></button> <div class="txt svelte-pijcyq"><div class="prompt svelte-pijcyq"> </div> <div class="spec mono svelte-pijcyq"> </div></div> <button> </button></div>'),Zs=w('<div class="label svelte-pijcyq">暂无</div>'),Xs=w('<div class="err svelte-pijcyq"> </div>'),en=w('<div class="form svelte-pijcyq"><textarea class="prompt-in svelte-pijcyq" rows="2" placeholder="让 agent 做什么?"></textarea> <div class="kind svelte-pijcyq"><label><input type="radio" class="svelte-pijcyq"/> 每 <input class="num svelte-pijcyq" type="number" min="1" max="10080"/> 分钟</label> <label><input type="radio" class="svelte-pijcyq"/> 每天 <input class="time svelte-pijcyq" type="time"/></label></div> <!> <button class="go svelte-pijcyq">创建</button></div>'),tn=w('<div class="schedules svelte-pijcyq"><div class="hd svelte-pijcyq"><div class="label svelte-pijcyq">定时任务</div> <button class="add svelte-pijcyq"> </button></div> <div class="list svelte-pijcyq"><!> <!></div> <!></div>');function an(q,v){Ye(v,!1);const b=[];let S=Le(v,"tick",8,0),D=_([]),i=_(!1),L=_(""),I=_("every"),x=_(30),u=_("09:00"),m=_(""),k=_(),z;async function $(){try{s(D,(await Ie.schedules()).schedules??[])}catch{}}function j(g){return g.kind==="every"?g.minutes>=60&&g.minutes%60===0?`every ${g.minutes/60}h`:`every ${g.minutes}m`:`daily ${g.time}`}function E(g){return g.name||g.prompt}async function R(){if(!e(L).trim())return;s(m,"");const g=e(I)==="every"?{kind:"every",minutes:Math.max(1,Math.round(e(x)))}:{kind:"daily",time:e(u)};try{const c=await Ie.addSchedule({prompt:e(L).trim(),spec:g});if(c.error){s(m,c.error);return}s(L,""),s(i,!1),await $()}catch(c){s(m,c.message)}}async function X(g){s(D,e(D).map(c=>c.id===g.id?{...c,enabled:!c.enabled}:c));try{await Ie.setScheduleEnabled(g.id,!g.enabled),await $()}catch{await $()}}async function ae(g){if(e(k)!==g){s(k,g),clearTimeout(z),z=setTimeout(()=>s(k,void 0),3e3);return}clearTimeout(z),s(k,void 0);try{await Ie.deleteSchedule(g),await $()}catch{}}Q(()=>oe(S()),()=>{$(),S()}),nt(),Qe();var ee=tn(),O=a(ee),se=n(a(O),2),N=a(se,!0);t(se),t(O);var G=n(O,2),pe=a(G);et(pe,1,()=>e(D),g=>g.id,(g,c)=>{var o=Vs();let p;var l=a(o);let y;var Z=n(l,2),ie=a(Z),ke=a(ie,!0);t(ie);var $e=n(ie,2),te=a($e,!0);t($e),t(Z);var de=n(Z,2);let qe;var Fe=a(de,!0);t(de),t(o),Y((Pe,d,B,re)=>{p=ge(o,1,"row svelte-pijcyq",null,p,{off:!e(c).enabled}),y=ge(l,1,"switch svelte-pijcyq",null,y,{on:e(c).enabled}),De(l,"aria-pressed",(e(c),r(()=>e(c).enabled))),De(l,"aria-label",Pe),M(ke,d),M(te,B),qe=ge(de,1,"del svelte-pijcyq",null,qe,{arm:e(k)===e(c).id}),De(de,"aria-label",`删除 ${re??""}`),M(Fe,(e(k),e(c),r(()=>e(k)===e(c).id?"确认?":"✕")))},[()=>(e(c),r(()=>`${e(c).enabled?"停用":"启用"} ${E(e(c))}`)),()=>(e(c),r(()=>E(e(c)))),()=>(e(c),r(()=>j(e(c).spec))),()=>(e(c),r(()=>E(e(c))))]),P("click",l,()=>X(e(c))),P("click",de,()=>ae(e(c).id)),h(g,o)});var Ae=n(pe,2);{var ye=g=>{var c=Zs();h(g,c)};U(Ae,g=>{e(D),e(i),r(()=>e(D).length===0&&!e(i))&&g(ye)})}t(G);var le=n(G,2);{var we=g=>{var c=en(),o=a(c);Pa(o);var p=n(o,2),l=a(p);let y;var Z=a(l);ft(Z),Z.value=Z.__value="every";var ie=n(Z,2);ft(ie),vt(),t(l);var ke=n(l,2);let $e;var te=a(ke);ft(te),te.value=te.__value="daily";var de=n(te,2);ft(de),t(ke),t(p);var qe=n(p,2);{var Fe=d=>{var B=Xs(),re=a(B,!0);t(B),Y(()=>M(re,e(m))),h(d,B)};U(qe,d=>{e(m)&&d(Fe)})}var Pe=n(qe,2);t(c),Y(d=>{y=ge(l,1,"svelte-pijcyq",null,y,{sel:e(I)==="every"}),ie.disabled=e(I)!=="every",$e=ge(ke,1,"svelte-pijcyq",null,$e,{sel:e(I)==="daily"}),de.disabled=e(I)!=="daily",Pe.disabled=d},[()=>(e(L),r(()=>!e(L).trim()))]),_t(o,()=>e(L),d=>s(L,d)),ra(b,[],Z,()=>e(I),d=>s(I,d)),_t(ie,()=>e(x),d=>s(x,d)),ra(b,[],te,()=>e(I),d=>s(I,d)),_t(de,()=>e(u),d=>s(u,d)),P("click",Pe,R),h(g,c)};U(le,g=>{e(i)&&g(we)})}t(ee),Y(()=>{De(se,"aria-label",e(i)?"取消新建计划":"新建计划"),M(N,e(i)?"×":"+")}),P("click",se,()=>s(i,!e(i))),h(q,ee),Ge()}var sn=w('<div class="row svelte-taxat6"><span class="name svelte-taxat6"> </span></div>'),nn=w('<div class="rows svelte-taxat6"></div>'),rn=w('<div class="label svelte-taxat6">none</div>'),ln=w('<div class="skills svelte-taxat6"><div class="label svelte-taxat6">Skills</div> <div class="list svelte-taxat6"><!></div></div>');function on(q,v){Ye(v,!1);let b=Le(v,"tick",8,0),S=_([]);async function D(){try{s(S,(await Ie.skills()).skills??[])}catch{}}Q(()=>oe(b()),()=>{D(),b()}),nt(),Qe();var i=ln(),L=n(a(i),2),I=a(L);{var x=m=>{var k=nn();et(k,5,()=>e(S),z=>z.name,(z,$)=>{var j=sn(),E=a(j),R=a(E,!0);t(E),t(j),Y(()=>{De(j,"title",(e($),r(()=>e($).description))),M(R,(e($),r(()=>e($).name)))}),h(z,j)}),t(k),h(m,k)},u=m=>{var k=rn();h(m,k)};U(I,m=>{e(S),r(()=>e(S).length>0)?m(x):m(u,-1)})}t(L),t(i),h(q,i),Ge()}var cn=w('<button class="up svelte-tp0rgj" aria-label="上级目录"> </button>'),vn=w('<span class="mono"> </span>'),dn=w('<button class="row svelte-tp0rgj"><span class="ico svelte-tp0rgj"> </span> <span class="name svelte-tp0rgj"> </span></button>'),un=w('<div class="label svelte-tp0rgj">empty</div>'),pn=w('<div class="label svelte-tp0rgj">…</div>'),fn=w('<div class="preview-scrim svelte-tp0rgj" role="button" tabindex="0"><div class="preview svelte-tp0rgj" role="dialog" aria-label="File preview" tabindex="-1"><div class="p-hd svelte-tp0rgj"><span class="mono"> </span> <button class="p-close svelte-tp0rgj" aria-label="关闭预览">✕</button></div> <pre> </pre></div></div>'),hn=w('<div class="files svelte-tp0rgj"><div class="label svelte-tp0rgj">Files</div> <div class="crumb mono svelte-tp0rgj"><!></div> <div class="list svelte-tp0rgj"><!> <!> <!></div> <!></div>');function bn(q,v){Ye(v,!1);const b=()=>Ee(dt,"$sessionList",S),[S,D]=ot(),i=_();let L=Le(v,"sessionId",8,void 0),I=Le(v,"tick",8,0),x=_([]),u=_("."),m=_(null),k=_(!1),z=_(!1);async function $(){if(e(i)){s(z,!0);try{s(x,(await Ie.browse(e(i),e(u))).files??[])}catch{s(x,[])}finally{s(z,!1)}}}function j(){const c=e(u).replace(/(^|\/)[^/]+\/?$/,"")||".";s(u,c),$()}async function E(c){if(c.type==="directory"){s(u,c.path),await $();return}try{const o=await Ie.fileContent(e(i),c.path);if(o.type!=="text"){s(m,{path:c.path,content:"(二进制文件,无法预览)"}),s(k,!0);return}s(k,!1),s(m,{path:c.path,content:o.content.length>800?o.content.slice(0,800)+`
2
- …`:o.content})}catch{s(m,{path:c.path,content:"(读取失败)"}),s(k,!1)}}function R(){s(m,null),s(k,!1)}Q(()=>(b(),oe(L())),()=>{var c;s(i,((c=b().find(o=>o.id===L()))==null?void 0:c.directory)??"")}),Q(()=>(e(i),e(u),oe(I())),()=>{e(i)&&(e(i),e(u),I(),$())}),nt(),Qe();var X=hn(),ae=n(a(X),2),ee=a(ae);{var O=c=>{var o=cn(),p=a(o);t(o),Y(()=>M(p,`↰ ${e(u)??""}`)),P("click",o,j),h(c,o)},se=c=>{var o=vn(),p=a(o,!0);t(o),Y(l=>M(p,l),[()=>(e(i),r(()=>e(i).split("/").pop()||"/"))]),h(c,o)};U(ee,c=>{e(u)!=="."?c(O):c(se,-1)})}t(ae);var N=n(ae,2),G=a(N);et(G,1,()=>e(x),c=>c.path,(c,o)=>{var p=dn(),l=a(p),y=a(l,!0);t(l);var Z=n(l,2),ie=a(Z,!0);t(Z),t(p),Y(()=>{M(y,(e(o),r(()=>e(o).type==="directory"?"📁":"📄"))),M(ie,(e(o),r(()=>e(o).name)))}),P("click",p,()=>E(e(o))),h(c,p)});var pe=n(G,2);{var Ae=c=>{var o=un();h(c,o)};U(pe,c=>{e(z),e(x),r(()=>!e(z)&&e(x).length===0)&&c(Ae)})}var ye=n(pe,2);{var le=c=>{var o=pn();h(c,o)};U(ye,c=>{e(z)&&c(le)})}t(N);var we=n(N,2);{var g=c=>{var o=fn(),p=a(o),l=a(p),y=a(l),Z=a(y,!0);t(y);var ie=n(y,2);t(l);var ke=n(l,2);let $e;var te=a(ke,!0);t(ke),t(p),t(o),Y(()=>{M(Z,(e(m),r(()=>e(m).path))),$e=ge(ke,1,"p-body mono svelte-tp0rgj",null,$e,{binary:e(k)}),M(te,(e(m),r(()=>e(m).content)))}),P("click",ie,R),P("click",o,R),P("keydown",o,de=>de.key==="Escape"&&R()),h(c,o)};U(we,c=>{e(m)&&c(g)})}t(X),h(q,X),Ge(),D()}var _n=w('<div class="row svelte-148ev8e"><span class="ico svelte-148ev8e" aria-hidden="true">🌿</span> <span class="name svelte-148ev8e"> </span> <button> </button></div>'),mn=w('<div class="rows svelte-148ev8e"></div>'),gn=w('<div class="label svelte-148ev8e">none</div>'),yn=w('<div class="err svelte-148ev8e"> </div>'),wn=w('<div class="form svelte-148ev8e"><input class="name-in mono svelte-148ev8e" placeholder="worktree 名称"/> <!> <button class="go svelte-148ev8e">创建</button></div>'),kn=w('<div class="wt svelte-148ev8e"><div class="hd svelte-148ev8e"><div class="label svelte-148ev8e">Worktrees · beta</div> <button class="add svelte-148ev8e"> </button></div> <div class="list svelte-148ev8e"><!></div> <!></div>');function xn(q,v){Ye(v,!1);const b=()=>Ee(dt,"$sessionList",S),[S,D]=ot(),i=_();let L=Le(v,"sessionId",8,void 0),I=Le(v,"tick",8,0),x=_([]),u=_(!1),m=_(""),k=_(""),z=_(),$;async function j(){if(e(i))try{s(x,(await Ie.worktrees(e(i))).worktrees??[])}catch{}}async function E(){if(e(m).trim()){s(k,"");try{const le=await Ie.createWorktree(e(i),e(m).trim());if(le.error){s(k,le.error);return}s(m,""),s(u,!1),await j()}catch(le){s(k,le.message)}}}async function R(le){if(e(z)!==le){s(z,le),clearTimeout($),$=setTimeout(()=>s(z,void 0),3e3);return}clearTimeout($),s(z,void 0);try{await Ie.removeWorktree(e(i),le),await j()}catch{}}Q(()=>(b(),oe(L())),()=>{var le;s(i,((le=b().find(we=>we.id===L()))==null?void 0:le.directory)??"")}),Q(()=>(oe(I()),e(i)),()=>{j(),I(),e(i)}),nt(),Qe();var X=kn(),ae=a(X),ee=n(a(ae),2),O=a(ee,!0);t(ee),t(ae);var se=n(ae,2),N=a(se);{var G=le=>{var we=mn();et(we,5,()=>e(x),g=>g.name,(g,c)=>{var o=_n(),p=n(a(o),2),l=a(p,!0);t(p);var y=n(p,2);let Z;var ie=a(y,!0);t(y),t(o),Y(()=>{M(l,(e(c),r(()=>e(c).name))),Z=ge(y,1,"del svelte-148ev8e",null,Z,{arm:e(z)===e(c).name}),De(y,"aria-label",`删除 ${e(c),r(()=>e(c).name)??""}`),M(ie,(e(z),e(c),r(()=>e(z)===e(c).name?"确认?":"✕")))}),P("click",y,()=>R(e(c).name)),h(g,o)}),t(we),h(le,we)},pe=le=>{var we=gn();h(le,we)};U(N,le=>{e(x),r(()=>e(x).length>0)?le(G):e(u)||le(pe,1)})}t(se);var Ae=n(se,2);{var ye=le=>{var we=wn(),g=a(we);ft(g);var c=n(g,2);{var o=l=>{var y=yn(),Z=a(y,!0);t(y),Y(()=>M(Z,e(k))),h(l,y)};U(c,l=>{e(k)&&l(o)})}var p=n(c,2);t(we),Y(l=>p.disabled=l,[()=>(e(m),r(()=>!e(m).trim()))]),_t(g,()=>e(m),l=>s(m,l)),P("click",p,E),h(le,we)};U(Ae,le=>{e(u)&&le(ye)})}t(X),Y(()=>{De(ee,"aria-label",e(u)?"取消新建":"新建 worktree"),M(O,e(u)?"×":"+")}),P("click",ee,()=>s(u,!e(u))),h(q,X),Ge(),D()}var An=w('<div class="usage svelte-q9r9ub"><div class="hd svelte-q9r9ub"><span class="section-label svelte-q9r9ub">用量</span></div> <div class="tiles svelte-q9r9ub"><div class="tile svelte-q9r9ub"><div class="label svelte-q9r9ub">输入 tokens</div> <div class="num mono svelte-q9r9ub"> </div></div> <div class="tile svelte-q9r9ub"><div class="label svelte-q9r9ub">输出 tokens</div> <div class="num mono svelte-q9r9ub"> </div></div></div> <div class="spend mono svelte-q9r9ub"> </div></div>');function $n(q,v){Ye(v,!1);const b=()=>Ee(Ct,"$feeds",S),[S,D]=ot(),i=_(),L=_(),I=_(),x=_(),u=_(),m=_(),k=_(),z=_();let $=Le(v,"sessionId",8,void 0),j=Le(v,"tick",8,0),E=_({});async function R(o){if(!o){s(E,{});return}try{const p=await Ie.context(o);if(o!==$())return;s(E,p)}catch{}}let X=_(""),ae=_({in:0,out:0,cost:0});function ee(o){return o==null?"—":o.toLocaleString()}function O(o){return o==null?"—":`$${o.toFixed(3)}`}Q(()=>(oe($()),oe(j())),()=>{R($()),j()}),Q(()=>e(E),()=>{var o,p,l,y;s(i,typeof((p=(o=e(E))==null?void 0:o.tokens)==null?void 0:p.input)=="number"||typeof((y=(l=e(E))==null?void 0:l.tokens)==null?void 0:y.output)=="number")}),Q(()=>e(E),()=>{var o,p;s(L,typeof((p=(o=e(E))==null?void 0:o.tokens)==null?void 0:p.input)=="number"?e(E).tokens.input:void 0)}),Q(()=>e(E),()=>{var o,p;s(I,typeof((p=(o=e(E))==null?void 0:o.tokens)==null?void 0:p.output)=="number"?e(E).tokens.output:void 0)}),Q(()=>e(E),()=>{var o;s(x,typeof((o=e(E))==null?void 0:o.cost)=="number"?e(E).cost:void 0)}),Q(()=>(oe($()),b()),()=>{s(u,$()?b()[$()]:void 0)}),Q(()=>(e(i),oe($()),e(u),e(X),aa),()=>{var p,l;const o=e(i)?"":`${$()}:${((p=e(u))==null?void 0:p.lastSeq)??0}:${((l=e(u))==null?void 0:l.order.length)??0}`;o!==e(X)&&(s(X,o),s(ae,o===""?{in:0,out:0,cost:0}:aa(e(u)).filter(y=>y.kind==="assistant").reduce((y,Z)=>{var ke,$e;const ie=Z.meta??{};return typeof((ke=ie.tokens)==null?void 0:ke.input)=="number"&&(y.in+=ie.tokens.input),typeof(($e=ie.tokens)==null?void 0:$e.output)=="number"&&(y.out+=ie.tokens.output),typeof ie.cost=="number"&&(y.cost+=ie.cost),y},{in:0,out:0,cost:0})))}),Q(()=>(e(i),e(L),e(ae)),()=>{s(m,e(i)?e(L):e(ae).in||void 0)}),Q(()=>(e(i),e(I),e(ae)),()=>{s(k,e(i)?e(I):e(ae).out||void 0)}),Q(()=>(e(x),e(ae)),()=>{s(z,e(x)??(e(ae).cost||void 0))}),nt(),Qe();var se=An(),N=n(a(se),2),G=a(N),pe=n(a(G),2),Ae=a(pe,!0);t(pe),t(G);var ye=n(G,2),le=n(a(ye),2),we=a(le,!0);t(le),t(ye),t(N);var g=n(N,2),c=a(g);t(g),t(se),Y((o,p,l)=>{M(Ae,o),M(we,p),M(c,`est. spend ${l??""}`)},[()=>(e(m),r(()=>ee(e(m)))),()=>(e(k),r(()=>ee(e(k)))),()=>(e(z),r(()=>O(e(z))))]),h(q,se),Ge(),D()}var In=w('<span class="pct svelte-1h7zxuf"> </span>'),Sn=w('<span class="max svelte-1h7zxuf"> </span>'),zn=w('<span class="max svelte-1h7zxuf">tokens</span>'),Cn=w('<div class="bar svelte-1h7zxuf"><div class="fill svelte-1h7zxuf"></div></div>'),Tn=w('<div class="model mono svelte-1h7zxuf"><span class="sq svelte-1h7zxuf"></span> </div>'),Mn=w('<div class="cache mono svelte-1h7zxuf"><span class="cdot svelte-1h7zxuf"></span> </div>'),qn=w('<div class="ctx svelte-1h7zxuf"><div class="hd svelte-1h7zxuf"><span class="section-label svelte-1h7zxuf">Context</span> <!></div> <div class="body mono svelte-1h7zxuf"><span class="big svelte-1h7zxuf"> </span> <!></div> <!> <!> <!></div>');function Ln(q,v){Ye(v,!1);const b=_(),S=_(),D=_(),i=_(),L=_(),I=_(),x=_(),u=_(),m=_();let k=Le(v,"sessionId",8,void 0),z=Le(v,"tick",8,0),$=_({});async function j(l){if(!l){s($,{});return}try{s($,await Ie.context(l))}catch{}}function E(l){return l==null?"—":l.toLocaleString()}function R(l){return l==null?"—":l>=1e6?(l/1e6).toFixed(1)+"M":l>=1e3?(l/1e3).toFixed(1)+"K":String(l)}Q(()=>(oe(k()),oe(z())),()=>{j(k()),z()}),Q(()=>e($),()=>{var l,y;s(b,typeof((y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.input)=="number"?e($).tokens.input:void 0)}),Q(()=>e($),()=>{var l,y;s(S,typeof((y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.output)=="number"?e($).tokens.output:void 0)}),Q(()=>(e($),e(b),e(S)),()=>{var l,y;s(D,typeof((y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.used)=="number"?e($).tokens.used:e(b)!=null||e(S)!=null?(e(b)??0)+(e(S)??0):void 0)}),Q(()=>e($),()=>{var l,y;s(i,typeof((y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.max)=="number"?e($).tokens.max:void 0)}),Q(()=>(e(D),e(i)),()=>{s(L,e(D)!=null&&e(i)!=null?Math.min(100,Math.round(e(D)/e(i)*100)):void 0)}),Q(()=>e($),()=>{var l;s(I,(l=e($))!=null&&l.model?String(e($).model).split("/").pop():void 0)}),Q(()=>e($),()=>{var l,y,Z;s(x,typeof((Z=(y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.cache)==null?void 0:Z.read)=="number"?e($).tokens.cache.read:void 0)}),Q(()=>e($),()=>{var l,y,Z;s(u,typeof((Z=(y=(l=e($))==null?void 0:l.tokens)==null?void 0:y.cache)==null?void 0:Z.write)=="number"?e($).tokens.cache.write:void 0)}),Q(()=>(e(x),e(b)),()=>{s(m,e(x)!=null&&e(b)!=null&&e(b)+e(x)>0?Math.round(e(x)/(e(b)+e(x))*100):void 0)}),nt(),Qe();var X=qn(),ae=a(X),ee=n(a(ae),2);{var O=l=>{var y=In(),Z=a(y);t(y),Y(()=>M(Z,`${e(L)??""}%`)),h(l,y)};U(ee,l=>{e(L)!=null&&l(O)})}t(ae);var se=n(ae,2),N=a(se),G=a(N,!0);t(N);var pe=n(N,2);{var Ae=l=>{var y=Sn(),Z=a(y);t(y),Y(ie=>M(Z,`/ ${ie??""} tokens`),[()=>(e(i),r(()=>E(e(i))))]),h(l,y)},ye=l=>{var y=zn();h(l,y)};U(pe,l=>{e(i)!=null?l(Ae):l(ye,-1)})}t(se);var le=n(se,2);{var we=l=>{var y=Cn(),Z=a(y);t(y),Y(()=>lt(Z,`transform:scaleX(${e(L)/100})`)),h(l,y)};U(le,l=>{e(L)!=null&&l(we)})}var g=n(le,2);{var c=l=>{var y=Tn(),Z=n(a(y),1,!0);t(y),Y(()=>M(Z,e(I))),h(l,y)};U(g,l=>{e(I)&&l(c)})}var o=n(g,2);{var p=l=>{var y=Mn(),Z=n(a(y));t(y),Y((ie,ke)=>M(Z,`cache ${e(m)??""}% · ${ie??""} read / ${ke??""} write`),[()=>(e(x),r(()=>R(e(x)))),()=>(e(u),r(()=>R(e(u))))]),h(l,y)};U(o,l=>{e(m)!=null&&l(p)})}t(X),Y(l=>M(G,l),[()=>(e(D),r(()=>E(e(D))))]),h(q,X),Ge()}var En=w('<span class="counts mono svelte-1oo25bu"> </span>'),Bn=w('<div class="repo-line mono svelte-1oo25bu"> </div>'),Dn=w('<div><span class="pre svelte-1oo25bu"> </span> </div>'),On=w('<div class="diff svelte-1oo25bu"></div>'),jn=w('<div class="entry svelte-1oo25bu"><button type="button"><span class="change svelte-1oo25bu"></span> <span class="nm svelte-1oo25bu"> </span> <span class="cnt svelte-1oo25bu"><span class="add svelte-1oo25bu"> </span> <span class="sep svelte-1oo25bu">/</span> <span class="del svelte-1oo25bu"> </span></span></button> <!></div>'),Pn=w('<div class="files mono svelte-1oo25bu"></div>'),Fn=w('<div class="section-label svelte-1oo25bu">—</div>'),Rn=w('<div class="wd svelte-1oo25bu"><div class="hd svelte-1oo25bu"><span class="section-label svelte-1oo25bu">Working dir</span> <!></div> <!> <!> <!></div>');function Un(q,v){Ye(v,!1);const b=_(),S=_();let D=Le(v,"sessionId",8,void 0),i=Le(v,"tick",8,0),L=Le(v,"showDiff",8,!0),I=_(""),x=_([]),u=_(new Set);async function m(g){if(!g){s(I,""),s(x,[]),e(u).clear(),s(u,e(u));return}try{const c=await Ie.context(g);if(g!==D())return;if(s(I,(c==null?void 0:c.directory)??""),L()){const o=await Ie.diff(g);if(g!==D())return;s(x,(Array.isArray(o)?o:[]).map(p=>({path:String((p==null?void 0:p.path)??""),additions:Number((p==null?void 0:p.additions)??0),deletions:Number((p==null?void 0:p.deletions)??0),lines:Array.isArray(p==null?void 0:p.lines)?p.lines:[]})).filter(p=>p.path).slice(0,8))}else s(x,[])}catch{}}function k(g){if(!g)return"";const c=g.replace(/\/+$/,"").split("/");return c[c.length-1]||""}function z(g){const c=g.split("/");return c.length>3?"…/"+c.slice(-3).join("/"):g}function $(g){return g.additions>0&&g.deletions>0?"mod":g.additions>0?"add":g.deletions>0?"del":"none"}function j(g){return g==="add"?"var(--ok)":g==="del"?"var(--err)":g==="mod"?"var(--warn)":"var(--text-4)"}function E(g){e(u).has(g)?e(u).delete(g):e(u).add(g),s(u,e(u))}function R(g){return g==="add"?"+":g==="del"?"−":" "}function X(g){return g.kind==="add"&&g.text.startsWith("+")||g.kind==="del"&&g.text.startsWith("-")||g.kind==="ctx"&&g.text.startsWith(" ")?g.text.slice(1):g.text}Q(()=>(oe(D()),oe(i()),oe(L())),()=>{m(D()),i(),L()}),Q(()=>e(x),()=>{s(b,e(x).reduce((g,c)=>g+c.additions,0))}),Q(()=>e(x),()=>{s(S,e(x).reduce((g,c)=>g+c.deletions,0))}),nt(),Qe();var ae=Rn(),ee=a(ae),O=n(a(ee),2);{var se=g=>{var c=En(),o=a(c);t(c),Y(()=>M(o,`+${e(b)??""}/−${e(S)??""}`)),h(g,c)};U(O,g=>{e(x),r(()=>e(x).length)&&g(se)})}t(ee);var N=n(ee,2);{var G=g=>{var c=Bn(),o=a(c,!0);t(c),Y(p=>M(o,p),[()=>(e(I),r(()=>k(e(I))))]),h(g,c)},pe=bt(()=>(e(I),r(()=>k(e(I)))));U(N,g=>{e(pe)&&g(G)})}var Ae=n(N,2);{var ye=g=>{var c=Pn();et(c,5,()=>e(x),o=>o.path,(o,p)=>{var l=jn(),y=a(l);let Z;var ie=a(y),ke=n(ie,2),$e=a(ke,!0);t(ke);var te=n(ke,2),de=a(te),qe=a(de);t(de);var Fe=n(de,4),Pe=a(Fe);t(Fe),t(te),t(y);var d=n(y,2);{var B=me=>{var f=On();et(f,5,()=>(e(p),r(()=>e(p).lines)),Vt,(C,W)=>{var ue=Dn(),Se=a(ue),Te=a(Se,!0);t(Se);var K=n(Se,1,!0);t(ue),Y((V,H)=>{ge(ue,1,`line ${e(W),r(()=>e(W).kind)??""}`,"svelte-1oo25bu"),M(Te,V),M(K,H)},[()=>(e(W),r(()=>R(e(W).kind))),()=>(e(W),r(()=>X(e(W))))]),h(C,ue)}),t(f),h(me,f)},re=bt(()=>(e(u),e(p),r(()=>e(u).has(e(p).path)&&e(p).lines.length>0)));U(d,me=>{e(re)&&me(B)})}t(l),Y((me,f,C,W)=>{Z=ge(y,1,"f svelte-1oo25bu",null,Z,me),De(y,"aria-expanded",f),lt(ie,`background: ${C??""}`),M($e,W),M(qe,`+${e(p),r(()=>e(p).additions)??""}`),M(Pe,`−${e(p),r(()=>e(p).deletions)??""}`)},[()=>({open:e(u).has(e(p).path)}),()=>(e(u),e(p),r(()=>e(u).has(e(p).path))),()=>(e(p),r(()=>j($(e(p))))),()=>(e(p),r(()=>z(e(p).path)))]),P("click",y,()=>E(e(p).path)),h(o,l)}),t(c),h(g,c)};U(Ae,g=>{e(x),r(()=>e(x).length)&&g(ye)})}var le=n(Ae,2);{var we=g=>{var c=Fn();h(g,c)};U(le,g=>{e(I),e(x),r(()=>!e(I)&&e(x).length===0)&&g(we)})}t(ae),h(q,ae),Ge()}var Wn=w('<!><div class="divider svelte-gu3dqx"></div>',1),Jn=w('<!><div class="divider svelte-gu3dqx"></div>',1),Nn=w('<!><div class="divider svelte-gu3dqx"></div>',1),Kn=w('<!> <div class="divider svelte-gu3dqx"></div>',1),Hn=w('<aside class="inspector svelte-gu3dqx"><div class="head svelte-gu3dqx"><div class="section-label svelte-gu3dqx">会话</div> <div class="name svelte-gu3dqx"><span class="title-text svelte-gu3dqx"> </span></div></div> <!> <div class="pinned svelte-gu3dqx"><!> <div class="divider svelte-gu3dqx"></div> <!> <!> <!> <!> <!> <div class="divider svelte-gu3dqx"></div> <!> <div class="divider svelte-gu3dqx"></div> <!></div></aside>');function Qn(q,v){Ye(v,!1);const b=()=>Ee(dt,"$sessionList",i),S=()=>Ee(Ct,"$feeds",i),D=()=>Ee(va,"$can",i),[i,L]=ot(),I=_(),x=_(),u=_();let m=Le(v,"sessionId",8,void 0),k=_(0),z=_(-1),$=_();Qt(()=>clearTimeout(e($))),Q(()=>(b(),oe(m())),()=>{s(I,b().find(te=>te.id===m()))}),Q(()=>e(I),()=>{var te;s(x,(te=e(I))==null?void 0:te.title)}),Q(()=>(oe(m()),S()),()=>{var te;s(u,m()?((te=S()[m()])==null?void 0:te.lastSeq)??0:0)}),Q(()=>(e(u),e(z),e($),e(k)),()=>{e(u)!==e(z)&&(s(z,e(u)),clearTimeout(e($)),s($,setTimeout(()=>s(k,e(k)+1),1e3)))}),nt(),Qe();var j=Hn(),E=a(j),R=n(a(E),2),X=a(R),ae=a(X,!0);t(X),t(R),t(E);var ee=n(E,2);{var O=te=>{Ks(te,{get sessionId(){return m()},get tick(){return e(k)}})},se=bt(()=>(D(),r(()=>D()("todos"))));U(ee,te=>{e(se)&&te(O)})}var N=n(ee,2),G=a(N);an(G,{get tick(){return e(k)}});var pe=n(G,4);{var Ae=te=>{var de=Wn(),qe=We(de);on(qe,{get tick(){return e(k)}}),vt(),h(te,de)},ye=bt(()=>(D(),r(()=>D()("skills"))));U(pe,te=>{e(ye)&&te(Ae)})}var le=n(pe,2);{var we=te=>{var de=Jn(),qe=We(de);bn(qe,{get sessionId(){return m()},get tick(){return e(k)}}),vt(),h(te,de)},g=bt(()=>(D(),r(()=>D()("files"))));U(le,te=>{e(g)&&te(we)})}var c=n(le,2);{var o=te=>{var de=Nn(),qe=We(de);xn(qe,{get sessionId(){return m()},get tick(){return e(k)}}),vt(),h(te,de)},p=bt(()=>(D(),r(()=>D()("worktrees"))));U(c,te=>{e(p)&&te(o)})}var l=n(c,2);{var y=te=>{var de=Kn(),qe=We(de);Gs(qe,{get tick(){return e(k)}}),vt(2),h(te,de)},Z=bt(()=>(D(),r(()=>D()("mcp"))));U(l,te=>{e(Z)&&te(y)})}var ie=n(l,2);$n(ie,{get sessionId(){return m()},get tick(){return e(k)}});var ke=n(ie,4);Ln(ke,{get sessionId(){return m()},get tick(){return e(k)}});var $e=n(ke,4);{let te=mt(()=>(D(),r(()=>D()("diff"))));Un($e,{get sessionId(){return m()},get tick(){return e(k)},get showDiff(){return e(te)}})}t(N),t(j),Y(te=>{De(R,"title",e(x)??m()),M(ae,te)},[()=>(e(x),oe(m()),r(()=>e(x)||(m()?"…"+m().slice(-8):"No session")))]),h(q,j),Ge(),L()}function Yn(q,v){const b=v.trim().toLowerCase();return b?q.filter(S=>(S.title??"").toLowerCase().includes(b)||(S.agent??"").toLowerCase().includes(b)||S.id.toLowerCase().includes(b)):q}var Gn=w('<div class="empty svelte-wh9uu8">无匹配结果</div>'),Vn=w('<div class="group svelte-wh9uu8" role="presentation"><span class="group-icon svelte-wh9uu8" aria-hidden="true"> </span> <span class="group-label mono svelte-wh9uu8"> </span></div>'),Zn=w('<button role="option"><span class="tile glyph svelte-wh9uu8" aria-hidden="true"> </span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),Xn=w('<button role="option"><span class="tile svelte-wh9uu8" aria-hidden="true">#</span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),er=w('<button role="option"><span class="tile svelte-wh9uu8" aria-hidden="true">/</span> <span class="label svelte-wh9uu8"> </span> <span class="hint mono svelte-wh9uu8"> </span></button>'),tr=w('<div class="error svelte-wh9uu8"> </div>'),ar=w('<div class="about mono svelte-wh9uu8"> </div>'),sr=w('<div class="overlay svelte-wh9uu8"><button class="backdrop svelte-wh9uu8" aria-label="关闭"></button> <div class="palette svelte-wh9uu8" role="dialog" aria-modal="true" aria-label="搜索会话与命令" tabindex="-1"><div class="header svelte-wh9uu8"><span class="search-icon svelte-wh9uu8" aria-hidden="true"><!></span> <input class="q svelte-wh9uu8" placeholder="跳转会话,或运行命令…" aria-label="搜索会话与命令"/> <kbd class="keycap mono svelte-wh9uu8" aria-label="按 Esc 关闭">esc</kbd></div> <div class="results svelte-wh9uu8" role="listbox" aria-label="结果"><!> <!> <!></div></div></div>');function nr(q,v){Ye(v,!1);const b=()=>Ee(fa,"$page",I),S=()=>Ee(Ft,"$backends",I),D=()=>Ee(dt,"$sessionList",I),i=()=>Ee(Aa,"$currentBackendId",I),L=()=>Ee(va,"$can",I),[I,x]=ot(),u=_(),m=_(),k=_(),z=_(),$=_(),j=_(),E=_(),R=_();let X=Le(v,"open",8,!1);const ae=Fa();let ee=_(""),O=_(0),se=_(""),N=_(""),G=_(null),pe=_([]),Ae=_(null);function ye(f,C,W){const ue=W.trim().toLowerCase();return ue?f.toLowerCase().includes(ue)||C.toLowerCase().includes(ue):!0}const le=[{name:"new-session",description:"New session"},{name:"toggle-panel",description:"Collapse / expand the agent panel"},{name:"cycle-accent",description:"Cycle accent color"}];function we(f){var W,ue,Se;const C=f.replace(/[^a-zA-Z0-9 ]/g," ").trim().split(/[\s-]+/).filter(Boolean);return((((W=C[0])==null?void 0:W[0])??"")+(((ue=C[1])==null?void 0:ue[0])??((Se=C[0])==null?void 0:Se[1])??"")).toUpperCase()||f.slice(0,2).toUpperCase()}function g(f,C,W,ue,Se){const Te=[];let K=0;if(f.length){Te.push({type:"group",label:"Agents",icon:"◆"});for(const H of f)Te.push({type:"agent",agent:H,selectableIndex:K++})}if(C.length){Te.push({type:"group",label:"Sessions",icon:"#"});for(const H of C)Te.push({type:"session",session:H,selectableIndex:K++})}const V=[...W.map(H=>({...H,kind:"backend"})),...ue.map(H=>({...H}))];if(V.length){Te.push({type:"group",label:"Commands",icon:"/"});for(const H of V){const fe=H.kind==="backend"&&!Se;Te.push({type:"command",command:H,disabled:fe,selectableIndex:fe?void 0:K++})}}return Te}let c=null,o=_();function p(f){c=document.activeElement,f.focus()}function l(){var f;ae("close"),s(ee,""),s(se,""),(f=c==null?void 0:c.focus)==null||f.call(c),c=null}function y(f){Zt(`/${f}/`),l()}function Z(){const f=i()??"opencode",C=kt(f),W=Ot[(Ot.indexOf(C)+1)%Ot.length];Nt(f,W)}async function ie(f){Kt(f);try{await jt(f)}catch{}l()}async function ke(f){if(f==="cycle-accent"){Z(),l();return}if(f==="new-session"){St.set(!0),l();return}if(f==="toggle-panel"){Gt.update(C=>!C),l();return}if(!(!e(u)||e(N))){s(N,f),s(se,"");try{await Ie.runCommand({sessionId:e(u),command:f}),l()}catch(C){s(se,`/${f} failed: ${C.message}`)}finally{s(N,"")}}}function $e(f){f.type==="agent"&&f.agent?ie(f.agent.id):f.type==="session"&&f.session?y(f.session.id):f.type==="command"&&!f.disabled&&f.command&&ke(f.command.name)}function te(f){if(f.key==="Escape"){l();return}if(f.key==="Tab"){de(f);return}if(e(R)!==0){if(f.key==="ArrowDown"){f.preventDefault(),s(O,Math.min(e(O)+1,e(R)-1)),qe();return}if(f.key==="ArrowUp"){f.preventDefault(),s(O,Math.max(e(O)-1,0)),qe();return}if(f.key==="Enter"){const C=e(E).find(W=>W.selectableIndex===e(O));C&&(f.preventDefault(),$e(C))}}}function de(f){if(f.key!=="Tab"||!e(o))return;const C=Array.from(e(o).querySelectorAll("input, button:not(:disabled)"));if(C.length===0)return;const W=C[0],ue=C[C.length-1];f.shiftKey&&document.activeElement===W?(f.preventDefault(),ue.focus()):!f.shiftKey&&document.activeElement===ue&&(f.preventDefault(),W.focus())}async function qe(){await Ra();const f=document.querySelector(".palette .row.active");f==null||f.scrollIntoView({block:"nearest"})}function Fe(f,C){return C?"Open a session first":(f==null?void 0:f.description)??""}Q(()=>(oe(X()),e(G),Ie),()=>{X()&&!e(G)&&Ie.version().then(f=>{s(G,{version:f.version,uptime:f.uptime})}).catch(()=>{})}),Q(()=>b(),()=>{s(u,b().params.sessionId)}),Q(()=>S(),()=>{var f;s(m,((f=S())==null?void 0:f.backends)??[])}),Q(()=>(e(m),e(ee)),()=>{s(k,e(m).filter(f=>ye(f.name??f.id,f.id,e(ee))))}),Q(()=>(D(),e(ee)),()=>{s(z,Yn(D(),e(ee)))}),Q(()=>(oe(X()),i(),e(Ae),L(),Ie),()=>{X()&&i()&&i()!==e(Ae)&&(s(Ae,i()),L()("commands")?Ie.commands(i()).then(f=>{s(pe,f)}).catch(()=>{s(Ae,null)}):s(pe,[]))}),Q(()=>(e(pe),e(ee)),()=>{s($,e(pe).filter(f=>ye(f.name,f.description,e(ee))))}),Q(()=>e(ee),()=>{s(j,le.filter(f=>ye(f.name,f.description,e(ee))))}),Q(()=>(e(k),e(z),e($),e(j),e(u)),()=>{s(E,g(e(k),e(z),e($),e(j),e(u)))}),Q(()=>e(E),()=>{s(R,e(E).filter(f=>f.selectableIndex!=null).length)}),Q(()=>(e(O),e(R)),()=>{s(O,e(R)?Math.max(0,Math.min(e(O),e(R)-1)):-1)}),Q(()=>e(ee),()=>{e(ee),s(O,0)}),nt();var Pe={close:l};Qe();var d=gt(),B=We(d);{var re=f=>{var C=sr(),W=a(C),ue=n(W,2),Se=a(ue),Te=a(Se),K=a(Te);xt(K,{name:"search",size:14}),t(Te);var V=n(Te,2);ft(V),Xt(V,ne=>p==null?void 0:p(ne)),At(()=>_t(V,()=>e(ee),ne=>s(ee,ne))),At(()=>P("keydown",V,te)),vt(2),t(Se);var H=n(Se,2),fe=a(H);{var T=ne=>{var ve=Gn();h(ne,ve)},he=ne=>{var ve=gt(),Oe=We(ve);et(Oe,1,()=>e(E),Be=>{var J,Ve,Je;return((J=Be.agent)==null?void 0:J.id)??((Ve=Be.session)==null?void 0:Ve.id)??((Je=Be.command)==null?void 0:Je.name)??Be.label??""},(Be,J)=>{var Ve=gt(),Je=We(Ve);{var Ne=Re=>{var Me=Vn(),Ue=a(Me),Ke=a(Ue,!0);t(Ue);var Ze=n(Ue,2),Xe=a(Ze,!0);t(Ze),t(Me),Y(()=>{M(Ke,(e(J),r(()=>e(J).icon))),M(Xe,(e(J),r(()=>e(J).label)))}),h(Re,Me)},Ce=Re=>{var Me=Zn();let Ue;var Ke=a(Me),Ze=a(Ke,!0);t(Ke);var Xe=n(Ke,2),be=a(Xe,!0);t(Xe);var _e=n(Xe,2),xe=a(_e,!0);t(_e),t(Me),Y(at=>{Ue=ge(Me,1,"row svelte-wh9uu8",null,Ue,{active:e(J).selectableIndex===e(O)}),De(Me,"aria-selected",(e(J),e(O),r(()=>e(J).selectableIndex===e(O)))),M(Ze,at),M(be,(e(J),r(()=>{var He,ut;return((He=e(J).agent)==null?void 0:He.name)??((ut=e(J).agent)==null?void 0:ut.id)??""}))),M(xe,(e(J),S(),r(()=>{var He,ut,rt;return((He=e(J).agent)==null?void 0:He.id)===((ut=S())==null?void 0:ut.activeId)?"active":((rt=e(J).agent)==null?void 0:rt.status)??""})))},[()=>(e(J),r(()=>{var at,He;return we(((at=e(J).agent)==null?void 0:at.name)??((He=e(J).agent)==null?void 0:He.id)??"")}))]),P("click",Me,()=>{e(J).agent&&ie(e(J).agent.id)}),P("mouseenter",Me,()=>{e(J).selectableIndex!=null&&s(O,e(J).selectableIndex)}),h(Re,Me)},je=Re=>{var Me=Xn();let Ue;var Ke=n(a(Me),2),Ze=a(Ke,!0);t(Ke);var Xe=n(Ke,2),be=a(Xe,!0);t(Xe),t(Me),Y(_e=>{Ue=ge(Me,1,"row svelte-wh9uu8",null,Ue,{active:e(J).selectableIndex===e(O)}),De(Me,"aria-selected",(e(J),e(O),r(()=>e(J).selectableIndex===e(O)))),M(Ze,_e),M(be,(e(J),r(()=>{var xe;return((xe=e(J).session)==null?void 0:xe.agent)??""})))},[()=>(e(J),r(()=>{var _e,xe;return((_e=e(J).session)==null?void 0:_e.title)??((xe=e(J).session)==null?void 0:xe.id.slice(-8))??""}))]),P("click",Me,()=>{e(J).session&&y(e(J).session.id)}),P("mouseenter",Me,()=>{e(J).selectableIndex!=null&&s(O,e(J).selectableIndex)}),h(Re,Me)},tt=Re=>{var Me=er();let Ue;var Ke=n(a(Me),2),Ze=a(Ke,!0);t(Ke);var Xe=n(Ke,2),be=a(Xe,!0);t(Xe),t(Me),Y(_e=>{Ue=ge(Me,1,"row svelte-wh9uu8",null,Ue,{active:e(J).selectableIndex===e(O),disabled:e(J).disabled}),Me.disabled=(e(J),e(N),r(()=>{var xe;return e(J).disabled||e(N)===((xe=e(J).command)==null?void 0:xe.name)})),De(Me,"aria-selected",(e(J),e(O),r(()=>e(J).selectableIndex===e(O)))),M(Ze,(e(J),r(()=>{var xe;return((xe=e(J).command)==null?void 0:xe.name)??""}))),M(be,_e)},[()=>(e(N),e(J),r(()=>{var _e;return e(N)===((_e=e(J).command)==null?void 0:_e.name)?"运行中…":Fe(e(J).command,e(J).disabled)}))]),P("click",Me,()=>{e(J).command&&ke(e(J).command.name)}),P("mouseenter",Me,()=>{e(J).selectableIndex!=null&&s(O,e(J).selectableIndex)}),h(Re,Me)};U(Je,Re=>{e(J),r(()=>e(J).type==="group")?Re(Ne):(e(J),r(()=>e(J).type==="agent")?Re(Ce,1):(e(J),r(()=>e(J).type==="session")?Re(je,2):(e(J),r(()=>e(J).type==="command")&&Re(tt,3))))})}h(Be,Ve)}),h(ne,ve)};U(fe,ne=>{e(E),r(()=>e(E).length===0)?ne(T):ne(he,-1)})}var A=n(fe,2);{var F=ne=>{var ve=tr(),Oe=a(ve,!0);t(ve),Y(()=>M(Oe,e(se))),h(ne,ve)};U(A,ne=>{e(se)&&ne(F)})}var ce=n(A,2);{var ze=ne=>{var ve=ar(),Oe=a(ve);t(ve),Y(()=>M(Oe,`ocrc v${e(G),r(()=>e(G).version)??""} · uptime ${e(G),r(()=>e(G).uptime)??""}`)),h(ne,ve)};U(ce,ne=>{e(G)&&ne(ze)})}t(H),t(ue),Rt(ue,ne=>s(o,ne),()=>e(o)),t(C),P("click",W,l),P("keydown",ue,de),h(f,C)};U(B,f=>{X()&&f(re)})}h(q,d),Ga(v,"close",l);var me=Ge(Pe);return x(),me}var rr=w('<div class="empty svelte-cfrpez">正在加载 agent…</div>'),lr=w('<button type="button" role="radio"><span class="chip-tile svelte-cfrpez"> </span> <span><span class="sr-only svelte-cfrpez"> </span></span> <span class="chip-name svelte-cfrpez"> </span></button>'),or=w('<div class="field svelte-cfrpez"><span class="label svelte-cfrpez">Agent</span> <div class="agent-chips svelte-cfrpez" role="radiogroup" aria-label="选择 agent"></div></div>'),ir=w('<button class="recent svelte-cfrpez" type="button"><span class="recent-name svelte-cfrpez"> </span> <span class="recent-dir mono svelte-cfrpez"> </span></button>'),cr=w('<div><span class="recents-label mono svelte-cfrpez"> </span> <div class="recents-list svelte-cfrpez"></div></div>'),vr=w('<div class="error svelte-cfrpez"> </div>'),dr=w('<div class="overlay svelte-cfrpez"><button class="backdrop svelte-cfrpez" aria-label="关闭"></button> <div class="modal svelte-cfrpez" role="dialog" aria-modal="true" aria-label="新建会话"><div class="header svelte-cfrpez"><span class="title svelte-cfrpez">New session</span> <button class="close svelte-cfrpez" aria-label="关闭"><!></button></div> <div class="body svelte-cfrpez"><!> <div class="field svelte-cfrpez"><label class="label svelte-cfrpez" for="new-session-dir">Working directory</label> <div class="dir-input svelte-cfrpez"><span class="host-prefix mono svelte-cfrpez">host:</span> <input id="new-session-dir" class="path mono svelte-cfrpez" type="text" placeholder="/path/to/project"/> <button class="browse svelte-cfrpez" type="button" title="该 agent 最近使用的目录">最近</button></div> <!></div> <div class="field svelte-cfrpez"><label class="label svelte-cfrpez" for="new-session-branch">Branch <span class="optional svelte-cfrpez">(optional)</span></label> <input id="new-session-branch" class="branch mono svelte-cfrpez" type="text" placeholder="main"/></div> <!></div> <div class="footer svelte-cfrpez"><button class="btn secondary svelte-cfrpez" type="button">取消</button> <button class="btn primary svelte-cfrpez" type="button"> </button></div></div></div>');function ur(q,v){Ye(v,!1);const b=()=>Ee(Ft,"$backends",i),S=()=>Ee(dt,"$sessionList",i),D=()=>Ee(St,"$newSessionOpen",i),[i,L]=ot(),I=_(),x=_(),u=_(),m=_();let k=_(""),z=_(""),$=_(""),j=_(!1),E=_(null),R=_(!1);function X(o){const p=o.split(/[\s\-_:./]+/).filter(Boolean);return p.length>=2?(p[0][0]+p[1][0]).toUpperCase():o.slice(0,2).toUpperCase()}function ae(o){return X((o==null?void 0:o.name)||(o==null?void 0:o.id)||"OC")}function ee(o){return o==="online"||o==="connected"?"online":o==="connecting"||o==="reconnecting"?"connecting":o==="offline"?"offline":"online"}function O(){St.set(!1),s(E,null)}function se(o){s(z,o),s(R,!1)}async function N(){const o=e(z).trim();if(!o){s(E,"需要填写工作目录");return}if(!e(j)){s(j,!0),s(E,null);try{await jt(e(k));const p=await Ie.createSession({directory:o});dt.set(await Ie.sessions()),Ka.set(await Ie.workspaces()),O(),Zt(`/${p.id}/`)}catch(p){s(E,p.message)}finally{s(j,!1)}}}function G(o){if(o.key==="Escape"){O();return}o.key==="Tab"&&le(o)}let pe=_();function Ae(o){return Array.from(o.querySelectorAll("button, input, [tabindex]")).filter(p=>!p.hasAttribute("disabled"))}function ye(o){const p=document.activeElement,l=o.querySelector("input:not([disabled])")??Ae(o)[0];return l==null||l.focus(),{destroy(){var y;(y=p==null?void 0:p.focus)==null||y.call(p)}}}function le(o){if(!e(pe))return;const p=Ae(e(pe));if(p.length===0)return;const l=p[0],y=p[p.length-1];o.shiftKey&&document.activeElement===l?(o.preventDefault(),y.focus()):!o.shiftKey&&document.activeElement===y&&(o.preventDefault(),l.focus())}Q(()=>b(),()=>{var o;s(I,((o=b())==null?void 0:o.backends)??[])}),Q(()=>(b(),e(I)),()=>{var o,p;s(x,((o=b())==null?void 0:o.activeId)??((p=e(I)[0])==null?void 0:p.id)??"opencode")}),Q(()=>(e(k),e(x)),()=>{s(k,e(k)||e(x))}),Q(()=>(b(),e(k)),()=>{var o,p;s(u,((p=(o=b())==null?void 0:o.backends.find(l=>l.id===e(k)))==null?void 0:p.name)??e(k))}),Q(()=>(S(),e(k)),()=>{s(m,(()=>{const o=new Set,p=[];for(const l of[...S()].sort((y,Z)=>Z.lastActiveAt-y.lastActiveAt))!(l.backendId===e(k)||!l.backendId&&e(k)==="opencode")||!l.directory||o.has(l.directory)||(o.add(l.directory),p.push({directory:l.directory,name:l.directory.replace(/\/+$/,"").split("/").pop()||l.directory}));return p})())}),nt(),Qe();var we=gt();P("keydown",Mt,G);var g=We(we);{var c=o=>{var p=dr(),l=a(p),y=n(l,2),Z=a(y),ie=n(a(Z),2),ke=a(ie);xt(ke,{name:"close",size:14}),t(ie),t(Z);var $e=n(Z,2),te=a($e);{var de=H=>{var fe=rr();h(H,fe)},qe=H=>{var fe=or(),T=n(a(fe),2);et(T,5,()=>e(I),he=>he.id,(he,A)=>{const F=mt(()=>(oe(kt),e(A),r(()=>kt(e(A).id)))),ce=mt(()=>(e(A),e(k),r(()=>e(A).id===e(k))));var ze=lr();let ne;var ve=a(ze),Oe=a(ve,!0);t(ve);var Be=n(ve,2),J=a(Be),Ve=a(J,!0);t(J),t(Be);var Je=n(Be,2),Ne=a(Je,!0);t(Je),t(ze),Y((Ce,je,tt)=>{ne=ge(ze,1,"agent-chip svelte-cfrpez",null,ne,{selected:e(ce)}),De(ze,"aria-checked",e(ce)),lt(ve,`background:${oe(yt),oe(e(F)),r(()=>yt[e(F)])??""}; color:${oe(st),oe(e(F)),r(()=>st[e(F)])??""}; border-color:${oe(wt),oe(e(F)),r(()=>wt[e(F)])??""}`),M(Oe,Ce),ge(Be,1,`chip-status ${je??""}`,"svelte-cfrpez"),lt(Be,`--dot:${oe(st),oe(e(F)),r(()=>st[e(F)])??""}`),M(Ve,tt),M(Ne,(e(A),r(()=>e(A).name??e(A).id)))},[()=>(e(A),r(()=>ae(e(A)))),()=>(e(A),r(()=>ee(e(A).status))),()=>(e(A),r(()=>ee(e(A).status)))]),P("click",ze,()=>{s(k,e(A).id)}),h(he,ze)}),t(T),t(fe),h(H,fe)};U(te,H=>{e(I),r(()=>e(I).length===0)?H(de):H(qe,-1)})}var Fe=n(te,2),Pe=n(a(Fe),2),d=n(a(Pe),2);ft(d);var B=n(d,2);t(Pe);var re=n(Pe,2);{var me=H=>{var fe=cr();let T;var he=a(fe),A=a(he);t(he);var F=n(he,2);et(F,5,()=>e(m),ce=>ce.directory,(ce,ze)=>{var ne=ir(),ve=a(ne),Oe=a(ve,!0);t(ve);var Be=n(ve,2),J=a(Be,!0);t(Be),t(ne),Y(()=>{De(ne,"title",(e(ze),r(()=>e(ze).directory))),M(Oe,(e(ze),r(()=>e(ze).name))),M(J,(e(ze),r(()=>e(ze).directory)))}),P("click",ne,()=>se(e(ze).directory)),h(ce,ne)}),t(F),t(fe),Y(()=>{T=ge(fe,1,"recents svelte-cfrpez",null,T,{open:e(R)}),M(A,`recent · ${e(u)??""}`)}),h(H,fe)};U(re,H=>{e(m),r(()=>e(m).length>0)&&H(me)})}t(Fe);var f=n(Fe,2),C=n(a(f),2);ft(C),t(f);var W=n(f,2);{var ue=H=>{var fe=vr(),T=a(fe,!0);t(fe),Y(()=>M(T,e(E))),h(H,fe)};U(W,H=>{e(E)&&H(ue)})}t($e);var Se=n($e,2),Te=a(Se),K=n(Te,2),V=a(K,!0);t(K),t(Se),t(y),Rt(y,H=>s(pe,H),()=>e(pe)),Xt(y,H=>ye==null?void 0:ye(H)),t(p),Y(H=>{Te.disabled=e(j),K.disabled=H,M(V,e(j)?"Creating…":"Create")},[()=>(e(j),e(z),r(()=>e(j)||!e(z).trim()))]),P("click",l,O),P("click",ie,O),_t(d,()=>e(z),H=>s(z,H)),P("focus",d,()=>{s(R,!0)}),P("click",B,()=>s(R,!e(R))),_t(C,()=>e($),H=>s($,H)),P("click",Te,O),P("click",K,N),h(o,p)};U(g,o=>{D()&&o(c)})}h(q,we),Ge(),L()}const pr="data:image/png;base64,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";var fr=ua('<svg viewBox="0 0 24 24" role="img" aria-label="Telegram"><path fill="#26A5E4" d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"></path></svg>'),hr=ua('<svg viewBox="0 0 24 24" role="img" aria-label="WeChat"><path fill="#07C160" d="M8.691 2.188C3.891 2.188 0 5.476 0 9.53c0 2.212 1.17 4.203 3.002 5.55a.59.59 0 0 1 .213.665l-.39 1.48c-.019.07-.048.141-.048.213 0 .163.13.295.29.295a.326.326 0 0 0 .167-.054l1.903-1.114a.864.864 0 0 1 .717-.098 10.16 10.16 0 0 0 2.837.403c.276 0 .543-.027.811-.05-.857-2.578.157-4.972 1.932-6.446 1.703-1.415 3.882-1.98 5.853-1.838-.576-3.583-4.196-6.348-8.596-6.348zM5.785 5.991c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178A1.17 1.17 0 0 1 4.623 7.17c0-.651.52-1.18 1.162-1.18zm5.813 0c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178 1.17 1.17 0 0 1-1.162-1.178c0-.651.52-1.18 1.162-1.18zm5.34 2.867c-1.797-.052-3.746.512-5.28 1.786-1.72 1.428-2.687 3.72-1.78 6.22.942 2.453 3.666 4.229 6.884 4.229.826 0 1.622-.12 2.361-.336a.722.722 0 0 1 .598.082l1.584.926a.272.272 0 0 0 .14.047c.134 0 .24-.111.24-.247 0-.06-.023-.12-.038-.177l-.327-1.233a.582.582 0 0 1-.023-.156.49.49 0 0 1 .201-.398C23.024 18.48 24 16.82 24 14.98c0-3.21-2.931-5.837-6.656-6.088V8.89c-.135-.01-.27-.027-.407-.03zm-2.53 3.274c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983.976.976 0 0 1-.969-.983c0-.542.434-.982.97-.982zm4.844 0c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983.976.976 0 0 1-.969-.983c0-.542.434-.982.969-.982z"></path></svg>'),br=w('<img alt="飞书 / Lark"/>');function ma(q,v){let b=Le(v,"channel",8),S=Le(v,"size",8,30);var D=gt(),i=We(D);{var L=u=>{var m=fr();Y(()=>{De(m,"width",S()),De(m,"height",S())}),h(u,m)},I=u=>{var m=hr();Y(()=>{De(m,"width",S()),De(m,"height",S())}),h(u,m)},x=u=>{var m=br();Y(()=>{De(m,"src",pr),De(m,"width",S()),De(m,"height",S()),lt(m,`border-radius: ${S()*.18}px`)}),h(u,m)};U(i,u=>{b()==="telegram"?u(L):b()==="wechat"?u(I,1):u(x,-1)})}h(q,D)}var _r=w('<button><span class="ch-logo svelte-b8emeh"><!></span> <span class="ch-name"> </span> <span> </span></button>'),mr=w('<span class="note svelte-b8emeh"> </span>'),gr=w('<p class="hint svelte-b8emeh">自定义白名单已保存——用工作区切换器添加条目后再来这里勾选。</p>'),yr=w('<div class="detail svelte-b8emeh"><div class="d-hd svelte-b8emeh"><span class="d-name svelte-b8emeh"> </span> <button aria-label="启用通道"><span class="knob svelte-b8emeh"></span></button></div> <p class="note svelte-b8emeh"><!></p> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">关联凭证</div> <input class="cred mono svelte-b8emeh"/> <div class="sec-acts svelte-b8emeh"><button class="save svelte-b8emeh">保存</button> <!></div></div> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">回复粒度</div> <div class="opts svelte-b8emeh"><button>标准回复(隐藏工具过程)</button> <button>详细回复(显示工具过程)</button></div></div> <div class="sec svelte-b8emeh"><div class="sec-label svelte-b8emeh">工作区访问范围</div> <div class="opts svelte-b8emeh"><button>所有工作区</button> <button>自定义</button></div> <!></div> <div class="sec danger svelte-b8emeh"><div class="sec-label svelte-b8emeh">重置</div> <button class="reset svelte-b8emeh">恢复默认设置</button></div></div>'),wr=w("<span> </span>"),kr=w('<div class="qr-expired svelte-b8emeh"><span>二维码已过期</span> <button class="copy svelte-b8emeh">刷新二维码</button></div>'),xr=w('<div class="pair-head svelte-b8emeh"><div><div class="pair-title svelte-b8emeh">等待手机连接 <!></div> <div class="hint svelte-b8emeh">用手机扫码,或在手机上打开链接。链接 5 分钟内有效,仅可使用一次。</div></div> <button class="stop svelte-b8emeh">停止</button></div> <div><!> <!></div> <div class="pair-acts svelte-b8emeh"><span class="hint svelte-b8emeh">无法扫码?可以在手机上打开链接。</span> <span class="spacer svelte-b8emeh"></span> <button class="copy svelte-b8emeh"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M21 12a9 9 0 1 1-2.64-6.36"></path><path d="M21 3v6h-6"></path></svg> 刷新二维码</button> <button class="copy svelte-b8emeh"> </button></div>',1),Ar=w('<div class="pair-stopped svelte-b8emeh"><span>已停止配对。</span> <button class="copy svelte-b8emeh">重新开始</button></div>'),$r=w('<p class="hint svelte-b8emeh">配对信息加载中…</p>'),Ir=w('<div class="overlay svelte-b8emeh"><button class="backdrop svelte-b8emeh" aria-label="关闭"></button> <div class="modal svelte-b8emeh" role="dialog" aria-modal="true" aria-label="机器人与通道" tabindex="-1"><div class="header svelte-b8emeh"><span class="title svelte-b8emeh">🤖 机器人 · 通道</span> <button class="close svelte-b8emeh" aria-label="关闭">✕</button></div> <div class="cols svelte-b8emeh"><div class="list svelte-b8emeh"></div> <!></div> <div class="pair svelte-b8emeh"><!></div></div></div>');function Sr(q,v){Ye(v,!1);const b=()=>Ee(Ht,"$channelsOpen",S),[S,D]=ot(),i=_(),L=_(),I=_(),x=_();let u=_([]),m=_(),k=_(null),z=_(""),$=_(""),j=_(!1),E=_(Date.now()),R=_(!1),X;async function ae(){try{s(u,(await Ie.channels()).channels??[]),!e(m)&&e(u).length>0&&s(m,e(u)[0].id)}catch{}}async function ee(){s(R,!1);try{s(k,await Ie.pairQr())}catch{s(k,null)}}function O(){s(R,!0)}Yt(()=>{ae(),ee(),X=setInterval(()=>s(E,Date.now()),1e3)}),Qt(()=>{X&&clearInterval(X)});function se(l){return l==="telegram"?"Telegram":l==="wechat"?"微信":l==="lark"?"Lark":l}function N(){Ht.set(!1)}function G(l){s(m,l),s(z,""),s($,"")}async function pe(l){s(u,e(u).map(y=>y.id===l.id?{...y,enabled:!y.enabled}:y));try{await Ie.updateChannel(l.id,{enabled:!l.enabled})}catch{}}async function Ae(l,y){s(u,e(u).map(Z=>Z.id===l.id?{...Z,replyGranularity:y}:Z));try{await Ie.updateChannel(l.id,{replyGranularity:y})}catch{}}async function ye(l){if(!e(z).trim()){s($,"请输入凭证内容");return}try{await Ie.updateChannel(l.id,{credentials:{token:e(z).trim()}}),s($,"已保存——重启实例后生效"),s(z,"")}catch{s($,"保存失败")}}async function le(){if(e(i)){try{await Ie.resetChannel(e(i).id)}catch{}await ae()}}async function we(){if(e(k))try{await navigator.clipboard.writeText(e(k).url),s(j,!0),setTimeout(()=>s(j,!1),1600)}catch{}}function g(l){l.key==="Escape"&&N()}Q(()=>(e(u),e(m)),()=>{s(i,e(u).find(l=>l.id===e(m))??e(u)[0])}),Q(()=>(e(k),e(E)),()=>{var l;s(L,(l=e(k))!=null&&l.expiresAt?Math.max(0,e(k).expiresAt-e(E)):null)}),Q(()=>e(L),()=>{s(I,e(L)!==null&&e(L)<=0)}),Q(()=>e(L),()=>{s(x,e(L)===null?"":`${Math.floor(e(L)/6e4)}:${String(Math.floor(e(L)%6e4/1e3)).padStart(2,"0")}`)}),nt(),Qe();var c=gt();P("keydown",Mt,g);var o=We(c);{var p=l=>{var y=Ir(),Z=a(y),ie=n(Z,2),ke=a(ie),$e=n(a(ke),2);t(ke);var te=n(ke,2),de=a(te);et(de,5,()=>e(u),f=>f.id,(f,C)=>{var W=_r();let ue;var Se=a(W),Te=a(Se);ma(Te,{get channel(){return e(C),r(()=>e(C).channel)},size:22}),t(Se);var K=n(Se,2),V=a(K,!0);t(K);var H=n(K,2);let fe;var T=a(H,!0);t(H),t(W),Y(he=>{var A;ue=ge(W,1,"ch svelte-b8emeh",null,ue,{sel:((A=e(i))==null?void 0:A.id)===e(C).id}),M(V,he),fe=ge(H,1,"ch-state svelte-b8emeh",null,fe,{on:e(C).enabled}),M(T,(e(C),r(()=>e(C).enabled?"已启用":"已停用")))},[()=>(e(C),r(()=>se(e(C).channel)))]),P("click",W,()=>G(e(C).id)),h(f,W)}),t(de);var qe=n(de,2);{var Fe=f=>{var C=yr(),W=a(C),ue=a(W),Se=a(ue,!0);t(ue);var Te=n(ue,2);let K;t(W);var V=n(W,2),H=a(V);{var fe=be=>{var _e=Pt();Y(()=>M(_e,`${e(i),r(()=>{var xe;return(xe=e(i).live)!=null&&xe.connected?"轮询运行中":"未在轮询"})??""}${e(i),r(()=>{var xe;return(xe=e(i).live)!=null&&xe.username?` · @${e(i).live.username}`:""})??""}。
3
- 停用/启用在重启实例后生效。`)),h(be,_e)},T=be=>{var _e=Pt("待接入:凭证保存后,通道本体在后续版本启用。");h(be,_e)};U(H,be=>{e(i),r(()=>e(i).channel==="telegram")?be(fe):be(T,-1)})}t(V);var he=n(V,2),A=n(a(he),2);ft(A);var F=n(A,2),ce=a(F),ze=n(ce,2);{var ne=be=>{var _e=mr(),xe=a(_e,!0);t(_e),Y(()=>M(xe,e($))),h(be,_e)};U(ze,be=>{e($)&&be(ne)})}t(F),t(he);var ve=n(he,2),Oe=n(a(ve),2),Be=a(Oe);let J;var Ve=n(Be,2);let Je;t(Oe),t(ve);var Ne=n(ve,2),Ce=n(a(Ne),2),je=a(Ce);let tt;var Re=n(je,2);let Me;t(Ce);var Ue=n(Ce,2);{var Ke=be=>{var _e=gr();h(be,_e)};U(Ue,be=>{e(i),r(()=>e(i).workspaces.mode==="custom")&&be(Ke)})}t(Ne);var Ze=n(Ne,2),Xe=n(a(Ze),2);t(Ze),t(C),Y(be=>{M(Se,be),K=ge(Te,1,"switch svelte-b8emeh",null,K,{on:e(i).enabled}),De(Te,"aria-pressed",(e(i),r(()=>e(i).enabled))),De(A,"placeholder",(e(i),r(()=>e(i).channel==="telegram"?"BotFather token(留空保持不变)":"凭证(预留)"))),J=ge(Be,1,"opt svelte-b8emeh",null,J,{sel:e(i).replyGranularity==="standard"}),Je=ge(Ve,1,"opt svelte-b8emeh",null,Je,{sel:e(i).replyGranularity==="detailed"}),tt=ge(je,1,"opt svelte-b8emeh",null,tt,{sel:e(i).workspaces.mode==="all"}),Me=ge(Re,1,"opt svelte-b8emeh",null,Me,{sel:e(i).workspaces.mode==="custom"})},[()=>(e(i),r(()=>se(e(i).channel)))]),P("click",Te,()=>pe(e(i))),_t(A,()=>e(z),be=>s(z,be)),P("click",ce,()=>ye(e(i))),P("click",Be,()=>Ae(e(i),"standard")),P("click",Ve,()=>Ae(e(i),"detailed")),P("click",je,()=>Ie.updateChannel(e(i).id,{workspaces:{mode:"all"}}).then(ae)),P("click",Re,()=>Ie.updateChannel(e(i).id,{workspaces:{mode:"custom",dirs:[]}}).then(ae)),P("click",Xe,le),h(f,C)};U(qe,f=>{e(i)&&f(Fe)})}t(te);var Pe=n(te,2),d=a(Pe);{var B=f=>{var C=xr(),W=We(C),ue=a(W),Se=a(ue),Te=n(a(Se));{var K=ve=>{var Oe=wr();let Be;var J=a(Oe,!0);t(Oe),Y(()=>{Be=ge(Oe,1,"cd mono svelte-b8emeh",null,Be,{expired:e(I)}),M(J,e(I)?"已过期":`· ${e(x)}`)}),h(ve,Oe)};U(Te,ve=>{e(L)!==null&&ve(K)})}t(Se),vt(2),t(ue);var V=n(ue,2);t(W);var H=n(W,2);let fe;var T=a(H);ha(T,()=>(e(k),r(()=>e(k).svg)));var he=n(T,2);{var A=ve=>{var Oe=kr(),Be=n(a(Oe),2);t(Oe),P("click",Be,ee),h(ve,Oe)};U(he,ve=>{e(I)&&ve(A)})}t(H);var F=n(H,2),ce=n(a(F),4),ze=n(ce,2),ne=a(ze,!0);t(ze),t(F),Y(()=>{fe=ge(H,1,"qr-big svelte-b8emeh",null,fe,{dim:e(I)}),M(ne,e(j)?"✓ 已复制":"复制链接")}),P("click",V,O),P("click",ce,ee),P("click",ze,we),h(f,C)},re=f=>{var C=Ar(),W=n(a(C),2);t(C),P("click",W,ee),h(f,C)},me=f=>{var C=$r();h(f,C)};U(d,f=>{e(k)&&!e(R)?f(B):e(R)?f(re,1):f(me,-1)})}t(Pe),t(ie),t(y),P("click",Z,N),P("click",$e,N),P("click",ie,Ha(function(f){Za.call(this,v,f)})),P("click",y,N),h(l,y)};U(o,l=>{b()&&l(p)})}h(q,c),Ge(),D()}var zr=w('<div class="overlay svelte-1r7zhoh"><button class="backdrop svelte-1r7zhoh" aria-label="Close"></button> <div class="menu svelte-1r7zhoh" role="menu" aria-label="New actions"><button class="item svelte-1r7zhoh" role="menuitem"><span class="icon svelte-1r7zhoh" aria-hidden="true">+</span> <span class="label svelte-1r7zhoh">New session</span></button> <button class="item svelte-1r7zhoh" role="menuitem"><span class="icon svelte-1r7zhoh" aria-hidden="true"><!></span> <span class="label svelte-1r7zhoh">Command palette</span> <kbd class="keycap mono svelte-1r7zhoh">⌘K</kbd></button></div></div>');function Cr(q,v){Ye(v,!1);const b=()=>Ee($t,"$plusMenuOpen",S),[S,D]=ot();let i=Le(v,"anchor",8,null);function L(){$t.set(!1),St.set(!0)}function I(){$t.set(!1),It.set(!0)}function x(){$t.set(!1)}function u($){$.key==="Escape"&&x()}Qe();var m=gt();P("keydown",Mt,u);var k=We(m);{var z=$=>{var j=zr(),E=a(j),R=n(E,2),X=a(R),ae=n(X,2),ee=a(ae),O=a(ee);xt(O,{name:"search",size:14}),t(ee),vt(4),t(ae),t(R),t(j),Y(se=>lt(R,se),[()=>(oe(i()),r(()=>i()?`top:${i().getBoundingClientRect().bottom+6}px; left:${i().getBoundingClientRect().left}px`:""))]),P("click",E,x),P("click",X,L),P("click",ae,I),h($,j)};U(k,$=>{b()&&$(z)})}h(q,m),Ge(),D()}var Tr=w('<button class="scrim svelte-9zfapn" aria-label="Close"></button>'),Mr=w('<button class="dial-item svelte-9zfapn" role="menuitem"><span class="dial-label mono svelte-9zfapn"> </span> <span class="dial-icon svelte-9zfapn" aria-hidden="true"> </span></button>'),qr=w('<div class="dial svelte-9zfapn" role="menu"></div>'),Lr=w('<div><!> <!> <button><span aria-hidden="true">+</span></button></div>');function Er(q,v){Ye(v,!1);let b=_(!1);const S=()=>s(b,!e(b)),D=()=>s(b,!1),i=[{label:"新建会话",icon:"+",run:()=>St.set(!0)},{label:"搜索与命令",icon:"⌕",run:()=>It.set(!0)}];function L(R){R.run(),D()}function I(R){R.key==="Escape"&&e(b)&&D()}Qe();var x=Lr();P("keydown",Mt,I);let u;var m=a(x);{var k=R=>{var X=Tr();P("click",X,D),h(R,X)};U(m,R=>{e(b)&&R(k)})}var z=n(m,2);{var $=R=>{var X=qr();et(X,5,()=>i,ae=>ae.label,(ae,ee)=>{var O=Mr(),se=a(O),N=a(se,!0);t(se);var G=n(se,2),pe=a(G,!0);t(G),t(O),Y(()=>{M(N,e(ee).label),M(pe,e(ee).icon)}),P("click",O,()=>L(e(ee))),h(ae,O)}),t(X),h(R,X)};U(z,R=>{e(b)&&R($)})}var j=n(z,2);let E;t(x),Y(()=>{u=ge(x,1,"fab-root svelte-9zfapn",null,u,{open:e(b)}),E=ge(j,1,"fab svelte-9zfapn",null,E,{rot:e(b)}),De(j,"aria-label",e(b)?"关闭菜单":"快捷操作"),De(j,"aria-expanded",e(b))}),P("click",j,S),h(q,x),Ge()}var Br=w('<p class="rejected svelte-9s687p"> </p>'),Dr=w('<p class="rejected svelte-9s687p">上一次的令牌被服务器拒绝了——请在下方重新配对。</p>'),Or=w('<span class="chip mono svelte-9s687p"> </span>'),jr=w("<span> </span>"),Pr=w('<div class="qr-re svelte-9s687p"><span>已过期</span> <button class="btn svelte-9s687p">刷新二维码</button></div>'),Fr=w('<div class="wait-row svelte-9s687p"><span class="wait svelte-9s687p">等待手机连接 <!></span></div> <div class="qr-wrap svelte-9s687p"><!> <!></div> <div class="acts svelte-9s687p"><span class="hint svelte-9s687p">无法扫码?在手机上打开链接。</span> <span class="spacer svelte-9s687p"></span> <button class="btn svelte-9s687p">⟳ 刷新二维码</button> <button class="btn svelte-9s687p"> </button></div> <p class="hint dim svelte-9s687p">二维码 5 分钟内有效、仅可使用一次;刷新会作废旧码。配对成功后本页自动进入面板。</p>',1),Rr=w('<p class="hint dim svelte-9s687p">配对信息加载中…(若宿主机未启用配对组件,请用下方令牌粘贴)</p>'),Ur=w('<span class="ok svelte-9s687p"> </span>'),Wr=w('<span class="off svelte-9s687p">未连接</span>'),Jr=w('<span class="off svelte-9s687p">待接入</span>'),Nr=w('<div class="ch svelte-9s687p"><span class="ch-icon svelte-9s687p" aria-hidden="true"><!></span> <div class="ch-body"><div class="ch-name svelte-9s687p"> <!></div> <div class="ch-note svelte-9s687p"> </div></div></div>'),Kr=w('<!> <p class="hint dim svelte-9s687p">通道凭证与回复粒度等管理功能,在配对后的「机器人管理」面板中。</p>',1),Hr=w('<p class="hint dim svelte-9s687p">…</p>'),Qr=w('<div class="err svelte-9s687p"> </div>'),Yr=w('<div class="gate svelte-9s687p"><div class="panel svelte-9s687p"><div class="head svelte-9s687p"><span class="hicon svelte-9s687p" aria-hidden="true"><svg viewBox="0 0 64 64" fill="none" stroke-width="6" stroke-linecap="round" class="svelte-9s687p"><path d="M46 15 A24 24 0 1 0 54 32" stroke="var(--text)" opacity=".85"></path><circle cx="49" cy="20" r="7" fill="var(--accent)" stroke="none"></circle></svg></span> <div><h1 class="svelte-9s687p">配对 ocrc 远程控制</h1> <p class="sub svelte-9s687p">扫码或在手机上打开链接,即可远程控制这台机器的 opencode。</p></div></div> <!> <div class="cols svelte-9s687p"><section class="scan svelte-9s687p"><div class="sec-head svelte-9s687p"><span class="sec-title svelte-9s687p">📱 手机扫码连接</span> <!></div> <p class="sub svelte-9s687p">用手机相机扫码,在手机上打开这台机器。</p> <!></section> <section class="channels svelte-9s687p"><div class="sec-head svelte-9s687p"><span class="sec-title svelte-9s687p">🤖 Bot 通道</span></div> <p class="sub svelte-9s687p">连接聊天 Bot,适合更长时间的移动端访问。</p> <!></section></div> <details class="paste svelte-9s687p"><summary class="svelte-9s687p">已有配对链接或令牌?</summary> <div class="paste-body svelte-9s687p"><input class="field mono svelte-9s687p" placeholder="粘贴配对链接或令牌…" aria-label="配对令牌或链接" autocapitalize="off" autocorrect="off" spellcheck="false"/> <!> <button class="connect svelte-9s687p">连接</button></div></details> <p class="hint dim foot svelte-9s687p">令牌只保存在本设备上 · Telegram 通道为可选,未配置时仅 Web 面板可用</p></div></div>');function Gr(q,v){Ye(v,!1);const b=()=>Ee($a,"$pairHint",S),[S,D]=ot(),i=_(),L=_(),I=_();let x=Le(v,"status",8,"pairing"),u=_(""),m=_(""),k=_(!1),z=_(null),$=_(Date.now()),j=_(!1),E;async function R(){try{s(z,await Ie.pairOnboarding()),s($,Date.now())}catch{s(z,null)}}const X={telegram:{name:"Telegram",note:"从 Telegram 打开这台机器"},wechat:{name:"微信",note:"待接入(配置面板已预埋)"},lark:{name:"飞书 / Lark",note:"待接入(配置面板已预埋)"}};Yt(()=>{R(),E=setInterval(()=>{s($,Date.now()),e(L)&&R()},1e3)}),Qt(()=>{E&&clearInterval(E)});async function ae(){if(e(z))try{await navigator.clipboard.writeText(e(z).url),s(j,!0),setTimeout(()=>s(j,!1),1600)}catch{}}function ee(d){const B=d.trim(),re=B.match(/token=([^&#\s]+)/);return re?decodeURIComponent(re[1]):B}async function O(){if(s(m,""),/[?#]pair=/.test(e(u))){s(m,await Ia(e(u)));return}const d=ee(e(u));if(!d||d.length<16){s(m,"这看起来不是有效的令牌。");return}Sa(d)||s(m,"这看起来不是有效的令牌。")}Q(()=>(e(z),e($)),()=>{var d;s(i,(d=e(z))!=null&&d.expiresAt?Math.max(0,e(z).expiresAt-e($)):null)}),Q(()=>e(i),()=>{s(L,e(i)!==null&&e(i)<=0)}),Q(()=>e(i),()=>{s(I,e(i)===null?"":`${Math.floor(e(i)/6e4)}:${String(Math.floor(e(i)%6e4/1e3)).padStart(2,"0")}`)}),nt(),Qe();var se=Yr(),N=a(se),G=n(a(N),2);{var pe=d=>{var B=Br(),re=a(B,!0);t(B),Y(()=>M(re,b())),h(d,B)},Ae=d=>{var B=Dr();h(d,B)};U(G,d=>{b()?d(pe):x()==="rejected"&&d(Ae,1)})}var ye=n(G,2),le=a(ye),we=a(le),g=n(a(we),2);{var c=d=>{var B=Or(),re=a(B);t(B),Y(()=>M(re,`${e(z),r(()=>e(z).host.hostname)??""} · ${e(z),r(()=>e(z).host.arch)??""}`)),h(d,B)};U(g,d=>{e(z)&&d(c)})}t(we);var o=n(we,4);{var p=d=>{var B=Fr(),re=We(B),me=a(re),f=n(a(me));{var C=T=>{var he=jr();let A;var F=a(he,!0);t(he),Y(()=>{A=ge(he,1,"mono cd svelte-9s687p",null,A,{expired:e(L)}),M(F,e(L)?"二维码已过期":`· ${e(I)}`)}),h(T,he)};U(f,T=>{e(i)!==null&&T(C)})}t(me),t(re);var W=n(re,2),ue=a(W);ha(ue,()=>(e(z),r(()=>e(z).svg)));var Se=n(ue,2);{var Te=T=>{var he=Pr(),A=n(a(he),2);t(he),P("click",A,R),h(T,he)};U(Se,T=>{e(L)&&T(Te)})}t(W);var K=n(W,2),V=n(a(K),4),H=n(V,2),fe=a(H,!0);t(H),t(K),vt(2),Y(()=>M(fe,e(j)?"✓ 已复制":"复制链接")),P("click",V,R),P("click",H,ae),h(d,B)},l=d=>{var B=Rr();h(d,B)};U(o,d=>{e(z)?d(p):d(l,-1)})}t(le);var y=n(le,2),Z=n(a(y),4);{var ie=d=>{var B=Kr(),re=We(B);et(re,1,()=>(e(z),r(()=>e(z).channels)),me=>me.channel,(me,f)=>{var C=Nr(),W=a(C),ue=a(W);ma(ue,{get channel(){return e(f),r(()=>e(f).channel)},size:30}),t(W);var Se=n(W,2),Te=a(Se),K=a(Te),V=n(K);{var H=F=>{var ce=Ur(),ze=a(ce);t(ce),Y(()=>M(ze,`已连接 @${e(f),r(()=>e(f).live.username)??""}`)),h(F,ce)},fe=F=>{var ce=Wr();h(F,ce)},T=F=>{var ce=Jr();h(F,ce)};U(V,F=>{e(f),r(()=>{var ce;return e(f).channel==="telegram"&&((ce=e(f).live)==null?void 0:ce.connected)})?F(H):(e(f),r(()=>e(f).channel==="telegram")?F(fe,1):F(T,-1))})}t(Te);var he=n(Te,2),A=a(he,!0);t(he),t(Se),t(C),Y(()=>{M(K,`${e(f),r(()=>{var F;return((F=X[e(f).channel])==null?void 0:F.name)??e(f).channel})??""} `),M(A,(e(f),r(()=>{var F;return((F=X[e(f).channel])==null?void 0:F.note)??""})))}),h(me,C)}),vt(2),h(d,B)},ke=d=>{var B=Hr();h(d,B)};U(Z,d=>{e(z)?d(ie):d(ke,-1)})}t(y),t(ye);var $e=n(ye,2),te=n(a($e),2),de=a(te);ft(de);var qe=n(de,2);{var Fe=d=>{var B=Qr(),re=a(B,!0);t(B),Y(()=>M(re,e(m))),h(d,B)};U(qe,d=>{e(m)&&d(Fe)})}var Pe=n(qe,2);t(te),t($e),vt(2),t(N),t(se),Y(d=>Pe.disabled=d,[()=>(e(u),r(()=>!e(u).trim()))]),_t(de,()=>e(u),d=>s(u,d)),P("keydown",de,d=>d.key==="Enter"&&O()),P("click",Pe,O),Va("open","toggle",$e,d=>s(k,d),()=>e(k)),h(q,se),Ge(),D()}var Vr=w('<button class="backdrop svelte-12qhfyh" aria-label="Close"></button>'),Zr=w('<div class="app svelte-12qhfyh"><!> <!> <div class="body svelte-12qhfyh"><!> <div><!></div> <main class="svelte-12qhfyh"><!></main> <div><!></div></div></div> <!> <!> <!> <!> <!> <!>',1);function ol(q,v){Ye(v,!1);const b=()=>Ee(fa,"$page",x),S=()=>Ee(Ft,"$backends",x),D=()=>Ee(Bt,"$inspectorOpen",x),i=()=>Ee(Gt,"$leftPanelOpen",x),L=()=>Ee(It,"$paletteOpen",x),I=()=>Ee(Wt,"$auth",x),[x,u]=ot(),m=_();let k=_(!1),z=_(!1),$=_(),j=_(null);function E(){s(k,!1),Bt.set(!1)}function R(){s(k,!e(k)),Bt.set(!1)}function X(){Bt.update(K=>!K),s(k,!1)}function ae(K){if((K.metaKey||K.ctrlKey)&&K.key.toLowerCase()==="k"){K.preventDefault(),It.set(!0);return}if(K.key==="Escape"){if(zt($t)){$t.set(!1);return}if(zt(St)){St.set(!1);return}E()}}let ee=_(""),O=null,se=_(null);async function N(){e(se)&&(e(se).prompt(),await e(se).userChoice,s(se,null))}let G=null,pe=!1,Ae=0,ye;async function le(K){if(!(pe||Date.now()-Ae<2e3)){pe=!0,Ae=Date.now();try{const{cards:V,lastSeq:H}=await Ie.history(K);la.set(!0),Jt(K,V,H),setTimeout(()=>la.set(!1),350),O==null||O.send({type:"subscribe",sessionId:K,sinceSeq:H})}catch(V){console.warn("[layout] resync failed",V)}finally{pe=!1}}}function we(K){var H,fe;if(zt(Wt)!=="ready")return;if(Ta.set(K),ns(K),!K){sa(void 0),G=null;return}sa(K);const V=!((fe=(H=zt(Ct)[K])==null?void 0:H.order)!=null&&fe.length);K===G&&!V||(G=K,Ie.history(K).then(({cards:T,lastSeq:he})=>{Jt(K,T,he),O==null||O.send({type:"subscribe",sessionId:K,sinceSeq:he})}).catch(T=>{console.warn("[layout] history failed",T),Jt(K,[],0),O==null||O.send({type:"subscribe",sessionId:K})}))}function g(){O&&(O.close(),O=null),Ie.me().then(V=>{s(ee,V.email)}).catch(()=>{}),Ie.sessions().then(V=>{dt.set(V)}).catch(()=>{}),za(),Ca();const K=location.protocol==="https:"?"wss:":"ws:";O=ss({url:`${K}//${location.host}/ws`,onReconnect:()=>{var V;if(G){const H=((V=zt(Ct)[G])==null?void 0:V.lastSeq)??0;O==null||O.send({type:"subscribe",sessionId:G,sinceSeq:H})}},onMessage:V=>{var H;if(V.type==="card"&&V.card){const fe=V.card.sessionId,T=fe?((H=zt(Ct)[fe])==null?void 0:H.lastSeq)??0:0;Ma(V.card),fe&&qa(T,V.card)&&(clearTimeout(ye),ye=setTimeout(()=>{le(fe)},500))}(V.type==="hello"||V.type==="sessions")&&V.sessions&&(dt.set(V.sessions),rs(V.sessions)),V.type==="replayEnd"&&V.complete===!1&&typeof V.sessionId=="string"&&le(V.sessionId)}}),we(b().params.sessionId)}Yt(()=>{const K=Wt.subscribe(ve=>{ve==="ready"&&g()}),V=ve=>{ve.preventDefault(),s(se,ve)};window.addEventListener("beforeinstallprompt",V);const H=window.matchMedia("(max-width: 820px)");s(z,H.matches);const fe=ve=>{s(z,ve.matches),ve.matches||E()};H.addEventListener("change",fe);const T=window.visualViewport,he=()=>{!T||!e($)||(window.scrollY!==0&&window.scrollTo(0,0),na($,e($).style.height=`${Math.round(T.height)}px`),na($,e($).style.transform=T.offsetTop>0?`translateY(${Math.round(T.offsetTop)}px)`:""))};he(),T==null||T.addEventListener("resize",he),T==null||T.addEventListener("scroll",he);const A=()=>setTimeout(he,300);window.addEventListener("orientationchange",A);let F=0,ce=0;const ze=()=>{he(),Date.now()<F?ce=requestAnimationFrame(ze):ce=0},ne=()=>{F=Date.now()+650,ce||(ce=requestAnimationFrame(ze))};return window.addEventListener("focusin",ne),window.addEventListener("focusout",ne),()=>{K(),window.removeEventListener("beforeinstallprompt",V),H.removeEventListener("change",fe),T==null||T.removeEventListener("resize",he),T==null||T.removeEventListener("scroll",he),window.removeEventListener("focusin",ne),window.removeEventListener("focusout",ne),window.removeEventListener("orientationchange",A),ce&&cancelAnimationFrame(ce),clearTimeout(ye),O==null||O.close()}}),Qa(K=>{var V,H;E(),we((H=(V=K.to)==null?void 0:V.params)==null?void 0:H.sessionId)}),Q(()=>(S(),Kt),()=>{S()&&typeof document<"u"&&Kt(S().activeId)}),Q(()=>b(),()=>{s(m,!!b().params.sessionId)}),nt(),Qe();var c=Zr();P("keydown",Mt,ae);var o=We(c),p=a(o);{var l=K=>{vs(K,{get email(){return e(ee)},onPalette:()=>It.set(!0),get installEvent(){return e(se)},onInstall:N,get drawerLeft(){return e(k)},get drawerRight(){return D()},onToggleLeft:R,onToggleRight:X,get newButtonAnchor(){return e(j)},set newButtonAnchor(V){s(j,V)},$$legacy:!0})};U(p,K=>{e(z)&&e(m)||K(l)})}var y=n(p,2);us(y);var Z=n(y,2),ie=a(Z);{var ke=K=>{var V=Vr();P("click",V,E),h(K,V)};U(ie,K=>{(e(k)||D())&&K(ke)})}var $e=n(ie,2);let te;var de=a($e);Fs(de,{get activeId(){return b(),r(()=>b().params.sessionId)},get drawer(){return e(z)}}),t($e);var qe=n($e,2),Fe=a(qe);Ya(Fe,v,"default",{}),t(qe);var Pe=n(qe,2);let d;var B=a(Pe);Qn(B,{get sessionId(){return b(),r(()=>b().params.sessionId)}}),t(Pe),t(Z),t(o),Rt(o,K=>s($,K),()=>e($));var re=n(o,2);nr(re,{get open(){return L()},$$events:{close:()=>It.set(!1)}});var me=n(re,2);Cr(me,{get anchor(){return e(j)}});var f=n(me,2);ur(f,{});var C=n(f,2);Sr(C,{});var W=n(C,2);{var ue=K=>{Er(K,{})};U(W,K=>{e(m)||K(ue)})}var Se=n(W,2);{var Te=K=>{{let V=mt(()=>I()==="rejected"?"rejected":"pairing");Gr(K,{get status(){return e(V)}})}};U(Se,K=>{I()!=="ready"&&K(Te)})}Y(()=>{te=ge($e,1,"rail-wrap svelte-12qhfyh",null,te,{collapsed:!i()&&!e(z),open:e(k)||e(z)&&!e(m)}),d=ge(Pe,1,"inspector-wrap svelte-12qhfyh",null,d,{open:D()})}),h(q,c),Ge(),u()}export{ol as component,ll as universal};