signetai 0.60.0 → 0.61.0
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/dashboard/_app/immutable/chunks/{BtWoeedR.js → 12DNZSBI.js} +1 -1
- package/dashboard/_app/immutable/chunks/{KOQhcKlJ.js → 22yZW_lS.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DH4ns4rB.js → B-2VMzoS.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CqjPV1ex.js → B10BxZPt.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DEXTM_70.js → B9sNKNlY.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Z5b_7fR8.js → BJkv6dHK.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Cxe1JNnS.js → BLVX5srz.js} +1 -1
- package/dashboard/_app/immutable/chunks/{1TZwfVu1.js → BYrqkNBv.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CsjyFCwi.js → BcsfIcho.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BE_TQnka.js → BggB5bWi.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BCjU6vup.js → BpI6lIwh.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BoBvbq60.js → BvVVkod3.js} +1 -1
- package/dashboard/_app/immutable/chunks/{cFH3O6uJ.js → C1tom5yQ.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BHWfeWzL.js → C3rQiPqA.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C0n4PlJ0.js → C6_qU3Qw.js} +1 -1
- package/dashboard/_app/immutable/chunks/{5VLO4fH1.js → CBf6h1eC.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CXN11ObP.js → CHSpwIUq.js} +1 -1
- package/dashboard/_app/immutable/chunks/{lwqsZy3v.js → CNRAfJx3.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Brfl2YxD.js → CRhqfmKE.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C4aPpIV5.js → CiyQaJH4.js} +3 -3
- package/dashboard/_app/immutable/chunks/{Dyw4VR3a.js → CkStWrbF.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C06bqPK5.js → Cp7lNaMx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{sNnmtNZY.js → Csmqyrwu.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CFKMuVKk.js → D3WOLEHE.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CQtl2LD4.js → D4d0VwwR.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DM-MFukW.js → D8c2r09G.js} +1 -1
- package/dashboard/_app/immutable/chunks/DOT5sLtM.js +1 -0
- package/dashboard/_app/immutable/chunks/DT_lhHiM.js +15 -0
- package/dashboard/_app/immutable/chunks/{od8Xq9xQ.js → DU-T_rTf.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Ca7pwt3t.js → DWto8nRf.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Czb5yUN6.js → Db9N4xcY.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DlUd6T31.js → DmPU49fT.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BjSSaXfV.js → Dwip3mmK.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C2Xs4Mav.js → On02AcL7.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DjePl4k7.js → YJI94PfR.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DVgZLKJI.js → jiicdcZx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{D-lI-zYh.js → nF-fz3Th.js} +1 -1
- package/dashboard/_app/immutable/chunks/{B9q0fAbw.js → q-nV9VJE.js} +1 -1
- package/dashboard/_app/immutable/entry/{app.ByV7nAF7.js → app.9yFF5le4.js} +2 -2
- package/dashboard/_app/immutable/entry/start.C70WkECL.js +1 -0
- package/dashboard/_app/immutable/nodes/{1.EwR5ZGKc.js → 1.Cy-EmvzV.js} +1 -1
- package/dashboard/_app/immutable/nodes/2.C6j2Q5vP.js +1 -0
- package/dashboard/_app/version.json +1 -1
- package/dashboard/index.html +6 -6
- package/dist/cli.js +37 -6
- package/dist/daemon.js +362 -40
- package/package.json +1 -1
- package/dashboard/_app/immutable/chunks/DIB5_VlF.js +0 -15
- package/dashboard/_app/immutable/chunks/lC7jI4KZ.js +0 -1
- package/dashboard/_app/immutable/entry/start.O2TlMkVJ.js +0 -1
- package/dashboard/_app/immutable/nodes/2.D-PTe9g9.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p,s as c,c as d,f as l,a as i,n as f,b as m,d as h,r as u}from"./BJi5clDn.js";import{I as $}from"./
|
|
1
|
+
import{p,s as c,c as d,f as l,a as i,n as f,b as m,d as h,r as u}from"./BJi5clDn.js";import{I as $}from"./CiyQaJH4.js";function C(o,e){p(e,!0);let t=u(e,["$$slots","$$events","$$legacy"]);const r=[["path",{d:"m15 18-6-6 6-6"}]];$(o,c({name:"chevron-left"},()=>t,{get iconNode(){return r},children:(a,v)=>{var s=d(),n=l(s);i(n,()=>e.children??f),m(a,s)},$$slots:{default:!0}})),h()}export{C};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{p as ae,g as be,j as s,t as ge,a as _e,n as pe,l as a,v as me,b as e,d as se,r as fe,m as $,s as Fr,c as dt,f,y as st,e as te,z as Kr,A as r,h as o,D as l,E as n,B as P,i as t,F as v,G as d,H as ee,u as K,K as re,k as Lt,I as Me,ab as Xe,O as fr,_ as Br,P as zr}from"./BJi5clDn.js";import{P as Rr}from"./FAGA5WfT.js";import{T as Lr}from"./Cr5cBjY6.js";import{c as ye,I as Or,h as Ir,n as Wr,i as Vr,O as $e,B as tr,ad as Hr,ae as qr,af as Gr,ag as Ur,ah as xr,ai as Yr,aj as Zr,ak as Jr,al as Qr,am as Xr,an as ta,ao as ea,ap as ra}from"./C4aPpIV5.js";import{B as W}from"./BHWfeWzL.js";import{a as ke,C as Te}from"./CQtl2LD4.js";import{C as je}from"./DlUd6T31.js";import{C as Fe,a as Ke}from"./Ca7pwt3t.js";import{I as aa}from"./lwqsZy3v.js";import{b as sa,P as oa,a as la}from"./BoBvbq60.js";import{c as na,S as ia,a as da,b as va}from"./BjSSaXfV.js";import{C as ca,a as ua}from"./BE_TQnka.js";import{N as $a}from"./Z5b_7fR8.js";import{R as hr}from"./od8Xq9xQ.js";var ga=$('<div data-slot="table-container" class="relative w-full overflow-x-auto"><table><!></table></div>');function er(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=ga(),$t=s(b);ge($t,Jt=>({"data-slot":"table",class:Jt,...Pt}),[()=>ye("w-full caption-bottom text-sm",m.class)]);var V=s($t);_e(V,()=>m.children??pe),a($t),me($t,Jt=>ot(Jt),()=>ot()),a(b),e(At,b),se()}var _a=$("<tbody><!></tbody>");function rr(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=_a();ge(b,V=>({"data-slot":"table-body",class:V,...Pt}),[()=>ye("[&_tr:last-child]:border-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var pa=$("<td><!></td>");function Dt(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=pa();ge(b,V=>({"data-slot":"table-cell",class:V,...Pt}),[()=>ye("bg-clip-padding p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pe-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var fa=$("<th><!></th>");function Nt(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=fa();ge(b,V=>({"data-slot":"table-head",class:V,...Pt}),[()=>ye("text-foreground h-10 bg-clip-padding px-2 text-start align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pe-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var xa=$("<thead><!></thead>");function ar(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=xa();ge(b,V=>({"data-slot":"table-header",class:V,...Pt}),[()=>ye("[&_tr]:border-b",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var ha=$("<tr><!></tr>");function he(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=ha();ge(b,V=>({"data-slot":"table-row",class:V,...Pt}),[()=>ye("hover:[&,&>svelte-css-wrapper]:[&>th,td]:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}function br(At,m){ae(m,!0);let ot=fe(m,["$$slots","$$events","$$legacy"]);const Pt=[["path",{d:"M12 17v5"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"}]];Or(At,Fr({name:"pin"},()=>ot,{get iconNode(){return Pt},children:(b,$t)=>{var V=dt(),Jt=f(V);_e(Jt,()=>m.children??pe),e(b,V)},$$slots:{default:!0}})),se()}var ba=$("<!> Entity Browser",1),ma=$("<!> <!>",1),ya=$("<!> <!>",1),Pa=$('<div class="p-6 sig-label text-[var(--sig-text-muted)]">No entities match the current filters.</div>'),wa=$('<button><span></span> <span class="sig-heading text-[11px] tracking-[0.08em] truncate min-w-0 flex-1"> </span> <!> <span class="sig-meta shrink-0 text-[var(--sig-text-muted)]"> </span> <span class="sig-meta shrink-0 flex items-center gap-1 tabular-nums text-[var(--sig-text-muted)]"><span title="aspects"> <span class="opacity-50">a</span></span> <span title="attributes"> <span class="opacity-50">t</span></span> <span class="text-[var(--sig-danger)]" title="constraints"> <span class="opacity-50">c</span></span> <span title="dependencies"> <span class="opacity-50">d</span></span></span></button>'),Ca=$('<div class="space-y-3"><!> <!> <!></div>'),Sa=$('<div class="flex h-full min-h-[360px] items-center justify-center sig-label text-[var(--sig-text-muted)]">Select an entity to inspect its structure.</div>'),ka=$("<!> ",1),Ta=$('<button><div class="flex items-center justify-between gap-2"><span class="sig-label text-[var(--sig-text-bright)]"> </span> <span class="sig-label text-[var(--sig-text-muted)]"> </span></div> <div class="mt-1 flex flex-wrap gap-1"><!> <!></div></button>'),Ea=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No active rows for this aspect.</div>'),Da=$('<div class="border border-[var(--sig-border)] p-2"><div class="mb-1 flex items-center gap-1.5"><!> <!></div> <div class="sig-label text-[var(--sig-text-bright)]"> </div></div>'),Na=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No dependency edges recorded.</div>'),Aa=$('<div class="mt-1 sig-meta text-[var(--sig-text-muted)] italic"> </div>'),Ma=$('<div class="border border-[var(--sig-border)] p-2"><div class="flex items-center justify-between gap-2"><!> <span class="sig-label text-[var(--sig-text-muted)]"> </span></div> <div class="mt-1 sig-label text-[var(--sig-text-bright)]"> </div> <!></div>'),ja=$('<div class="space-y-4"><div class="space-y-2 border-b border-[var(--sig-border)] pb-3"><div class="flex items-start justify-between gap-3"><div><div class="flex items-center gap-2"><span></span> <h3 class="sig-heading text-[14px] uppercase tracking-[0.08em]"> </h3> <!></div> <p class="sig-label text-[var(--sig-text-muted)]"> </p></div> <div class="flex items-center gap-2"><!> <!></div></div> <div class="flex flex-wrap gap-1.5"><!> <!></div></div> <div class="grid gap-3 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Aspects</div> <div class="space-y-1.5"></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Attributes</div> <div class="max-h-[240px] space-y-1.5 overflow-auto"><!></div></div></div> <div class="grid gap-3 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Dependencies</div> <div class="max-h-[220px] space-y-1.5 overflow-auto"><!></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Structural Density</div> <div class="grid grid-cols-2 gap-2"><!> <!> <!> <!></div></div></div></div>'),Fa=$('<div class="flex flex-col gap-2 lg:flex-row"><!> <!></div> <div class="grid gap-3 lg:grid-cols-[minmax(0,1.15fr)_minmax(360px,0.85fr)]"><div class="max-h-[520px] overflow-y-auto border border-[var(--sig-border)] bg-[var(--sig-surface)]"><!></div> <!></div>',1),Ka=$("<!> <!>",1),Ba=$('<div class="flex items-center justify-between gap-2"><div><!> <!></div> <!></div>'),za=$('<div class="border border-dashed border-[var(--sig-border)] p-4 sig-label text-[var(--sig-text-muted)]">No traversal snapshot recorded yet.</div>'),Ra=$('<div class="flex flex-wrap gap-1.5"><!> <!> <!></div> <div class="sig-label text-[var(--sig-text-bright)]"> </div> <div class="grid grid-cols-2 gap-2 xl:grid-cols-4"><!> <!> <!> <!></div> <div class="sig-label text-[var(--sig-text-muted)]"> </div>',1),La=$("<!> <!>",1),Oa=$("<!> <!>",1),Ia=$('<div class="border border-dashed border-[var(--sig-border)] p-4 sig-label text-[var(--sig-text-muted)]">Knowledge stats unavailable.</div>'),Wa=$('<div class="grid grid-cols-2 gap-2 xl:grid-cols-3"><!> <!> <!> <!> <!> <!> <!> <!> <!> <!></div> <div class="space-y-2"><div class="flex items-center justify-between sig-label"><span class="text-[var(--sig-text-muted)]">Structural coverage</span> <span class="text-[var(--sig-text-bright)]"> </span></div> <div class="h-2 border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]"><div class="h-full bg-[var(--sig-accent)]"></div></div></div>',1),Va=$("<!> <!>",1),Ha=$("<button><span> </span> <!></button>"),qa=$("<!> <!>",1),Ga=$('<div class="flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"><div><!> <!></div> <div class="flex items-center gap-2"><!> <!></div></div>'),Ua=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),Ya=$("<!> <!> <!> <!> <!>",1),Za=$('<div class="flex min-w-[120px] items-center gap-2"><div class="h-2 flex-1 border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]"><div class="h-full bg-[var(--sig-accent)]"></div></div> <span> </span></div>'),Ja=$("<!> <!> <!> <!> <!>",1),Qa=$("<!> <!>",1),Xa=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),ts=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),es=$("<!> <!> <!> <!> <!>",1),rs=$("<!> <!> <!> <!> <!>",1),as=$("<!> <!>",1),ss=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),os=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),ls=$("<!> <!> <!> <!> <!> <!>",1),ns=$("<!> <!> <!> <!> <!> <!>",1),is=$("<!> <!>",1),ds=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),vs=$('<div class="grid gap-4 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">By Project</div> <!></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">By Entity</div> <!></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Training Log</div> <!></div>',1),cs=$("<!> <!>",1),us=$('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="flex flex-col flex-1 min-h-0 overflow-auto gap-3 p-3 bg-[var(--sig-bg)]"><!> <div class="grid gap-3 xl:grid-cols-[1fr_1fr]"><!> <!></div> <!></div></div>');function ks(At,m){ae(m,!0);const ot=["all","project","person","system","tool","concept","skill","task"];let Pt=st(""),b=st("all"),$t=st(!0),V=st(!1),Jt=st(!0),Be=st(!0),ze=st(!0),Pe=st(te([])),Bt=st(null),It=st(null),Re=st(te([])),Le=st(te([])),Oe=st(te([])),sr=st(te([])),Ie=st(null),Qt=st(null),we=st(null),gt=st(null),We=st(te([])),xe=st(te([])),Ee=st(te([])),Ce=null,Ve=st(!1);const mr=new Date(Date.now()-10080*60*1e3);let oe=st(te(mr.toISOString().slice(0,10)));function O(i="default"){return i==="warning"?"border-[var(--sig-warning)] text-[var(--sig-warning)]":i==="accent"?"border-[var(--sig-accent)] text-[var(--sig-accent)]":"border-[var(--sig-border-strong)] text-[var(--sig-text)]"}function yr(i){return`${i.toFixed(1)}%`}function He(i){return new Date(i).toLocaleString()}function Pr(i){return new Date(i).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}function wr(i){if(i<1e3)return`${i}ms`;if(i<6e4)return`${(i/1e3).toFixed(1)}s`;const S=Math.floor(i/6e4),J=Math.round(i%6e4/1e3);return`${S}m ${J}s`}function Cr(i){return t(sr).find(S=>S.entityId===i)??null}function or(i){const S=Cr(i);return S?S.trend==="declining"||S.winRate<.4?"bg-[var(--sig-warning)]":S.trend==="improving"||S.winRate>=.65?"bg-[var(--sig-accent)]":"bg-[var(--sig-text-muted)]":"bg-[var(--sig-border-strong)]"}function Sr(i){const S=i.aspectCount+i.attributeCount+i.constraintCount*2+i.dependencyCount,J=Math.max(1,...t(Pe).map(_t=>_t.aspectCount+_t.attributeCount+_t.constraintCount*2+_t.dependencyCount));return .08+S/J*.92}function kr(i){if(!i)return;const S=i.split("-");if(S.length!==3)return;const J=Number(S[0]),_t=Number(S[1]),zt=Number(S[2]);if(!(!Number.isFinite(J)||!Number.isFinite(_t)||!Number.isFinite(zt)))return new Br(J,_t,zt)}function Tr(i){if(!i)return"";const S=String(i.year).padStart(4,"0"),J=String(i.month).padStart(2,"0"),_t=String(i.day).padStart(2,"0");return`${S}-${J}-${_t}`}async function De(){P($t,!0);const i=await Hr({query:t(Pt).trim()||void 0,type:t(b)==="all"?void 0:t(b),limit:50});P(Pe,i.items,!0),P($t,!1),t(Qt)&&!t(Pe).some(S=>S.entity.id===t(Qt))&&(P(Qt,null),P(we,null),P(gt,null),P(We,[],!0),P(xe,[],!0),P(Ee,[],!0))}async function lr(i){P(Qt,i,!0),P(we,null),P(V,!0);const[S,J,_t]=await Promise.all([qr(i),Gr(i),Ur(i)]);P(gt,S,!0),P(We,J,!0),P(Ee,_t,!0),P(xe,[],!0),J.length>0&&(P(we,J[0].aspect.id,!0),P(xe,await xr(i,J[0].aspect.id,{status:"active",limit:50}),!0)),P(V,!1)}async function Er(i){t(Qt)&&(P(we,i,!0),P(xe,await xr(t(Qt),i,{status:"active",limit:50}),!0))}async function qe(){P(Jt,!0);const[i,S]=await Promise.all([Yr(),Zr({since:t(oe)?new Date(`${t(oe)}T00:00:00.000Z`).toISOString():void 0,minComparisons:3})]);P(Bt,i,!0),P(sr,S,!0),P(Jt,!1)}async function Ge(){P(ze,!0);const i=t(oe)?new Date(`${t(oe)}T00:00:00.000Z`).toISOString():void 0,[S,J,_t]=await Promise.all([Jr(i),Qr(i),Xr(20)]);P(Re,S,!0),P(Le,J,!0),P(Oe,_t,!0),P(ze,!1)}async function Dr(i,S){P(Ie,i,!0);try{S?await ta(i):await ea(i),await De(),t(Qt)===i&&await lr(i)}finally{P(Ie,null)}}async function Ue(){P(Be,!0),P(It,await ra(),!0),P(Be,!1)}function Nr(){Ce&&clearTimeout(Ce),Ce=setTimeout(()=>{De()},200)}Kr(()=>{Promise.all([De(),qe(),Ge(),Ue()]);const i=()=>{Ue()};return window.addEventListener("focus",i),()=>{window.removeEventListener("focus",i),Ce&&clearTimeout(Ce)}});var Ye=us(),nr=s(Ye);Rr(nr,{title:"Knowledge",children:(i,S)=>{Lr(i,{group:"memory",get tabs(){return Vr},get activeTab(){return Wr.activeTab},onselect:(J,_t)=>Ir(_t)})}});var ir=r(nr,2),dr=s(ir);o(dr,()=>Te,(i,S)=>{S(i,{class:"border-[var(--sig-border)] bg-[var(--sig-surface)]",children:(J,_t)=>{var zt=Ka(),Vt=f(zt);o(Vt,()=>Fe,(Mt,jt)=>{jt(Mt,{class:"border-b border-[var(--sig-border)] pb-3",children:(Ft,ne)=>{var Y=ma(),X=f(Y);o(X,()=>Ke,(pt,G)=>{G(pt,{class:"sig-heading flex items-center gap-2",children:(x,U)=>{var E=ba(),vt=f(E);$a(vt,{class:"size-4"}),l(),e(x,E)},$$slots:{default:!0}})});var ht=r(X,2);o(ht,()=>je,(pt,G)=>{G(pt,{class:"sig-label text-[var(--sig-text-muted)]",children:(x,U)=>{l();var E=n("Inspect structural entities, aspects, attributes, and dependency edges.");e(x,E)},$$slots:{default:!0}})}),e(Ft,Y)},$$slots:{default:!0}})});var le=r(Vt,2);o(le,()=>ke,(Mt,jt)=>{jt(Mt,{class:"space-y-3 p-3",children:(Ft,ne)=>{var Y=Fa(),X=f(Y),ht=s(X);aa(ht,{class:"sig-label flex-1 border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-bright)]",placeholder:"Search canonical entity name...",oninput:Nr,get value(){return t(Pt)},set value(I){P(Pt,I,!0)}});var pt=r(ht,2);o(pt,()=>na,(I,tt)=>{tt(I,{type:"single",get value(){return t(b)},onValueChange:bt=>{P(b,bt??"all",!0),De()},children:(bt,ct)=>{var D=ya(),Z=f(D);o(Z,()=>ia,(et,y)=>{y(et,{class:"sig-label min-w-[170px] border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-bright)]",children:(B,N)=>{l();var C=n();v(()=>d(C,t(b)==="all"?"All entity types":t(b))),e(B,C)},$$slots:{default:!0}})});var Tt=r(Z,2);o(Tt,()=>da,(et,y)=>{y(et,{class:"border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]",children:(B,N)=>{var C=dt(),nt=f(C);ee(nt,17,()=>ot,re,(u,T)=>{var j=dt(),c=f(j);{let mt=K(()=>t(T)==="all"?"All entity types":t(T));o(c,()=>va,(Q,it)=>{it(Q,{get value(){return t(T)},get label(){return t(mt)}})})}e(u,j)}),e(B,C)},$$slots:{default:!0}})}),e(bt,D)},$$slots:{default:!0}})}),a(X);var G=r(X,2),x=s(G),U=s(x);{var E=I=>{var tt=dt(),bt=f(tt);ee(bt,16,()=>Array(10),re,(ct,D)=>{$e(ct,{class:"h-9 w-full"})}),e(I,tt)},vt=I=>{var tt=Pa();e(I,tt)},lt=I=>{var tt=dt(),bt=f(tt);ee(bt,17,()=>t(Pe),ct=>ct.entity.id,(ct,D)=>{var Z=wa(),Tt=s(Z),et=r(Tt,2),y=s(et,!0);a(et);var B=r(et,2);{var N=q=>{br(q,{class:"size-3 shrink-0 text-[var(--sig-accent)]"})};Lt(B,q=>{t(D).entity.pinned&&q(N)})}var C=r(B,2),nt=s(C,!0);a(C);var u=r(C,2),T=s(u),j=s(T,!0);l(),a(T);var c=r(T,2),mt=s(c,!0);l(),a(c);var Q=r(c,2),it=s(Q,!0);l(),a(Q);var yt=r(Q,2),Ut=s(yt,!0);l(),a(yt),a(u),a(Z),v((q,Kt)=>{Me(Z,1,`w-full cursor-pointer flex items-center gap-2.5 border-b border-b-[var(--sig-border)] px-2.5 py-2 text-left transition-colors
|
|
1
|
+
import{p as ae,g as be,j as s,t as ge,a as _e,n as pe,l as a,v as me,b as e,d as se,r as fe,m as $,s as Fr,c as dt,f,y as st,e as te,z as Kr,A as r,h as o,D as l,E as n,B as P,i as t,F as v,G as d,H as ee,u as K,K as re,k as Lt,I as Me,ab as Xe,O as fr,_ as Br,P as zr}from"./BJi5clDn.js";import{P as Rr}from"./FAGA5WfT.js";import{T as Lr}from"./Cr5cBjY6.js";import{c as ye,I as Or,h as Ir,n as Wr,i as Vr,O as $e,B as tr,ad as Hr,ae as qr,af as Gr,ag as Ur,ah as xr,ai as Yr,aj as Zr,ak as Jr,al as Qr,am as Xr,an as ta,ao as ea,ap as ra}from"./CiyQaJH4.js";import{B as W}from"./C3rQiPqA.js";import{a as ke,C as Te}from"./D4d0VwwR.js";import{C as je}from"./DmPU49fT.js";import{C as Fe,a as Ke}from"./DWto8nRf.js";import{I as aa}from"./CNRAfJx3.js";import{b as sa,P as oa,a as la}from"./BvVVkod3.js";import{c as na,S as ia,a as da,b as va}from"./Dwip3mmK.js";import{C as ca,a as ua}from"./BggB5bWi.js";import{N as $a}from"./BJkv6dHK.js";import{R as hr}from"./DU-T_rTf.js";var ga=$('<div data-slot="table-container" class="relative w-full overflow-x-auto"><table><!></table></div>');function er(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=ga(),$t=s(b);ge($t,Jt=>({"data-slot":"table",class:Jt,...Pt}),[()=>ye("w-full caption-bottom text-sm",m.class)]);var V=s($t);_e(V,()=>m.children??pe),a($t),me($t,Jt=>ot(Jt),()=>ot()),a(b),e(At,b),se()}var _a=$("<tbody><!></tbody>");function rr(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=_a();ge(b,V=>({"data-slot":"table-body",class:V,...Pt}),[()=>ye("[&_tr:last-child]:border-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var pa=$("<td><!></td>");function Dt(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=pa();ge(b,V=>({"data-slot":"table-cell",class:V,...Pt}),[()=>ye("bg-clip-padding p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pe-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var fa=$("<th><!></th>");function Nt(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=fa();ge(b,V=>({"data-slot":"table-head",class:V,...Pt}),[()=>ye("text-foreground h-10 bg-clip-padding px-2 text-start align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pe-0",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var xa=$("<thead><!></thead>");function ar(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=xa();ge(b,V=>({"data-slot":"table-header",class:V,...Pt}),[()=>ye("[&_tr]:border-b",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}var ha=$("<tr><!></tr>");function he(At,m){ae(m,!0);let ot=be(m,"ref",15,null),Pt=fe(m,["$$slots","$$events","$$legacy","ref","class","children"]);var b=ha();ge(b,V=>({"data-slot":"table-row",class:V,...Pt}),[()=>ye("hover:[&,&>svelte-css-wrapper]:[&>th,td]:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",m.class)]);var $t=s(b);_e($t,()=>m.children??pe),a(b),me(b,V=>ot(V),()=>ot()),e(At,b),se()}function br(At,m){ae(m,!0);let ot=fe(m,["$$slots","$$events","$$legacy"]);const Pt=[["path",{d:"M12 17v5"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"}]];Or(At,Fr({name:"pin"},()=>ot,{get iconNode(){return Pt},children:(b,$t)=>{var V=dt(),Jt=f(V);_e(Jt,()=>m.children??pe),e(b,V)},$$slots:{default:!0}})),se()}var ba=$("<!> Entity Browser",1),ma=$("<!> <!>",1),ya=$("<!> <!>",1),Pa=$('<div class="p-6 sig-label text-[var(--sig-text-muted)]">No entities match the current filters.</div>'),wa=$('<button><span></span> <span class="sig-heading text-[11px] tracking-[0.08em] truncate min-w-0 flex-1"> </span> <!> <span class="sig-meta shrink-0 text-[var(--sig-text-muted)]"> </span> <span class="sig-meta shrink-0 flex items-center gap-1 tabular-nums text-[var(--sig-text-muted)]"><span title="aspects"> <span class="opacity-50">a</span></span> <span title="attributes"> <span class="opacity-50">t</span></span> <span class="text-[var(--sig-danger)]" title="constraints"> <span class="opacity-50">c</span></span> <span title="dependencies"> <span class="opacity-50">d</span></span></span></button>'),Ca=$('<div class="space-y-3"><!> <!> <!></div>'),Sa=$('<div class="flex h-full min-h-[360px] items-center justify-center sig-label text-[var(--sig-text-muted)]">Select an entity to inspect its structure.</div>'),ka=$("<!> ",1),Ta=$('<button><div class="flex items-center justify-between gap-2"><span class="sig-label text-[var(--sig-text-bright)]"> </span> <span class="sig-label text-[var(--sig-text-muted)]"> </span></div> <div class="mt-1 flex flex-wrap gap-1"><!> <!></div></button>'),Ea=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No active rows for this aspect.</div>'),Da=$('<div class="border border-[var(--sig-border)] p-2"><div class="mb-1 flex items-center gap-1.5"><!> <!></div> <div class="sig-label text-[var(--sig-text-bright)]"> </div></div>'),Na=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No dependency edges recorded.</div>'),Aa=$('<div class="mt-1 sig-meta text-[var(--sig-text-muted)] italic"> </div>'),Ma=$('<div class="border border-[var(--sig-border)] p-2"><div class="flex items-center justify-between gap-2"><!> <span class="sig-label text-[var(--sig-text-muted)]"> </span></div> <div class="mt-1 sig-label text-[var(--sig-text-bright)]"> </div> <!></div>'),ja=$('<div class="space-y-4"><div class="space-y-2 border-b border-[var(--sig-border)] pb-3"><div class="flex items-start justify-between gap-3"><div><div class="flex items-center gap-2"><span></span> <h3 class="sig-heading text-[14px] uppercase tracking-[0.08em]"> </h3> <!></div> <p class="sig-label text-[var(--sig-text-muted)]"> </p></div> <div class="flex items-center gap-2"><!> <!></div></div> <div class="flex flex-wrap gap-1.5"><!> <!></div></div> <div class="grid gap-3 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Aspects</div> <div class="space-y-1.5"></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Attributes</div> <div class="max-h-[240px] space-y-1.5 overflow-auto"><!></div></div></div> <div class="grid gap-3 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Dependencies</div> <div class="max-h-[220px] space-y-1.5 overflow-auto"><!></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Structural Density</div> <div class="grid grid-cols-2 gap-2"><!> <!> <!> <!></div></div></div></div>'),Fa=$('<div class="flex flex-col gap-2 lg:flex-row"><!> <!></div> <div class="grid gap-3 lg:grid-cols-[minmax(0,1.15fr)_minmax(360px,0.85fr)]"><div class="max-h-[520px] overflow-y-auto border border-[var(--sig-border)] bg-[var(--sig-surface)]"><!></div> <!></div>',1),Ka=$("<!> <!>",1),Ba=$('<div class="flex items-center justify-between gap-2"><div><!> <!></div> <!></div>'),za=$('<div class="border border-dashed border-[var(--sig-border)] p-4 sig-label text-[var(--sig-text-muted)]">No traversal snapshot recorded yet.</div>'),Ra=$('<div class="flex flex-wrap gap-1.5"><!> <!> <!></div> <div class="sig-label text-[var(--sig-text-bright)]"> </div> <div class="grid grid-cols-2 gap-2 xl:grid-cols-4"><!> <!> <!> <!></div> <div class="sig-label text-[var(--sig-text-muted)]"> </div>',1),La=$("<!> <!>",1),Oa=$("<!> <!>",1),Ia=$('<div class="border border-dashed border-[var(--sig-border)] p-4 sig-label text-[var(--sig-text-muted)]">Knowledge stats unavailable.</div>'),Wa=$('<div class="grid grid-cols-2 gap-2 xl:grid-cols-3"><!> <!> <!> <!> <!> <!> <!> <!> <!> <!></div> <div class="space-y-2"><div class="flex items-center justify-between sig-label"><span class="text-[var(--sig-text-muted)]">Structural coverage</span> <span class="text-[var(--sig-text-bright)]"> </span></div> <div class="h-2 border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]"><div class="h-full bg-[var(--sig-accent)]"></div></div></div>',1),Va=$("<!> <!>",1),Ha=$("<button><span> </span> <!></button>"),qa=$("<!> <!>",1),Ga=$('<div class="flex flex-col gap-3 lg:flex-row lg:items-start lg:justify-between"><div><!> <!></div> <div class="flex items-center gap-2"><!> <!></div></div>'),Ua=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),Ya=$("<!> <!> <!> <!> <!>",1),Za=$('<div class="flex min-w-[120px] items-center gap-2"><div class="h-2 flex-1 border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]"><div class="h-full bg-[var(--sig-accent)]"></div></div> <span> </span></div>'),Ja=$("<!> <!> <!> <!> <!>",1),Qa=$("<!> <!>",1),Xa=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),ts=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),es=$("<!> <!> <!> <!> <!>",1),rs=$("<!> <!> <!> <!> <!>",1),as=$("<!> <!>",1),ss=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),os=$('<div class="border border-dashed border-[var(--sig-border)] p-3 sig-label text-[var(--sig-text-muted)]">No predictor comparisons yet. Comparisons appear after the predictive scorer completes its first session.</div>'),ls=$("<!> <!> <!> <!> <!> <!>",1),ns=$("<!> <!> <!> <!> <!> <!>",1),is=$("<!> <!>",1),ds=$('<div class="overflow-x-auto border border-[var(--sig-border)]"><!></div>'),vs=$('<div class="grid gap-4 xl:grid-cols-2"><div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">By Project</div> <!></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">By Entity</div> <!></div></div> <div class="space-y-2"><div class="sig-heading text-[12px] uppercase tracking-[0.08em]">Training Log</div> <!></div>',1),cs=$("<!> <!>",1),us=$('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="flex flex-col flex-1 min-h-0 overflow-auto gap-3 p-3 bg-[var(--sig-bg)]"><!> <div class="grid gap-3 xl:grid-cols-[1fr_1fr]"><!> <!></div> <!></div></div>');function ks(At,m){ae(m,!0);const ot=["all","project","person","system","tool","concept","skill","task"];let Pt=st(""),b=st("all"),$t=st(!0),V=st(!1),Jt=st(!0),Be=st(!0),ze=st(!0),Pe=st(te([])),Bt=st(null),It=st(null),Re=st(te([])),Le=st(te([])),Oe=st(te([])),sr=st(te([])),Ie=st(null),Qt=st(null),we=st(null),gt=st(null),We=st(te([])),xe=st(te([])),Ee=st(te([])),Ce=null,Ve=st(!1);const mr=new Date(Date.now()-10080*60*1e3);let oe=st(te(mr.toISOString().slice(0,10)));function O(i="default"){return i==="warning"?"border-[var(--sig-warning)] text-[var(--sig-warning)]":i==="accent"?"border-[var(--sig-accent)] text-[var(--sig-accent)]":"border-[var(--sig-border-strong)] text-[var(--sig-text)]"}function yr(i){return`${i.toFixed(1)}%`}function He(i){return new Date(i).toLocaleString()}function Pr(i){return new Date(i).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}function wr(i){if(i<1e3)return`${i}ms`;if(i<6e4)return`${(i/1e3).toFixed(1)}s`;const S=Math.floor(i/6e4),J=Math.round(i%6e4/1e3);return`${S}m ${J}s`}function Cr(i){return t(sr).find(S=>S.entityId===i)??null}function or(i){const S=Cr(i);return S?S.trend==="declining"||S.winRate<.4?"bg-[var(--sig-warning)]":S.trend==="improving"||S.winRate>=.65?"bg-[var(--sig-accent)]":"bg-[var(--sig-text-muted)]":"bg-[var(--sig-border-strong)]"}function Sr(i){const S=i.aspectCount+i.attributeCount+i.constraintCount*2+i.dependencyCount,J=Math.max(1,...t(Pe).map(_t=>_t.aspectCount+_t.attributeCount+_t.constraintCount*2+_t.dependencyCount));return .08+S/J*.92}function kr(i){if(!i)return;const S=i.split("-");if(S.length!==3)return;const J=Number(S[0]),_t=Number(S[1]),zt=Number(S[2]);if(!(!Number.isFinite(J)||!Number.isFinite(_t)||!Number.isFinite(zt)))return new Br(J,_t,zt)}function Tr(i){if(!i)return"";const S=String(i.year).padStart(4,"0"),J=String(i.month).padStart(2,"0"),_t=String(i.day).padStart(2,"0");return`${S}-${J}-${_t}`}async function De(){P($t,!0);const i=await Hr({query:t(Pt).trim()||void 0,type:t(b)==="all"?void 0:t(b),limit:50});P(Pe,i.items,!0),P($t,!1),t(Qt)&&!t(Pe).some(S=>S.entity.id===t(Qt))&&(P(Qt,null),P(we,null),P(gt,null),P(We,[],!0),P(xe,[],!0),P(Ee,[],!0))}async function lr(i){P(Qt,i,!0),P(we,null),P(V,!0);const[S,J,_t]=await Promise.all([qr(i),Gr(i),Ur(i)]);P(gt,S,!0),P(We,J,!0),P(Ee,_t,!0),P(xe,[],!0),J.length>0&&(P(we,J[0].aspect.id,!0),P(xe,await xr(i,J[0].aspect.id,{status:"active",limit:50}),!0)),P(V,!1)}async function Er(i){t(Qt)&&(P(we,i,!0),P(xe,await xr(t(Qt),i,{status:"active",limit:50}),!0))}async function qe(){P(Jt,!0);const[i,S]=await Promise.all([Yr(),Zr({since:t(oe)?new Date(`${t(oe)}T00:00:00.000Z`).toISOString():void 0,minComparisons:3})]);P(Bt,i,!0),P(sr,S,!0),P(Jt,!1)}async function Ge(){P(ze,!0);const i=t(oe)?new Date(`${t(oe)}T00:00:00.000Z`).toISOString():void 0,[S,J,_t]=await Promise.all([Jr(i),Qr(i),Xr(20)]);P(Re,S,!0),P(Le,J,!0),P(Oe,_t,!0),P(ze,!1)}async function Dr(i,S){P(Ie,i,!0);try{S?await ta(i):await ea(i),await De(),t(Qt)===i&&await lr(i)}finally{P(Ie,null)}}async function Ue(){P(Be,!0),P(It,await ra(),!0),P(Be,!1)}function Nr(){Ce&&clearTimeout(Ce),Ce=setTimeout(()=>{De()},200)}Kr(()=>{Promise.all([De(),qe(),Ge(),Ue()]);const i=()=>{Ue()};return window.addEventListener("focus",i),()=>{window.removeEventListener("focus",i),Ce&&clearTimeout(Ce)}});var Ye=us(),nr=s(Ye);Rr(nr,{title:"Knowledge",children:(i,S)=>{Lr(i,{group:"memory",get tabs(){return Vr},get activeTab(){return Wr.activeTab},onselect:(J,_t)=>Ir(_t)})}});var ir=r(nr,2),dr=s(ir);o(dr,()=>Te,(i,S)=>{S(i,{class:"border-[var(--sig-border)] bg-[var(--sig-surface)]",children:(J,_t)=>{var zt=Ka(),Vt=f(zt);o(Vt,()=>Fe,(Mt,jt)=>{jt(Mt,{class:"border-b border-[var(--sig-border)] pb-3",children:(Ft,ne)=>{var Y=ma(),X=f(Y);o(X,()=>Ke,(pt,G)=>{G(pt,{class:"sig-heading flex items-center gap-2",children:(x,U)=>{var E=ba(),vt=f(E);$a(vt,{class:"size-4"}),l(),e(x,E)},$$slots:{default:!0}})});var ht=r(X,2);o(ht,()=>je,(pt,G)=>{G(pt,{class:"sig-label text-[var(--sig-text-muted)]",children:(x,U)=>{l();var E=n("Inspect structural entities, aspects, attributes, and dependency edges.");e(x,E)},$$slots:{default:!0}})}),e(Ft,Y)},$$slots:{default:!0}})});var le=r(Vt,2);o(le,()=>ke,(Mt,jt)=>{jt(Mt,{class:"space-y-3 p-3",children:(Ft,ne)=>{var Y=Fa(),X=f(Y),ht=s(X);aa(ht,{class:"sig-label flex-1 border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-bright)]",placeholder:"Search canonical entity name...",oninput:Nr,get value(){return t(Pt)},set value(I){P(Pt,I,!0)}});var pt=r(ht,2);o(pt,()=>na,(I,tt)=>{tt(I,{type:"single",get value(){return t(b)},onValueChange:bt=>{P(b,bt??"all",!0),De()},children:(bt,ct)=>{var D=ya(),Z=f(D);o(Z,()=>ia,(et,y)=>{y(et,{class:"sig-label min-w-[170px] border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-bright)]",children:(B,N)=>{l();var C=n();v(()=>d(C,t(b)==="all"?"All entity types":t(b))),e(B,C)},$$slots:{default:!0}})});var Tt=r(Z,2);o(Tt,()=>da,(et,y)=>{y(et,{class:"border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)]",children:(B,N)=>{var C=dt(),nt=f(C);ee(nt,17,()=>ot,re,(u,T)=>{var j=dt(),c=f(j);{let mt=K(()=>t(T)==="all"?"All entity types":t(T));o(c,()=>va,(Q,it)=>{it(Q,{get value(){return t(T)},get label(){return t(mt)}})})}e(u,j)}),e(B,C)},$$slots:{default:!0}})}),e(bt,D)},$$slots:{default:!0}})}),a(X);var G=r(X,2),x=s(G),U=s(x);{var E=I=>{var tt=dt(),bt=f(tt);ee(bt,16,()=>Array(10),re,(ct,D)=>{$e(ct,{class:"h-9 w-full"})}),e(I,tt)},vt=I=>{var tt=Pa();e(I,tt)},lt=I=>{var tt=dt(),bt=f(tt);ee(bt,17,()=>t(Pe),ct=>ct.entity.id,(ct,D)=>{var Z=wa(),Tt=s(Z),et=r(Tt,2),y=s(et,!0);a(et);var B=r(et,2);{var N=q=>{br(q,{class:"size-3 shrink-0 text-[var(--sig-accent)]"})};Lt(B,q=>{t(D).entity.pinned&&q(N)})}var C=r(B,2),nt=s(C,!0);a(C);var u=r(C,2),T=s(u),j=s(T,!0);l(),a(T);var c=r(T,2),mt=s(c,!0);l(),a(c);var Q=r(c,2),it=s(Q,!0);l(),a(Q);var yt=r(Q,2),Ut=s(yt,!0);l(),a(yt),a(u),a(Z),v((q,Kt)=>{Me(Z,1,`w-full cursor-pointer flex items-center gap-2.5 border-b border-b-[var(--sig-border)] px-2.5 py-2 text-left transition-colors
|
|
2
2
|
${t(Qt)===t(D).entity.id?"bg-[var(--sig-surface-raised)]":"hover:bg-[var(--sig-surface-raised)]"}`),Xe(Z,`border-left: 2px solid ${q??""}`),Me(Tt,1,Kt),d(y,t(D).entity.name),d(nt,t(D).entity.entityType),d(j,t(D).aspectCount),d(mt,t(D).attributeCount),d(it,t(D).constraintCount),d(Ut,t(D).dependencyCount)},[()=>t(Qt)===t(D).entity.id?"var(--sig-accent)":`rgba(240, 240, 242, ${Sr(t(D))})`,()=>`size-1.5 shrink-0 rounded-full ${or(t(D).entity.id)}`]),fr("click",Z,()=>{lr(t(D).entity.id)}),e(ct,Z)}),e(I,tt)};Lt(U,I=>{t($t)?I(E):t(Pe).length===0?I(vt,1):I(lt,-1)})}a(x);var Ht=r(x,2);o(Ht,()=>Te,(I,tt)=>{tt(I,{class:"min-h-[420px] border-[var(--sig-border)] bg-[var(--sig-surface-raised)]",children:(bt,ct)=>{var D=dt(),Z=f(D);o(Z,()=>ke,(Tt,et)=>{et(Tt,{class:"p-3",children:(y,B)=>{var N=dt(),C=f(N);{var nt=j=>{var c=Ca(),mt=s(c);$e(mt,{class:"h-6 w-48"});var Q=r(mt,2);$e(Q,{class:"h-24 w-full"});var it=r(Q,2);$e(it,{class:"h-36 w-full"}),a(c),e(j,c)},u=j=>{var c=Sa();e(j,c)},T=j=>{var c=ja(),mt=s(c),Q=s(mt),it=s(Q),yt=s(it),Ut=s(yt),q=r(Ut,2),Kt=s(q,!0);a(q);var Ot=r(q,2);{var H=k=>{{let M=K(()=>O("accent"));W(k,{variant:"outline",get class(){return t(M)},children:(ft,z)=>{l();var at=n("pinned");e(ft,at)},$$slots:{default:!0}})}};Lt(Ot,k=>{t(gt).entity.pinned&&k(H)})}a(yt);var wt=r(yt,2),Yt=s(wt,!0);a(wt),a(it);var Ct=r(it,2),St=s(Ct);{let k=K(()=>O("accent"));W(St,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,t(gt).entity.entityType)),e(M,z)},$$slots:{default:!0}})}var Et=r(St,2);{let k=K(()=>t(Ie)===t(gt).entity.id);tr(Et,{variant:"outline",size:"sm",class:"h-8 px-2",get disabled(){return t(k)},onclick:()=>{Dr(t(gt).entity.id,t(gt).entity.pinned??!1)},children:(M,ft)=>{var z=ka(),at=f(z);br(at,{class:"mr-1 size-3.5"});var qt=r(at);v(()=>d(qt,` ${t(gt).entity.pinned?"Unpin":"Pin"}`)),e(M,z)},$$slots:{default:!0}})}a(Ct),a(Q);var Rt=r(Q,2),ut=s(Rt);{let k=K(O);W(ut,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,`mentions ${t(gt).entity.mentions??0??""}`)),e(M,z)},$$slots:{default:!0}})}var kt=r(ut,2);{let k=K(O);W(kt,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(at=>d(z,`in ${at??""}`),[()=>He(t(gt).entity.updatedAt)]),e(M,z)},$$slots:{default:!0}})}a(Rt),a(mt);var A=r(mt,2),p=s(A),h=r(s(p),2);ee(h,21,()=>t(We),re,(k,M)=>{var ft=Ta(),z=s(ft),at=s(z),qt=s(at,!0);a(at);var Zt=r(at,2),ie=s(Zt);a(Zt),a(z);var de=r(z,2),ve=s(de);{let Gt=K(O);W(ve,{variant:"outline",get class(){return t(Gt)},children:(Xt,Se)=>{l();var xt=n();v(()=>d(xt,`attr ${t(M).attributeCount??""}`)),e(Xt,xt)},$$slots:{default:!0}})}var ce=r(ve,2);{let Gt=K(()=>O("warning"));W(ce,{variant:"outline",get class(){return t(Gt)},children:(Xt,Se)=>{l();var xt=n();v(()=>d(xt,`constraint ${t(M).constraintCount??""}`)),e(Xt,xt)},$$slots:{default:!0}})}a(de),a(ft),v(Gt=>{Me(ft,1,`w-full cursor-pointer border p-2 text-left transition-colors
|
|
3
3
|
${t(we)===t(M).aspect.id?"border-[var(--sig-accent)] bg-[var(--sig-surface)]":"border-[var(--sig-border)] hover:border-[var(--sig-border-strong)]"}`),d(qt,t(M).aspect.name),d(ie,`w ${Gt??""}`)},[()=>t(M).aspect.weight.toFixed(2)]),fr("click",ft,()=>{Er(t(M).aspect.id)}),e(k,ft)}),a(h),a(p);var R=r(p,2),g=r(s(R),2),_=s(g);{var F=k=>{var M=Ea();e(k,M)},rt=k=>{var M=dt(),ft=f(M);ee(ft,17,()=>t(xe),re,(z,at)=>{var qt=Da(),Zt=s(qt),ie=s(Zt);{let Gt=K(()=>O(t(at).kind==="constraint"?"warning":"default"));W(ie,{variant:"outline",get class(){return t(Gt)},children:(Xt,Se)=>{l();var xt=n();v(()=>d(xt,t(at).kind)),e(Xt,xt)},$$slots:{default:!0}})}var de=r(ie,2);{let Gt=K(O);W(de,{variant:"outline",get class(){return t(Gt)},children:(Xt,Se)=>{l();var xt=n();v(ue=>d(xt,`imp ${ue??""}%`),[()=>Math.round(t(at).importance*100)]),e(Xt,xt)},$$slots:{default:!0}})}a(Zt);var ve=r(Zt,2),ce=s(ve,!0);a(ve),a(qt),v(()=>d(ce,t(at).content)),e(z,qt)}),e(k,M)};Lt(_,k=>{t(xe).length===0?k(F):k(rt,-1)})}a(g),a(R),a(A);var w=r(A,2),L=s(w),Wt=r(s(L),2),Ne=s(Wt);{var Je=k=>{var M=Na();e(k,M)},Qe=k=>{var M=dt(),ft=f(M);ee(ft,17,()=>t(Ee),re,(z,at)=>{var qt=Ma(),Zt=s(qt),ie=s(Zt);{let xt=K(O);W(ie,{variant:"outline",get class(){return t(xt)},children:(ue,_r)=>{l();var pr=n();v(()=>d(pr,t(at).direction)),e(ue,pr)},$$slots:{default:!0}})}var de=r(ie,2),ve=s(de);a(de),a(Zt);var ce=r(Zt,2),Gt=s(ce);a(ce);var Xt=r(ce,2);{var Se=xt=>{var ue=Aa(),_r=s(ue,!0);a(ue),v(()=>d(_r,t(at).reason)),e(xt,ue)};Lt(Xt,xt=>{t(at).reason&&xt(Se)})}a(qt),v(xt=>{d(ve,`${t(at).dependencyType??""} · ${xt??""}`),d(Gt,`${t(at).sourceEntityName??""} → ${t(at).targetEntityName??""}`)},[()=>t(at).strength.toFixed(2)]),e(z,qt)}),e(k,M)};Lt(Ne,k=>{t(Ee).length===0?k(Je):k(Qe,-1)})}a(Wt),a(L);var Ae=r(L,2),cr=r(s(Ae),2),ur=s(cr);{let k=K(O);W(ur,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,`aspects ${t(gt).structuralDensity.aspectCount??""}`)),e(M,z)},$$slots:{default:!0}})}var $r=r(ur,2);{let k=K(O);W($r,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,`attributes ${t(gt).structuralDensity.attributeCount??""}`)),e(M,z)},$$slots:{default:!0}})}var gr=r($r,2);{let k=K(()=>O("warning"));W(gr,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,`constraints ${t(gt).structuralDensity.constraintCount??""}`)),e(M,z)},$$slots:{default:!0}})}var jr=r(gr,2);{let k=K(O);W(jr,{variant:"outline",get class(){return t(k)},children:(M,ft)=>{l();var z=n();v(()=>d(z,`dependencies ${t(gt).structuralDensity.dependencyCount??""}`)),e(M,z)},$$slots:{default:!0}})}a(cr),a(Ae),a(w),a(c),v(k=>{Me(Ut,1,k),d(Kt,t(gt).entity.name),d(Yt,t(gt).entity.canonicalName??t(gt).entity.name)},[()=>`size-2 rounded-full ${or(t(gt).entity.id)}`]),e(j,c)};Lt(C,j=>{t(V)?j(nt):t(gt)?j(T,-1):j(u,1)})}e(y,N)},$$slots:{default:!0}})}),e(bt,D)},$$slots:{default:!0}})}),a(G),e(Ft,Y)},$$slots:{default:!0}})}),e(J,zt)},$$slots:{default:!0}})});var Ze=r(dr,2),vr=s(Ze);o(vr,()=>Te,(i,S)=>{S(i,{class:"border-[var(--sig-border)] bg-[var(--sig-surface)]",children:(J,_t)=>{var zt=La(),Vt=f(zt);o(Vt,()=>Fe,(Mt,jt)=>{jt(Mt,{class:"border-b border-[var(--sig-border)] pb-3",children:(Ft,ne)=>{var Y=Ba(),X=s(Y),ht=s(X);o(ht,()=>Ke,(x,U)=>{U(x,{class:"sig-heading text-[13px] uppercase tracking-[0.08em]",children:(E,vt)=>{l();var lt=n("Traversal Status");e(E,lt)},$$slots:{default:!0}})});var pt=r(ht,2);o(pt,()=>je,(x,U)=>{U(x,{class:"sig-label text-[var(--sig-text-muted)]",children:(E,vt)=>{l();var lt=n("Latest structural walk emitted by session-start or recall.");e(E,lt)},$$slots:{default:!0}})}),a(X);var G=r(X,2);tr(G,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>{Ue()},children:(x,U)=>{hr(x,{class:"size-3.5"})},$$slots:{default:!0}}),a(Y),e(Ft,Y)},$$slots:{default:!0}})});var le=r(Vt,2);o(le,()=>ke,(Mt,jt)=>{jt(Mt,{class:"space-y-3 p-3",children:(Ft,ne)=>{var Y=dt(),X=f(Y);{var ht=x=>{$e(x,{class:"h-28 w-full"})},pt=x=>{var U=za();e(x,U)},G=x=>{var U=Ra(),E=f(U),vt=s(E);{let N=K(()=>O("accent"));W(vt,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,t(It).phase)),e(C,u)},$$slots:{default:!0}})}var lt=r(vt,2);{let N=K(O);W(lt,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,`source ${t(It).source??"unknown"??""}`)),e(C,u)},$$slots:{default:!0}})}var Ht=r(lt,2);{var I=N=>{{let C=K(()=>O("warning"));W(N,{variant:"outline",get class(){return t(C)},children:(nt,u)=>{l();var T=n("timeout");e(nt,T)},$$slots:{default:!0}})}};Lt(Ht,N=>{t(It).timedOut&&N(I)})}a(E);var tt=r(E,2),bt=s(tt,!0);a(tt);var ct=r(tt,2),D=s(ct);{let N=K(O);W(D,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,`focal ${t(It).focalEntities??""}`)),e(C,u)},$$slots:{default:!0}})}var Z=r(D,2);{let N=K(O);W(Z,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,`traversed ${t(It).traversedEntities??""}`)),e(C,u)},$$slots:{default:!0}})}var Tt=r(Z,2);{let N=K(O);W(Tt,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,`memories ${t(It).memoryCount??""}`)),e(C,u)},$$slots:{default:!0}})}var et=r(Tt,2);{let N=K(()=>O("warning"));W(et,{variant:"outline",get class(){return t(N)},children:(C,nt)=>{l();var u=n();v(()=>d(u,`constraints ${t(It).constraintCount??""}`)),e(C,u)},$$slots:{default:!0}})}a(ct);var y=r(ct,2),B=s(y);a(y),v((N,C)=>{d(bt,N),d(B,`Last run: ${C??""}`)},[()=>t(It).focalEntityNames.length>0?t(It).focalEntityNames.join(", "):"No focal entities resolved",()=>He(t(It).at)]),e(x,U)};Lt(X,x=>{t(Be)?x(ht):t(It)?x(G,-1):x(pt,1)})}e(Ft,Y)},$$slots:{default:!0}})}),e(J,zt)},$$slots:{default:!0}})});var Ar=r(vr,2);o(Ar,()=>Te,(i,S)=>{S(i,{class:"border-[var(--sig-border)] bg-[var(--sig-surface)]",children:(J,_t)=>{var zt=Va(),Vt=f(zt);o(Vt,()=>Fe,(Mt,jt)=>{jt(Mt,{class:"border-b border-[var(--sig-border)] pb-3",children:(Ft,ne)=>{var Y=Oa(),X=f(Y);o(X,()=>Ke,(pt,G)=>{G(pt,{class:"sig-heading text-[13px] uppercase tracking-[0.08em]",children:(x,U)=>{l();var E=n("Knowledge Stats");e(x,E)},$$slots:{default:!0}})});var ht=r(X,2);o(ht,()=>je,(pt,G)=>{G(pt,{class:"sig-label text-[var(--sig-text-muted)]",children:(x,U)=>{l();var E=n("Coverage of structural assignment plus predictor comparison slices.");e(x,E)},$$slots:{default:!0}})}),e(Ft,Y)},$$slots:{default:!0}})});var le=r(Vt,2);o(le,()=>ke,(Mt,jt)=>{jt(Mt,{class:"space-y-4 p-3",children:(Ft,ne)=>{var Y=dt(),X=f(Y);{var ht=x=>{$e(x,{class:"h-40 w-full"})},pt=x=>{var U=Ia();e(x,U)},G=x=>{var U=Wa(),E=f(U),vt=s(E);{let u=K(O);W(vt,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`entities ${t(Bt).entityCount??""}`)),e(T,c)},$$slots:{default:!0}})}var lt=r(vt,2);{let u=K(O);W(lt,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`aspects ${t(Bt).aspectCount??""}`)),e(T,c)},$$slots:{default:!0}})}var Ht=r(lt,2);{let u=K(O);W(Ht,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`attributes ${t(Bt).attributeCount??""}`)),e(T,c)},$$slots:{default:!0}})}var I=r(Ht,2);{let u=K(()=>O("warning"));W(I,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`constraints ${t(Bt).constraintCount??""}`)),e(T,c)},$$slots:{default:!0}})}var tt=r(I,2);{let u=K(O);W(tt,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`dependencies ${t(Bt).dependencyCount??""}`)),e(T,c)},$$slots:{default:!0}})}var bt=r(tt,2);{let u=K(O);W(bt,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`unassigned ${t(Bt).unassignedMemoryCount??""}`)),e(T,c)},$$slots:{default:!0}})}var ct=r(bt,2);{let u=K(O);W(ct,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`feedback 7d ${t(Bt).feedbackUpdatedAspectCount??""}`)),e(T,c)},$$slots:{default:!0}})}var D=r(ct,2);{let u=K(O);W(D,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(mt=>d(c,`avg weight ${mt??""}`),[()=>t(Bt).averageAspectWeight.toFixed(2)]),e(T,c)},$$slots:{default:!0}})}var Z=r(D,2);{let u=K(O);W(Z,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`maxed ${t(Bt).maxWeightAspectCount??""}`)),e(T,c)},$$slots:{default:!0}})}var Tt=r(Z,2);{let u=K(O);W(Tt,{variant:"outline",get class(){return t(u)},children:(T,j)=>{l();var c=n();v(()=>d(c,`min floor ${t(Bt).minWeightAspectCount??""}`)),e(T,c)},$$slots:{default:!0}})}a(E);var et=r(E,2),y=s(et),B=r(s(y),2),N=s(B,!0);a(B),a(y);var C=r(y,2),nt=s(C);a(C),a(et),v((u,T)=>{d(N,u),Xe(nt,T)},[()=>yr(t(Bt).coveragePercent),()=>`width: ${Math.min(Math.max(t(Bt).coveragePercent,0),100)}%`]),e(x,U)};Lt(X,x=>{t(Jt)?x(ht):t(Bt)?x(G,-1):x(pt,1)})}e(Ft,Y)},$$slots:{default:!0}})}),e(J,zt)},$$slots:{default:!0}})}),a(Ze);var Mr=r(Ze,2);o(Mr,()=>Te,(i,S)=>{S(i,{class:"border-[var(--sig-border)] bg-[var(--sig-surface)]",children:(J,_t)=>{var zt=cs(),Vt=f(zt);o(Vt,()=>Fe,(Mt,jt)=>{jt(Mt,{class:"border-b border-[var(--sig-border)] pb-3",children:(Ft,ne)=>{var Y=Ga(),X=s(Y),ht=s(X);o(ht,()=>Ke,(E,vt)=>{vt(E,{class:"sig-heading text-[13px] uppercase tracking-[0.08em]",children:(lt,Ht)=>{l();var I=n("Predictor Slices");e(lt,I)},$$slots:{default:!0}})});var pt=r(ht,2);o(pt,()=>je,(E,vt)=>{vt(E,{class:"sig-label text-[var(--sig-text-muted)]",children:(lt,Ht)=>{l();var I=n("Project and entity comparison slices plus recent training runs.");e(lt,I)},$$slots:{default:!0}})}),a(X);var G=r(X,2),x=s(G);o(x,()=>sa,(E,vt)=>{vt(E,{get open(){return t(Ve)},set open(lt){P(Ve,lt,!0)},children:(lt,Ht)=>{var I=qa(),tt=f(I);{const ct=(D,Z)=>{let Tt=()=>Z?.().props;var et=Ha();ge(et,()=>({...Tt(),class:"sig-label inline-flex min-w-[170px] items-center justify-between gap-2 border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] px-2 py-1 text-[var(--sig-text-bright)]"}));var y=s(et),B=s(y);a(y);var N=r(y,2);ua(N,{class:"size-3 shrink-0 opacity-70"}),a(et),v(C=>d(B,`Since ${C??""}`),[()=>Pr(`${t(oe)}T00:00:00.000Z`)]),e(D,et)};o(tt,()=>oa,(D,Z)=>{Z(D,{child:ct,$$slots:{child:!0}})})}var bt=r(tt,2);o(bt,()=>la,(ct,D)=>{D(ct,{class:"w-auto overflow-hidden border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] p-0",align:"end",children:(Z,Tt)=>{{let et=K(()=>kr(t(oe)));ca(Z,{type:"single",captionLayout:"dropdown",get value(){return t(et)},onValueChange:y=>{P(oe,Tr(y),!0),P(Ve,!1),Promise.all([Ge(),qe()])},class:"bg-[var(--sig-surface-raised)] p-2 text-[var(--sig-text)]"})}},$$slots:{default:!0}})}),e(lt,I)},$$slots:{default:!0}})});var U=r(x,2);tr(U,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>{Promise.all([Ge(),qe()])},children:(E,vt)=>{hr(E,{class:"size-3.5"})},$$slots:{default:!0}}),a(G),a(Y),e(Ft,Y)},$$slots:{default:!0}})});var le=r(Vt,2);o(le,()=>ke,(Mt,jt)=>{jt(Mt,{class:"space-y-4 p-3",children:(Ft,ne)=>{var Y=dt(),X=f(Y);{var ht=G=>{$e(G,{class:"h-64 w-full"})},pt=G=>{var x=vs(),U=f(x),E=s(U),vt=r(s(E),2);{var lt=y=>{var B=Ua();e(y,B)},Ht=y=>{var B=Xa(),N=s(B);o(N,()=>er,(C,nt)=>{nt(C,{children:(u,T)=>{var j=Qa(),c=f(j);o(c,()=>ar,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);o(Kt,()=>he,(Ot,H)=>{H(Ot,{children:(wt,Yt)=>{var Ct=Ya(),St=f(Ct);o(St,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Project");e(h,g)},$$slots:{default:!0}})});var Et=r(St,2);o(Et,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Wins");e(h,g)},$$slots:{default:!0}})});var Rt=r(Et,2);o(Rt,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Losses");e(h,g)},$$slots:{default:!0}})});var ut=r(Rt,2);o(ut,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Win Rate");e(h,g)},$$slots:{default:!0}})});var kt=r(ut,2);o(kt,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Avg Margin");e(h,g)},$$slots:{default:!0}})}),e(wt,Ct)},$$slots:{default:!0}})}),e(yt,q)},$$slots:{default:!0}})});var mt=r(c,2);o(mt,()=>rr,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);ee(Kt,17,()=>t(Le),re,(Ot,H)=>{var wt=dt(),Yt=f(wt);o(Yt,()=>he,(Ct,St)=>{St(Ct,{children:(Et,Rt)=>{var ut=Ja(),kt=f(ut);o(kt,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).project)),e(F,w)},$$slots:{default:!0}})});var A=r(kt,2);o(A,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).wins)),e(F,w)},$$slots:{default:!0}})});var p=r(A,2);o(p,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).losses)),e(F,w)},$$slots:{default:!0}})});var h=r(p,2);o(h,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{var w=Za(),L=s(w),Wt=s(L);a(L);var Ne=r(L,2),Je=s(Ne);a(Ne),a(w),v((Qe,Ae)=>{Xe(Wt,Qe),d(Je,`${Ae??""}%`)},[()=>`width: ${Math.min(Math.max(t(H).winRate*100,0),100)}%`,()=>(t(H).winRate*100).toFixed(1)]),e(F,w)},$$slots:{default:!0}})});var R=r(h,2);o(R,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(L=>d(w,L),[()=>t(H).avgMargin.toFixed(2)]),e(F,w)},$$slots:{default:!0}})}),e(Et,ut)},$$slots:{default:!0}})}),e(Ot,wt)}),e(yt,q)},$$slots:{default:!0}})}),e(u,j)},$$slots:{default:!0}})}),a(B),e(y,B)};Lt(vt,y=>{t(Le).length===0?y(lt):y(Ht,-1)})}a(E);var I=r(E,2),tt=r(s(I),2);{var bt=y=>{var B=ts();e(y,B)},ct=y=>{var B=ss(),N=s(B);o(N,()=>er,(C,nt)=>{nt(C,{children:(u,T)=>{var j=as(),c=f(j);o(c,()=>ar,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);o(Kt,()=>he,(Ot,H)=>{H(Ot,{children:(wt,Yt)=>{var Ct=es(),St=f(Ct);o(St,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Entity");e(h,g)},$$slots:{default:!0}})});var Et=r(St,2);o(Et,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Wins");e(h,g)},$$slots:{default:!0}})});var Rt=r(Et,2);o(Rt,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Losses");e(h,g)},$$slots:{default:!0}})});var ut=r(Rt,2);o(ut,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Win Rate");e(h,g)},$$slots:{default:!0}})});var kt=r(ut,2);o(kt,()=>Nt,(A,p)=>{p(A,{children:(h,R)=>{l();var g=n("Avg Margin");e(h,g)},$$slots:{default:!0}})}),e(wt,Ct)},$$slots:{default:!0}})}),e(yt,q)},$$slots:{default:!0}})});var mt=r(c,2);o(mt,()=>rr,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);ee(Kt,17,()=>t(Re),re,(Ot,H)=>{var wt=dt(),Yt=f(wt);o(Yt,()=>he,(Ct,St)=>{St(Ct,{children:(Et,Rt)=>{var ut=rs(),kt=f(ut);o(kt,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).entityName)),e(F,w)},$$slots:{default:!0}})});var A=r(kt,2);o(A,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).wins)),e(F,w)},$$slots:{default:!0}})});var p=r(A,2);o(p,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(()=>d(w,t(H).losses)),e(F,w)},$$slots:{default:!0}})});var h=r(p,2);o(h,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(L=>d(w,`${L??""}%`),[()=>(t(H).winRate*100).toFixed(1)]),e(F,w)},$$slots:{default:!0}})});var R=r(h,2);o(R,()=>Dt,(g,_)=>{_(g,{children:(F,rt)=>{l();var w=n();v(L=>d(w,L),[()=>t(H).avgMargin.toFixed(2)]),e(F,w)},$$slots:{default:!0}})}),e(Et,ut)},$$slots:{default:!0}})}),e(Ot,wt)}),e(yt,q)},$$slots:{default:!0}})}),e(u,j)},$$slots:{default:!0}})}),a(B),e(y,B)};Lt(tt,y=>{t(Re).length===0?y(bt):y(ct,-1)})}a(I),a(U);var D=r(U,2),Z=r(s(D),2);{var Tt=y=>{var B=os();e(y,B)},et=y=>{var B=ds(),N=s(B);o(N,()=>er,(C,nt)=>{nt(C,{children:(u,T)=>{var j=is(),c=f(j);o(c,()=>ar,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);o(Kt,()=>he,(Ot,H)=>{H(Ot,{children:(wt,Yt)=>{var Ct=ls(),St=f(Ct);o(St,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Version");e(R,_)},$$slots:{default:!0}})});var Et=r(St,2);o(Et,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Loss");e(R,_)},$$slots:{default:!0}})});var Rt=r(Et,2);o(Rt,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Samples");e(R,_)},$$slots:{default:!0}})});var ut=r(Rt,2);o(ut,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Duration");e(R,_)},$$slots:{default:!0}})});var kt=r(ut,2);o(kt,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Canary NDCG");e(R,_)},$$slots:{default:!0}})});var A=r(kt,2);o(A,()=>Nt,(p,h)=>{h(p,{children:(R,g)=>{l();var _=n("Date");e(R,_)},$$slots:{default:!0}})}),e(wt,Ct)},$$slots:{default:!0}})}),e(yt,q)},$$slots:{default:!0}})});var mt=r(c,2);o(mt,()=>rr,(Q,it)=>{it(Q,{children:(yt,Ut)=>{var q=dt(),Kt=f(q);ee(Kt,17,()=>t(Oe),re,(Ot,H)=>{var wt=dt(),Yt=f(wt);o(Yt,()=>he,(Ct,St)=>{St(Ct,{children:(Et,Rt)=>{var ut=ns(),kt=f(ut);o(kt,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(()=>d(L,`v${t(H).modelVersion??""}`)),e(rt,L)},$$slots:{default:!0}})});var A=r(kt,2);o(A,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(Wt=>d(L,Wt),[()=>t(H).loss.toFixed(4)]),e(rt,L)},$$slots:{default:!0}})});var p=r(A,2);o(p,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(()=>d(L,t(H).sampleCount)),e(rt,L)},$$slots:{default:!0}})});var h=r(p,2);o(h,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(Wt=>d(L,Wt),[()=>wr(t(H).durationMs)]),e(rt,L)},$$slots:{default:!0}})});var R=r(h,2);o(R,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(Wt=>d(L,Wt),[()=>t(H).canaryNdcg===null?"—":t(H).canaryNdcg.toFixed(4)]),e(rt,L)},$$slots:{default:!0}})});var g=r(R,2);o(g,()=>Dt,(_,F)=>{F(_,{children:(rt,w)=>{l();var L=n();v(Wt=>d(L,Wt),[()=>He(t(H).createdAt)]),e(rt,L)},$$slots:{default:!0}})}),e(Et,ut)},$$slots:{default:!0}})}),e(Ot,wt)}),e(yt,q)},$$slots:{default:!0}})}),e(u,j)},$$slots:{default:!0}})}),a(B),e(y,B)};Lt(Z,y=>{t(Oe).length===0?y(Tt):y(et,-1)})}a(D),e(G,x)};Lt(X,G=>{t(ze)?G(ht):G(pt,-1)})}e(Ft,Y)},$$slots:{default:!0}})}),e(J,zt)},$$slots:{default:!0}})}),a(ir),a(Ye),e(At,Ye),se()}zr(["click"]);export{ks as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p,s as d,c,f as i,a as l,n as m,b as f,d as h,r as u}from"./BJi5clDn.js";import{I as $}from"./
|
|
1
|
+
import{p,s as d,c,f as i,a as l,n as m,b as f,d as h,r as u}from"./BJi5clDn.js";import{I as $}from"./CiyQaJH4.js";function w(e,o){p(o,!0);let n=u(o,["$$slots","$$events","$$legacy"]);const r=[["path",{d:"m6 9 6 6 6-6"}]];$(e,d({name:"chevron-down"},()=>n,{get iconNode(){return r},children:(a,v)=>{var s=c(),t=i(s);l(t,()=>o.children??m),f(a,s)},$$slots:{default:!0}})),h()}export{w as C};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{e as Rt,p as tt,Q as Ht,i as e,B as x,j as r,k as I,A as s,l as t,F as _,I as He,J as v,G as f,O as mt,b as l,d as rt,u as T,y as V,ah as de,P as Qt,f as Z,H as Oe,K as pt,N as $t,af as jt,c as Ve,h as ke,D as he,E as Te,m as D,z as nr,s as ir,ab as Bt,v as lr}from"./BJi5clDn.js";import{B as Et}from"./BHWfeWzL.js";import{au as dr,S as cr,o as vr,p as ur,u as fr,q as gr,av as mr,t as zt,aw as pr,f as hr,n as xr,E as br,B as gt}from"./C4aPpIV5.js";import{S as Wt}from"./DEXTM_70.js";import{P as _r,a as yr,b as wr}from"./BoBvbq60.js";import{w as Pt,s as Yt}from"./fcu76Gaq.js";import{P as kr}from"./FAGA5WfT.js";import{T as Sr}from"./Cr5cBjY6.js";const Ee={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Ge={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},Cr={harness:{x:20,y:20,w:240,h:120,label:Ge.harness,color:Ee.harness},daemon:{x:300,y:20,w:340,h:280,label:Ge.daemon,color:Ee.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Ge.pipeline,color:Ee.pipeline},db:{x:680,y:160,w:200,h:200,label:Ge.db,color:Ee.db},search:{x:920,y:160,w:200,h:140,label:Ge.search,color:Ee.search},files:{x:680,y:400,w:200,h:100,label:Ge.files,color:Ee.files},configs:{x:920,y:400,w:200,h:100,label:Ge.configs,color:Ee.configs},llm:{x:680,y:540,w:200,h:80,label:Ge.llm,color:Ee.llm}},at=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"Ollama qwen3:4b (or configured provider)"}],qt=new Map(at.map(g=>[g.id,g])),Pr=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function $r(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const Gt=new Map;for(const g of at)for(const o of g.logCategories){const i=Gt.get(o);i?i.push(g.id):Gt.set(o,[g.id])}const Xt=20;function Er(){const g={};for(const o of at)g[o.id]=$r();return g}const Vt=50,S=Rt({nodes:Er(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let pe=null;function Zt(){pe&&(pe.close(),pe=null);const g="";pe=new EventSource(`${g}/api/logs/stream`),pe.onopen=()=>{S.connected=!0},pe.onmessage=o=>{try{const i=JSON.parse(o.data);if(i.type==="connected"){S.connected=!0;return}const d=[...S.feed,i];S.feed=d.length>Vt?d.slice(-Vt):d;const c=Gt.get(i.category);if(!c)return;for(const N of c){const M=S.nodes[N];if(!M)continue;M.pulseCount+=1,M.lastActivity=i.timestamp;const A=[...M.recentLogs,i];M.recentLogs=A.length>Xt?A.slice(-Xt):A,i.level==="error"&&(M.errorCount+=1)}}catch{}},pe.onerror=()=>{S.connected=!1,pe?.close(),pe=null,setTimeout(()=>{pe||Zt()},3e3)}}function Tr(){S.connected=!1,pe?.close(),pe=null}let ht=null;function Mr(g){return g>=.8?"healthy":g>=.5?"degraded":g>0?"unhealthy":"unknown"}function Dr(g){for(const o of at){if(!o.diagnosticDomain)continue;const i=g[o.diagnosticDomain];if(!i)continue;const d=S.nodes[o.id];if(!d)continue;const c=typeof i.score=="number"?i.score:0;d.score=c,d.health=Mr(c),d.metrics=i}}function Lr(g){const o=S.nodes.queue;if(o){const c=g.memory,N=g.summary;o.queueDepth=c.pending+c.leased+N.pending+N.leased,o.metrics={memory:c,summary:N}}const i=S.nodes.extraction;i&&(i.queueDepth=g.memory.pending);const d=S.nodes.summary;d&&(d.queueDepth=g.summary.pending)}async function Ut(){try{const g=await dr();if(!g)return;if(S.mode=g.mode,S.lastPoll=new Date().toISOString(),g.diagnostics&&Dr(g.diagnostics),g.queues&&Lr(g.queues),g.workers)for(const[o,i]of Object.entries(g.workers)){const d=S.nodes[o];d&&i.running&&d.health==="unknown"&&(d.health="healthy",d.score=1)}if(g.errorSummary)for(const[o,i]of Object.entries(g.errorSummary)){const d=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(d){const c=S.nodes[d];c&&(c.errorCount=i)}}}catch{}}function Or(g=5e3){ht||(Ut(),ht=setInterval(Ut,g))}function Nr(){ht&&(clearInterval(ht),ht=null)}function Jt(g){S.selectedNodeId=g}var Ar=de('<rect class="glow-bg svelte-1tib701" x="-6" y="-6" rx="10" ry="10" opacity="0.12"></rect>'),Ir=de('<rect class="pulse-ring svelte-1tib701" x="-4" y="-4" rx="10" ry="10" fill="none"></rect>'),Rr=de('<rect class="flash-overlay svelte-1tib701" rx="6" ry="6"></rect>'),jr=de('<animate attributeName="opacity" values="1;0.4;1" dur="1.5s" repeatCount="indefinite" class="svelte-1tib701"></animate>'),qr=de('<g class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Gr=de('<g transform="translate(8, -6)" class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" fill="#ef4444" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Hr=de('<g style="cursor: pointer"><!><!><rect class="node-rect svelte-1tib701" rx="6" ry="6"></rect><!><circle cx="10" class="svelte-1tib701"><!></circle><text text-anchor="middle" dominant-baseline="middle" font-size="11" font-family="var(--font-mono)" class="svelte-1tib701"> </text><!><!></g>');function Fr(g,o){tt(o,!0);let i=T(()=>Ee[o.def.group]);const d={healthy:"#4ade80",degraded:"#fbbf24",unhealthy:"#f87171",unknown:"#6b6b76"};let c=T(()=>d[o.nodeState.health]),N=T(()=>o.nodeState.health==="unknown"?e(i)+"88":e(c)),M=V(0),A=V(!1),y=V(!1),C=null;Ht(()=>{if(o.nodeState.pulseCount>e(M)){x(M,o.nodeState.pulseCount,!0),x(A,!0);const h=setTimeout(()=>{x(A,!1)},1200);return x(y,!0),C&&clearTimeout(C),C=setTimeout(()=>{x(y,!1)},3e3),()=>{clearTimeout(h),C&&clearTimeout(C)}}});function ee(){o.onselectnode(o.def.id)}var P=Hr();let $;var L=r(P);{var F=h=>{var p=Ar();_(()=>{v(p,"width",o.def.w+12),v(p,"height",o.def.h+12),v(p,"fill",e(i))}),l(h,p)};I(L,h=>{e(y)&&h(F)})}var B=s(L);{var U=h=>{var p=Ir();_(()=>{v(p,"width",o.def.w+8),v(p,"height",o.def.h+8),v(p,"stroke",e(i))}),l(h,p)};I(B,h=>{e(A)&&h(U)})}var b=s(B),w=s(b);{var E=h=>{var p=Rr();_(()=>{v(p,"width",o.def.w),v(p,"height",o.def.h),v(p,"fill",e(i))}),l(h,p)};I(w,h=>{e(A)&&h(E)})}var O=s(w),J=r(O);{var H=h=>{var p=jr();l(h,p)};I(J,h=>{e(y)&&h(H)})}t(O);var R=s(O),u=r(R,!0);t(R);var k=s(R);{var q=h=>{var p=qr(),Y=r(p),te=s(Y),Ne=r(te,!0);t(te),t(p),_(()=>{v(p,"transform",`translate(${o.def.w-8}, -6)`),v(Y,"fill",e(i)),f(Ne,o.nodeState.queueDepth)}),l(h,p)};I(k,h=>{o.nodeState.queueDepth>0&&h(q)})}var j=s(k);{var K=h=>{var p=Gr(),Y=s(r(p)),te=r(Y,!0);t(Y),t(p),_(()=>f(te,o.nodeState.errorCount)),l(h,p)};I(j,h=>{o.nodeState.errorCount>0&&h(K)})}t(P),_(()=>{$=He(P,0,"pipeline-node svelte-1tib701",null,$,{"pipeline-node--selected":o.selected,"pipeline-node--active":e(y)}),v(P,"transform",`translate(${o.def.x??""}, ${o.def.y??""})`),v(b,"width",o.def.w),v(b,"height",o.def.h),v(b,"fill",e(y)?e(i)+"18":"var(--sig-surface-raised)"),v(b,"stroke",e(y)?e(i):e(N)),v(b,"stroke-width",o.selected?2.5:e(y)?1.5:1),v(O,"cy",o.def.h/2),v(O,"r",e(y)?4:3),v(O,"fill",e(y)?e(i):e(c)),v(O,"opacity",e(y)?1:.7),v(R,"x",o.def.w/2),v(R,"y",o.def.h/2+1),v(R,"fill",e(y)?e(i):"var(--sig-text-bright)"),v(R,"font-weight",e(y)?"600":"400"),f(u,o.def.label)}),mt("click",P,ee),l(g,P),rt()}Qt(["click"]);var Br=de('<path fill="none" stroke-width="4" opacity="0.15" class="edge-glow svelte-kl8ook"></path>'),zr=de('<circle r="2" opacity="0.6" class="svelte-kl8ook"><animateMotion repeatCount="indefinite" begin="0.5s" class="svelte-kl8ook"></animateMotion></circle>'),Yr=de('<circle class="svelte-kl8ook"><animateMotion repeatCount="indefinite" class="svelte-kl8ook"></animateMotion></circle><!>',1),Xr=de('<text text-anchor="middle" font-size="9" font-family="var(--font-mono)" class="svelte-kl8ook"> </text>'),Vr=de('<g class="pipeline-edge svelte-kl8ook"><path fill="none"></path><!><!><!></g>');function Ur(g,o){tt(o,!0);let i=T(()=>qt.get(o.edge.from)),d=T(()=>qt.get(o.edge.to)),c=T(()=>e(i)?Ee[e(i).group]:"#6b6b76"),N=T(()=>{if(!e(i)||!e(d))return"";const b=e(i).x+e(i).w/2,w=e(i).y+e(i).h/2,E=e(d).x+e(d).w/2,O=e(d).y+e(d).h/2,J=(b+E)/2,H=(w+O)/2,R=Math.abs(E-b),u=Math.abs(O-w);return R>u?`M ${b} ${w} Q ${J} ${w}, ${J} ${H} Q ${J} ${O}, ${E} ${O}`:`M ${b} ${w} Q ${b} ${H}, ${J} ${H} Q ${E} ${H}, ${E} ${O}`}),M=T(()=>!e(i)||!e(d)?{x:0,y:0}:{x:(e(i).x+e(i).w/2+e(d).x+e(d).w/2)/2,y:(e(i).y+e(i).h/2+e(d).y+e(d).h/2)/2-8}),A=T(()=>o.active?"1s":"3s");var y=Vr(),C=r(y);let ee;var P=s(C);{var $=b=>{var w=Br();_(()=>{v(w,"d",e(N)),v(w,"stroke",e(c))}),l(b,w)};I(P,b=>{o.active&&!o.edge.dashed&&b($)})}var L=s(P);{var F=b=>{var w=Yr(),E=Z(w),O=r(E);t(E);var J=s(E);{var H=R=>{var u=zr(),k=r(u);t(u),_(()=>{v(u,"fill",e(c)),v(k,"dur",e(A)),v(k,"path",e(N))}),l(R,u)};I(J,R=>{o.active&&R(H)})}_(()=>{v(E,"r",o.active?3.5:2),v(E,"fill",o.active?e(c):"var(--sig-border)"),v(E,"opacity",o.active?1:.3),v(O,"dur",e(A)),v(O,"path",e(N))}),l(b,w)};I(L,b=>{o.edge.dashed||b(F)})}var B=s(L);{var U=b=>{var w=Xr(),E=r(w,!0);t(w),_(()=>{v(w,"x",e(M).x),v(w,"y",e(M).y),v(w,"fill",o.active?e(c):"var(--sig-text-muted)"),v(w,"opacity",o.active?.9:.45),f(E,o.edge.label)}),l(b,w)};I(B,b=>{o.edge.label&&b(U)})}t(y),_(()=>{v(C,"d",e(N)),v(C,"stroke",o.active?e(c):"var(--sig-border)"),v(C,"stroke-width",o.active?1.5:.8),v(C,"stroke-dasharray",o.edge.dashed?"6 4":"none"),v(C,"opacity",o.active?.8:.25),ee=He(C,0,"svelte-kl8ook",null,ee,{"edge-active":o.active})}),l(g,y),rt()}var Qr=de('<g><rect rx="8" ry="8" fill-opacity="0.06" stroke-opacity="0.25" stroke-width="1" stroke-dasharray="4 3"></rect><text font-size="9" font-family="var(--font-mono)" opacity="0.6" letter-spacing="0.08em"> </text></g>'),Wr=de('<svg viewBox="0 0 1160 650" preserveAspectRatio="xMidYMid meet" class="w-full h-full select-none" xmlns="http://www.w3.org/2000/svg" role="application" aria-label="Pipeline graph. Use mouse wheel to zoom, drag background to pan, double-click to reset."><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="3" result="blur"></feGaussianBlur><feMerge><feMergeNode in="blur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter><marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="var(--sig-border-strong)"></path></marker></defs><g><!><!><!></g></svg>');function Zr(g,o){tt(o,!0);const i=Object.entries(Cr),d=.7,c=2.4,N=.12;let M=V(1),A=V(0),y=V(0),C=V(!1),ee=V(0),P=V(0);function $(u){const k=S.nodes[u];return k?.lastActivity?Date.now()-new Date(k.lastActivity).getTime()<5e3:!1}function L(u){return Math.min(c,Math.max(d,u))}function F(){x(M,1),x(A,0),x(y,0)}function B(u){u.preventDefault();const k=u.currentTarget;if(!(k instanceof SVGSVGElement))return;const q=k.getBoundingClientRect(),j=u.clientX-q.left,K=u.clientY-q.top,h=u.deltaY<0?1:-1,p=L(e(M)+h*N);if(p===e(M))return;const Y=(j-e(A))/e(M),te=(K-e(y))/e(M);x(M,p,!0),x(A,j-Y*p),x(y,K-te*p)}function U(u){if(u.button!==0||u.target!==u.currentTarget)return;const k=u.currentTarget;k instanceof SVGSVGElement&&k.setPointerCapture(u.pointerId),x(C,!0),x(ee,u.clientX,!0),x(P,u.clientY,!0)}function b(u){if(!e(C))return;const k=u.clientX-e(ee),q=u.clientY-e(P);x(ee,u.clientX,!0),x(P,u.clientY,!0),x(A,e(A)+k),x(y,e(y)+q)}function w(u){if(!e(C))return;const k=u.currentTarget;k instanceof SVGSVGElement&&k.releasePointerCapture(u.pointerId),x(C,!1)}var E=Wr(),O=s(r(E)),J=r(O);Oe(J,17,()=>i,pt,(u,k)=>{var q=T(()=>jt(e(k),2));let j=()=>e(q)[1];var K=Qr(),h=r(K),p=s(h),Y=r(p,!0);t(p),t(K),_(te=>{v(h,"x",j().x),v(h,"y",j().y),v(h,"width",j().w),v(h,"height",j().h),v(h,"fill",j().color),v(h,"stroke",j().color),v(p,"x",j().x+8),v(p,"y",j().y+14),v(p,"fill",j().color),f(Y,te)},[()=>j().label.toUpperCase()]),l(u,K)});var H=s(J);Oe(H,17,()=>Pr,u=>u.from+"-"+u.to,(u,k)=>{{let q=T(()=>$(e(k).from));Ur(u,{get edge(){return e(k)},get active(){return e(q)}})}});var R=s(H);Oe(R,17,()=>at,u=>u.id,(u,k)=>{{let q=T(()=>S.selectedNodeId===e(k).id);Fr(u,{get def(){return e(k)},get nodeState(){return S.nodes[e(k).id]},get selected(){return e(q)},get onselectnode(){return o.onselectnode}})}}),t(O),t(E),_(()=>v(O,"transform",`translate(${e(A)} ${e(y)}) scale(${e(M)})`)),$t("wheel",E,B),mt("pointerdown",E,U),mt("pointermove",E,b),mt("pointerup",E,w),$t("pointercancel",E,w),$t("pointerleave",E,w),mt("dblclick",E,F),l(g,E),rt()}Qt(["pointerdown","pointermove","pointerup","dblclick"]);var Jr=D(" <!>",1),Kr=D("<!> <!>",1),ea=D('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),ta=D('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),ra=D('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),aa=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),oa=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),sa=D('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),na=D('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),ia=D('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function la(g,o){tt(o,!0);let i=T(()=>S.selectedNodeId),d=T(()=>e(i)?qt.get(e(i))??null:null),c=T(()=>e(i)?S.nodes[e(i)]??null:null),N=T(()=>e(i)!==null);function M($){$||Jt(null)}function A($){try{return new Date($).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return $}}function y($){switch($){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}let C=T(()=>{if(!e(c)?.metrics)return null;const $=e(c).metrics;return $.memory||$.summary||typeof $.depth=="number"?$:null});var ee=Ve(),P=Z(ee);ke(P,()=>fr,($,L)=>{L($,{get open(){return e(N)},onOpenChange:M,children:(F,B)=>{var U=Ve(),b=Z(U);ke(b,()=>cr,(w,E)=>{E(w,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(O,J)=>{var H=Ve(),R=Z(H);{var u=k=>{var q=ia(),j=Z(q);ke(j,()=>vr,(G,X)=>{X(G,{children:(re,ge)=>{var me=Kr(),ce=Z(me);ke(ce,()=>ur,(se,be)=>{be(se,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:(Me,Be)=>{he();var ae=Jr(),ve=Z(ae),ne=s(ve);{let _e=T(()=>e(c).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(c).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(c).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");Et(ne,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
|
|
1
|
+
import{e as Rt,p as tt,Q as Ht,i as e,B as x,j as r,k as I,A as s,l as t,F as _,I as He,J as v,G as f,O as mt,b as l,d as rt,u as T,y as V,ah as de,P as Qt,f as Z,H as Oe,K as pt,N as $t,af as jt,c as Ve,h as ke,D as he,E as Te,m as D,z as nr,s as ir,ab as Bt,v as lr}from"./BJi5clDn.js";import{B as Et}from"./C3rQiPqA.js";import{au as dr,S as cr,o as vr,p as ur,u as fr,q as gr,av as mr,t as zt,aw as pr,f as hr,n as xr,E as br,B as gt}from"./CiyQaJH4.js";import{S as Wt}from"./B9sNKNlY.js";import{P as _r,a as yr,b as wr}from"./BvVVkod3.js";import{w as Pt,s as Yt}from"./fcu76Gaq.js";import{P as kr}from"./FAGA5WfT.js";import{T as Sr}from"./Cr5cBjY6.js";const Ee={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Ge={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},Cr={harness:{x:20,y:20,w:240,h:120,label:Ge.harness,color:Ee.harness},daemon:{x:300,y:20,w:340,h:280,label:Ge.daemon,color:Ee.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Ge.pipeline,color:Ee.pipeline},db:{x:680,y:160,w:200,h:200,label:Ge.db,color:Ee.db},search:{x:920,y:160,w:200,h:140,label:Ge.search,color:Ee.search},files:{x:680,y:400,w:200,h:100,label:Ge.files,color:Ee.files},configs:{x:920,y:400,w:200,h:100,label:Ge.configs,color:Ee.configs},llm:{x:680,y:540,w:200,h:80,label:Ge.llm,color:Ee.llm}},at=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"Ollama qwen3:4b (or configured provider)"}],qt=new Map(at.map(g=>[g.id,g])),Pr=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function $r(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const Gt=new Map;for(const g of at)for(const o of g.logCategories){const i=Gt.get(o);i?i.push(g.id):Gt.set(o,[g.id])}const Xt=20;function Er(){const g={};for(const o of at)g[o.id]=$r();return g}const Vt=50,S=Rt({nodes:Er(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let pe=null;function Zt(){pe&&(pe.close(),pe=null);const g="";pe=new EventSource(`${g}/api/logs/stream`),pe.onopen=()=>{S.connected=!0},pe.onmessage=o=>{try{const i=JSON.parse(o.data);if(i.type==="connected"){S.connected=!0;return}const d=[...S.feed,i];S.feed=d.length>Vt?d.slice(-Vt):d;const c=Gt.get(i.category);if(!c)return;for(const N of c){const M=S.nodes[N];if(!M)continue;M.pulseCount+=1,M.lastActivity=i.timestamp;const A=[...M.recentLogs,i];M.recentLogs=A.length>Xt?A.slice(-Xt):A,i.level==="error"&&(M.errorCount+=1)}}catch{}},pe.onerror=()=>{S.connected=!1,pe?.close(),pe=null,setTimeout(()=>{pe||Zt()},3e3)}}function Tr(){S.connected=!1,pe?.close(),pe=null}let ht=null;function Mr(g){return g>=.8?"healthy":g>=.5?"degraded":g>0?"unhealthy":"unknown"}function Dr(g){for(const o of at){if(!o.diagnosticDomain)continue;const i=g[o.diagnosticDomain];if(!i)continue;const d=S.nodes[o.id];if(!d)continue;const c=typeof i.score=="number"?i.score:0;d.score=c,d.health=Mr(c),d.metrics=i}}function Lr(g){const o=S.nodes.queue;if(o){const c=g.memory,N=g.summary;o.queueDepth=c.pending+c.leased+N.pending+N.leased,o.metrics={memory:c,summary:N}}const i=S.nodes.extraction;i&&(i.queueDepth=g.memory.pending);const d=S.nodes.summary;d&&(d.queueDepth=g.summary.pending)}async function Ut(){try{const g=await dr();if(!g)return;if(S.mode=g.mode,S.lastPoll=new Date().toISOString(),g.diagnostics&&Dr(g.diagnostics),g.queues&&Lr(g.queues),g.workers)for(const[o,i]of Object.entries(g.workers)){const d=S.nodes[o];d&&i.running&&d.health==="unknown"&&(d.health="healthy",d.score=1)}if(g.errorSummary)for(const[o,i]of Object.entries(g.errorSummary)){const d=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(d){const c=S.nodes[d];c&&(c.errorCount=i)}}}catch{}}function Or(g=5e3){ht||(Ut(),ht=setInterval(Ut,g))}function Nr(){ht&&(clearInterval(ht),ht=null)}function Jt(g){S.selectedNodeId=g}var Ar=de('<rect class="glow-bg svelte-1tib701" x="-6" y="-6" rx="10" ry="10" opacity="0.12"></rect>'),Ir=de('<rect class="pulse-ring svelte-1tib701" x="-4" y="-4" rx="10" ry="10" fill="none"></rect>'),Rr=de('<rect class="flash-overlay svelte-1tib701" rx="6" ry="6"></rect>'),jr=de('<animate attributeName="opacity" values="1;0.4;1" dur="1.5s" repeatCount="indefinite" class="svelte-1tib701"></animate>'),qr=de('<g class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Gr=de('<g transform="translate(8, -6)" class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" fill="#ef4444" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Hr=de('<g style="cursor: pointer"><!><!><rect class="node-rect svelte-1tib701" rx="6" ry="6"></rect><!><circle cx="10" class="svelte-1tib701"><!></circle><text text-anchor="middle" dominant-baseline="middle" font-size="11" font-family="var(--font-mono)" class="svelte-1tib701"> </text><!><!></g>');function Fr(g,o){tt(o,!0);let i=T(()=>Ee[o.def.group]);const d={healthy:"#4ade80",degraded:"#fbbf24",unhealthy:"#f87171",unknown:"#6b6b76"};let c=T(()=>d[o.nodeState.health]),N=T(()=>o.nodeState.health==="unknown"?e(i)+"88":e(c)),M=V(0),A=V(!1),y=V(!1),C=null;Ht(()=>{if(o.nodeState.pulseCount>e(M)){x(M,o.nodeState.pulseCount,!0),x(A,!0);const h=setTimeout(()=>{x(A,!1)},1200);return x(y,!0),C&&clearTimeout(C),C=setTimeout(()=>{x(y,!1)},3e3),()=>{clearTimeout(h),C&&clearTimeout(C)}}});function ee(){o.onselectnode(o.def.id)}var P=Hr();let $;var L=r(P);{var F=h=>{var p=Ar();_(()=>{v(p,"width",o.def.w+12),v(p,"height",o.def.h+12),v(p,"fill",e(i))}),l(h,p)};I(L,h=>{e(y)&&h(F)})}var B=s(L);{var U=h=>{var p=Ir();_(()=>{v(p,"width",o.def.w+8),v(p,"height",o.def.h+8),v(p,"stroke",e(i))}),l(h,p)};I(B,h=>{e(A)&&h(U)})}var b=s(B),w=s(b);{var E=h=>{var p=Rr();_(()=>{v(p,"width",o.def.w),v(p,"height",o.def.h),v(p,"fill",e(i))}),l(h,p)};I(w,h=>{e(A)&&h(E)})}var O=s(w),J=r(O);{var H=h=>{var p=jr();l(h,p)};I(J,h=>{e(y)&&h(H)})}t(O);var R=s(O),u=r(R,!0);t(R);var k=s(R);{var q=h=>{var p=qr(),Y=r(p),te=s(Y),Ne=r(te,!0);t(te),t(p),_(()=>{v(p,"transform",`translate(${o.def.w-8}, -6)`),v(Y,"fill",e(i)),f(Ne,o.nodeState.queueDepth)}),l(h,p)};I(k,h=>{o.nodeState.queueDepth>0&&h(q)})}var j=s(k);{var K=h=>{var p=Gr(),Y=s(r(p)),te=r(Y,!0);t(Y),t(p),_(()=>f(te,o.nodeState.errorCount)),l(h,p)};I(j,h=>{o.nodeState.errorCount>0&&h(K)})}t(P),_(()=>{$=He(P,0,"pipeline-node svelte-1tib701",null,$,{"pipeline-node--selected":o.selected,"pipeline-node--active":e(y)}),v(P,"transform",`translate(${o.def.x??""}, ${o.def.y??""})`),v(b,"width",o.def.w),v(b,"height",o.def.h),v(b,"fill",e(y)?e(i)+"18":"var(--sig-surface-raised)"),v(b,"stroke",e(y)?e(i):e(N)),v(b,"stroke-width",o.selected?2.5:e(y)?1.5:1),v(O,"cy",o.def.h/2),v(O,"r",e(y)?4:3),v(O,"fill",e(y)?e(i):e(c)),v(O,"opacity",e(y)?1:.7),v(R,"x",o.def.w/2),v(R,"y",o.def.h/2+1),v(R,"fill",e(y)?e(i):"var(--sig-text-bright)"),v(R,"font-weight",e(y)?"600":"400"),f(u,o.def.label)}),mt("click",P,ee),l(g,P),rt()}Qt(["click"]);var Br=de('<path fill="none" stroke-width="4" opacity="0.15" class="edge-glow svelte-kl8ook"></path>'),zr=de('<circle r="2" opacity="0.6" class="svelte-kl8ook"><animateMotion repeatCount="indefinite" begin="0.5s" class="svelte-kl8ook"></animateMotion></circle>'),Yr=de('<circle class="svelte-kl8ook"><animateMotion repeatCount="indefinite" class="svelte-kl8ook"></animateMotion></circle><!>',1),Xr=de('<text text-anchor="middle" font-size="9" font-family="var(--font-mono)" class="svelte-kl8ook"> </text>'),Vr=de('<g class="pipeline-edge svelte-kl8ook"><path fill="none"></path><!><!><!></g>');function Ur(g,o){tt(o,!0);let i=T(()=>qt.get(o.edge.from)),d=T(()=>qt.get(o.edge.to)),c=T(()=>e(i)?Ee[e(i).group]:"#6b6b76"),N=T(()=>{if(!e(i)||!e(d))return"";const b=e(i).x+e(i).w/2,w=e(i).y+e(i).h/2,E=e(d).x+e(d).w/2,O=e(d).y+e(d).h/2,J=(b+E)/2,H=(w+O)/2,R=Math.abs(E-b),u=Math.abs(O-w);return R>u?`M ${b} ${w} Q ${J} ${w}, ${J} ${H} Q ${J} ${O}, ${E} ${O}`:`M ${b} ${w} Q ${b} ${H}, ${J} ${H} Q ${E} ${H}, ${E} ${O}`}),M=T(()=>!e(i)||!e(d)?{x:0,y:0}:{x:(e(i).x+e(i).w/2+e(d).x+e(d).w/2)/2,y:(e(i).y+e(i).h/2+e(d).y+e(d).h/2)/2-8}),A=T(()=>o.active?"1s":"3s");var y=Vr(),C=r(y);let ee;var P=s(C);{var $=b=>{var w=Br();_(()=>{v(w,"d",e(N)),v(w,"stroke",e(c))}),l(b,w)};I(P,b=>{o.active&&!o.edge.dashed&&b($)})}var L=s(P);{var F=b=>{var w=Yr(),E=Z(w),O=r(E);t(E);var J=s(E);{var H=R=>{var u=zr(),k=r(u);t(u),_(()=>{v(u,"fill",e(c)),v(k,"dur",e(A)),v(k,"path",e(N))}),l(R,u)};I(J,R=>{o.active&&R(H)})}_(()=>{v(E,"r",o.active?3.5:2),v(E,"fill",o.active?e(c):"var(--sig-border)"),v(E,"opacity",o.active?1:.3),v(O,"dur",e(A)),v(O,"path",e(N))}),l(b,w)};I(L,b=>{o.edge.dashed||b(F)})}var B=s(L);{var U=b=>{var w=Xr(),E=r(w,!0);t(w),_(()=>{v(w,"x",e(M).x),v(w,"y",e(M).y),v(w,"fill",o.active?e(c):"var(--sig-text-muted)"),v(w,"opacity",o.active?.9:.45),f(E,o.edge.label)}),l(b,w)};I(B,b=>{o.edge.label&&b(U)})}t(y),_(()=>{v(C,"d",e(N)),v(C,"stroke",o.active?e(c):"var(--sig-border)"),v(C,"stroke-width",o.active?1.5:.8),v(C,"stroke-dasharray",o.edge.dashed?"6 4":"none"),v(C,"opacity",o.active?.8:.25),ee=He(C,0,"svelte-kl8ook",null,ee,{"edge-active":o.active})}),l(g,y),rt()}var Qr=de('<g><rect rx="8" ry="8" fill-opacity="0.06" stroke-opacity="0.25" stroke-width="1" stroke-dasharray="4 3"></rect><text font-size="9" font-family="var(--font-mono)" opacity="0.6" letter-spacing="0.08em"> </text></g>'),Wr=de('<svg viewBox="0 0 1160 650" preserveAspectRatio="xMidYMid meet" class="w-full h-full select-none" xmlns="http://www.w3.org/2000/svg" role="application" aria-label="Pipeline graph. Use mouse wheel to zoom, drag background to pan, double-click to reset."><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="3" result="blur"></feGaussianBlur><feMerge><feMergeNode in="blur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter><marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="var(--sig-border-strong)"></path></marker></defs><g><!><!><!></g></svg>');function Zr(g,o){tt(o,!0);const i=Object.entries(Cr),d=.7,c=2.4,N=.12;let M=V(1),A=V(0),y=V(0),C=V(!1),ee=V(0),P=V(0);function $(u){const k=S.nodes[u];return k?.lastActivity?Date.now()-new Date(k.lastActivity).getTime()<5e3:!1}function L(u){return Math.min(c,Math.max(d,u))}function F(){x(M,1),x(A,0),x(y,0)}function B(u){u.preventDefault();const k=u.currentTarget;if(!(k instanceof SVGSVGElement))return;const q=k.getBoundingClientRect(),j=u.clientX-q.left,K=u.clientY-q.top,h=u.deltaY<0?1:-1,p=L(e(M)+h*N);if(p===e(M))return;const Y=(j-e(A))/e(M),te=(K-e(y))/e(M);x(M,p,!0),x(A,j-Y*p),x(y,K-te*p)}function U(u){if(u.button!==0||u.target!==u.currentTarget)return;const k=u.currentTarget;k instanceof SVGSVGElement&&k.setPointerCapture(u.pointerId),x(C,!0),x(ee,u.clientX,!0),x(P,u.clientY,!0)}function b(u){if(!e(C))return;const k=u.clientX-e(ee),q=u.clientY-e(P);x(ee,u.clientX,!0),x(P,u.clientY,!0),x(A,e(A)+k),x(y,e(y)+q)}function w(u){if(!e(C))return;const k=u.currentTarget;k instanceof SVGSVGElement&&k.releasePointerCapture(u.pointerId),x(C,!1)}var E=Wr(),O=s(r(E)),J=r(O);Oe(J,17,()=>i,pt,(u,k)=>{var q=T(()=>jt(e(k),2));let j=()=>e(q)[1];var K=Qr(),h=r(K),p=s(h),Y=r(p,!0);t(p),t(K),_(te=>{v(h,"x",j().x),v(h,"y",j().y),v(h,"width",j().w),v(h,"height",j().h),v(h,"fill",j().color),v(h,"stroke",j().color),v(p,"x",j().x+8),v(p,"y",j().y+14),v(p,"fill",j().color),f(Y,te)},[()=>j().label.toUpperCase()]),l(u,K)});var H=s(J);Oe(H,17,()=>Pr,u=>u.from+"-"+u.to,(u,k)=>{{let q=T(()=>$(e(k).from));Ur(u,{get edge(){return e(k)},get active(){return e(q)}})}});var R=s(H);Oe(R,17,()=>at,u=>u.id,(u,k)=>{{let q=T(()=>S.selectedNodeId===e(k).id);Fr(u,{get def(){return e(k)},get nodeState(){return S.nodes[e(k).id]},get selected(){return e(q)},get onselectnode(){return o.onselectnode}})}}),t(O),t(E),_(()=>v(O,"transform",`translate(${e(A)} ${e(y)}) scale(${e(M)})`)),$t("wheel",E,B),mt("pointerdown",E,U),mt("pointermove",E,b),mt("pointerup",E,w),$t("pointercancel",E,w),$t("pointerleave",E,w),mt("dblclick",E,F),l(g,E),rt()}Qt(["pointerdown","pointermove","pointerup","dblclick"]);var Jr=D(" <!>",1),Kr=D("<!> <!>",1),ea=D('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),ta=D('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),ra=D('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),aa=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),oa=D('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),sa=D('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),na=D('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),ia=D('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function la(g,o){tt(o,!0);let i=T(()=>S.selectedNodeId),d=T(()=>e(i)?qt.get(e(i))??null:null),c=T(()=>e(i)?S.nodes[e(i)]??null:null),N=T(()=>e(i)!==null);function M($){$||Jt(null)}function A($){try{return new Date($).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return $}}function y($){switch($){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}let C=T(()=>{if(!e(c)?.metrics)return null;const $=e(c).metrics;return $.memory||$.summary||typeof $.depth=="number"?$:null});var ee=Ve(),P=Z(ee);ke(P,()=>fr,($,L)=>{L($,{get open(){return e(N)},onOpenChange:M,children:(F,B)=>{var U=Ve(),b=Z(U);ke(b,()=>cr,(w,E)=>{E(w,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(O,J)=>{var H=Ve(),R=Z(H);{var u=k=>{var q=ia(),j=Z(q);ke(j,()=>vr,(G,X)=>{X(G,{children:(re,ge)=>{var me=Kr(),ce=Z(me);ke(ce,()=>ur,(se,be)=>{be(se,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:(Me,Be)=>{he();var ae=Jr(),ve=Z(ae),ne=s(ve);{let _e=T(()=>e(c).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(c).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(c).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");Et(ne,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
|
|
2
2
|
${e(_e)??""}`},children:(Re,ze)=>{he();var Ze=Te();_(()=>f(Ze,e(c).health)),l(Re,Ze)},$$slots:{default:!0}})}_(()=>f(ve,`${e(d).label??""} `)),l(Me,ae)},$$slots:{default:!0}})});var Pe=s(ce,2);{var xe=se=>{var be=Ve(),Me=Z(be);ke(Me,()=>gr,(Be,ae)=>{ae(Be,{class:"text-[11px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]",children:(ve,ne)=>{he();var _e=Te();_(()=>f(_e,e(d).description)),l(ve,_e)},$$slots:{default:!0}})}),l(se,be)};I(Pe,se=>{e(d).description&&se(xe)})}l(re,me)},$$slots:{default:!0}})});var K=s(j,2),h=r(K),p=s(r(h),2),Y=r(p),te=s(r(Y),2),Ne=r(te,!0);t(te),t(Y);var Q=s(Y,2),fe=s(r(Q),2),Se=r(fe,!0);t(fe),t(Q);var Ce=s(Q,2),Ae=s(r(Ce),2);let Ie;var Ue=r(Ae,!0);t(Ae),t(Ce),t(p),t(h);var Fe=s(h,2);{var ot=G=>{var X=aa(),re=s(r(X),2);Oe(re,21,()=>Object.entries(e(C)),pt,(ge,me)=>{var ce=T(()=>jt(e(me),2));let Pe=()=>e(ce)[0],xe=()=>e(ce)[1];var se=Ve(),be=Z(se);{var Me=ae=>{var ve=ta(),ne=Z(ve),_e=r(ne,!0);t(ne);var Re=s(ne,2);Oe(Re,17,()=>Object.entries(xe()),pt,(ze,Ze)=>{var Ye=T(()=>jt(e(Ze),2));let yt=()=>e(Ye)[0],Lt=()=>e(Ye)[1];var nt=ea(),it=r(nt),a=r(it,!0);t(it);var n=s(it,2),m=r(n,!0);t(n),t(nt),_(()=>{f(a,yt()),f(m,Lt())}),l(ze,nt)}),_(()=>f(_e,Pe())),l(ae,ve)},Be=ae=>{var ve=ra(),ne=r(ve),_e=r(ne,!0);t(ne);var Re=s(ne,2),ze=r(Re,!0);t(Re),t(ve),_(()=>{f(_e,Pe()),f(ze,xe())}),l(ae,ve)};I(be,ae=>{typeof xe()=="object"&&xe()!==null?ae(Me):ae(Be,-1)})}l(ge,se)}),t(re),t(X),l(G,X)};I(Fe,G=>{e(C)&&G(ot)})}var st=s(Fe,2);{var Tt=G=>{var X=oa(),re=s(r(X),2),ge=r(re,!0);t(re),t(X),_(me=>f(ge,me),[()=>A(e(c).lastActivity)]),l(G,X)};I(st,G=>{e(c).lastActivity&&G(Tt)})}var xt=s(st,2),Qe=r(xt),Mt=r(Qe);t(Qe);var bt=s(Qe,2),We=r(bt);Oe(We,17,()=>e(c).recentLogs,pt,(G,X)=>{var re=sa(),ge=r(re),me=r(ge,!0);t(ge);var ce=s(ge,2),Pe=r(ce,!0);t(ce);var xe=s(ce,2),se=r(xe,!0);t(xe),t(re),_((be,Me)=>{f(me,be),He(ce,1,`${Me??""} shrink-0 w-[34px] uppercase`),f(Pe,e(X).level),f(se,e(X).message)},[()=>A(e(X).timestamp),()=>y(e(X).level)]),l(G,re)});var Dt=s(We,2);{var _t=G=>{var X=na();l(G,X)};I(Dt,G=>{e(c).recentLogs.length===0&&G(_t)})}t(bt),t(xt),t(K),_(G=>{f(Ne,G),f(Se,e(c).queueDepth),Ie=He(Ae,1,"text-[15px] font-[family-name:var(--font-mono)]",null,Ie,{"text-[#8a4a48]":e(c).errorCount>0,"text-[var(--sig-text-bright)]":e(c).errorCount===0}),f(Ue,e(c).errorCount),f(Mt,`Recent Logs (${e(c).recentLogs.length??""})`)},[()=>e(c).score>0?(e(c).score*100).toFixed(0)+"%":"--"]),l(k,q)};I(R,k=>{e(d)&&e(c)&&k(u)})}l(O,H)},$$slots:{default:!0}})}),l(F,U)},$$slots:{default:!0}})}),l(g,ee),rt()}var da=D('<div class="border-t border-[var(--sig-border)]"></div>'),ca=D('<!> <div class="flex items-center justify-between px-3 py-2 gap-3"><div class="flex items-center gap-3 min-w-0"><span class="font-mono text-[var(--font-size-sm)] text-[var(--sig-text)] truncate"> </span> <!> <span class="sig-meta text-[var(--sig-text-muted)] shrink-0"> </span></div> <div class="flex items-center gap-2 shrink-0"><span> </span> <!></div></div>',1),va=D('<div class="mb-4"><div class="flex items-center gap-2 mb-2"><span class="sig-heading">ACTIVE SESSIONS</span> <!></div> <div class="rounded-md border border-[var(--sig-border)]" style="background: var(--sig-surface)"></div></div>');function ua(g,o){tt(o,!0);let i=V(Rt([])),d=V(!0),c=V(Rt(new Set));async function N(){try{const P=await mr();x(i,[...P.sessions],!0)}catch{zt("Failed to load sessions","error")}finally{x(d,!1)}}async function M(P,$){if(!e(c).has(P.key)){x(c,new Set([...e(c),P.key]),!0);try{const L=await pr(P.key,$);L?x(i,e(i).map(F=>F.key===P.key?{...F,bypassed:L.bypassed}:F),!0):zt("Failed to toggle bypass","error")}finally{const L=new Set(e(c));L.delete(P.key),x(c,L,!0)}}}function A(P){const $=Date.now()-new Date(P).getTime();if(!Number.isFinite($)||$<0)return"just now";const L=Math.floor($/1e3);if(L<60)return`${L}s ago`;const F=Math.floor(L/60);if(F<60)return`${F}m ago`;const B=Math.floor(F/60);return B<24?`${B}h ago`:`${Math.floor(B/24)}d ago`}Ht(()=>{N();const P=setInterval(N,3e4);return()=>clearInterval(P)});var y=Ve(),C=Z(y);{var ee=P=>{var $=va(),L=r($),F=s(r(L),2);Et(F,{variant:"outline",class:"sig-badge px-1.5 py-0",children:(U,b)=>{he();var w=Te();_(()=>f(w,e(i).length)),l(U,w)},$$slots:{default:!0}}),t(L);var B=s(L,2);Oe(B,23,()=>e(i),U=>U.key,(U,b,w)=>{var E=ca(),O=Z(E);{var J=Q=>{var fe=da();l(Q,fe)};I(O,Q=>{e(w)>0&&Q(J)})}var H=s(O,2),R=r(H),u=r(R),k=r(u,!0);t(u);var q=s(u,2);Et(q,{variant:"outline",class:"sig-badge px-1.5 py-0 shrink-0",children:(Q,fe)=>{he();var Se=Te();_(()=>f(Se,e(b).runtimePath)),l(Q,Se)},$$slots:{default:!0}});var j=s(q,2),K=r(j,!0);t(j),t(R);var h=s(R,2),p=r(h);let Y;var te=r(p,!0);t(p);var Ne=s(p,2);{let Q=T(()=>e(c).has(e(b).key));ke(Ne,()=>Wt,(fe,Se)=>{Se(fe,{get checked(){return e(b).bypassed},get disabled(){return e(Q)},onCheckedChange:Ce=>M(e(b),Ce),get"aria-label"(){return`Bypass session ${e(b).key??""}`},children:(Ce,Ae)=>{var Ie=Ve(),Ue=Z(Ie);ke(Ue,()=>{},(Fe,ot)=>{ot(Fe,{})}),l(Ce,Ie)},$$slots:{default:!0}})})}t(h),t(H),_((Q,fe)=>{v(u,"title",e(b).key),f(k,Q),f(K,fe),Y=He(p,1,"sig-meta",null,Y,{"text-[var(--sig-text-muted)]":!e(b).bypassed,"text-[var(--sig-accent)]":e(b).bypassed}),f(te,e(b).bypassed?"bypassed":"active")},[()=>e(b).key.slice(0,12),()=>A(e(b).claimedAt)]),l(U,E)}),t(B),t($),l(P,$)};I(C,P=>{!e(d)&&e(i).length>0&&P(ee)})}l(g,y),rt()}var fa=D('<span class="sig-eyebrow text-[#4ade80]"> </span>'),ga=D('<span class="sig-meta"> </span>'),ma=D('<div class="flex flex-col gap-1"><!> <!></div>'),pa=D("<!> <!>",1),ha=D('<div class="flex items-start justify-between gap-2 border-b border-[var(--sig-border)]/30 pb-[1px]"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)] break-all text-right normal-case"> </span></div>'),xa=D('<div class="mt-1 pl-[56px] sig-micro"> </div>'),ba=D('<div class="mt-1 pl-[56px] sig-meta text-[#f87171] whitespace-pre-wrap break-words"> </div>'),_a=D('<details class="mt-1 pl-[56px]"><summary class="cursor-pointer sig-micro">Raw payload</summary> <pre class="mt-1 p-2 border border-[var(--sig-border)] bg-[var(--sig-surface)] sig-micro text-[var(--sig-text)] whitespace-pre-wrap break-words normal-case"> </pre></details>'),ya=D('<div class="mt-1 pl-[56px] inline-flex items-center gap-2 sig-micro"><span class="px-1 py-[1px] border border-[var(--sig-border)]"> </span> <span> </span></div> <div class="sig-eyebrow text-[var(--sig-text)] mt-0.5 pl-[56px] whitespace-pre-wrap break-words normal-case tracking-normal"> </div> <div class="mt-1 pl-[56px] grid grid-cols-1 md:grid-cols-2 gap-x-3 gap-y-1 sig-micro"></div> <!> <!> <!>',1),wa=D('<details class="mt-0.5 pl-[56px] group"><summary class="list-none cursor-pointer sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal line-clamp-2 break-words [&::-webkit-details-marker]:hidden"> </summary> <div class="mt-1 sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal whitespace-pre-wrap break-words"> </div></details>'),ka=D('<div class="sig-eyebrow text-[var(--sig-text)] normal-case tracking-normal mt-0.5 pl-[56px] whitespace-pre-wrap break-words"> </div>'),Sa=D('<span class="sig-micro pl-[56px]"> </span>'),Ca=D("<!> <!>",1),Pa=D('<div class="feed-entry px-2 py-1.5 rounded hover:bg-[var(--sig-surface-raised)] transition-colors svelte-1kgvdra"><div class="flex items-center gap-1.5"><span class="sig-meta shrink-0 w-[48px]"> </span> <span class="inline-block w-1.5 h-1.5 rounded-full shrink-0"></span> <span class="sig-meta shrink-0"> </span></div> <!></div>'),$a=D('<div class="flex items-center justify-center h-full sig-label italic">Waiting for events...</div>'),Ea=D('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="flex items-center justify-between px-4 py-2 border-b border-[var(--sig-border)] shrink-0"><div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><span></span> <span class="sig-eyebrow"> </span></div> <!> <!></div> <div class="flex items-center gap-3"><!></div></div> <div class="px-4 pt-2"><!></div> <div class="flex flex-1 min-h-0 flex-col lg:flex-row"><div class="flex-1 min-w-0 min-h-[46vh] lg:min-h-0 p-4 overflow-auto"><!></div> <div><div class="px-3 py-2 border-b border-[var(--sig-border)] space-y-2"><div class="flex items-center justify-between gap-2"><span class="sig-heading text-[10px]">Live Feed</span> <div class="flex items-center gap-2"><span class="sig-meta"> </span> <span> </span></div></div> <div class="flex items-center justify-between gap-2 min-w-0"><label class="inline-flex items-center gap-1.5 sig-eyebrow text-[var(--sig-text)] cursor-pointer min-w-0"><!> <span>Auto-scroll</span></label> <div class="hidden lg:flex items-center gap-1.5 shrink-0"><!> <!></div> <div class="lg:hidden shrink-0"><!></div></div></div> <div class="flex-1 overflow-y-auto px-1 py-1"><!> <!></div></div></div></div> <!>',1);function Ra(g,o){tt(o,!0);function i(a){Jt(S.selectedNodeId===a?null:a)}let d=V(null),c=V(!0),N=V(!1),M=V(!1);const A=24;let y=V(!0),C=V(!0),ee=T(()=>e(N)?"lg:w-[420px]":"lg:w-[320px]"),P=T(()=>e(y)?"Latest":"Oldest"),$=T(()=>e(N)?"Expanded":"Compact");function L(a="smooth"){e(d)&&e(d).scrollTo({top:e(d).scrollHeight,behavior:a})}function F(){return e(d)?e(d).scrollHeight-e(d).scrollTop-e(d).clientHeight<=A:!0}function B(){if(!(!e(d)||(x(C,F(),!0),!(e(d).scrollHeight-e(d).clientHeight>A)))){if(e(C)){x(y,!0);return}e(d).scrollTop<=A&&x(y,!1)}}function U(a){e(d)&&(e(y)?(x(c,!1),x(C,!1),x(y,!1),e(d).scrollTo({top:0,behavior:"smooth"})):(x(c,!0),x(C,!0),x(y,!0),L("auto")),a?.currentTarget instanceof HTMLElement&&a.currentTarget.blur(),x(M,!1))}function b(a){x(c,a,!0),Pt.pipeline.autoScroll=a,Yt(),a&&(x(C,!0),x(y,!0),requestAnimationFrame(()=>{L("auto"),B()}))}function w(a){x(N,!e(N)),Pt.pipeline.feedExpanded=e(N),Yt(),a?.currentTarget instanceof HTMLElement&&a.currentTarget.blur(),x(M,!1)}function E(a){if(!a)return"";const n=Object.keys(a);if(n.length===0)return"";const m=n.slice(0,4).join(", ");return n.length>4?`${m} +${n.length-4}`:m}Ht(()=>{if(S.feed.length,B(),e(c)&&e(d)){if(!e(C))return;requestAnimationFrame(()=>{L("auto"),x(C,!0),x(y,!0),B()})}}),nr(()=>(Zt(),Or(),x(c,Pt.pipeline.autoScroll,!0),x(N,Pt.pipeline.feedExpanded,!0),()=>{Tr(),Nr()}));const O={"controlled-write":"border-[#4ade80] text-[#4ade80]",shadow:"border-[#fbbf24] text-[#fbbf24]",frozen:"border-[#94a3b8] text-[#94a3b8]",disabled:"border-[#f87171] text-[#f87171]",unknown:"border-[var(--sig-border)] text-[var(--sig-text-muted)]"};let J=T(()=>O[S.mode]??O.unknown),H=T(()=>at.filter(a=>{const n=S.nodes[a.id];return n?.lastActivity?Date.now()-new Date(n.lastActivity).getTime()<5e3:!1}).length);function R(a){try{return new Date(a).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return a}}const u={error:"#f87171",warn:"#fbbf24",info:"#4ade80",debug:"#6b6b76"},k={hooks:"#4dabf7","session-tracker":"#4dabf7",pipeline:"#da77f2","summary-worker":"#da77f2","document-worker":"#da77f2",retention:"#da77f2",maintenance:"#da77f2",memory:"#ffd43b",embedding:"#ffd43b",sync:"#ff922b",watcher:"#ff922b",harness:"#4dabf7",llm:"#fcc419"},q=["jobId","memoryId","sessionKey","project","attempt","maxRetries","mode","provider","model","facts","entities","proposals","added","updated","deleted","deduped","skippedLowConfidence","blockedDestructive","runId","taskId","path","port","pid","error"];function j(a){const n=Date.now()-new Date(a).getTime();if(!Number.isFinite(n)||n<0)return"just now";const m=Math.floor(n/1e3);if(m<60)return`${m}s ago`;const z=Math.floor(m/60);if(z<60)return`${z}m ago`;const W=Math.floor(z/60);return W<24?`${W}h ago`:`${Math.floor(W/24)}d ago`}function K(a){return a.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/^./,n=>n.toUpperCase())}function h(a){return a===null?"null":a===void 0?"undefined":typeof a=="string"?a:typeof a=="number"||typeof a=="boolean"?String(a):Array.isArray(a)?`[${a.length} items]`:typeof a=="object"?"{object}":String(a)}function p(a){const n=a.message.toLowerCase(),m=a.category.replace(/-/g," ");if(n.includes("job failed")){const z=a.data?.attempt;return typeof z=="number"?`${m} failed (attempt ${z})`:`${m} failed`}return n.includes("completed")?`${m} completed`:n.includes("started")||n.includes("starting")?`${m} started`:n.includes("enqueued")?`${m} queued`:n.includes("failed")?`${m} warning`:n.includes("file changed")?"watcher detected file change":`${m} event`}function Y(a){const n=[{label:"Level",value:a.level},{label:"Category",value:a.category}];a.duration!==void 0&&n.push({label:"Duration",value:`${a.duration} ms`});const m=a.data;if(!m)return n;const z=new Set;for(const W of q)W in m&&(n.push({label:K(W),value:h(m[W])}),z.add(W));for(const W of Object.keys(m).sort())z.has(W)||n.push({label:K(W),value:h(m[W])});return n}function te(a){const n={};if(a.data&&(n.data=a.data),a.error&&(n.error=a.error),Object.keys(n).length===0)return"";const m=JSON.stringify(n,null,2);if(!m)return"";const z=3200;return m.length<=z?m:`${m.slice(0,z)}
|
|
3
3
|
...truncated`}var Ne=Ea(),Q=Z(Ne),fe=r(Q);kr(fe,{title:"Pipeline",children:(a,n)=>{Sr(a,{group:"engine",get tabs(){return br},get activeTab(){return xr.activeTab},onselect:(m,z)=>hr(z)})}});var Se=s(fe,2),Ce=r(Se),Ae=r(Ce),Ie=r(Ae);let Ue;var Fe=s(Ie,2),ot=r(Fe,!0);t(Fe),t(Ae);var st=s(Ae,2);Et(st,{variant:"outline",get class(){return`sig-badge px-1.5 py-0 ${e(J)??""}`},children:(a,n)=>{he();var m=Te();_(()=>f(m,S.mode)),l(a,m)},$$slots:{default:!0}});var Tt=s(st,2);{var xt=a=>{var n=fa(),m=r(n);t(n),_(()=>f(m,`${e(H)??""} active`)),l(a,n)};I(Tt,a=>{e(H)>0&&a(xt)})}t(Ce);var Qe=s(Ce,2),Mt=r(Qe);{var bt=a=>{var n=ga(),m=r(n);t(n),_(z=>f(m,`polled ${z??""}`),[()=>R(S.lastPoll)]),l(a,n)};I(Mt,a=>{S.lastPoll&&a(bt)})}t(Qe),t(Se);var We=s(Se,2),Dt=r(We);ua(Dt,{}),t(We);var _t=s(We,2),G=r(_t),X=r(G);Zr(X,{onselectnode:i}),t(G);var re=s(G,2),ge=r(re),me=r(ge),ce=s(r(me),2),Pe=r(ce),xe=r(Pe);t(Pe);var se=s(Pe,2);let be;var Me=r(se,!0);t(se),t(ce),t(me);var Be=s(me,2),ae=r(Be),ve=r(ae);ke(ve,()=>Wt,(a,n)=>{n(a,{get checked(){return e(c)},onCheckedChange:m=>b(m),class:"scale-90"})}),he(2),t(ae);var ne=s(ae,2),_e=r(ne);gt(_e,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:a=>U(a),children:(a,n)=>{he();var m=Te();_(()=>f(m,e(P))),l(a,m)},$$slots:{default:!0}});var Re=s(_e,2);gt(Re,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:a=>w(a),children:(a,n)=>{he();var m=Te();_(()=>f(m,e($))),l(a,m)},$$slots:{default:!0}}),t(ne);var ze=s(ne,2),Ze=r(ze);ke(Ze,()=>wr,(a,n)=>{n(a,{get open(){return e(M)},set open(m){x(M,m,!0)},children:(m,z)=>{var W=pa(),Je=Z(W);{const lt=(je,De)=>{gt(je,ir(()=>De?.().props,{variant:"outline",size:"sm",class:"sig-meta uppercase tracking-[0.08em] px-2 py-[3px] h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",children:(Le,ct)=>{he();var Ke=Te("Feed actions");l(Le,Ke)},$$slots:{default:!0}}))};ke(Je,()=>_r,(je,De)=>{De(je,{child:lt,$$slots:{child:!0}})})}var Ot=s(Je,2);ke(Ot,()=>yr,(lt,je)=>{je(lt,{align:"end",side:"bottom",class:"w-[170px] p-1 bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-lg",children:(De,dt)=>{var Le=ma(),ct=r(Le);gt(ct,{variant:"outline",size:"sm",class:"w-full justify-start sig-eyebrow tracking-[0.08em] px-2 py-1 h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:ye=>U(ye),children:(ye,Nt)=>{he();var Xe=Te();_(()=>f(Xe,e(P))),l(ye,Xe)},$$slots:{default:!0}});var Ke=s(ct,2);gt(Ke,{variant:"outline",size:"sm",class:"w-full justify-start sig-eyebrow tracking-[0.08em] px-2 py-1 h-auto hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]",onclick:ye=>w(ye),children:(ye,Nt)=>{he();var Xe=Te();_(()=>f(Xe,e($))),l(ye,Xe)},$$slots:{default:!0}}),t(Le),l(De,Le)},$$slots:{default:!0}})}),l(m,W)},$$slots:{default:!0}})}),t(ze),t(Be),t(ge);var Ye=s(ge,2),yt=r(Ye);Oe(yt,19,()=>S.feed,(a,n)=>a.timestamp+"-"+n,(a,n)=>{const m=T(()=>k[e(n).category]??"var(--sig-text-muted)"),z=T(()=>u[e(n).level]??"#6b6b76"),W=T(()=>e(n).message.length>72),Je=T(()=>E(e(n).data)),Ot=T(()=>p(e(n))),lt=T(()=>Y(e(n))),je=T(()=>te(e(n)));var De=Pa(),dt=r(De),Le=r(dt),ct=r(Le,!0);t(Le);var Ke=s(Le,2),ye=s(Ke,2),Nt=r(ye,!0);t(ye),t(dt);var Xe=s(dt,2);{var Kt=qe=>{var vt=ya(),et=Z(vt),ut=r(et),At=r(ut,!0);t(ut);var wt=s(ut,2),It=r(wt,!0);t(wt),t(et);var ie=s(et,2),ue=r(ie,!0);t(ie);var we=s(ie,2);Oe(we,21,()=>e(lt),pt,(oe,le)=>{var $e=ha(),ft=r($e),or=r(ft,!0);t(ft);var Ft=s(ft,2),sr=r(Ft,!0);t(Ft),t($e),_(()=>{f(or,e(le).label),f(sr,e(le).value)}),l(oe,$e)}),t(we);var kt=s(we,2);{var St=oe=>{var le=xa(),$e=r(le);t(le),_(()=>f($e,`Data keys: ${e(Je)??""}`)),l(oe,le)};I(kt,oe=>{e(Je)&&oe(St)})}var Ct=s(kt,2);{var tr=oe=>{var le=ba(),$e=r(le);t(le),_(()=>f($e,`${e(n).error.name??""}: ${e(n).error.message??""}`)),l(oe,le)};I(Ct,oe=>{e(n).error&&oe(tr)})}var rr=s(Ct,2);{var ar=oe=>{var le=_a(),$e=s(r(le),2),ft=r($e,!0);t($e),t(le),_(()=>f(ft,e(je))),l(oe,le)};I(rr,oe=>{e(je)&&oe(ar)})}_(oe=>{f(At,e(Ot)),f(It,oe),f(ue,e(n).message)},[()=>j(e(n).timestamp)]),l(qe,vt)},er=qe=>{var vt=Ca(),et=Z(vt);{var ut=ie=>{var ue=wa(),we=r(ue),kt=r(we,!0);t(we);var St=s(we,2),Ct=r(St,!0);t(St),t(ue),_(()=>{f(kt,e(n).message),f(Ct,e(n).message)}),l(ie,ue)},At=ie=>{var ue=ka(),we=r(ue,!0);t(ue),_(()=>f(we,e(n).message)),l(ie,ue)};I(et,ie=>{e(W)?ie(ut):ie(At,-1)})}var wt=s(et,2);{var It=ie=>{var ue=Sa(),we=r(ue);t(ue),_(()=>f(we,`${e(n).duration??""}ms`)),l(ie,ue)};I(wt,ie=>{e(n).duration&&ie(It)})}l(qe,vt)};I(Xe,qe=>{e(N)?qe(Kt):qe(er,-1)})}t(De),_(qe=>{f(ct,qe),Bt(Ke,`background-color: ${e(z)??""}`),Bt(ye,`color: ${e(m)??""}`),f(Nt,e(n).category)},[()=>R(e(n).timestamp)]),l(a,De)});var Lt=s(yt,2);{var nt=a=>{var n=$a();l(a,n)};I(Lt,a=>{S.feed.length===0&&a(nt)})}t(Ye),lr(Ye,a=>x(d,a),()=>e(d)),t(re),t(_t),t(Q);var it=s(Q,2);la(it,{}),_(()=>{Ue=He(Ie,1,"inline-block w-2 h-2 rounded-full",null,Ue,{"bg-[#4ade80]":S.connected,"bg-[#f87171]":!S.connected,"animate-pulse":S.connected}),f(ot,S.connected?"LIVE":"DISCONNECTED"),He(re,1,`w-full shrink-0 border-t lg:border-t-0 border-[var(--sig-border)] flex flex-col bg-[var(--sig-bg)] min-h-[220px] max-h-[40vh] lg:max-h-none ${e(ee)}`,"svelte-1kgvdra"),f(xe,`${S.feed.length??""} events`),be=He(se,1,"sig-meta",null,be,{"text-[#4ade80]":e(c)&&e(C),"text-[var(--sig-text-muted)]":!e(c)||!e(C)}),f(Me,e(c)&&e(C)?"following":"paused")}),$t("scroll",Ye,B),l(g,Ne),rt()}export{Ra as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as $,g as c,c as d,f as o,h as i,S as y,s as P,o as z,i as l,b as u,u as h,d as j,r as q}from"./BJi5clDn.js";import{c as f}from"./
|
|
1
|
+
import{p as $,g as c,c as d,f as o,h as i,S as y,s as P,o as z,i as l,b as u,u as h,d as j,r as q}from"./BJi5clDn.js";import{c as f}from"./CiyQaJH4.js";function D(g,e){$(e,!0);let a=c(e,"ref",15,null),r=c(e,"checked",15,!1),p=q(e,["$$slots","$$events","$$legacy","ref","class","checked"]);var s=d(),b=o(s);{let k=h(()=>f("data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e.class));i(b,()=>y,(m,v)=>{v(m,P({"data-slot":"switch",get class(){return l(k)}},()=>p,{get ref(){return a()},set ref(t){a(t)},get checked(){return r()},set checked(t){r(t)},children:(t,A)=>{var n=d(),w=o(n);{let x=h(()=>f("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"));i(w,()=>z,(_,S)=>{S(_,{"data-slot":"switch-thumb",get class(){return l(x)}})})}u(t,n)},$$slots:{default:!0}}))})}u(g,s),j()}export{D as S};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p,s as h,c as i,f as d,a as c,n as l,b as m,d as f,r as x}from"./BJi5clDn.js";import{I as g}from"./
|
|
1
|
+
import{p,s as h,c as i,f as d,a as c,n as l,b as m,d as f,r as x}from"./BJi5clDn.js";import{I as g}from"./CiyQaJH4.js";function w(r,t){p(t,!0);let s=x(t,["$$slots","$$events","$$legacy"]);const a=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3"}],["path",{d:"M12 12V8"}]];g(r,h({name:"network"},()=>s,{get iconNode(){return a},children:(o,u)=>{var e=i(),n=d(e);c(n,()=>t.children??l),m(o,e)},$$slots:{default:!0}})),f()}export{w as N};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as ie,s as ye,c as ce,f as de,a as Ee,n as Pe,b as v,d as ve,r as xe,y as h,e as ne,z as Ut,N as oe,$ as Vt,j as n,A as i,l as r,D as Fe,k as $,i as e,F as G,G as O,J as et,ab as zt,O as M,B as s,ag as U,u as le,H as tt,I as Kt,K as st,m as b,P as Gt,E as at}from"./BJi5clDn.js";import{I as Se,a1 as qt,a2 as Bt,a3 as Xt,n as jt,a4 as q,a5 as Jt,t as S,a6 as Wt,a7 as Qt,a8 as Yt,a9 as Zt}from"./C4aPpIV5.js";import{I as be}from"./lwqsZy3v.js";import{C as rt}from"./CFKMuVKk.js";import{P as es,T as ts}from"./BCjU6vup.js";import{R as ss}from"./od8Xq9xQ.js";import{C as as}from"./DH4ns4rB.js";import{C as rs}from"./B9q0fAbw.js";function ns(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor"}]];Se(L,ye({name:"key-round"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function os(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"}]];Se(L,ye({name:"link"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function ls(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16"}]];Se(L,ye({name:"unlink"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function is(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M12 3v12"}],["path",{d:"m8 11 4 4 4-4"}],["path",{d:"M8 5H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-4"}]];Se(L,ye({name:"import"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}var cs=b('<div class="add-form svelte-k8hi4h"><div class="add-form-row svelte-k8hi4h"><!> <!> <button class="add-submit svelte-k8hi4h"> </button></div></div>'),ds=b('<div class="panel-empty svelte-k8hi4h">LOADING</div>'),vs=b('<div class="panel-empty svelte-k8hi4h"><span>NO SECRETS STORED</span> <span class="panel-empty-hint svelte-k8hi4h">PRESS N TO ADD ONE</span></div>'),us=b('<span class="secret-delete-text svelte-k8hi4h">...</span>'),ps=b('<div tabindex="0" role="listitem"><!> <span class="secret-name svelte-k8hi4h"> </span> <span class="secret-mask svelte-k8hi4h">········</span> <button class="secret-delete svelte-k8hi4h"><!></button></div>'),fs=b('<div class="op-status op-status--ok svelte-k8hi4h">Connected<!></div>'),hs=b('<div class="op-status op-status--warn svelte-k8hi4h">Token saved but unreachable<!></div>'),ms=b('<div class="op-status svelte-k8hi4h">Connect a 1Password service account to import secrets</div>'),ks=b('<label class="op-vault svelte-k8hi4h"><!> <span class="op-vault-name svelte-k8hi4h"> </span></label>'),_s=b('<div class="op-vaults svelte-k8hi4h"><span class="op-vaults-label svelte-k8hi4h">VAULTS</span> <div class="op-vault-list svelte-k8hi4h"></div></div>'),ws=b('<div class="op-vaults-empty svelte-k8hi4h">NO ACCESSIBLE VAULTS</div>'),gs=b('<div class="onepassword-panel svelte-k8hi4h"><!> <div class="op-row svelte-k8hi4h"><!> <button class="op-btn svelte-k8hi4h" data-focus-index="2"><!> <span> </span></button></div> <div class="op-options svelte-k8hi4h"><div class="op-option svelte-k8hi4h"><span class="op-option-label svelte-k8hi4h">PREFIX</span> <!></div> <label class="op-option op-option--check svelte-k8hi4h" for="op-overwrite"><!> <span class="op-option-label svelte-k8hi4h">OVERWRITE</span></label></div> <!> <div class="op-actions svelte-k8hi4h"><button class="op-btn svelte-k8hi4h" data-focus-index="3"><!> <span> </span></button> <button class="op-btn op-btn--danger svelte-k8hi4h" data-focus-index="4"><!> <span> </span></button></div> <div class="op-tip svelte-k8hi4h">TIP: MAP DIRECT REFS AS <code class="svelte-k8hi4h">op://vault/item/field</code></div></div>'),bs=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">N</kbd> ADD</span>'),ys=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">ESC</kbd> CANCEL</span>'),Es=b('<div class="secrets-page svelte-k8hi4h"><div class="tab-header svelte-k8hi4h"><div class="tab-header-left svelte-k8hi4h"><span class="tab-header-title svelte-k8hi4h">SECRETS</span> <span class="tab-header-count svelte-k8hi4h"> </span></div> <button class="new-secret-btn svelte-k8hi4h"><!> <span>ADD SECRET</span></button></div> <!> <div class="secrets-content svelte-k8hi4h"><div class="panel svelte-k8hi4h"><div class="panel-header svelte-k8hi4h"><span class="panel-pip svelte-k8hi4h" style="background: var(--sig-highlight)"></span> <span class="panel-label svelte-k8hi4h">Stored Secrets</span> <span class="panel-count svelte-k8hi4h"> </span></div> <div class="panel-body svelte-k8hi4h"><!></div></div> <div class="panel svelte-k8hi4h" role="group" aria-label="1Password integration"><div class="panel-header-row svelte-k8hi4h"><button class="panel-header panel-header--toggle svelte-k8hi4h"><!> <span class="panel-label svelte-k8hi4h">1Password</span> <span class="panel-status svelte-k8hi4h"> </span></button> <button class="panel-action svelte-k8hi4h" aria-label="Refresh 1Password status"><!></button></div> <!></div></div> <div class="shortcut-bar svelte-k8hi4h"><!></div></div>');function Os(L,m){ie(m,!0);let d=h(ne([])),D=h(!1),w=h(""),N=h(""),_=h(!1),E=h(null),R=h(!1),ue=h(!1),p=h(ne({configured:!1,connected:!1,vaults:[]})),Y=h(ne([])),B=h("");const X=ne({prefix:"OP",overwrite:!1});let pe=h(!1),fe=h(!1),he=h(!1),C=h(ne([])),j=h(!1),l=h(-1),f=h("list"),o=h(-1);async function me(){s(D,!0),s(d,await qt(),!0),s(D,!1)}function nt(t){if(e(C).includes(t)){s(C,e(C).filter(a=>a!==t),!0);return}s(C,[...e(C),t],!0)}async function ke(){s(ue,!0);try{if(s(p,await Bt(),!0),e(p).connected){const a=await Xt();s(Y,a.length>0?a:e(p).vaults,!0)}else s(Y,[],!0),s(C,[],!0);const t=new Set(e(Y).map(a=>a.id));s(C,e(C).filter(a=>t.has(a)),!0)}finally{s(ue,!1)}}async function ot(){if(!e(w).trim()||!e(N).trim())return;s(_,!0),await Jt(e(w).trim(),e(N))?(S(`Secret ${e(w).trim()} added`,"success"),s(w,""),s(N,""),s(R,!1),await me()):S("Failed to add secret","error"),s(_,!1)}async function lt(t){s(E,t,!0),await Wt(t)?(S(`Secret ${t} deleted`,"success"),await me()):S("Failed to delete secret","error"),s(E,null)}async function it(){if(!e(B).trim()){S("Service account token is required","error");return}s(pe,!0);const t=await Qt(e(B).trim());if(s(pe,!1),!t.success){S(t.error??"Failed to connect 1Password","error");return}s(B,""),await ke(),S("Connected to 1Password","success")}async function ct(){s(fe,!0);const t=await Zt();if(s(fe,!1),!t.success){S(t.error??"Failed to disconnect 1Password","error");return}await ke(),S("Disconnected 1Password","success")}async function dt(){if(!e(p).connected){S("Connect 1Password first","error");return}s(he,!0);const t=await Yt({vaults:e(C).length>0?e(C):void 0,prefix:X.prefix.trim()||"OP",overwrite:X.overwrite});if(s(he,!1),!t.success){S(t.error??"Failed to import from 1Password","error");return}await me();const a=t.importedCount??0,u=t.skippedCount??0,g=t.errorCount??0;S(`Imported ${a} secrets (skipped ${u}, errors ${g})`,"success")}function vt(t){if(jt.activeTab!=="secrets"||t.defaultPrevented)return;const a=t.target,u=a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable;if(t.key==="Escape"){if(e(R)){t.preventDefault(),s(R,!1);return}if(e(f)==="1password"){t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1);return}t.preventDefault(),q();return}if(!u){if((t.key==="n"||t.key==="N")&&!e(R)){t.preventDefault(),s(R,!0);return}if(t.key==="ArrowRight"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),e(d).length>0?(s(l,0),V(0)):(s(f,"1password"),s(o,0),z(0))),t.key==="ArrowUp"&&e(f)==="list"&&e(l)>=0&&(t.preventDefault(),e(l)>0?(U(l,-1),V(e(l))):(s(l,-1),q())),t.key==="ArrowDown"&&e(f)==="list"){if(t.preventDefault(),e(l)<e(d).length-1)U(l),V(e(l));else if(e(l)===e(d).length-1){const g=document.querySelectorAll(".secret-item");g[e(l)]instanceof HTMLElement&&g[e(l)].blur(),s(f,"1password"),s(l,-1),s(o,0),z(0)}}if(t.key==="ArrowUp"&&e(f)==="1password"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"&&e(f)==="1password"){t.preventDefault();const g=_e(),y=Math.max(0,g.length-1);e(o)<y&&(U(o),z(e(o)))}t.key==="ArrowLeft"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),q())}}function V(t){const a=document.querySelectorAll(".secret-item");a[t]instanceof HTMLElement&&a[t].focus()}function _e(){const t=document.querySelector(".onepassword-panel");if(!t)return[];const a=t.querySelectorAll("[data-focus-index]");return Array.from(a).filter(u=>!u.disabled).sort((u,g)=>{const y=parseInt(u.getAttribute("data-focus-index")??"0",10),P=parseInt(g.getAttribute("data-focus-index")??"0",10);return y-P})}function z(t){const a=_e();if(a.length===0)return;const u=Math.min(t,a.length-1);a[u]?.focus()}function ut(t){if(t.key==="ArrowUp"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"){t.preventDefault();const a=_e(),u=Math.max(0,a.length-1);e(o)<u&&(U(o),z(e(o)))}if(t.key==="Escape"&&(t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1)),t.key==="Tab"){const a=_e(),u=Math.max(0,a.length-1);t.shiftKey&&e(o)>0?U(o,-1):!t.shiftKey&&e(o)<u&&U(o)}}function Z(t){s(o,t,!0),s(f,"1password")}function pt(t){s(l,t,!0),s(f,"list")}function ft(t,a){t.key==="ArrowDown"?(t.preventDefault(),t.stopPropagation(),a<e(d).length-1?(s(l,a+1),V(e(l))):(t.target.blur(),s(f,"1password"),s(l,-1),s(o,0),z(0))):t.key==="ArrowUp"?(t.preventDefault(),t.stopPropagation(),a>0?(s(l,a-1),V(e(l))):a===0&&(s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())}let ht=le(()=>e(p).connected?"CONNECTED":e(p).configured?"UNREACHABLE":"NOT CONFIGURED"),mt=le(()=>e(p).connected?"var(--sig-success)":e(p).configured?"var(--sig-warning)":"var(--sig-text-muted)");Ut(()=>{me(),ke()});var De=Es();oe("keydown",Vt,vt);var Ce=n(De),Ae=n(Ce),He=i(n(Ae),2),kt=n(He);r(He),r(Ae);var Te=i(Ae,2),_t=n(Te);es(_t,{class:"size-3"}),Fe(2),r(Te),r(Ce);var Ue=i(Ce,2);{var wt=t=>{var a=cs(),u=n(a),g=n(u);be(g,{type:"text",class:"secrets-add-input",placeholder:"SECRET_NAME",get value(){return e(w)},set value(A){s(w,A,!0)}});var y=i(g,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(A){s(N,A,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(A=>{P.disabled=A,O(x,e(_)?"ADDING...":"ADD")},[()=>e(_)||!e(w).trim()||!e(N).trim()]),M("click",P,ot),v(t,a)};$(Ue,t=>{e(R)&&t(wt)})}var Ie=i(Ue,2),Oe=n(Ie),Ne=n(Oe),Ve=i(n(Ne),4),gt=n(Ve,!0);r(Ve),r(Ne);var ze=i(Ne,2),bt=n(ze);{var yt=t=>{var a=ds();v(t,a)},Et=t=>{var a=vs();v(t,a)},Pt=t=>{var a=ce(),u=de(a);tt(u,17,()=>e(d),st,(g,y,P)=>{var x=ps();let A;var H=n(x);ns(H,{class:"secrets-secret-icon"});var J=i(H,2),ge=n(J,!0);r(J);var K=i(J,4),te=n(K);{var se=T=>{var Re=us();v(T,Re)},Le=T=>{ts(T,{class:"size-3"})};$(te,T=>{e(E)===e(y)?T(se):T(Le,-1)})}r(K),r(x),G(()=>{A=Kt(x,1,"secret-item svelte-k8hi4h",null,A,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(ge,e(y)),K.disabled=e(E)===e(y),et(K,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,T=>ft(T,P)),oe("focus",x,()=>pt(P)),M("click",K,()=>lt(e(y))),v(g,x)}),v(t,a)};$(bt,t=>{e(D)?t(yt):e(d).length===0?t(Et,1):t(Pt,-1)})}r(ze),r(Oe);var Ke=i(Oe,2),$e=n(Ke),ee=n($e),Ge=n(ee);{var xt=t=>{as(t,{class:"secrets-panel-chevron"})},St=t=>{rs(t,{class:"secrets-panel-chevron"})};$(Ge,t=>{e(j)?t(xt):t(St,-1)})}var Me=i(Ge,4),Dt=n(Me,!0);r(Me),r(ee);var we=i(ee,2),Ct=n(we);{let t=le(()=>`size-3${e(ue)?" op-spin":""}`);ss(Ct,{get class(){return e(t)}})}r(we),r($e);var At=i($e,2);{var Tt=t=>{var a=gs(),u=n(a);{var g=c=>{var k=fs(),Q=i(n(k));{var re=I=>{var F=at();G(()=>O(F,`· ${e(p).vaultCount??""} vaults`)),v(I,F)};$(Q,I=>{typeof e(p).vaultCount=="number"&&I(re)})}r(k),v(c,k)},y=c=>{var k=hs(),Q=i(n(k));{var re=I=>{var F=at();G(()=>O(F,`· ${e(p).error??""}`)),v(I,F)};$(Q,I=>{e(p).error&&I(re)})}r(k),v(c,k)},P=c=>{var k=ms();v(c,k)};$(u,c=>{e(p).connected?c(g):e(p).configured?c(y,1):c(P,-1)})}var x=i(u,2),A=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(A,{type:"password","data-focus-index":"0",class:"secrets-op-input",get placeholder(){return e(c)},onfocus:()=>Z(0),get value(){return e(B)},set value(k){s(B,k,!0)}})}var H=i(A,2),J=n(H);os(J,{class:"size-3"});var ge=i(J,2),K=n(ge,!0);r(ge),r(H),r(x);var te=i(x,2),se=n(te),Le=i(n(se),2);be(Le,{type:"text","data-focus-index":"1",class:"secrets-op-input-sm",placeholder:"OP",onfocus:()=>Z(1),get value(){return X.prefix},set value(c){X.prefix=c}}),r(se);var T=i(se,2),Re=n(T);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(T),r(te);var Be=i(te,2);{var $t=c=>{var k=_s(),Q=i(n(k),2);tt(Q,21,()=>e(Y),st,(re,I)=>{var F=ks(),Ye=n(F);{let Ht=le(()=>e(C).includes(e(I).id));rt(Ye,{get checked(){return e(Ht)},onCheckedChange:()=>nt(e(I).id),class:"secrets-op-checkbox"})}var Ze=i(Ye,2),Ft=n(Ze,!0);r(Ze),r(F),G(()=>O(Ft,e(I).name)),v(re,F)}),r(Q),r(k),v(c,k)},Mt=c=>{var k=ws();v(c,k)};$(Be,c=>{e(p).connected&&e(Y).length>0?c($t):e(p).connected&&c(Mt,1)})}var Xe=i(Be,2),W=n(Xe),je=n(W);is(je,{class:"size-3"});var Je=i(je,2),Lt=n(Je,!0);r(Je),r(W);var ae=i(W,2),We=n(ae);ls(We,{class:"size-3"});var Qe=i(We,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(K,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),W.disabled=e(he)||!e(p).connected,O(Lt,e(he)?"IMPORTING...":"IMPORT"),ae.disabled=e(fe)||!e(p).configured,O(Rt,e(fe)?"...":"DISCONNECT")},[()=>e(pe)||!e(B).trim()]),M("keydown",a,ut),M("click",H,it),oe("focus",H,()=>Z(2)),M("click",W,dt),oe("focus",W,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(At,t=>{e(j)&&t(Tt)})}r(Ke),r(Ie);var qe=i(Ie,2),It=n(qe);{var Ot=t=>{var a=bs();v(t,a)},Nt=t=>{var a=ys();v(t,a)};$(It,t=>{e(R)?t(Nt,-1):t(Ot)})}r(qe),r(De),G(()=>{O(kt,`${e(d).length??""} STORED`),O(gt,e(d).length),et(ee,"aria-expanded",e(j)),zt(Me,`color: ${e(mt)??""}`),O(Dt,e(ht)),we.disabled=e(ue)}),M("click",Te,()=>{s(R,!e(R))}),M("click",ee,()=>{s(j,!e(j)),e(j)||(s(o,-1),s(f,"list"))}),M("click",we,()=>ke()),v(L,De),ve()}Gt(["click","keydown"]);export{Os as default};
|
|
1
|
+
import{p as ie,s as ye,c as ce,f as de,a as Ee,n as Pe,b as v,d as ve,r as xe,y as h,e as ne,z as Ut,N as oe,$ as Vt,j as n,A as i,l as r,D as Fe,k as $,i as e,F as G,G as O,J as et,ab as zt,O as M,B as s,ag as U,u as le,H as tt,I as Kt,K as st,m as b,P as Gt,E as at}from"./BJi5clDn.js";import{I as Se,a1 as qt,a2 as Bt,a3 as Xt,n as jt,a4 as q,a5 as Jt,t as S,a6 as Wt,a7 as Qt,a8 as Yt,a9 as Zt}from"./CiyQaJH4.js";import{I as be}from"./CNRAfJx3.js";import{C as rt}from"./D3WOLEHE.js";import{P as es,T as ts}from"./BpI6lIwh.js";import{R as ss}from"./DU-T_rTf.js";import{C as as}from"./B-2VMzoS.js";import{C as rs}from"./q-nV9VJE.js";function ns(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor"}]];Se(L,ye({name:"key-round"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function os(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"}]];Se(L,ye({name:"link"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function ls(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71"}],["path",{d:"m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71"}],["line",{x1:"8",x2:"8",y1:"2",y2:"5"}],["line",{x1:"2",x2:"5",y1:"8",y2:"8"}],["line",{x1:"16",x2:"16",y1:"19",y2:"22"}],["line",{x1:"19",x2:"22",y1:"16",y2:"16"}]];Se(L,ye({name:"unlink"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}function is(L,m){ie(m,!0);let d=xe(m,["$$slots","$$events","$$legacy"]);const D=[["path",{d:"M12 3v12"}],["path",{d:"m8 11 4 4 4-4"}],["path",{d:"M8 5H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-4"}]];Se(L,ye({name:"import"},()=>d,{get iconNode(){return D},children:(w,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(w,_)},$$slots:{default:!0}})),ve()}var cs=b('<div class="add-form svelte-k8hi4h"><div class="add-form-row svelte-k8hi4h"><!> <!> <button class="add-submit svelte-k8hi4h"> </button></div></div>'),ds=b('<div class="panel-empty svelte-k8hi4h">LOADING</div>'),vs=b('<div class="panel-empty svelte-k8hi4h"><span>NO SECRETS STORED</span> <span class="panel-empty-hint svelte-k8hi4h">PRESS N TO ADD ONE</span></div>'),us=b('<span class="secret-delete-text svelte-k8hi4h">...</span>'),ps=b('<div tabindex="0" role="listitem"><!> <span class="secret-name svelte-k8hi4h"> </span> <span class="secret-mask svelte-k8hi4h">········</span> <button class="secret-delete svelte-k8hi4h"><!></button></div>'),fs=b('<div class="op-status op-status--ok svelte-k8hi4h">Connected<!></div>'),hs=b('<div class="op-status op-status--warn svelte-k8hi4h">Token saved but unreachable<!></div>'),ms=b('<div class="op-status svelte-k8hi4h">Connect a 1Password service account to import secrets</div>'),ks=b('<label class="op-vault svelte-k8hi4h"><!> <span class="op-vault-name svelte-k8hi4h"> </span></label>'),_s=b('<div class="op-vaults svelte-k8hi4h"><span class="op-vaults-label svelte-k8hi4h">VAULTS</span> <div class="op-vault-list svelte-k8hi4h"></div></div>'),ws=b('<div class="op-vaults-empty svelte-k8hi4h">NO ACCESSIBLE VAULTS</div>'),gs=b('<div class="onepassword-panel svelte-k8hi4h"><!> <div class="op-row svelte-k8hi4h"><!> <button class="op-btn svelte-k8hi4h" data-focus-index="2"><!> <span> </span></button></div> <div class="op-options svelte-k8hi4h"><div class="op-option svelte-k8hi4h"><span class="op-option-label svelte-k8hi4h">PREFIX</span> <!></div> <label class="op-option op-option--check svelte-k8hi4h" for="op-overwrite"><!> <span class="op-option-label svelte-k8hi4h">OVERWRITE</span></label></div> <!> <div class="op-actions svelte-k8hi4h"><button class="op-btn svelte-k8hi4h" data-focus-index="3"><!> <span> </span></button> <button class="op-btn op-btn--danger svelte-k8hi4h" data-focus-index="4"><!> <span> </span></button></div> <div class="op-tip svelte-k8hi4h">TIP: MAP DIRECT REFS AS <code class="svelte-k8hi4h">op://vault/item/field</code></div></div>'),bs=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">N</kbd> ADD</span>'),ys=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">ESC</kbd> CANCEL</span>'),Es=b('<div class="secrets-page svelte-k8hi4h"><div class="tab-header svelte-k8hi4h"><div class="tab-header-left svelte-k8hi4h"><span class="tab-header-title svelte-k8hi4h">SECRETS</span> <span class="tab-header-count svelte-k8hi4h"> </span></div> <button class="new-secret-btn svelte-k8hi4h"><!> <span>ADD SECRET</span></button></div> <!> <div class="secrets-content svelte-k8hi4h"><div class="panel svelte-k8hi4h"><div class="panel-header svelte-k8hi4h"><span class="panel-pip svelte-k8hi4h" style="background: var(--sig-highlight)"></span> <span class="panel-label svelte-k8hi4h">Stored Secrets</span> <span class="panel-count svelte-k8hi4h"> </span></div> <div class="panel-body svelte-k8hi4h"><!></div></div> <div class="panel svelte-k8hi4h" role="group" aria-label="1Password integration"><div class="panel-header-row svelte-k8hi4h"><button class="panel-header panel-header--toggle svelte-k8hi4h"><!> <span class="panel-label svelte-k8hi4h">1Password</span> <span class="panel-status svelte-k8hi4h"> </span></button> <button class="panel-action svelte-k8hi4h" aria-label="Refresh 1Password status"><!></button></div> <!></div></div> <div class="shortcut-bar svelte-k8hi4h"><!></div></div>');function Os(L,m){ie(m,!0);let d=h(ne([])),D=h(!1),w=h(""),N=h(""),_=h(!1),E=h(null),R=h(!1),ue=h(!1),p=h(ne({configured:!1,connected:!1,vaults:[]})),Y=h(ne([])),B=h("");const X=ne({prefix:"OP",overwrite:!1});let pe=h(!1),fe=h(!1),he=h(!1),C=h(ne([])),j=h(!1),l=h(-1),f=h("list"),o=h(-1);async function me(){s(D,!0),s(d,await qt(),!0),s(D,!1)}function nt(t){if(e(C).includes(t)){s(C,e(C).filter(a=>a!==t),!0);return}s(C,[...e(C),t],!0)}async function ke(){s(ue,!0);try{if(s(p,await Bt(),!0),e(p).connected){const a=await Xt();s(Y,a.length>0?a:e(p).vaults,!0)}else s(Y,[],!0),s(C,[],!0);const t=new Set(e(Y).map(a=>a.id));s(C,e(C).filter(a=>t.has(a)),!0)}finally{s(ue,!1)}}async function ot(){if(!e(w).trim()||!e(N).trim())return;s(_,!0),await Jt(e(w).trim(),e(N))?(S(`Secret ${e(w).trim()} added`,"success"),s(w,""),s(N,""),s(R,!1),await me()):S("Failed to add secret","error"),s(_,!1)}async function lt(t){s(E,t,!0),await Wt(t)?(S(`Secret ${t} deleted`,"success"),await me()):S("Failed to delete secret","error"),s(E,null)}async function it(){if(!e(B).trim()){S("Service account token is required","error");return}s(pe,!0);const t=await Qt(e(B).trim());if(s(pe,!1),!t.success){S(t.error??"Failed to connect 1Password","error");return}s(B,""),await ke(),S("Connected to 1Password","success")}async function ct(){s(fe,!0);const t=await Zt();if(s(fe,!1),!t.success){S(t.error??"Failed to disconnect 1Password","error");return}await ke(),S("Disconnected 1Password","success")}async function dt(){if(!e(p).connected){S("Connect 1Password first","error");return}s(he,!0);const t=await Yt({vaults:e(C).length>0?e(C):void 0,prefix:X.prefix.trim()||"OP",overwrite:X.overwrite});if(s(he,!1),!t.success){S(t.error??"Failed to import from 1Password","error");return}await me();const a=t.importedCount??0,u=t.skippedCount??0,g=t.errorCount??0;S(`Imported ${a} secrets (skipped ${u}, errors ${g})`,"success")}function vt(t){if(jt.activeTab!=="secrets"||t.defaultPrevented)return;const a=t.target,u=a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable;if(t.key==="Escape"){if(e(R)){t.preventDefault(),s(R,!1);return}if(e(f)==="1password"){t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1);return}t.preventDefault(),q();return}if(!u){if((t.key==="n"||t.key==="N")&&!e(R)){t.preventDefault(),s(R,!0);return}if(t.key==="ArrowRight"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),e(d).length>0?(s(l,0),V(0)):(s(f,"1password"),s(o,0),z(0))),t.key==="ArrowUp"&&e(f)==="list"&&e(l)>=0&&(t.preventDefault(),e(l)>0?(U(l,-1),V(e(l))):(s(l,-1),q())),t.key==="ArrowDown"&&e(f)==="list"){if(t.preventDefault(),e(l)<e(d).length-1)U(l),V(e(l));else if(e(l)===e(d).length-1){const g=document.querySelectorAll(".secret-item");g[e(l)]instanceof HTMLElement&&g[e(l)].blur(),s(f,"1password"),s(l,-1),s(o,0),z(0)}}if(t.key==="ArrowUp"&&e(f)==="1password"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"&&e(f)==="1password"){t.preventDefault();const g=_e(),y=Math.max(0,g.length-1);e(o)<y&&(U(o),z(e(o)))}t.key==="ArrowLeft"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),q())}}function V(t){const a=document.querySelectorAll(".secret-item");a[t]instanceof HTMLElement&&a[t].focus()}function _e(){const t=document.querySelector(".onepassword-panel");if(!t)return[];const a=t.querySelectorAll("[data-focus-index]");return Array.from(a).filter(u=>!u.disabled).sort((u,g)=>{const y=parseInt(u.getAttribute("data-focus-index")??"0",10),P=parseInt(g.getAttribute("data-focus-index")??"0",10);return y-P})}function z(t){const a=_e();if(a.length===0)return;const u=Math.min(t,a.length-1);a[u]?.focus()}function ut(t){if(t.key==="ArrowUp"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"){t.preventDefault();const a=_e(),u=Math.max(0,a.length-1);e(o)<u&&(U(o),z(e(o)))}if(t.key==="Escape"&&(t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1)),t.key==="Tab"){const a=_e(),u=Math.max(0,a.length-1);t.shiftKey&&e(o)>0?U(o,-1):!t.shiftKey&&e(o)<u&&U(o)}}function Z(t){s(o,t,!0),s(f,"1password")}function pt(t){s(l,t,!0),s(f,"list")}function ft(t,a){t.key==="ArrowDown"?(t.preventDefault(),t.stopPropagation(),a<e(d).length-1?(s(l,a+1),V(e(l))):(t.target.blur(),s(f,"1password"),s(l,-1),s(o,0),z(0))):t.key==="ArrowUp"?(t.preventDefault(),t.stopPropagation(),a>0?(s(l,a-1),V(e(l))):a===0&&(s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())}let ht=le(()=>e(p).connected?"CONNECTED":e(p).configured?"UNREACHABLE":"NOT CONFIGURED"),mt=le(()=>e(p).connected?"var(--sig-success)":e(p).configured?"var(--sig-warning)":"var(--sig-text-muted)");Ut(()=>{me(),ke()});var De=Es();oe("keydown",Vt,vt);var Ce=n(De),Ae=n(Ce),He=i(n(Ae),2),kt=n(He);r(He),r(Ae);var Te=i(Ae,2),_t=n(Te);es(_t,{class:"size-3"}),Fe(2),r(Te),r(Ce);var Ue=i(Ce,2);{var wt=t=>{var a=cs(),u=n(a),g=n(u);be(g,{type:"text",class:"secrets-add-input",placeholder:"SECRET_NAME",get value(){return e(w)},set value(A){s(w,A,!0)}});var y=i(g,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(A){s(N,A,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(A=>{P.disabled=A,O(x,e(_)?"ADDING...":"ADD")},[()=>e(_)||!e(w).trim()||!e(N).trim()]),M("click",P,ot),v(t,a)};$(Ue,t=>{e(R)&&t(wt)})}var Ie=i(Ue,2),Oe=n(Ie),Ne=n(Oe),Ve=i(n(Ne),4),gt=n(Ve,!0);r(Ve),r(Ne);var ze=i(Ne,2),bt=n(ze);{var yt=t=>{var a=ds();v(t,a)},Et=t=>{var a=vs();v(t,a)},Pt=t=>{var a=ce(),u=de(a);tt(u,17,()=>e(d),st,(g,y,P)=>{var x=ps();let A;var H=n(x);ns(H,{class:"secrets-secret-icon"});var J=i(H,2),ge=n(J,!0);r(J);var K=i(J,4),te=n(K);{var se=T=>{var Re=us();v(T,Re)},Le=T=>{ts(T,{class:"size-3"})};$(te,T=>{e(E)===e(y)?T(se):T(Le,-1)})}r(K),r(x),G(()=>{A=Kt(x,1,"secret-item svelte-k8hi4h",null,A,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(ge,e(y)),K.disabled=e(E)===e(y),et(K,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,T=>ft(T,P)),oe("focus",x,()=>pt(P)),M("click",K,()=>lt(e(y))),v(g,x)}),v(t,a)};$(bt,t=>{e(D)?t(yt):e(d).length===0?t(Et,1):t(Pt,-1)})}r(ze),r(Oe);var Ke=i(Oe,2),$e=n(Ke),ee=n($e),Ge=n(ee);{var xt=t=>{as(t,{class:"secrets-panel-chevron"})},St=t=>{rs(t,{class:"secrets-panel-chevron"})};$(Ge,t=>{e(j)?t(xt):t(St,-1)})}var Me=i(Ge,4),Dt=n(Me,!0);r(Me),r(ee);var we=i(ee,2),Ct=n(we);{let t=le(()=>`size-3${e(ue)?" op-spin":""}`);ss(Ct,{get class(){return e(t)}})}r(we),r($e);var At=i($e,2);{var Tt=t=>{var a=gs(),u=n(a);{var g=c=>{var k=fs(),Q=i(n(k));{var re=I=>{var F=at();G(()=>O(F,`· ${e(p).vaultCount??""} vaults`)),v(I,F)};$(Q,I=>{typeof e(p).vaultCount=="number"&&I(re)})}r(k),v(c,k)},y=c=>{var k=hs(),Q=i(n(k));{var re=I=>{var F=at();G(()=>O(F,`· ${e(p).error??""}`)),v(I,F)};$(Q,I=>{e(p).error&&I(re)})}r(k),v(c,k)},P=c=>{var k=ms();v(c,k)};$(u,c=>{e(p).connected?c(g):e(p).configured?c(y,1):c(P,-1)})}var x=i(u,2),A=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(A,{type:"password","data-focus-index":"0",class:"secrets-op-input",get placeholder(){return e(c)},onfocus:()=>Z(0),get value(){return e(B)},set value(k){s(B,k,!0)}})}var H=i(A,2),J=n(H);os(J,{class:"size-3"});var ge=i(J,2),K=n(ge,!0);r(ge),r(H),r(x);var te=i(x,2),se=n(te),Le=i(n(se),2);be(Le,{type:"text","data-focus-index":"1",class:"secrets-op-input-sm",placeholder:"OP",onfocus:()=>Z(1),get value(){return X.prefix},set value(c){X.prefix=c}}),r(se);var T=i(se,2),Re=n(T);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(T),r(te);var Be=i(te,2);{var $t=c=>{var k=_s(),Q=i(n(k),2);tt(Q,21,()=>e(Y),st,(re,I)=>{var F=ks(),Ye=n(F);{let Ht=le(()=>e(C).includes(e(I).id));rt(Ye,{get checked(){return e(Ht)},onCheckedChange:()=>nt(e(I).id),class:"secrets-op-checkbox"})}var Ze=i(Ye,2),Ft=n(Ze,!0);r(Ze),r(F),G(()=>O(Ft,e(I).name)),v(re,F)}),r(Q),r(k),v(c,k)},Mt=c=>{var k=ws();v(c,k)};$(Be,c=>{e(p).connected&&e(Y).length>0?c($t):e(p).connected&&c(Mt,1)})}var Xe=i(Be,2),W=n(Xe),je=n(W);is(je,{class:"size-3"});var Je=i(je,2),Lt=n(Je,!0);r(Je),r(W);var ae=i(W,2),We=n(ae);ls(We,{class:"size-3"});var Qe=i(We,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(K,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),W.disabled=e(he)||!e(p).connected,O(Lt,e(he)?"IMPORTING...":"IMPORT"),ae.disabled=e(fe)||!e(p).configured,O(Rt,e(fe)?"...":"DISCONNECT")},[()=>e(pe)||!e(B).trim()]),M("keydown",a,ut),M("click",H,it),oe("focus",H,()=>Z(2)),M("click",W,dt),oe("focus",W,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(At,t=>{e(j)&&t(Tt)})}r(Ke),r(Ie);var qe=i(Ie,2),It=n(qe);{var Ot=t=>{var a=bs();v(t,a)},Nt=t=>{var a=ys();v(t,a)};$(It,t=>{e(R)?t(Nt,-1):t(Ot)})}r(qe),r(De),G(()=>{O(kt,`${e(d).length??""} STORED`),O(gt,e(d).length),et(ee,"aria-expanded",e(j)),zt(Me,`color: ${e(mt)??""}`),O(Dt,e(ht)),we.disabled=e(ue)}),M("click",Te,()=>{s(R,!e(R))}),M("click",ee,()=>{s(j,!e(j)),e(j)||(s(o,-1),s(f,"list"))}),M("click",we,()=>ke()),v(L,De),ve()}Gt(["click","keydown"]);export{Os as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as Wt,y as L,e as Y,z as Gt,N as Jt,$ as Yt,j as r,A as c,k as R,i as t,l as a,v as Zt,B as b,b as _,d as Vt,u as P,H as G,F,I as Xt,J as Xe,G as u,O as Qt,D as Z,m as T,c as be,f as xe,K as _e,P as ea}from"./BJi5clDn.js";import{P as ta}from"./FAGA5WfT.js";import{h as aa,n as Qe,i as ra,j as sa,k as ia,l as na,m as oa,B as he}from"./C4aPpIV5.js";import{T as la}from"./Cr5cBjY6.js";import{C as ca}from"./BtWoeedR.js";import{C as da}from"./B9q0fAbw.js";import{R as va}from"./C2Xs4Mav.js";var ma=T('<div class="flex flex-1 items-center justify-center sig-label">Loading timeline...</div>'),pa=T('<div class="flex flex-1 items-center justify-center sig-label text-[var(--sig-text-muted)]">No timeline data yet.</div>'),ua=T('<button role="tab"> </button>'),fa=T('<p class="sig-label text-[var(--sig-text-muted)]">No type signals</p>'),ga=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ba=T('<p class="sig-label text-[var(--sig-text-muted)]">No source signals</p>'),xa=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),_a=T('<p class="sig-label text-[var(--sig-text-muted)]">No tags this era</p>'),ha=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ya=T('<p class="mt-2 sig-label text-[var(--sig-text-muted)]">No memories saved in this era yet.</p>'),Ma=T('<article class="timeline-top-card rounded-lg border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] p-2 svelte-1acbaf"><div class="timeline-top-card-head svelte-1acbaf"><div class="timeline-top-card-icon svelte-1acbaf"> </div> <div class="timeline-top-card-title-wrap svelte-1acbaf"><p class="timeline-top-card-title svelte-1acbaf"> </p> <p class="timeline-top-card-subtitle svelte-1acbaf"> </p></div></div> <p class="timeline-top-card-content mt-1 text-[11px] leading-relaxed text-[var(--sig-text)] line-clamp-4 svelte-1acbaf"> </p> <div class="timeline-top-card-meta mt-auto flex items-center justify-between gap-2 pt-2 text-[11px] text-[var(--sig-text-muted)] svelte-1acbaf"><p class="timeline-top-card-badge svelte-1acbaf"> </p> <p> </p></div></article>'),ka=T('<div class="timeline-top-card-grid mt-2 svelte-1acbaf"></div>'),wa=T('<div class="timeline-stack flex flex-1 min-h-0 flex-col gap-3 svelte-1acbaf"><section class="timeline-hero rounded-xl border border-[var(--sig-border)] p-3 overflow-hidden svelte-1acbaf"><div class="timeline-hero-grid svelte-1acbaf"><div class="min-w-0"><h2 class="timeline-hero-title svelte-1acbaf">Signet Evolution Timeline</h2> <p class="timeline-hero-subtitle svelte-1acbaf">Track added, evolved, and pinned memories across recap eras.</p></div> <div class="timeline-hero-metrics svelte-1acbaf"><div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Agent skills used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">MCP servers used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Average importance</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Pinned</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div></div></div></section> <div class="timeline-content-split flex-1 min-h-0 gap-3 svelte-1acbaf"><section class="timeline-detail-panel flex min-h-0 flex-col gap-3 overflow-x-hidden overflow-y-auto rounded-[10.5px] border-2 border-[var(--sig-border-strong)] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="--panel-pad: 0.75rem;"><div class="timeline-era-head svelte-1acbaf"><div class="timeline-era-title-row svelte-1acbaf"><p class="sig-heading timeline-era-title svelte-1acbaf"> <span class="timeline-era-title-range svelte-1acbaf"> </span></p> <div class="timeline-era-controls flex items-center gap-1 svelte-1acbaf"><!> <div role="tablist" aria-orientation="horizontal" class="flex items-center gap-1"></div> <!> <!></div></div></div> <div class="timeline-summary-grid svelte-1acbaf"><div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Added</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Tracked events captured</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Evolved</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Strengthened</span></p></div></div> <div class="timeline-mix-grid svelte-1acbaf"><div class="timeline-mix-card timeline-mix-card--type p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Type mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--source p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Source mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--tags p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Top tags</p> <!></div></div></section> <section class="timeline-top-panel rounded-[10.5px] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="border: 0.87px solid var(--sig-border);"><div class="flex items-center justify-between gap-2"><p class="sig-label text-[var(--sig-text-bright)]">Top Four Memories</p> <p class="text-[11px] text-[var(--sig-text-bright)]"> </p></div> <!></section></div></div>'),Ta=T('<p class="sig-label text-[var(--sig-danger)]"> </p>'),Sa=T('<div class="timeline-shell flex flex-col flex-1 min-h-0 overflow-hidden bg-[var(--sig-bg)] svelte-1acbaf" role="region" aria-label="Memory timeline. Use left and right arrows to move through eras."><!> <div class="flex flex-1 min-h-0 flex-col gap-3 p-3 bg-[var(--sig-bg)]"><!> <!></div></div>');function La(et,V){Wt(V,!0);const tt="h-8 px-3 rounded-lg border text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] transition-colors";let X=L(!1),z=L(null),N=L(Y([])),S=L(0),Q=L(Y({})),ee=L(Y({})),te=L(Y({})),$=L(null);const p=P(()=>t(N)[t(S)]??null),ye=P(()=>t(p)?t(Q)[t(p).rangeKey]??0:0);function at(e){return e.sourceBreakdown.filter(l=>Me(l.key)).length}function Me(e){const s=e.trim().toLowerCase();return s?!!(/\bmcp\b/.test(s)||/\btool[-\s]?servers?\b/.test(s)||s.includes("model context protocol")||s.includes("model-context-protocol")||s.includes("modelcontextprotocol")):!1}const ke=P(()=>t(p)?Math.max(t(ee)[t(p).rangeKey]??0,at(t(p))):0),we=P(()=>t(p)?t(te)[t(p).rangeKey]??[]:[]);function Te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(e){if(Array.isArray(e))return e.filter(s=>typeof s=="string").map(s=>s.trim()).filter(s=>s.length>0);if(typeof e=="string"){const s=e.trim();if(!s)return[];if(s.startsWith("[")&&s.endsWith("]"))try{const l=JSON.parse(s);if(Array.isArray(l))return l.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0)}catch{}return s.split(",").map(l=>l.trim()).filter(l=>l.length>0)}return[]}function st(e,s,l,n){const A=l.map(i=>i.name.trim().toLowerCase()).filter(i=>i.length>0).map(i=>({name:i,pattern:new RegExp(`\\b${Te(i)}\\b`,"i")})),D=n.flatMap(i=>{const m=[];for(const y of[i.name,i.id]){const M=y.trim().toLowerCase();M.length>0&&m.push({serverId:i.id,pattern:new RegExp(`\\b${Te(M)}\\b`,"i")})}return m}),U=e.map(i=>({bucket:i,skillSet:new Set,mcpSet:new Set,hasMcpSignal:!1,startMs:Date.parse(i.start),endMs:Date.parse(i.end)}));for(const i of s){const m=Date.parse(i.created_at);if(!Number.isFinite(m))continue;const y=rt(i.tags).join(" "),M=[i.content,i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase(),I=[i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase();for(const g of U){if(m<g.startMs||m>g.endMs)continue;for(const C of A)C.pattern.test(M)&&g.skillSet.add(C.name);let W=!1;for(const C of D)C.pattern.test(M)&&(g.mcpSet.add(C.serverId),W=!0);!W&&Me(I)&&(g.hasMcpSignal=!0)}}const K={},v={};for(const i of U)K[i.bucket.rangeKey]=i.skillSet.size,v[i.bucket.rangeKey]=i.mcpSet.size>0?i.mcpSet.size:i.hasMcpSignal?1:0;return{skillUsage:K,mcpUsage:v}}function H(e){return typeof e!="number"||!Number.isFinite(e)||e<=0?0:e>=1?1:e}function it(e,s){const l=new Map;for(const v of e){const i=Date.parse(v.start),m=Date.parse(v.end);!Number.isFinite(i)||!Number.isFinite(m)||l.set(v.rangeKey,{startMs:i,endMs:m})}const n=l.get("today")??null,A=l.get("last_week")??null;function D(v){const i=l.get(v.rangeKey),m=Date.parse(v.start),y=Date.parse(v.end),M={startMs:Number.isFinite(m)?m:Number.NEGATIVE_INFINITY,endMs:Number.isFinite(y)?y:Number.POSITIVE_INFINITY};if(!i)return M;let I=i.startMs,g=i.endMs;return v.rangeKey==="last_week"&&n?g=Math.min(g,n.startMs-1):v.rangeKey==="one_month"&&(A?g=Math.min(g,A.startMs-1):n&&(g=Math.min(g,n.startMs-1))),g<I?M:{startMs:I,endMs:g}}const U=e.map(v=>{const i=D(v);return{bucket:v,startMs:i.startMs,endMs:i.endMs,candidates:[]}});for(const v of s){const i=Date.parse(v.created_at);if(Number.isFinite(i))for(const m of U){if(i<m.startMs||i>m.endMs)continue;const y=Math.max(1,m.endMs-m.startMs),M=Math.max(0,Math.min(1,(i-m.startMs)/y)),I=H(v.importance)*100+(v.pinned?24:0)+M*8;m.candidates.push({memory:v,score:I,createdAt:i})}}const K={};for(const v of U)v.candidates.sort((i,m)=>{if(m.score!==i.score)return m.score-i.score;const y=H(i.memory.importance),M=H(m.memory.importance);return M!==y?M-y:m.createdAt!==i.createdAt?m.createdAt-i.createdAt:i.memory.id.localeCompare(m.memory.id)}),K[v.bucket.rangeKey]=v.candidates.slice(0,4).map(i=>i.memory);return K}function q(e=1){t(N).length!==0&&b(S,Math.min(t(N).length-1,t(S)+e),!0)}function O(e=1){t(N).length!==0&&b(S,Math.max(0,t(S)-e),!0)}function ae(e){V.ontimelinegeneratedforchange&&V.ontimelinegeneratedforchange(e)}async function nt(){b(X,!0),b(z,null);try{const e=sa(5e3,0),[s,l,n,A]=await Promise.all([ia({fallbackMemories:e.then(U=>U.memories)}),na(),oa(),e]);b(N,s.buckets,!0),ae(s.generatedFor);const D=st(s.buckets,A.memories,l,n.servers);b(Q,D.skillUsage,!0),b(ee,D.mcpUsage,!0),b(te,it(s.buckets,A.memories),!0),b(S,0),s.error&&b(z,s.error,!0)}catch{b(z,"Failed to load timeline."),b(N,[],!0),ae(""),b(Q,{},!0),b(ee,{},!0),b(te,{},!0)}finally{b(X,!1)}}function ot(e,s){const l={month:"short",day:"numeric",timeZone:"UTC"},n=new Date(e).toLocaleDateString("en-US",l),A=new Date(s).toLocaleDateString("en-US",{...l,year:"numeric"});return`${n} - ${A}`}function lt(e,s){const l=Date.parse(e);if(!Number.isFinite(l))return"Unknown";const n=new Date(l);return s==="today"?n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",timeZone:"UTC"}):n.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",timeZone:"UTC"})}function ct(e){return`${Math.round(H(e)*100)}%`}function re(e,s,l){return e===1?s:l}function dt(e){const s=e.split(/[-_.\s]+/).map(l=>l.trim()).filter(l=>l.length>0);return s.length>=2?`${s[0]?.[0]??""}${s[1]?.[0]??""}`.toUpperCase():e.slice(0,2).toUpperCase()||"M"}function vt(e){return e.rangeKey==="last_week"?"Week":e.rangeKey==="one_month"?"Month":"Today"}function mt(e){if(Qe.activeTab!=="timeline")return;const s=e.target;if(s instanceof HTMLElement){const n=s.tagName;if(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||s.isContentEditable)return}if(s instanceof HTMLElement&&s.hasAttribute("data-memory-tab")){if(e.key==="ArrowDown"){e.preventDefault();const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus()}return}if(s instanceof HTMLElement&&s.closest('.timeline-era-controls [role="tablist"]')){if(e.key==="ArrowUp"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowDown"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);return}if(e.key==="PageDown"){e.preventDefault(),q(3);return}if(e.key==="PageUp"){e.preventDefault(),O(3);return}}Gt(()=>(nt(),()=>{ae("")}));var J=Sa();Jt("keydown",Yt,mt);var Se=r(J);ta(Se,{title:"Timeline",children:(e,s)=>{la(e,{group:"memory",get tabs(){return ra},get activeTab(){return Qe.activeTab},onselect:(l,n)=>aa(n)})}});var Ae=c(Se,2),Ee=r(Ae);{var pt=e=>{var s=ma();_(e,s)},ut=e=>{var s=pa();_(e,s)},ft=e=>{var s=wa(),l=r(s),n=r(l),A=c(r(n),2),D=r(A),U=c(r(D),2),K=r(U);a(U),a(D);var v=c(D,2),i=c(r(v),2),m=r(i);a(i),a(v);var y=c(v,2),M=c(r(y),2),I=r(M);a(M),a(y);var g=c(y,2),W=c(r(g),2),C=r(W);a(W),a(g),a(A),a(n),a(l);var De=c(l,2),se=r(De),ie=r(se),Ue=r(ie),ne=r(Ue),Ne=r(ne),Be=c(Ne),xt=r(Be,!0);a(Be),a(ne);var Ie=c(ne,2),Le=r(Ie);{let o=P(()=>t(S)<=0);he(Le,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>O(),get disabled(){return t(o)},title:"Move to newer era",children:(d,x)=>{ca(d,{class:"size-3.5"})},$$slots:{default:!0}})}var oe=c(Le,2);G(oe,23,()=>t(N),o=>o.eraIndex,(o,d,x)=>{var f=ua(),k=r(f,!0);a(f),F(h=>{Xt(f,1,`${tt} ${t(x)===t(S)?"border-[var(--sig-accent)] bg-[color-mix(in_srgb,var(--sig-surface-raised)_76%,transparent)] text-[var(--sig-text-bright)]":"border-[var(--sig-border-strong)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text-bright)]"}`,"svelte-1acbaf"),Xe(f,"aria-selected",t(x)===t(S)),Xe(f,"tabindex",t(x)===t(S)?0:-1),u(k,h)},[()=>vt(t(d))]),Qt("click",f,()=>{b(S,t(x),!0)}),_(o,f)}),a(oe);var $e=c(oe,2);{let o=P(()=>t(S)>=t(N).length-1);he($e,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>q(),get disabled(){return t(o)},title:"Move to older era",children:(d,x)=>{da(d,{class:"size-3.5"})},$$slots:{default:!0}})}var _t=c($e,2);he(_t,{variant:"ghost",size:"sm",class:"h-8 px-2 sig-label",onclick:()=>{b(S,0)},title:"Jump to today",children:(o,d)=>{va(o,{class:"size-3.5"})},$$slots:{default:!0}}),a(Ie),a(Ue),a(ie);var le=c(ie,2),ce=r(le),Ke=r(ce),Ce=r(Ke),ht=r(Ce,!0);a(Ce),Z(2),a(Ke),a(ce);var de=c(ce,2),je=r(de),Fe=r(je),yt=r(Fe,!0);a(Fe),Z(2),a(je),a(de);var ve=c(de,2),Re=r(ve),Pe=r(Re),Mt=r(Pe,!0);a(Pe),Z(2),a(Re),a(ve);var ze=c(ve,2),He=r(ze),qe=r(He),kt=r(qe,!0);a(qe),Z(2),a(He),a(ze),a(le);var Oe=c(le,2),me=r(Oe),wt=c(r(me),2);{var Tt=o=>{var d=fa();_(o,d)},St=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).typeBreakdown,_e,(f,k)=>{var h=ga(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(wt,o=>{t(p).typeBreakdown.length===0?o(Tt):o(St,-1)})}a(me);var pe=c(me,2),At=c(r(pe),2);{var Et=o=>{var d=ba();_(o,d)},Dt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).sourceBreakdown,_e,(f,k)=>{var h=xa(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(At,o=>{t(p).sourceBreakdown.length===0?o(Et):o(Dt,-1)})}a(pe);var We=c(pe,2),Ut=c(r(We),2);{var Nt=o=>{var d=_a();_(o,d)},Bt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).topTags,_e,(f,k)=>{var h=ha(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(Ut,o=>{t(p).topTags.length===0?o(Nt):o(Bt,-1)})}a(We),a(Oe),a(se);var Ge=c(se,2),ue=r(Ge),Je=c(r(ue),2),It=r(Je,!0);a(Je),a(ue);var Lt=c(ue,2);{var $t=o=>{var d=ya();_(o,d)},Kt=o=>{var d=ka();G(d,21,()=>t(we),x=>x.id,(x,f)=>{var k=Ma(),h=r(k),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E),Ct=r(B,!0);a(B);var Ye=c(B,2),jt=r(Ye,!0);a(Ye),a(E),a(h);var fe=c(h,2),Ft=r(fe,!0);a(fe);var Ze=c(fe,2),ge=r(Ze),Rt=r(ge);a(ge);var Ve=c(ge,2),Pt=r(Ve,!0);a(Ve),a(Ze),a(k),F((zt,Ht,qt,Ot)=>{u(j,zt),u(Ct,t(f).who||"Unknown source"),u(jt,Ht),u(Ft,t(f).content),u(Rt,`imp ${qt??""}`),u(Pt,Ot)},[()=>dt(t(f).who||t(f).type||"memory"),()=>t(f).type?.trim()||"memory",()=>ct(t(f).importance),()=>lt(t(f).created_at,t(p).rangeKey)]),_(x,k)}),a(d),_(o,d)};R(Lt,o=>{t(we).length===0?o($t):o(Kt,-1)})}a(Ge),a(De),a(s),F((o,d,x,f,k)=>{u(K,`${t(ye)??""} ${o??""}`),u(m,`${t(ke)??""} ${d??""}`),u(I,`${x??""}% avg`),u(C,`${t(p).pinned??""} ${f??""}`),u(Ne,`${t(p).label??""}: `),u(xt,k),u(ht,t(p).memoriesAdded),u(yt,t(p).trackedEvents),u(Mt,t(p).evolved),u(kt,t(p).strengthened),u(It,t(p).label)},[()=>re(t(ye),"skill","skills"),()=>re(t(ke),"server","servers"),()=>Math.round(H(t(p).avgImportance)*100),()=>re(t(p).pinned,"card","cards"),()=>ot(t(p).start,t(p).end)]),_(e,s)};R(Ee,e=>{t(X)?e(pt):t(N).length===0?e(ut,1):t(p)&&e(ft,2)})}var gt=c(Ee,2);{var bt=e=>{var s=Ta(),l=r(s,!0);a(s),F(()=>u(l,t(z))),_(e,s)};R(gt,e=>{t(z)&&e(bt)})}a(Ae),a(J),Zt(J,e=>b($,e),()=>t($)),_(et,J),Vt()}ea(["click"]);export{La as default};
|
|
1
|
+
import{p as Wt,y as L,e as Y,z as Gt,N as Jt,$ as Yt,j as r,A as c,k as R,i as t,l as a,v as Zt,B as b,b as _,d as Vt,u as P,H as G,F,I as Xt,J as Xe,G as u,O as Qt,D as Z,m as T,c as be,f as xe,K as _e,P as ea}from"./BJi5clDn.js";import{P as ta}from"./FAGA5WfT.js";import{h as aa,n as Qe,i as ra,j as sa,k as ia,l as na,m as oa,B as he}from"./CiyQaJH4.js";import{T as la}from"./Cr5cBjY6.js";import{C as ca}from"./12DNZSBI.js";import{C as da}from"./q-nV9VJE.js";import{R as va}from"./On02AcL7.js";var ma=T('<div class="flex flex-1 items-center justify-center sig-label">Loading timeline...</div>'),pa=T('<div class="flex flex-1 items-center justify-center sig-label text-[var(--sig-text-muted)]">No timeline data yet.</div>'),ua=T('<button role="tab"> </button>'),fa=T('<p class="sig-label text-[var(--sig-text-muted)]">No type signals</p>'),ga=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ba=T('<p class="sig-label text-[var(--sig-text-muted)]">No source signals</p>'),xa=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),_a=T('<p class="sig-label text-[var(--sig-text-muted)]">No tags this era</p>'),ha=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ya=T('<p class="mt-2 sig-label text-[var(--sig-text-muted)]">No memories saved in this era yet.</p>'),Ma=T('<article class="timeline-top-card rounded-lg border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] p-2 svelte-1acbaf"><div class="timeline-top-card-head svelte-1acbaf"><div class="timeline-top-card-icon svelte-1acbaf"> </div> <div class="timeline-top-card-title-wrap svelte-1acbaf"><p class="timeline-top-card-title svelte-1acbaf"> </p> <p class="timeline-top-card-subtitle svelte-1acbaf"> </p></div></div> <p class="timeline-top-card-content mt-1 text-[11px] leading-relaxed text-[var(--sig-text)] line-clamp-4 svelte-1acbaf"> </p> <div class="timeline-top-card-meta mt-auto flex items-center justify-between gap-2 pt-2 text-[11px] text-[var(--sig-text-muted)] svelte-1acbaf"><p class="timeline-top-card-badge svelte-1acbaf"> </p> <p> </p></div></article>'),ka=T('<div class="timeline-top-card-grid mt-2 svelte-1acbaf"></div>'),wa=T('<div class="timeline-stack flex flex-1 min-h-0 flex-col gap-3 svelte-1acbaf"><section class="timeline-hero rounded-xl border border-[var(--sig-border)] p-3 overflow-hidden svelte-1acbaf"><div class="timeline-hero-grid svelte-1acbaf"><div class="min-w-0"><h2 class="timeline-hero-title svelte-1acbaf">Signet Evolution Timeline</h2> <p class="timeline-hero-subtitle svelte-1acbaf">Track added, evolved, and pinned memories across recap eras.</p></div> <div class="timeline-hero-metrics svelte-1acbaf"><div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Agent skills used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">MCP servers used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Average importance</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Pinned</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div></div></div></section> <div class="timeline-content-split flex-1 min-h-0 gap-3 svelte-1acbaf"><section class="timeline-detail-panel flex min-h-0 flex-col gap-3 overflow-x-hidden overflow-y-auto rounded-[10.5px] border-2 border-[var(--sig-border-strong)] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="--panel-pad: 0.75rem;"><div class="timeline-era-head svelte-1acbaf"><div class="timeline-era-title-row svelte-1acbaf"><p class="sig-heading timeline-era-title svelte-1acbaf"> <span class="timeline-era-title-range svelte-1acbaf"> </span></p> <div class="timeline-era-controls flex items-center gap-1 svelte-1acbaf"><!> <div role="tablist" aria-orientation="horizontal" class="flex items-center gap-1"></div> <!> <!></div></div></div> <div class="timeline-summary-grid svelte-1acbaf"><div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Added</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Tracked events captured</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Evolved</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Strengthened</span></p></div></div> <div class="timeline-mix-grid svelte-1acbaf"><div class="timeline-mix-card timeline-mix-card--type p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Type mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--source p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Source mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--tags p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Top tags</p> <!></div></div></section> <section class="timeline-top-panel rounded-[10.5px] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="border: 0.87px solid var(--sig-border);"><div class="flex items-center justify-between gap-2"><p class="sig-label text-[var(--sig-text-bright)]">Top Four Memories</p> <p class="text-[11px] text-[var(--sig-text-bright)]"> </p></div> <!></section></div></div>'),Ta=T('<p class="sig-label text-[var(--sig-danger)]"> </p>'),Sa=T('<div class="timeline-shell flex flex-col flex-1 min-h-0 overflow-hidden bg-[var(--sig-bg)] svelte-1acbaf" role="region" aria-label="Memory timeline. Use left and right arrows to move through eras."><!> <div class="flex flex-1 min-h-0 flex-col gap-3 p-3 bg-[var(--sig-bg)]"><!> <!></div></div>');function La(et,V){Wt(V,!0);const tt="h-8 px-3 rounded-lg border text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] transition-colors";let X=L(!1),z=L(null),N=L(Y([])),S=L(0),Q=L(Y({})),ee=L(Y({})),te=L(Y({})),$=L(null);const p=P(()=>t(N)[t(S)]??null),ye=P(()=>t(p)?t(Q)[t(p).rangeKey]??0:0);function at(e){return e.sourceBreakdown.filter(l=>Me(l.key)).length}function Me(e){const s=e.trim().toLowerCase();return s?!!(/\bmcp\b/.test(s)||/\btool[-\s]?servers?\b/.test(s)||s.includes("model context protocol")||s.includes("model-context-protocol")||s.includes("modelcontextprotocol")):!1}const ke=P(()=>t(p)?Math.max(t(ee)[t(p).rangeKey]??0,at(t(p))):0),we=P(()=>t(p)?t(te)[t(p).rangeKey]??[]:[]);function Te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(e){if(Array.isArray(e))return e.filter(s=>typeof s=="string").map(s=>s.trim()).filter(s=>s.length>0);if(typeof e=="string"){const s=e.trim();if(!s)return[];if(s.startsWith("[")&&s.endsWith("]"))try{const l=JSON.parse(s);if(Array.isArray(l))return l.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0)}catch{}return s.split(",").map(l=>l.trim()).filter(l=>l.length>0)}return[]}function st(e,s,l,n){const A=l.map(i=>i.name.trim().toLowerCase()).filter(i=>i.length>0).map(i=>({name:i,pattern:new RegExp(`\\b${Te(i)}\\b`,"i")})),D=n.flatMap(i=>{const m=[];for(const y of[i.name,i.id]){const M=y.trim().toLowerCase();M.length>0&&m.push({serverId:i.id,pattern:new RegExp(`\\b${Te(M)}\\b`,"i")})}return m}),U=e.map(i=>({bucket:i,skillSet:new Set,mcpSet:new Set,hasMcpSignal:!1,startMs:Date.parse(i.start),endMs:Date.parse(i.end)}));for(const i of s){const m=Date.parse(i.created_at);if(!Number.isFinite(m))continue;const y=rt(i.tags).join(" "),M=[i.content,i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase(),I=[i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase();for(const g of U){if(m<g.startMs||m>g.endMs)continue;for(const C of A)C.pattern.test(M)&&g.skillSet.add(C.name);let W=!1;for(const C of D)C.pattern.test(M)&&(g.mcpSet.add(C.serverId),W=!0);!W&&Me(I)&&(g.hasMcpSignal=!0)}}const K={},v={};for(const i of U)K[i.bucket.rangeKey]=i.skillSet.size,v[i.bucket.rangeKey]=i.mcpSet.size>0?i.mcpSet.size:i.hasMcpSignal?1:0;return{skillUsage:K,mcpUsage:v}}function H(e){return typeof e!="number"||!Number.isFinite(e)||e<=0?0:e>=1?1:e}function it(e,s){const l=new Map;for(const v of e){const i=Date.parse(v.start),m=Date.parse(v.end);!Number.isFinite(i)||!Number.isFinite(m)||l.set(v.rangeKey,{startMs:i,endMs:m})}const n=l.get("today")??null,A=l.get("last_week")??null;function D(v){const i=l.get(v.rangeKey),m=Date.parse(v.start),y=Date.parse(v.end),M={startMs:Number.isFinite(m)?m:Number.NEGATIVE_INFINITY,endMs:Number.isFinite(y)?y:Number.POSITIVE_INFINITY};if(!i)return M;let I=i.startMs,g=i.endMs;return v.rangeKey==="last_week"&&n?g=Math.min(g,n.startMs-1):v.rangeKey==="one_month"&&(A?g=Math.min(g,A.startMs-1):n&&(g=Math.min(g,n.startMs-1))),g<I?M:{startMs:I,endMs:g}}const U=e.map(v=>{const i=D(v);return{bucket:v,startMs:i.startMs,endMs:i.endMs,candidates:[]}});for(const v of s){const i=Date.parse(v.created_at);if(Number.isFinite(i))for(const m of U){if(i<m.startMs||i>m.endMs)continue;const y=Math.max(1,m.endMs-m.startMs),M=Math.max(0,Math.min(1,(i-m.startMs)/y)),I=H(v.importance)*100+(v.pinned?24:0)+M*8;m.candidates.push({memory:v,score:I,createdAt:i})}}const K={};for(const v of U)v.candidates.sort((i,m)=>{if(m.score!==i.score)return m.score-i.score;const y=H(i.memory.importance),M=H(m.memory.importance);return M!==y?M-y:m.createdAt!==i.createdAt?m.createdAt-i.createdAt:i.memory.id.localeCompare(m.memory.id)}),K[v.bucket.rangeKey]=v.candidates.slice(0,4).map(i=>i.memory);return K}function q(e=1){t(N).length!==0&&b(S,Math.min(t(N).length-1,t(S)+e),!0)}function O(e=1){t(N).length!==0&&b(S,Math.max(0,t(S)-e),!0)}function ae(e){V.ontimelinegeneratedforchange&&V.ontimelinegeneratedforchange(e)}async function nt(){b(X,!0),b(z,null);try{const e=sa(5e3,0),[s,l,n,A]=await Promise.all([ia({fallbackMemories:e.then(U=>U.memories)}),na(),oa(),e]);b(N,s.buckets,!0),ae(s.generatedFor);const D=st(s.buckets,A.memories,l,n.servers);b(Q,D.skillUsage,!0),b(ee,D.mcpUsage,!0),b(te,it(s.buckets,A.memories),!0),b(S,0),s.error&&b(z,s.error,!0)}catch{b(z,"Failed to load timeline."),b(N,[],!0),ae(""),b(Q,{},!0),b(ee,{},!0),b(te,{},!0)}finally{b(X,!1)}}function ot(e,s){const l={month:"short",day:"numeric",timeZone:"UTC"},n=new Date(e).toLocaleDateString("en-US",l),A=new Date(s).toLocaleDateString("en-US",{...l,year:"numeric"});return`${n} - ${A}`}function lt(e,s){const l=Date.parse(e);if(!Number.isFinite(l))return"Unknown";const n=new Date(l);return s==="today"?n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",timeZone:"UTC"}):n.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",timeZone:"UTC"})}function ct(e){return`${Math.round(H(e)*100)}%`}function re(e,s,l){return e===1?s:l}function dt(e){const s=e.split(/[-_.\s]+/).map(l=>l.trim()).filter(l=>l.length>0);return s.length>=2?`${s[0]?.[0]??""}${s[1]?.[0]??""}`.toUpperCase():e.slice(0,2).toUpperCase()||"M"}function vt(e){return e.rangeKey==="last_week"?"Week":e.rangeKey==="one_month"?"Month":"Today"}function mt(e){if(Qe.activeTab!=="timeline")return;const s=e.target;if(s instanceof HTMLElement){const n=s.tagName;if(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||s.isContentEditable)return}if(s instanceof HTMLElement&&s.hasAttribute("data-memory-tab")){if(e.key==="ArrowDown"){e.preventDefault();const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus()}return}if(s instanceof HTMLElement&&s.closest('.timeline-era-controls [role="tablist"]')){if(e.key==="ArrowUp"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowDown"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);return}if(e.key==="PageDown"){e.preventDefault(),q(3);return}if(e.key==="PageUp"){e.preventDefault(),O(3);return}}Gt(()=>(nt(),()=>{ae("")}));var J=Sa();Jt("keydown",Yt,mt);var Se=r(J);ta(Se,{title:"Timeline",children:(e,s)=>{la(e,{group:"memory",get tabs(){return ra},get activeTab(){return Qe.activeTab},onselect:(l,n)=>aa(n)})}});var Ae=c(Se,2),Ee=r(Ae);{var pt=e=>{var s=ma();_(e,s)},ut=e=>{var s=pa();_(e,s)},ft=e=>{var s=wa(),l=r(s),n=r(l),A=c(r(n),2),D=r(A),U=c(r(D),2),K=r(U);a(U),a(D);var v=c(D,2),i=c(r(v),2),m=r(i);a(i),a(v);var y=c(v,2),M=c(r(y),2),I=r(M);a(M),a(y);var g=c(y,2),W=c(r(g),2),C=r(W);a(W),a(g),a(A),a(n),a(l);var De=c(l,2),se=r(De),ie=r(se),Ue=r(ie),ne=r(Ue),Ne=r(ne),Be=c(Ne),xt=r(Be,!0);a(Be),a(ne);var Ie=c(ne,2),Le=r(Ie);{let o=P(()=>t(S)<=0);he(Le,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>O(),get disabled(){return t(o)},title:"Move to newer era",children:(d,x)=>{ca(d,{class:"size-3.5"})},$$slots:{default:!0}})}var oe=c(Le,2);G(oe,23,()=>t(N),o=>o.eraIndex,(o,d,x)=>{var f=ua(),k=r(f,!0);a(f),F(h=>{Xt(f,1,`${tt} ${t(x)===t(S)?"border-[var(--sig-accent)] bg-[color-mix(in_srgb,var(--sig-surface-raised)_76%,transparent)] text-[var(--sig-text-bright)]":"border-[var(--sig-border-strong)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text-bright)]"}`,"svelte-1acbaf"),Xe(f,"aria-selected",t(x)===t(S)),Xe(f,"tabindex",t(x)===t(S)?0:-1),u(k,h)},[()=>vt(t(d))]),Qt("click",f,()=>{b(S,t(x),!0)}),_(o,f)}),a(oe);var $e=c(oe,2);{let o=P(()=>t(S)>=t(N).length-1);he($e,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>q(),get disabled(){return t(o)},title:"Move to older era",children:(d,x)=>{da(d,{class:"size-3.5"})},$$slots:{default:!0}})}var _t=c($e,2);he(_t,{variant:"ghost",size:"sm",class:"h-8 px-2 sig-label",onclick:()=>{b(S,0)},title:"Jump to today",children:(o,d)=>{va(o,{class:"size-3.5"})},$$slots:{default:!0}}),a(Ie),a(Ue),a(ie);var le=c(ie,2),ce=r(le),Ke=r(ce),Ce=r(Ke),ht=r(Ce,!0);a(Ce),Z(2),a(Ke),a(ce);var de=c(ce,2),je=r(de),Fe=r(je),yt=r(Fe,!0);a(Fe),Z(2),a(je),a(de);var ve=c(de,2),Re=r(ve),Pe=r(Re),Mt=r(Pe,!0);a(Pe),Z(2),a(Re),a(ve);var ze=c(ve,2),He=r(ze),qe=r(He),kt=r(qe,!0);a(qe),Z(2),a(He),a(ze),a(le);var Oe=c(le,2),me=r(Oe),wt=c(r(me),2);{var Tt=o=>{var d=fa();_(o,d)},St=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).typeBreakdown,_e,(f,k)=>{var h=ga(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(wt,o=>{t(p).typeBreakdown.length===0?o(Tt):o(St,-1)})}a(me);var pe=c(me,2),At=c(r(pe),2);{var Et=o=>{var d=ba();_(o,d)},Dt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).sourceBreakdown,_e,(f,k)=>{var h=xa(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(At,o=>{t(p).sourceBreakdown.length===0?o(Et):o(Dt,-1)})}a(pe);var We=c(pe,2),Ut=c(r(We),2);{var Nt=o=>{var d=_a();_(o,d)},Bt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).topTags,_e,(f,k)=>{var h=ha(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(Ut,o=>{t(p).topTags.length===0?o(Nt):o(Bt,-1)})}a(We),a(Oe),a(se);var Ge=c(se,2),ue=r(Ge),Je=c(r(ue),2),It=r(Je,!0);a(Je),a(ue);var Lt=c(ue,2);{var $t=o=>{var d=ya();_(o,d)},Kt=o=>{var d=ka();G(d,21,()=>t(we),x=>x.id,(x,f)=>{var k=Ma(),h=r(k),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E),Ct=r(B,!0);a(B);var Ye=c(B,2),jt=r(Ye,!0);a(Ye),a(E),a(h);var fe=c(h,2),Ft=r(fe,!0);a(fe);var Ze=c(fe,2),ge=r(Ze),Rt=r(ge);a(ge);var Ve=c(ge,2),Pt=r(Ve,!0);a(Ve),a(Ze),a(k),F((zt,Ht,qt,Ot)=>{u(j,zt),u(Ct,t(f).who||"Unknown source"),u(jt,Ht),u(Ft,t(f).content),u(Rt,`imp ${qt??""}`),u(Pt,Ot)},[()=>dt(t(f).who||t(f).type||"memory"),()=>t(f).type?.trim()||"memory",()=>ct(t(f).importance),()=>lt(t(f).created_at,t(p).rangeKey)]),_(x,k)}),a(d),_(o,d)};R(Lt,o=>{t(we).length===0?o($t):o(Kt,-1)})}a(Ge),a(De),a(s),F((o,d,x,f,k)=>{u(K,`${t(ye)??""} ${o??""}`),u(m,`${t(ke)??""} ${d??""}`),u(I,`${x??""}% avg`),u(C,`${t(p).pinned??""} ${f??""}`),u(Ne,`${t(p).label??""}: `),u(xt,k),u(ht,t(p).memoriesAdded),u(yt,t(p).trackedEvents),u(Mt,t(p).evolved),u(kt,t(p).strengthened),u(It,t(p).label)},[()=>re(t(ye),"skill","skills"),()=>re(t(ke),"server","servers"),()=>Math.round(H(t(p).avgImportance)*100),()=>re(t(p).pinned,"card","cards"),()=>ot(t(p).start,t(p).end)]),_(e,s)};R(Ee,e=>{t(X)?e(pt):t(N).length===0?e(ut,1):t(p)&&e(ft,2)})}var gt=c(Ee,2);{var bt=e=>{var s=Ta(),l=r(s,!0);a(s),F(()=>u(l,t(z))),_(e,s)};R(gt,e=>{t(z)&&e(bt)})}a(Ae),a(J),Zt(J,e=>b($,e),()=>t($)),_(et,J),Vt()}ea(["click"]);export{La as default};
|