signetai 0.77.3 → 0.77.5

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.
Files changed (60) hide show
  1. package/dashboard/_app/immutable/chunks/{4xCZQ0Ho.js → B8zsoDsn.js} +1 -1
  2. package/dashboard/_app/immutable/chunks/{B963Zl-6.js → BHxXU2Pk.js} +1 -1
  3. package/dashboard/_app/immutable/chunks/{BPKx0had.js → BJ-xjzWb.js} +1 -1
  4. package/dashboard/_app/immutable/chunks/{C7-k6GBj.js → BJ2C-2LJ.js} +1 -1
  5. package/dashboard/_app/immutable/chunks/{BTYm1HNK.js → BN-e6OBa.js} +1 -1
  6. package/dashboard/_app/immutable/chunks/{Dmag8SG1.js → BPiY--TW.js} +1 -1
  7. package/dashboard/_app/immutable/chunks/{BqwVlLRP.js → BQrOzRMh.js} +1 -1
  8. package/dashboard/_app/immutable/chunks/{BPT5LnSs.js → BWE3I5du.js} +1 -1
  9. package/dashboard/_app/immutable/chunks/{C2fWszyC.js → BYl8wdzd.js} +1 -1
  10. package/dashboard/_app/immutable/chunks/{CeM7hYTP.js → BmOLB71K.js} +1 -1
  11. package/dashboard/_app/immutable/chunks/{C814GmN2.js → Bro-MZqB.js} +1 -1
  12. package/dashboard/_app/immutable/chunks/{C9q1hhBJ.js → BxW-WVTu.js} +1 -1
  13. package/dashboard/_app/immutable/chunks/{sKAzTa2E.js → C-rUb_jN.js} +1 -1
  14. package/dashboard/_app/immutable/chunks/{CirXm0Wp.js → C0jYJ52e.js} +1 -1
  15. package/dashboard/_app/immutable/chunks/{DXO4JfMN.js → C1ORMOvn.js} +1 -1
  16. package/dashboard/_app/immutable/chunks/{B1pCcOqE.js → C7kcZpZt.js} +1 -1
  17. package/dashboard/_app/immutable/chunks/{DpwEwEF3.js → CDCvpIap.js} +1 -1
  18. package/dashboard/_app/immutable/chunks/{CX0xp6Vt.js → CJAz80f_.js} +1 -1
  19. package/dashboard/_app/immutable/chunks/{BD0Bvaoi.js → CKyeQj3Q.js} +1 -1
  20. package/dashboard/_app/immutable/chunks/{pfRJAoPr.js → CclvIKzt.js} +1 -1
  21. package/dashboard/_app/immutable/chunks/{DI9xKIlG.js → CnOLiguR.js} +1 -1
  22. package/dashboard/_app/immutable/chunks/{D5M5SoW3.js → CopEEOFw.js} +1 -1
  23. package/dashboard/_app/immutable/chunks/{sYfvj8ee.js → CtK2jwAL.js} +1 -1
  24. package/dashboard/_app/immutable/chunks/{ydLcOJOd.js → CytPsq18.js} +2 -2
  25. package/dashboard/_app/immutable/chunks/{W8pAe7Rx.js → D1byhEZI.js} +1 -1
  26. package/dashboard/_app/immutable/chunks/{CQi5fBLh.js → DAu87mIc.js} +1 -1
  27. package/dashboard/_app/immutable/chunks/{BmxJL9RB.js → DDqO2D71.js} +1 -1
  28. package/dashboard/_app/immutable/chunks/{DgzSKOod.js → DIKel3Zn.js} +1 -1
  29. package/dashboard/_app/immutable/chunks/{D4P_efnI.js → DIqOBFdT.js} +1 -1
  30. package/dashboard/_app/immutable/chunks/{CUV5ModY.js → DLsEtGQa.js} +1 -1
  31. package/dashboard/_app/immutable/chunks/{DK3CdKIF.js → DNbzB8R1.js} +1 -1
  32. package/dashboard/_app/immutable/chunks/{eOTY43p1.js → DeyCFCB0.js} +1 -1
  33. package/dashboard/_app/immutable/chunks/{Bylrlnzq.js → Dp1GTc39.js} +1 -1
  34. package/dashboard/_app/immutable/chunks/{BjswRaNH.js → DtB8FowW.js} +1 -1
  35. package/dashboard/_app/immutable/chunks/{DJMNV5Zx.js → DybLNhTQ.js} +1 -1
  36. package/dashboard/_app/immutable/chunks/{DXUdNJwS.js → DyshuDVa.js} +1 -1
  37. package/dashboard/_app/immutable/chunks/{DTGdDnRl.js → IeCQcJ4C.js} +1 -1
  38. package/dashboard/_app/immutable/chunks/JWLx2oEy.js +1 -0
  39. package/dashboard/_app/immutable/chunks/{BljF1TkL.js → KDZ1i71N.js} +1 -1
  40. package/dashboard/_app/immutable/chunks/{Drnhq6dA.js → PKMFnMJh.js} +1 -1
  41. package/dashboard/_app/immutable/chunks/{qzJ08fYT.js → XHCSicSZ.js} +1 -1
  42. package/dashboard/_app/immutable/chunks/{BgRGbeQc.js → gyguWWMz.js} +1 -1
  43. package/dashboard/_app/immutable/chunks/{qyH8WYiq.js → hktFoTua.js} +1 -1
  44. package/dashboard/_app/immutable/chunks/{DQdDyGh1.js → iHysDaGx.js} +1 -1
  45. package/dashboard/_app/immutable/chunks/{BnVeArd8.js → nnbijivy.js} +1 -1
  46. package/dashboard/_app/immutable/chunks/{Lgb3ZMTZ.js → oBng1tfj.js} +1 -1
  47. package/dashboard/_app/immutable/chunks/{CUv1ipDD.js → wgiAyJSz.js} +3 -3
  48. package/dashboard/_app/immutable/entry/{app.CBz6iDBm.js → app.C_YTyrHd.js} +2 -2
  49. package/dashboard/_app/immutable/entry/start.DgzkLEXA.js +1 -0
  50. package/dashboard/_app/immutable/nodes/{1.Gbiu4dhP.js → 1.Bw5HrDBh.js} +1 -1
  51. package/dashboard/_app/immutable/nodes/2.DdfxgBQk.js +1 -0
  52. package/dashboard/_app/version.json +1 -1
  53. package/dashboard/index.html +6 -6
  54. package/dist/cli.js +2270 -218
  55. package/dist/daemon.js +2427 -1014
  56. package/dist/mcp-stdio.js +23 -0
  57. package/package.json +1 -1
  58. package/dashboard/_app/immutable/chunks/NWwjXzQ7.js +0 -1
  59. package/dashboard/_app/immutable/entry/start.Db2nb8-u.js +0 -1
  60. package/dashboard/_app/immutable/nodes/2.CMs4zyEm.js +0 -1
@@ -1 +1 @@
1
- import{p,s as c,c as i,f as d,a as h,n as l,b as m,d as f,r as u}from"./Bh3nIh1p.js";import{I as $}from"./CUv1ipDD.js";function C(o,s){p(s,!0);let r=u(s,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"m9 18 6-6-6-6"}]];$(o,c({name:"chevron-right"},()=>r,{get iconNode(){return t},children:(a,g)=>{var e=i(),n=d(e);h(n,()=>s.children??l),m(a,e)},$$slots:{default:!0}})),f()}export{C};
1
+ import{p,s as c,c as i,f as d,a as h,n as l,b as m,d as f,r as u}from"./Bh3nIh1p.js";import{I as $}from"./wgiAyJSz.js";function C(o,s){p(s,!0);let r=u(s,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"m9 18 6-6-6-6"}]];$(o,c({name:"chevron-right"},()=>r,{get iconNode(){return t},children:(a,g)=>{var e=i(),n=d(e);h(n,()=>s.children??l),m(a,e)},$$slots:{default:!0}})),f()}export{C};
@@ -1 +1 @@
1
- import{p as n,s as l,c,f as d,a as i,n as m,b as f,d as h,r as u}from"./Bh3nIh1p.js";import{I as $}from"./CUv1ipDD.js";function z(e,a){n(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"}]];$(e,l({name:"zap"},()=>o,{get iconNode(){return t},children:(r,_)=>{var s=c(),p=d(s);i(p,()=>a.children??m),f(r,s)},$$slots:{default:!0}})),h()}export{z as Z};
1
+ import{p as n,s as l,c,f as d,a as i,n as m,b as f,d as h,r as u}from"./Bh3nIh1p.js";import{I as $}from"./wgiAyJSz.js";function z(e,a){n(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"}]];$(e,l({name:"zap"},()=>o,{get iconNode(){return t},children:(r,_)=>{var s=c(),p=d(s);i(p,()=>a.children??m),f(r,s)},$$slots:{default:!0}})),h()}export{z as Z};
@@ -1,4 +1,4 @@
1
- import{p as Pt,Q as Mt,i as r,v as d,c as Be,f as R,h as C,w as x,x as m,y,z as _,b as a,t as n,k as D,j as g,l as f,N as Tt,d as It,u as Y,o as X,A as Je,m as h,$ as Nt,G as at,E as Ft,B as _t,U as yt,O as Ge,a1 as qt,a2 as zt,P as Rt}from"./Bh3nIh1p.js";import{P as Bt}from"./Bfse3fCo.js";import{T as Lt}from"./CjrslgAi.js";import{S as Ut,J as Ot,K as Wt,L as jt,B as ve,N as Vt,O as Kt,P as Gt,T as Jt,h as Qt,n as bt,i as Xt,Q as l,R as $t,U as Yt,V as Ht,W as Zt,A as wt,X as er,Y as st,Z as kt,_ as tr}from"./CUv1ipDD.js";import{I as Le}from"./D5M5SoW3.js";import{L as ue}from"./DTGdDnRl.js";import{T as ht}from"./DQdDyGh1.js";import{c as Dt,S as At,a as Ct,b as Qe}from"./BgRGbeQc.js";import{S as St}from"./sYfvj8ee.js";import{B as Re}from"./CQi5fBLh.js";import{P as rr,a as ar,b as sr}from"./DXUdNJwS.js";import{C as or,a as nr}from"./C2fWszyC.js";var ir=h("<!> <!>",1),lr=h("<!> <!> <!>",1),dr=h("<!> <!>",1),cr=h('<div class="flex flex-col gap-1"><!> <!></div>'),ur=h('Reason for change <span class="text-[var(--sig-accent)]">*</span>',1),vr=h('<div class="flex flex-col gap-1"><!> <!></div> <div class="grid grid-cols-2 gap-3"><div class="flex flex-col gap-1"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div></div> <!> <div class="flex flex-col gap-1"><!> <!></div> <div class="flex items-center justify-between"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div>',1),fr=h('<span class="px-1.5 py-px border border-[var(--sig-border-strong)]"> </span>'),gr=h(`This memory is <strong>pinned</strong>. Deleting it requires
1
+ import{p as Pt,Q as Mt,i as r,v as d,c as Be,f as R,h as C,w as x,x as m,y,z as _,b as a,t as n,k as D,j as g,l as f,N as Tt,d as It,u as Y,o as X,A as Je,m as h,$ as Nt,G as at,E as Ft,B as _t,U as yt,O as Ge,a1 as qt,a2 as zt,P as Rt}from"./Bh3nIh1p.js";import{P as Bt}from"./Bfse3fCo.js";import{T as Lt}from"./CjrslgAi.js";import{S as Ut,J as Ot,K as Wt,L as jt,B as ve,N as Vt,O as Kt,P as Gt,T as Jt,h as Qt,n as bt,i as Xt,Q as l,R as $t,U as Yt,V as Ht,W as Zt,A as wt,X as er,Y as st,Z as kt,_ as tr}from"./wgiAyJSz.js";import{I as Le}from"./CopEEOFw.js";import{L as ue}from"./IeCQcJ4C.js";import{T as ht}from"./iHysDaGx.js";import{c as Dt,S as At,a as Ct,b as Qe}from"./gyguWWMz.js";import{S as St}from"./CtK2jwAL.js";import{B as Re}from"./DAu87mIc.js";import{P as rr,a as ar,b as sr}from"./DyshuDVa.js";import{C as or,a as nr}from"./BYl8wdzd.js";var ir=h("<!> <!>",1),lr=h("<!> <!> <!>",1),dr=h("<!> <!>",1),cr=h('<div class="flex flex-col gap-1"><!> <!></div>'),ur=h('Reason for change <span class="text-[var(--sig-accent)]">*</span>',1),vr=h('<div class="flex flex-col gap-1"><!> <!></div> <div class="grid grid-cols-2 gap-3"><div class="flex flex-col gap-1"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div></div> <!> <div class="flex flex-col gap-1"><!> <!></div> <div class="flex items-center justify-between"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div>',1),fr=h('<span class="px-1.5 py-px border border-[var(--sig-border-strong)]"> </span>'),gr=h(`This memory is <strong>pinned</strong>. Deleting it requires
2
2
  force, which removes it permanently from search results.`,1),pr=h('<div class="flex items-center gap-2"><!> <!></div>'),mr=h('Reason for deletion <span class="text-[var(--sig-accent)]">*</span>',1),xr=h(`<div class="flex flex-col gap-2 p-3 border border-[var(--sig-border-strong)]
3
3
  bg-[var(--sig-surface-raised)]"><p class="m-0 text-[var(--sig-text-bright)] text-[11px]
4
4
  leading-[1.5] whitespace-pre-wrap break-words"> </p> <div class="flex flex-wrap gap-1 text-[9px]
@@ -1,4 +1,4 @@
1
- import{p as se,s as be,c as z,f as w,a as fe,n as ge,b as c,d as ne,r as ke,e as Fe,A as ee,j as g,h as N,i as s,t as k,l as b,k as T,y as q,B as Ve,ad as Ke,z as F,O as V,u as K,ae as Ue,w as ue,x as te,G as Qe,a6 as Xe,m as $,R as Ye,P as Ze}from"./Bh3nIh1p.js";import{I as xe,ae as et,H as ae}from"./CUv1ipDD.js";import{S as tt,a as at,b as st,c as nt}from"./BgRGbeQc.js";import{W as rt,L as he}from"./B1pCcOqE.js";import{C as it}from"./D4P_efnI.js";import{T as ve}from"./DJMNV5Zx.js";function lt(D,x){se(x,!0);let P=ke(x,["$$slots","$$events","$$legacy"]);const f=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]];xe(D,be({name:"activity"},()=>P,{get iconNode(){return f},children:(O,U)=>{var d=z(),l=w(d);fe(l,()=>x.children??ge),c(O,d)},$$slots:{default:!0}})),ne()}function ot(D,x){se(x,!0);let P=ke(x,["$$slots","$$events","$$legacy"]);const f=[["path",{d:"M12 19h8"}],["path",{d:"m4 17 6-6-6-6"}]];xe(D,be({name:"terminal"},()=>P,{get iconNode(){return f},children:(O,U)=>{var d=z(),l=w(d);fe(l,()=>x.children??ge),c(O,d)},$$slots:{default:!0}})),ne()}var ct=$('<span class="ts-panel-count svelte-c36e65"> </span>'),dt=$('<button class="ts-header-clear svelte-c36e65" title="Clear output"><!></button>'),pt=$('<div class="ts-empty svelte-c36e65">no output yet</div>'),mt=$('<div class="ts-line svelte-c36e65"></div>'),ut=$("<!> <!>",1),ht=$('<button class="ts-clear svelte-c36e65" title="Clear output"><!></button>'),vt=$('<div class="ts-term svelte-c36e65" role="log"><!></div> <div class="ts-action-bar svelte-c36e65"><!> <button class="ts-run svelte-c36e65"><!></button> <!></div>',1),bt=$('<div><div class="ts-panel-header-row svelte-c36e65"><button class="ts-panel-header svelte-c36e65"><!> <span class="ts-panel-title svelte-c36e65"> </span> <!> <!> <!></button> <!></div> <!></div>'),ft=$('<div class="ts-root svelte-c36e65"></div>');function Tt(D,x){se(x,!0);const P=[{id:"cli",title:"CLI",icon:ot,color:"var(--sig-highlight)",commands:[{label:"Status",kind:"cli",key:"status"},{label:"Daemon Status",kind:"cli",key:"daemon-status"},{label:"Daemon Logs",kind:"cli",key:"daemon-logs"},{label:"Sync",kind:"cli",key:"sync"},{label:"Embed Audit",kind:"cli",key:"embed-audit"},{label:"Skill List",kind:"cli",key:"skill-list"},{label:"Secret List",kind:"cli",key:"secret-list"},{label:"Recall Test",kind:"cli",key:"recall-test"}]},{id:"status",title:"Status",icon:lt,color:"var(--sig-highlight)",commands:[{label:"Health",kind:"api",method:"GET",path:"/health"},{label:"Diagnostics",kind:"api",method:"GET",path:"/api/diagnostics"},{label:"Pipeline",kind:"api",method:"GET",path:"/api/pipeline/status"},{label:"Predictor",kind:"api",method:"GET",path:"/api/predictor/status"},{label:"Git",kind:"api",method:"GET",path:"/api/git/status"},{label:"Embeddings",kind:"api",method:"GET",path:"/api/embeddings/health"}]},{id:"info",title:"Info",icon:et,color:"var(--sig-highlight)",commands:[{label:"Embed Gaps",kind:"api",method:"GET",path:"/api/repair/embedding-gaps"},{label:"Dedup Stats",kind:"api",method:"GET",path:"/api/repair/dedup-stats"},{label:"Cold Stats",kind:"api",method:"GET",path:"/api/repair/cold-stats"}]},{id:"repair",title:"Repair",icon:rt,color:"var(--sig-highlight)",commands:[{label:"Check FTS",kind:"api",method:"POST",path:"/api/repair/check-fts"},{label:"Re-embed",kind:"api",method:"POST",path:"/api/repair/re-embed"},{label:"Resync Vec",kind:"api",method:"POST",path:"/api/repair/resync-vec"},{label:"Clean Orphans",kind:"api",method:"POST",path:"/api/repair/clean-orphans"},{label:"Deduplicate",kind:"api",method:"POST",path:"/api/repair/deduplicate"},{label:"Retention",kind:"api",method:"POST",path:"/api/repair/retention-sweep"},{label:"Requeue Dead",kind:"api",method:"POST",path:"/api/repair/requeue-dead"},{label:"Release Leases",kind:"api",method:"POST",path:"/api/repair/release-leases"},{label:"Backfill Skipped",kind:"api",method:"POST",path:"/api/repair/backfill-skipped"},{label:"Reclassify",kind:"api",method:"POST",path:"/api/repair/reclassify-entities"},{label:"Prune Chunks",kind:"api",method:"POST",path:"/api/repair/prune-chunk-groups"},{label:"Prune Singletons",kind:"api",method:"POST",path:"/api/repair/prune-singleton-entities"},{label:"Stop Daemon",kind:"cli",key:"daemon-stop"},{label:"Restart Daemon",kind:"cli",key:"daemon-restart"},{label:"Update Signet",kind:"cli",key:"update"}]}];let f=Fe(Object.fromEntries(P.map(e=>[e.id,{lines:[],running:!1,expanded:!0,selected:0}])));const O={};function U(e,a){O[a]=e}async function d(e){await Ye();const a=O[e];a?.scrollTo({top:a.scrollHeight,behavior:"smooth"})}function l(e,a){const t=f[e];t&&(t.lines=[...t.lines,a])}function re(e){const a=f[e];a&&(a.lines=[])}function ye(e){const a=f[e];a&&(a.expanded=!a.expanded)}async function _e(e,a){const t=f[e];if(!t||t.running||!a.key)return;t.running=!0,t.expanded=!0,l(e,`\x1B[32m$\x1B[0m signet ${a.key.replace(/-/g," ")}`),await d(e);const m=new AbortController;let n=!1;try{const r=await fetch(`${ae}/api/troubleshoot/exec`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({key:a.key}),signal:m.signal});if(!r.ok){const R=await r.json().catch(()=>({error:"request failed"}));l(e,`\x1B[31merror:\x1B[0m ${R.error??r.statusText}`),t.running=!1,await d(e);return}const p=r.body?.getReader();if(!p){l(e,"\x1B[31merror:\x1B[0m no stream"),t.running=!1;return}a.key==="daemon-restart"&&(n=!0);const y=new TextDecoder;let _="";try{for(;;){const{done:R,value:I}=await p.read();if(R)break;_+=y.decode(I,{stream:!0});const j=_.split(`
1
+ import{p as se,s as be,c as z,f as w,a as fe,n as ge,b as c,d as ne,r as ke,e as Fe,A as ee,j as g,h as N,i as s,t as k,l as b,k as T,y as q,B as Ve,ad as Ke,z as F,O as V,u as K,ae as Ue,w as ue,x as te,G as Qe,a6 as Xe,m as $,R as Ye,P as Ze}from"./Bh3nIh1p.js";import{I as xe,ae as et,H as ae}from"./wgiAyJSz.js";import{S as tt,a as at,b as st,c as nt}from"./gyguWWMz.js";import{W as rt,L as he}from"./C7kcZpZt.js";import{C as it}from"./DIqOBFdT.js";import{T as ve}from"./DybLNhTQ.js";function lt(D,x){se(x,!0);let P=ke(x,["$$slots","$$events","$$legacy"]);const f=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]];xe(D,be({name:"activity"},()=>P,{get iconNode(){return f},children:(O,U)=>{var d=z(),l=w(d);fe(l,()=>x.children??ge),c(O,d)},$$slots:{default:!0}})),ne()}function ot(D,x){se(x,!0);let P=ke(x,["$$slots","$$events","$$legacy"]);const f=[["path",{d:"M12 19h8"}],["path",{d:"m4 17 6-6-6-6"}]];xe(D,be({name:"terminal"},()=>P,{get iconNode(){return f},children:(O,U)=>{var d=z(),l=w(d);fe(l,()=>x.children??ge),c(O,d)},$$slots:{default:!0}})),ne()}var ct=$('<span class="ts-panel-count svelte-c36e65"> </span>'),dt=$('<button class="ts-header-clear svelte-c36e65" title="Clear output"><!></button>'),pt=$('<div class="ts-empty svelte-c36e65">no output yet</div>'),mt=$('<div class="ts-line svelte-c36e65"></div>'),ut=$("<!> <!>",1),ht=$('<button class="ts-clear svelte-c36e65" title="Clear output"><!></button>'),vt=$('<div class="ts-term svelte-c36e65" role="log"><!></div> <div class="ts-action-bar svelte-c36e65"><!> <button class="ts-run svelte-c36e65"><!></button> <!></div>',1),bt=$('<div><div class="ts-panel-header-row svelte-c36e65"><button class="ts-panel-header svelte-c36e65"><!> <span class="ts-panel-title svelte-c36e65"> </span> <!> <!> <!></button> <!></div> <!></div>'),ft=$('<div class="ts-root svelte-c36e65"></div>');function Tt(D,x){se(x,!0);const P=[{id:"cli",title:"CLI",icon:ot,color:"var(--sig-highlight)",commands:[{label:"Status",kind:"cli",key:"status"},{label:"Daemon Status",kind:"cli",key:"daemon-status"},{label:"Daemon Logs",kind:"cli",key:"daemon-logs"},{label:"Sync",kind:"cli",key:"sync"},{label:"Embed Audit",kind:"cli",key:"embed-audit"},{label:"Skill List",kind:"cli",key:"skill-list"},{label:"Secret List",kind:"cli",key:"secret-list"},{label:"Recall Test",kind:"cli",key:"recall-test"}]},{id:"status",title:"Status",icon:lt,color:"var(--sig-highlight)",commands:[{label:"Health",kind:"api",method:"GET",path:"/health"},{label:"Diagnostics",kind:"api",method:"GET",path:"/api/diagnostics"},{label:"Pipeline",kind:"api",method:"GET",path:"/api/pipeline/status"},{label:"Predictor",kind:"api",method:"GET",path:"/api/predictor/status"},{label:"Git",kind:"api",method:"GET",path:"/api/git/status"},{label:"Embeddings",kind:"api",method:"GET",path:"/api/embeddings/health"}]},{id:"info",title:"Info",icon:et,color:"var(--sig-highlight)",commands:[{label:"Embed Gaps",kind:"api",method:"GET",path:"/api/repair/embedding-gaps"},{label:"Dedup Stats",kind:"api",method:"GET",path:"/api/repair/dedup-stats"},{label:"Cold Stats",kind:"api",method:"GET",path:"/api/repair/cold-stats"}]},{id:"repair",title:"Repair",icon:rt,color:"var(--sig-highlight)",commands:[{label:"Check FTS",kind:"api",method:"POST",path:"/api/repair/check-fts"},{label:"Re-embed",kind:"api",method:"POST",path:"/api/repair/re-embed"},{label:"Resync Vec",kind:"api",method:"POST",path:"/api/repair/resync-vec"},{label:"Clean Orphans",kind:"api",method:"POST",path:"/api/repair/clean-orphans"},{label:"Deduplicate",kind:"api",method:"POST",path:"/api/repair/deduplicate"},{label:"Retention",kind:"api",method:"POST",path:"/api/repair/retention-sweep"},{label:"Requeue Dead",kind:"api",method:"POST",path:"/api/repair/requeue-dead"},{label:"Release Leases",kind:"api",method:"POST",path:"/api/repair/release-leases"},{label:"Backfill Skipped",kind:"api",method:"POST",path:"/api/repair/backfill-skipped"},{label:"Reclassify",kind:"api",method:"POST",path:"/api/repair/reclassify-entities"},{label:"Prune Chunks",kind:"api",method:"POST",path:"/api/repair/prune-chunk-groups"},{label:"Prune Singletons",kind:"api",method:"POST",path:"/api/repair/prune-singleton-entities"},{label:"Stop Daemon",kind:"cli",key:"daemon-stop"},{label:"Restart Daemon",kind:"cli",key:"daemon-restart"},{label:"Update Signet",kind:"cli",key:"update"}]}];let f=Fe(Object.fromEntries(P.map(e=>[e.id,{lines:[],running:!1,expanded:!0,selected:0}])));const O={};function U(e,a){O[a]=e}async function d(e){await Ye();const a=O[e];a?.scrollTo({top:a.scrollHeight,behavior:"smooth"})}function l(e,a){const t=f[e];t&&(t.lines=[...t.lines,a])}function re(e){const a=f[e];a&&(a.lines=[])}function ye(e){const a=f[e];a&&(a.expanded=!a.expanded)}async function _e(e,a){const t=f[e];if(!t||t.running||!a.key)return;t.running=!0,t.expanded=!0,l(e,`\x1B[32m$\x1B[0m signet ${a.key.replace(/-/g," ")}`),await d(e);const m=new AbortController;let n=!1;try{const r=await fetch(`${ae}/api/troubleshoot/exec`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({key:a.key}),signal:m.signal});if(!r.ok){const R=await r.json().catch(()=>({error:"request failed"}));l(e,`\x1B[31merror:\x1B[0m ${R.error??r.statusText}`),t.running=!1,await d(e);return}const p=r.body?.getReader();if(!p){l(e,"\x1B[31merror:\x1B[0m no stream"),t.running=!1;return}a.key==="daemon-restart"&&(n=!0);const y=new TextDecoder;let _="";try{for(;;){const{done:R,value:I}=await p.read();if(R)break;_+=y.decode(I,{stream:!0});const j=_.split(`
2
2
 
3
3
  `);_=j.pop()??"";for(const H of j){const B=H.match(/^data:\s*(.+)$/m);if(B)try{const v=JSON.parse(B[1]);if(v.type==="started"&&(n=!0),v.type==="stdout"||v.type==="stderr"){const J=String(v.data).replace(/\n$/,"");if(J){for(const M of J.split(`
4
4
  `))l(e,v.type==="stderr"?`\x1B[33m${M}\x1B[0m`:M);await d(e)}}else v.type==="exit"?(l(e,v.code===0?"\x1B[32m✓ exit 0\x1B[0m":`\x1B[31m✗ exit ${v.code}\x1B[0m`),await d(e)):v.type==="error"&&(l(e,`\x1B[31merror:\x1B[0m ${v.message}`),await d(e))}catch{}}}}finally{p.releaseLock()}}catch(r){m.signal.aborted||(a.key==="daemon-stop"||a.key==="daemon-restart"?l(e,"\x1B[33mDaemon process ended\x1B[0m"):l(e,`\x1B[31merror:\x1B[0m ${r instanceof Error?r.message:"fetch failed"}`))}if(a.key==="daemon-restart"&&n){l(e,"\x1B[90mWaiting for daemon to restart...\x1B[0m"),await d(e);let r=!1;for(let p=0;p<15;p++){await new Promise(y=>setTimeout(y,1e3));try{if((await fetch(`${ae}/health`)).ok){r=!0;break}}catch{}}l(e,r?"\x1B[32m✓ Daemon restarted\x1B[0m":"\x1B[31m✗ Daemon did not restart within 15s\x1B[0m"),await d(e)}l(e,""),t.running=!1,await d(e)}async function $e(e,a){const t=f[e];if(!t||t.running||!a.path||!a.method)return;t.running=!0,t.expanded=!0;const m=performance.now();l(e,`\x1B[32m$\x1B[0m ${a.method} ${a.path}`),await d(e);try{const n=await fetch(`${ae}${a.path}`,{method:a.method}),r=Math.round(performance.now()-m),y=(n.headers.get("content-type")??"").includes("json")?JSON.stringify(await n.json(),null,2):await n.text();l(e,n.ok?`\x1B[32m${n.status} OK\x1B[0m \x1B[90m${r}ms\x1B[0m`:`\x1B[31m${n.status} FAILED\x1B[0m \x1B[90m${r}ms\x1B[0m`);for(const _ of y.split(`
@@ -1,2 +1,2 @@
1
- import{p as re,s as Ee,c as Ut,f as j,a as Re,n as Be,b as s,d as se,r as De,j as r,w as vt,x as $t,y as N,z as d,i as t,t as e,h as L,l as a,ad as ke,af as Se,ag as je,O as we,v as b,k as nt,u as I,o as V,m as v,P as Le,g as Oe,A as Bt,D as o,G as ce,N as Ce,aj as ie,B as Ne,e as qt,q as ze}from"./Bh3nIh1p.js";import{B as ue}from"./CQi5fBLh.js";import{I as We,ap as ge,aq as pe,ar as xe,B as He,f as Ge,n as qe,E as Je}from"./CUv1ipDD.js";import{a as Ke,C as Ve}from"./sKAzTa2E.js";import{C as Ye,a as Ze}from"./DpwEwEF3.js";import{C as Qe,a as Ue,b as Xe}from"./2MfvoDg1.js";import{P as ta}from"./Bfse3fCo.js";import{T as ea}from"./CjrslgAi.js";import{P as aa,a as ra,b as sa}from"./DXUdNJwS.js";import{Z as ia}from"./B963Zl-6.js";import{R as na}from"./BljF1TkL.js";import{C as oa}from"./D4P_efnI.js";function la(wt,c){re(c,!0);let p=De(c,["$$slots","$$events","$$legacy"]);const T=[["path",{d:"M14 17H5"}],["path",{d:"M19 7h-9"}],["circle",{cx:"17",cy:"17",r:"3"}],["circle",{cx:"7",cy:"7",r:"3"}]];We(wt,Ee({name:"settings-2"},()=>p,{get iconNode(){return T},children:($,x)=>{var rt=Ut(),C=j(rt);Re(C,()=>c.children??Be),s($,rt)},$$slots:{default:!0}})),se()}var da=v('<span class="sig-meta text-[var(--sig-text-muted)] shrink-0">alpha</span> <div class="flex gap-px h-2.5 flex-1 rounded overflow-hidden"><div class="bg-[var(--sig-text-muted)] transition-all duration-300"></div> <div class="bg-[var(--sig-accent)] transition-all duration-300"></div></div> <span class="sig-meta text-[var(--sig-text)] font-mono"> </span>',1),va=v("<!> <!>",1),ca=v('<span class="sig-label text-[var(--sig-text)]">win rate: <span class="font-bold"> </span></span>'),ua=v("<!> <!>",1),ga=v('<div class="sig-eyebrow text-[var(--sig-text-muted)]">training config</div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">epochs per run</span> <input type="number" min="1" max="20" class="w-14 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-1.5 py-0.5 text-center sig-label text-[var(--sig-text)] focus:outline-none focus:border-[var(--sig-accent)]"/></div> <span class="sig-meta text-[var(--sig-text-muted)]">more epochs = longer but more thorough</span></div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">max samples</span> <input type="number" min="100" max="50000" step="500" class="w-20 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-1.5 py-0.5 text-center sig-label text-[var(--sig-text)] focus:outline-none focus:border-[var(--sig-accent)]"/></div> <span class="sig-meta text-[var(--sig-text-muted)]">training pairs to use per run</span></div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">auto-trains every</span> <span class="sig-label text-[var(--sig-text)]"> </span></div> <span class="sig-meta text-[var(--sig-text-muted)]">change in settings</span></div> <div class="pt-1 border-t border-[var(--sig-border)]"><span class="sig-meta text-[var(--sig-text-muted)]"> </span></div>',1),pa=v("<!> <!>",1),xa=v("<!> <!>",1),fa=v('<div class="flex items-center gap-3 px-3 py-2 bg-card rounded-lg border border-border"><!> <!> <!> <div class="flex-1"></div> <!> <!> <button class="flex items-center p-1 rounded text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:bg-[var(--sig-surface-raised)] transition-colors disabled:opacity-40"><!></button></div>');function ma(wt,c){re(c,!0);const p=I(()=>{switch(c.healthStatus){case"healthy":return"default";case"degraded":case"cold_start":return"secondary";case"unhealthy":return"destructive";default:return"outline"}});let T=V(!1);var $=fa(),x=r($);ue(x,{get variant(){return t(p)},class:"text-[9px] shrink-0",children:(M,Z)=>{vt();var A=$t();N(()=>d(A,c.healthStatus)),s(M,A)},$$slots:{default:!0}});var rt=e(x,2);L(rt,()=>xe,(M,Z)=>{Z(M,{children:(A,mt)=>{var q=va(),Q=j(q);L(Q,()=>ge,(g,n)=>{n(g,{class:"flex items-center gap-2 min-w-[120px]",children:(u,w)=>{var h=da(),y=e(j(h),2),P=r(y),R=e(P,2);a(y);var H=e(y,2),X=r(H,!0);a(H),N(z=>{ke(P,`width: ${c.alpha*100}%`),ke(R,`width: ${(1-c.alpha)*100}%`),d(X,z)},[()=>c.alpha.toFixed(2)]),s(u,h)},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>pe,(g,n)=>{n(g,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs max-w-[240px]",children:(u,w)=>{vt();var h=$t("Baseline weight in scoring. Shifts toward predictor as it proves itself.");s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var C=e(rt,2);L(C,()=>xe,(M,Z)=>{Z(M,{children:(A,mt)=>{var q=ua(),Q=j(q);L(Q,()=>ge,(g,n)=>{n(g,{children:(u,w)=>{var h=ca(),y=e(r(h)),P=r(y);a(y),a(h),N(R=>d(P,`${R??""}%`),[()=>Math.round(c.winRate*100)]),s(u,h)},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>pe,(g,n)=>{n(g,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs max-w-[240px]",children:(u,w)=>{vt();var h=$t("Sessions where predictor ranked better than heuristic baseline.");s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var Y=e(C,4);L(Y,()=>sa,(M,Z)=>{Z(M,{get open(){return t(T)},set open(A){b(T,A,!0)},children:(A,mt)=>{var q=pa(),Q=j(q);L(Q,()=>aa,(g,n)=>{n(g,{class:"flex items-center gap-1 sig-label text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] transition-colors p-1 rounded hover:bg-[var(--sig-surface-raised)]",children:(u,w)=>{la(u,{class:"w-3.5 h-3.5"})},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>ra,(g,n)=>{n(g,{class:"w-[260px] bg-[var(--sig-surface)] border border-[var(--sig-border)] rounded-lg shadow-lg p-3 space-y-3",side:"bottom",align:"end",children:(u,w)=>{var h=ga(),y=e(j(h),2),P=r(y),R=e(r(P),2);Se(R),a(P),vt(2),a(y);var H=e(y,2),X=r(H),z=e(r(X),2);Se(z),a(X),vt(2),a(H);var at=e(H,2),ct=r(at),ot=e(r(ct),2),St=r(ot);a(ot),a(ct),vt(2),a(at);var pt=e(at,2),xt=r(pt),B=r(xt);a(xt),a(pt),N(f=>{je(R,c.trainEpochs),je(z,c.trainLimit),d(St,`${c.trainInterval??""} sessions`),d(B,`${f??""} training pairs available`)},[()=>c.trainingPairs.toLocaleString()]),we("input",R,f=>c.onEpochsChange(Number(f.currentTarget.value))),we("input",z,f=>c.onLimitChange(Number(f.currentTarget.value))),s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var O=e(Y,2);{let M=I(()=>c.training||!c.sidecarAlive);He(O,{variant:"default",size:"sm",class:"sig-label gap-1.5",get onclick(){return c.onTrain},get disabled(){return t(M)},children:(Z,A)=>{var mt=xa(),q=j(mt);ia(q,{class:"w-3.5 h-3.5"});var Q=e(q,2);{var m=n=>{var u=$t("training...");s(n,u)},g=n=>{var u=$t("train now");s(n,u)};nt(Q,n=>{c.training?n(m):n(g,-1)})}s(Z,mt)},$$slots:{default:!0}})}var st=e(O,2),Pt=r(st);{let M=I(()=>c.loading?"animate-spin":"");na(Pt,{get class(){return`w-3.5 h-3.5 ${t(M)??""}`}})}a(st),a($),N(()=>st.disabled=c.loading),we("click",st,function(...M){c.onRefresh?.apply(this,M)}),s(wt,$),se()}Le(["input","click"]);var _a=v('<div class="flex items-baseline gap-2"><span class="text-2xl font-display font-bold text-foreground"> </span> <span class="sig-label text-[var(--sig-text-muted)]">ranking quality</span></div>'),ha=v("<!> <!>",1),ba=v('<div class="sig-label text-[var(--sig-text)] truncate pl-2 border-l border-[var(--sig-border)]"> </div>'),ya=v('<div class="sig-label text-[var(--sig-text-muted)] pl-2 italic">no ranking data yet</div>'),$a=v('<div class="flex justify-between sig-label"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)]"> </span></div>'),wa=v("<!> <!>",1),Pa=v('<div class="flex justify-between sig-label"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)]"> </span></div>'),ka=v('<div class="flex flex-col gap-2 p-3 bg-card rounded-lg border border-border min-w-0"><div class="flex items-center gap-2"><span class="sig-eyebrow tracking-wider text-[var(--sig-text-muted)]"> </span> <!></div> <!> <div class="space-y-1"><span class="sig-label text-[var(--sig-text-muted)]">recent top picks:</span> <!></div> <div class="mt-auto space-y-1 pt-2 border-t border-[var(--sig-border)]"></div></div>');function Pe(wt,c){re(c,!0);const p=Oe(c,"offline",3,!1),T=I(()=>Math.round(c.ndcg*100)),$=I(()=>c.side==="baseline"?"Heuristic Baseline":"Predictor Model"),x=I(()=>`How well this system ranks memories. NDCG@10 = ${c.ndcg.toFixed(3)}`);var rt=ka(),C=r(rt),Y=r(C),O=r(Y,!0);a(Y);var st=e(Y,2);{var Pt=m=>{ue(m,{variant:"destructive",class:"text-[8px] px-1.5 py-0",children:(g,n)=>{vt();var u=$t("OFFLINE");s(g,u)},$$slots:{default:!0}})};nt(st,m=>{p()&&m(Pt)})}a(C);var M=e(C,2);L(M,()=>xe,(m,g)=>{g(m,{children:(n,u)=>{var w=ha(),h=j(w);L(h,()=>ge,(P,R)=>{R(P,{class:"text-left",children:(H,X)=>{var z=_a(),at=r(z),ct=r(at);a(at),vt(2),a(z),N(()=>d(ct,`${t(T)??""}%`)),s(H,z)},$$slots:{default:!0}})});var y=e(h,2);L(y,()=>pe,(P,R)=>{R(P,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs",children:(H,X)=>{vt();var z=$t();N(()=>d(z,t(x))),s(H,z)},$$slots:{default:!0}})}),s(n,w)},$$slots:{default:!0}})});var Z=e(M,2),A=e(r(Z),2);{var mt=m=>{var g=Ut(),n=j(g);Bt(n,17,()=>c.topPicks.slice(0,3),u=>u.id,(u,w)=>{var h=ba(),y=r(h);a(h),N(P=>{o(h,"title",t(w).content),d(y,`${P??""}${t(w).content.length>60?"...":""}`)},[()=>t(w).content.slice(0,60)]),s(u,h)}),s(m,g)},q=m=>{var g=ya();s(m,g)};nt(A,m=>{c.topPicks.length>0?m(mt):m(q,-1)})}a(Z);var Q=e(Z,2);Bt(Q,21,()=>c.stats,m=>m.label,(m,g)=>{var n=Ut(),u=j(n);{var w=y=>{var P=Ut(),R=j(P);L(R,()=>xe,(H,X)=>{X(H,{children:(z,at)=>{var ct=wa(),ot=j(ct);L(ot,()=>ge,(pt,xt)=>{xt(pt,{class:"w-full text-left",children:(B,f)=>{var S=$a(),k=r(S),G=r(k,!0);a(k);var lt=e(k,2),ft=r(lt,!0);a(lt),a(S),N(()=>{d(G,t(g).label),d(ft,t(g).value)}),s(B,S)},$$slots:{default:!0}})});var St=e(ot,2);L(St,()=>pe,(pt,xt)=>{xt(pt,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs",children:(B,f)=>{vt();var S=$t();N(()=>d(S,t(g).tooltip)),s(B,S)},$$slots:{default:!0}})}),s(z,ct)},$$slots:{default:!0}})}),s(y,P)},h=y=>{var P=Pa(),R=r(P),H=r(R,!0);a(R);var X=e(R,2),z=r(X,!0);a(X),a(P),N(()=>{d(H,t(g).label),d(z,t(g).value)}),s(y,P)};nt(u,y=>{t(g).tooltip?y(w):y(h,-1)})}s(m,n)}),a(Q),a(rt),N(()=>d(O,t($))),s(wt,rt),se()}var Na=v('<div class="flex items-center justify-center h-full"><span class="sig-label text-[var(--sig-text-muted)]">no comparison data yet</span></div>'),Ta=ie('<line stroke="var(--sig-border)" stroke-width="0.5" stroke-dasharray="4,4"></line><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)"> </text>',1),Sa=ie('<circle r="3"></circle>'),ja=ie('<line stroke="var(--sig-border)" stroke-width="0.5" stroke-dasharray="3,3"></line><circle r="4" fill="var(--sig-text-muted)" stroke="var(--sig-bg)" stroke-width="1.5"></circle><circle r="4" fill="var(--sig-success)" stroke="var(--sig-bg)" stroke-width="1.5"></circle>',1),Ca=ie('<rect fill="transparent"></rect><!>',1),Ma=v('<div class="sig-meta text-[var(--sig-text-muted)] mt-0.5"> </div>'),Fa=v('<div class="absolute z-10 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-2 py-1.5 shadow-md pointer-events-none" style="top: 4px; right: 8px;"><div class="sig-label text-[var(--sig-text-muted)]"> </div> <div class="flex gap-3 mt-0.5"><span class="sig-label"><span class="text-[var(--sig-text-muted)]">base</span> <span class="text-[var(--sig-text)] ml-1"> </span></span> <span class="sig-label"><span class="text-[var(--sig-success)]">pred</span> <span class="text-[var(--sig-text)] ml-1"> </span></span> <span> </span></div> <!></div>'),Ia=ie('<svg width="100%" height="100%" preserveAspectRatio="xMidYMid meet" class="select-none"><!><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">1.00</text><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">0.00</text><polyline fill="none" stroke="var(--sig-text-muted)" stroke-width="1.5" stroke-linejoin="round" stroke-linecap="round" opacity="0.5"></polyline><polyline fill="none" stroke="var(--sig-success)" stroke-width="2" stroke-linejoin="round" stroke-linecap="round"></polyline><!><!><line stroke="var(--sig-text-muted)" stroke-width="1.5" opacity="0.5"></line><text fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">baseline</text><line stroke="var(--sig-success)" stroke-width="2"></line><text fill="var(--sig-success)" font-size="11" font-family="var(--font-mono)">predictor</text></svg><!>',1);function Aa(wt,c){re(c,!0);const p={top:12,right:12,bottom:20,left:32},T=1200,$=200,x=T-p.left-p.right,rt=$-p.top-p.bottom,C=I(()=>[...c.comparisons].reverse());function Y(n){return t(C).length<=1?p.left+x/2:p.left+n/(t(C).length-1)*x}function O(n){return p.top+(1-n)*rt}function st(n){return t(C).map((u,w)=>`${Y(w).toFixed(1)},${O(n(u)).toFixed(1)}`).join(" ")}const Pt=I(()=>st(n=>n.baselineNdcg)),M=I(()=>st(n=>n.predictorNdcg)),Z=[.25,.5,.75];let A=V(null);function mt(n){const u=new Date(n);return Number.isNaN(u.getTime())?n:u.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}var q=Ut(),Q=j(q);{var m=n=>{var u=Na();s(n,u)},g=n=>{var u=Ia(),w=j(u);o(w,"viewBox","0 0 1200 200");var h=r(w);Bt(h,17,()=>Z,ce,(B,f)=>{var S=Ta(),k=j(S),G=e(k),lt=r(G,!0);a(G),N((ft,ut,yt,gt)=>{o(k,"x1",p.left),o(k,"y1",ft),o(k,"x2",T-p.right),o(k,"y2",ut),o(G,"x",p.left-6),o(G,"y",yt),d(lt,gt)},[()=>O(t(f)),()=>O(t(f)),()=>O(t(f))+4,()=>t(f).toFixed(2)]),s(B,S)});var y=e(h),P=e(y),R=e(P),H=e(R),X=e(H);Bt(X,17,()=>t(C),ce,(B,f,S)=>{var k=Sa();o(k,"cy",$-6),N(G=>{o(k,"cx",G),o(k,"fill",t(f).predictorWon?"var(--sig-success)":"var(--sig-danger)"),o(k,"opacity",t(f).predictorWon?.8:.5)},[()=>Y(S)]),s(B,k)});var z=e(X);Bt(z,17,()=>t(C),ce,(B,f,S)=>{var k=Ca(),G=j(k);o(G,"y",0),o(G,"height",$);var lt=e(G);{var ft=ut=>{var yt=ja(),gt=j(yt),jt=e(gt),Jt=e(jt);N((Dt,i,l,W,F,U)=>{o(gt,"x1",Dt),o(gt,"y1",p.top),o(gt,"x2",i),o(gt,"y2",$-p.bottom),o(jt,"cx",l),o(jt,"cy",W),o(Jt,"cx",F),o(Jt,"cy",U)},[()=>Y(S),()=>Y(S),()=>Y(S),()=>O(t(f).baselineNdcg),()=>Y(S),()=>O(t(f).predictorNdcg)]),s(ut,yt)};nt(lt,ut=>{t(A)===S&&ut(ft)})}N((ut,yt)=>{o(G,"x",ut),o(G,"width",yt)},[()=>Y(S)-Math.max(x/t(C).length,16)/2,()=>Math.max(x/t(C).length,16)]),Ce("mouseenter",G,()=>b(A,S,!0)),Ce("mouseleave",G,()=>b(A,null)),s(B,k)});var at=e(z);o(at,"y1",10),o(at,"y2",10);var ct=e(at);o(ct,"y",14);var ot=e(ct);o(ot,"y1",10),o(ot,"y2",10);var St=e(ot);o(St,"y",14),a(w);var pt=e(w);{var xt=B=>{const f=I(()=>t(C)[t(A)]);var S=Fa(),k=r(S),G=r(k,!0);a(k);var lt=e(k,2),ft=r(lt),ut=e(r(ft),2),yt=r(ut,!0);a(ut),a(ft);var gt=e(ft,2),jt=e(r(gt),2),Jt=r(jt,!0);a(jt),a(gt);var Dt=e(gt,2);let i;var l=r(Dt);a(Dt),a(lt);var W=e(lt,2);{var F=U=>{var J=Ma(),_=r(J,!0);a(J),N(()=>d(_,t(f).project)),s(U,J)};nt(W,U=>{t(f).project&&U(F)})}a(S),N((U,J,_,tt)=>{d(G,U),d(yt,J),d(Jt,_),i=Ne(Dt,1,"sig-label",null,i,{"text-[var(--sig-success)]":t(f).margin>0,"text-[var(--sig-danger)]":t(f).margin<0}),d(l,`${t(f).margin>0?"+":""}${tt??""}`)},[()=>mt(t(f).createdAt),()=>t(f).baselineNdcg.toFixed(3),()=>t(f).predictorNdcg.toFixed(3),()=>t(f).margin.toFixed(3)]),s(B,S)};nt(pt,B=>{t(A)!==null&&t(C)[t(A)]&&B(xt)})}N((B,f)=>{o(y,"x",p.left-6),o(y,"y",B),o(P,"x",p.left-6),o(P,"y",f),o(R,"points",t(Pt)),o(H,"points",t(M)),o(at,"x1",T-p.right-160),o(at,"x2",T-p.right-146),o(ct,"x",T-p.right-142),o(ot,"x1",T-p.right-80),o(ot,"x2",T-p.right-66),o(St,"x",T-p.right-62)},[()=>O(1)+4,()=>O(0)+4]),s(n,u)};nt(Q,n=>{t(C).length===0?n(m):n(g,-1)})}s(wt,q),se()}var Ea=v('<div class="flex items-center justify-center col-span-full row-span-full"><span class="sig-label text-[var(--sig-text-muted)]">loading predictor data...</span></div>'),Ra=v('<div class="flex items-center justify-center col-span-full row-span-full"><span class="sig-label text-[var(--sig-text-muted)]">unable to reach predictor -- check daemon status</span></div>'),Ba=v("Predictor <!>",1),Da=v(`<p class="sig-label text-[var(--sig-text-muted)]">The predictive memory scorer learns which memories matter most for each
1
+ import{p as re,s as Ee,c as Ut,f as j,a as Re,n as Be,b as s,d as se,r as De,j as r,w as vt,x as $t,y as N,z as d,i as t,t as e,h as L,l as a,ad as ke,af as Se,ag as je,O as we,v as b,k as nt,u as I,o as V,m as v,P as Le,g as Oe,A as Bt,D as o,G as ce,N as Ce,aj as ie,B as Ne,e as qt,q as ze}from"./Bh3nIh1p.js";import{B as ue}from"./DAu87mIc.js";import{I as We,ap as ge,aq as pe,ar as xe,B as He,f as Ge,n as qe,E as Je}from"./wgiAyJSz.js";import{a as Ke,C as Ve}from"./C-rUb_jN.js";import{C as Ye,a as Ze}from"./CDCvpIap.js";import{C as Qe,a as Ue,b as Xe}from"./2MfvoDg1.js";import{P as ta}from"./Bfse3fCo.js";import{T as ea}from"./CjrslgAi.js";import{P as aa,a as ra,b as sa}from"./DyshuDVa.js";import{Z as ia}from"./BHxXU2Pk.js";import{R as na}from"./KDZ1i71N.js";import{C as oa}from"./DIqOBFdT.js";function la(wt,c){re(c,!0);let p=De(c,["$$slots","$$events","$$legacy"]);const T=[["path",{d:"M14 17H5"}],["path",{d:"M19 7h-9"}],["circle",{cx:"17",cy:"17",r:"3"}],["circle",{cx:"7",cy:"7",r:"3"}]];We(wt,Ee({name:"settings-2"},()=>p,{get iconNode(){return T},children:($,x)=>{var rt=Ut(),C=j(rt);Re(C,()=>c.children??Be),s($,rt)},$$slots:{default:!0}})),se()}var da=v('<span class="sig-meta text-[var(--sig-text-muted)] shrink-0">alpha</span> <div class="flex gap-px h-2.5 flex-1 rounded overflow-hidden"><div class="bg-[var(--sig-text-muted)] transition-all duration-300"></div> <div class="bg-[var(--sig-accent)] transition-all duration-300"></div></div> <span class="sig-meta text-[var(--sig-text)] font-mono"> </span>',1),va=v("<!> <!>",1),ca=v('<span class="sig-label text-[var(--sig-text)]">win rate: <span class="font-bold"> </span></span>'),ua=v("<!> <!>",1),ga=v('<div class="sig-eyebrow text-[var(--sig-text-muted)]">training config</div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">epochs per run</span> <input type="number" min="1" max="20" class="w-14 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-1.5 py-0.5 text-center sig-label text-[var(--sig-text)] focus:outline-none focus:border-[var(--sig-accent)]"/></div> <span class="sig-meta text-[var(--sig-text-muted)]">more epochs = longer but more thorough</span></div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">max samples</span> <input type="number" min="100" max="50000" step="500" class="w-20 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-1.5 py-0.5 text-center sig-label text-[var(--sig-text)] focus:outline-none focus:border-[var(--sig-accent)]"/></div> <span class="sig-meta text-[var(--sig-text-muted)]">training pairs to use per run</span></div> <div class="space-y-1"><div class="flex justify-between items-center"><span class="sig-label text-[var(--sig-text-muted)]">auto-trains every</span> <span class="sig-label text-[var(--sig-text)]"> </span></div> <span class="sig-meta text-[var(--sig-text-muted)]">change in settings</span></div> <div class="pt-1 border-t border-[var(--sig-border)]"><span class="sig-meta text-[var(--sig-text-muted)]"> </span></div>',1),pa=v("<!> <!>",1),xa=v("<!> <!>",1),fa=v('<div class="flex items-center gap-3 px-3 py-2 bg-card rounded-lg border border-border"><!> <!> <!> <div class="flex-1"></div> <!> <!> <button class="flex items-center p-1 rounded text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:bg-[var(--sig-surface-raised)] transition-colors disabled:opacity-40"><!></button></div>');function ma(wt,c){re(c,!0);const p=I(()=>{switch(c.healthStatus){case"healthy":return"default";case"degraded":case"cold_start":return"secondary";case"unhealthy":return"destructive";default:return"outline"}});let T=V(!1);var $=fa(),x=r($);ue(x,{get variant(){return t(p)},class:"text-[9px] shrink-0",children:(M,Z)=>{vt();var A=$t();N(()=>d(A,c.healthStatus)),s(M,A)},$$slots:{default:!0}});var rt=e(x,2);L(rt,()=>xe,(M,Z)=>{Z(M,{children:(A,mt)=>{var q=va(),Q=j(q);L(Q,()=>ge,(g,n)=>{n(g,{class:"flex items-center gap-2 min-w-[120px]",children:(u,w)=>{var h=da(),y=e(j(h),2),P=r(y),R=e(P,2);a(y);var H=e(y,2),X=r(H,!0);a(H),N(z=>{ke(P,`width: ${c.alpha*100}%`),ke(R,`width: ${(1-c.alpha)*100}%`),d(X,z)},[()=>c.alpha.toFixed(2)]),s(u,h)},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>pe,(g,n)=>{n(g,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs max-w-[240px]",children:(u,w)=>{vt();var h=$t("Baseline weight in scoring. Shifts toward predictor as it proves itself.");s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var C=e(rt,2);L(C,()=>xe,(M,Z)=>{Z(M,{children:(A,mt)=>{var q=ua(),Q=j(q);L(Q,()=>ge,(g,n)=>{n(g,{children:(u,w)=>{var h=ca(),y=e(r(h)),P=r(y);a(y),a(h),N(R=>d(P,`${R??""}%`),[()=>Math.round(c.winRate*100)]),s(u,h)},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>pe,(g,n)=>{n(g,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs max-w-[240px]",children:(u,w)=>{vt();var h=$t("Sessions where predictor ranked better than heuristic baseline.");s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var Y=e(C,4);L(Y,()=>sa,(M,Z)=>{Z(M,{get open(){return t(T)},set open(A){b(T,A,!0)},children:(A,mt)=>{var q=pa(),Q=j(q);L(Q,()=>aa,(g,n)=>{n(g,{class:"flex items-center gap-1 sig-label text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] transition-colors p-1 rounded hover:bg-[var(--sig-surface-raised)]",children:(u,w)=>{la(u,{class:"w-3.5 h-3.5"})},$$slots:{default:!0}})});var m=e(Q,2);L(m,()=>ra,(g,n)=>{n(g,{class:"w-[260px] bg-[var(--sig-surface)] border border-[var(--sig-border)] rounded-lg shadow-lg p-3 space-y-3",side:"bottom",align:"end",children:(u,w)=>{var h=ga(),y=e(j(h),2),P=r(y),R=e(r(P),2);Se(R),a(P),vt(2),a(y);var H=e(y,2),X=r(H),z=e(r(X),2);Se(z),a(X),vt(2),a(H);var at=e(H,2),ct=r(at),ot=e(r(ct),2),St=r(ot);a(ot),a(ct),vt(2),a(at);var pt=e(at,2),xt=r(pt),B=r(xt);a(xt),a(pt),N(f=>{je(R,c.trainEpochs),je(z,c.trainLimit),d(St,`${c.trainInterval??""} sessions`),d(B,`${f??""} training pairs available`)},[()=>c.trainingPairs.toLocaleString()]),we("input",R,f=>c.onEpochsChange(Number(f.currentTarget.value))),we("input",z,f=>c.onLimitChange(Number(f.currentTarget.value))),s(u,h)},$$slots:{default:!0}})}),s(A,q)},$$slots:{default:!0}})});var O=e(Y,2);{let M=I(()=>c.training||!c.sidecarAlive);He(O,{variant:"default",size:"sm",class:"sig-label gap-1.5",get onclick(){return c.onTrain},get disabled(){return t(M)},children:(Z,A)=>{var mt=xa(),q=j(mt);ia(q,{class:"w-3.5 h-3.5"});var Q=e(q,2);{var m=n=>{var u=$t("training...");s(n,u)},g=n=>{var u=$t("train now");s(n,u)};nt(Q,n=>{c.training?n(m):n(g,-1)})}s(Z,mt)},$$slots:{default:!0}})}var st=e(O,2),Pt=r(st);{let M=I(()=>c.loading?"animate-spin":"");na(Pt,{get class(){return`w-3.5 h-3.5 ${t(M)??""}`}})}a(st),a($),N(()=>st.disabled=c.loading),we("click",st,function(...M){c.onRefresh?.apply(this,M)}),s(wt,$),se()}Le(["input","click"]);var _a=v('<div class="flex items-baseline gap-2"><span class="text-2xl font-display font-bold text-foreground"> </span> <span class="sig-label text-[var(--sig-text-muted)]">ranking quality</span></div>'),ha=v("<!> <!>",1),ba=v('<div class="sig-label text-[var(--sig-text)] truncate pl-2 border-l border-[var(--sig-border)]"> </div>'),ya=v('<div class="sig-label text-[var(--sig-text-muted)] pl-2 italic">no ranking data yet</div>'),$a=v('<div class="flex justify-between sig-label"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)]"> </span></div>'),wa=v("<!> <!>",1),Pa=v('<div class="flex justify-between sig-label"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text)]"> </span></div>'),ka=v('<div class="flex flex-col gap-2 p-3 bg-card rounded-lg border border-border min-w-0"><div class="flex items-center gap-2"><span class="sig-eyebrow tracking-wider text-[var(--sig-text-muted)]"> </span> <!></div> <!> <div class="space-y-1"><span class="sig-label text-[var(--sig-text-muted)]">recent top picks:</span> <!></div> <div class="mt-auto space-y-1 pt-2 border-t border-[var(--sig-border)]"></div></div>');function Pe(wt,c){re(c,!0);const p=Oe(c,"offline",3,!1),T=I(()=>Math.round(c.ndcg*100)),$=I(()=>c.side==="baseline"?"Heuristic Baseline":"Predictor Model"),x=I(()=>`How well this system ranks memories. NDCG@10 = ${c.ndcg.toFixed(3)}`);var rt=ka(),C=r(rt),Y=r(C),O=r(Y,!0);a(Y);var st=e(Y,2);{var Pt=m=>{ue(m,{variant:"destructive",class:"text-[8px] px-1.5 py-0",children:(g,n)=>{vt();var u=$t("OFFLINE");s(g,u)},$$slots:{default:!0}})};nt(st,m=>{p()&&m(Pt)})}a(C);var M=e(C,2);L(M,()=>xe,(m,g)=>{g(m,{children:(n,u)=>{var w=ha(),h=j(w);L(h,()=>ge,(P,R)=>{R(P,{class:"text-left",children:(H,X)=>{var z=_a(),at=r(z),ct=r(at);a(at),vt(2),a(z),N(()=>d(ct,`${t(T)??""}%`)),s(H,z)},$$slots:{default:!0}})});var y=e(h,2);L(y,()=>pe,(P,R)=>{R(P,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs",children:(H,X)=>{vt();var z=$t();N(()=>d(z,t(x))),s(H,z)},$$slots:{default:!0}})}),s(n,w)},$$slots:{default:!0}})});var Z=e(M,2),A=e(r(Z),2);{var mt=m=>{var g=Ut(),n=j(g);Bt(n,17,()=>c.topPicks.slice(0,3),u=>u.id,(u,w)=>{var h=ba(),y=r(h);a(h),N(P=>{o(h,"title",t(w).content),d(y,`${P??""}${t(w).content.length>60?"...":""}`)},[()=>t(w).content.slice(0,60)]),s(u,h)}),s(m,g)},q=m=>{var g=ya();s(m,g)};nt(A,m=>{c.topPicks.length>0?m(mt):m(q,-1)})}a(Z);var Q=e(Z,2);Bt(Q,21,()=>c.stats,m=>m.label,(m,g)=>{var n=Ut(),u=j(n);{var w=y=>{var P=Ut(),R=j(P);L(R,()=>xe,(H,X)=>{X(H,{children:(z,at)=>{var ct=wa(),ot=j(ct);L(ot,()=>ge,(pt,xt)=>{xt(pt,{class:"w-full text-left",children:(B,f)=>{var S=$a(),k=r(S),G=r(k,!0);a(k);var lt=e(k,2),ft=r(lt,!0);a(lt),a(S),N(()=>{d(G,t(g).label),d(ft,t(g).value)}),s(B,S)},$$slots:{default:!0}})});var St=e(ot,2);L(St,()=>pe,(pt,xt)=>{xt(pt,{class:"bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] text-[var(--sig-text)] px-2 py-1 rounded text-xs",children:(B,f)=>{vt();var S=$t();N(()=>d(S,t(g).tooltip)),s(B,S)},$$slots:{default:!0}})}),s(z,ct)},$$slots:{default:!0}})}),s(y,P)},h=y=>{var P=Pa(),R=r(P),H=r(R,!0);a(R);var X=e(R,2),z=r(X,!0);a(X),a(P),N(()=>{d(H,t(g).label),d(z,t(g).value)}),s(y,P)};nt(u,y=>{t(g).tooltip?y(w):y(h,-1)})}s(m,n)}),a(Q),a(rt),N(()=>d(O,t($))),s(wt,rt),se()}var Na=v('<div class="flex items-center justify-center h-full"><span class="sig-label text-[var(--sig-text-muted)]">no comparison data yet</span></div>'),Ta=ie('<line stroke="var(--sig-border)" stroke-width="0.5" stroke-dasharray="4,4"></line><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)"> </text>',1),Sa=ie('<circle r="3"></circle>'),ja=ie('<line stroke="var(--sig-border)" stroke-width="0.5" stroke-dasharray="3,3"></line><circle r="4" fill="var(--sig-text-muted)" stroke="var(--sig-bg)" stroke-width="1.5"></circle><circle r="4" fill="var(--sig-success)" stroke="var(--sig-bg)" stroke-width="1.5"></circle>',1),Ca=ie('<rect fill="transparent"></rect><!>',1),Ma=v('<div class="sig-meta text-[var(--sig-text-muted)] mt-0.5"> </div>'),Fa=v('<div class="absolute z-10 bg-[var(--sig-surface-raised)] border border-[var(--sig-border)] rounded px-2 py-1.5 shadow-md pointer-events-none" style="top: 4px; right: 8px;"><div class="sig-label text-[var(--sig-text-muted)]"> </div> <div class="flex gap-3 mt-0.5"><span class="sig-label"><span class="text-[var(--sig-text-muted)]">base</span> <span class="text-[var(--sig-text)] ml-1"> </span></span> <span class="sig-label"><span class="text-[var(--sig-success)]">pred</span> <span class="text-[var(--sig-text)] ml-1"> </span></span> <span> </span></div> <!></div>'),Ia=ie('<svg width="100%" height="100%" preserveAspectRatio="xMidYMid meet" class="select-none"><!><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">1.00</text><text text-anchor="end" fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">0.00</text><polyline fill="none" stroke="var(--sig-text-muted)" stroke-width="1.5" stroke-linejoin="round" stroke-linecap="round" opacity="0.5"></polyline><polyline fill="none" stroke="var(--sig-success)" stroke-width="2" stroke-linejoin="round" stroke-linecap="round"></polyline><!><!><line stroke="var(--sig-text-muted)" stroke-width="1.5" opacity="0.5"></line><text fill="var(--sig-text-muted)" font-size="11" font-family="var(--font-mono)">baseline</text><line stroke="var(--sig-success)" stroke-width="2"></line><text fill="var(--sig-success)" font-size="11" font-family="var(--font-mono)">predictor</text></svg><!>',1);function Aa(wt,c){re(c,!0);const p={top:12,right:12,bottom:20,left:32},T=1200,$=200,x=T-p.left-p.right,rt=$-p.top-p.bottom,C=I(()=>[...c.comparisons].reverse());function Y(n){return t(C).length<=1?p.left+x/2:p.left+n/(t(C).length-1)*x}function O(n){return p.top+(1-n)*rt}function st(n){return t(C).map((u,w)=>`${Y(w).toFixed(1)},${O(n(u)).toFixed(1)}`).join(" ")}const Pt=I(()=>st(n=>n.baselineNdcg)),M=I(()=>st(n=>n.predictorNdcg)),Z=[.25,.5,.75];let A=V(null);function mt(n){const u=new Date(n);return Number.isNaN(u.getTime())?n:u.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}var q=Ut(),Q=j(q);{var m=n=>{var u=Na();s(n,u)},g=n=>{var u=Ia(),w=j(u);o(w,"viewBox","0 0 1200 200");var h=r(w);Bt(h,17,()=>Z,ce,(B,f)=>{var S=Ta(),k=j(S),G=e(k),lt=r(G,!0);a(G),N((ft,ut,yt,gt)=>{o(k,"x1",p.left),o(k,"y1",ft),o(k,"x2",T-p.right),o(k,"y2",ut),o(G,"x",p.left-6),o(G,"y",yt),d(lt,gt)},[()=>O(t(f)),()=>O(t(f)),()=>O(t(f))+4,()=>t(f).toFixed(2)]),s(B,S)});var y=e(h),P=e(y),R=e(P),H=e(R),X=e(H);Bt(X,17,()=>t(C),ce,(B,f,S)=>{var k=Sa();o(k,"cy",$-6),N(G=>{o(k,"cx",G),o(k,"fill",t(f).predictorWon?"var(--sig-success)":"var(--sig-danger)"),o(k,"opacity",t(f).predictorWon?.8:.5)},[()=>Y(S)]),s(B,k)});var z=e(X);Bt(z,17,()=>t(C),ce,(B,f,S)=>{var k=Ca(),G=j(k);o(G,"y",0),o(G,"height",$);var lt=e(G);{var ft=ut=>{var yt=ja(),gt=j(yt),jt=e(gt),Jt=e(jt);N((Dt,i,l,W,F,U)=>{o(gt,"x1",Dt),o(gt,"y1",p.top),o(gt,"x2",i),o(gt,"y2",$-p.bottom),o(jt,"cx",l),o(jt,"cy",W),o(Jt,"cx",F),o(Jt,"cy",U)},[()=>Y(S),()=>Y(S),()=>Y(S),()=>O(t(f).baselineNdcg),()=>Y(S),()=>O(t(f).predictorNdcg)]),s(ut,yt)};nt(lt,ut=>{t(A)===S&&ut(ft)})}N((ut,yt)=>{o(G,"x",ut),o(G,"width",yt)},[()=>Y(S)-Math.max(x/t(C).length,16)/2,()=>Math.max(x/t(C).length,16)]),Ce("mouseenter",G,()=>b(A,S,!0)),Ce("mouseleave",G,()=>b(A,null)),s(B,k)});var at=e(z);o(at,"y1",10),o(at,"y2",10);var ct=e(at);o(ct,"y",14);var ot=e(ct);o(ot,"y1",10),o(ot,"y2",10);var St=e(ot);o(St,"y",14),a(w);var pt=e(w);{var xt=B=>{const f=I(()=>t(C)[t(A)]);var S=Fa(),k=r(S),G=r(k,!0);a(k);var lt=e(k,2),ft=r(lt),ut=e(r(ft),2),yt=r(ut,!0);a(ut),a(ft);var gt=e(ft,2),jt=e(r(gt),2),Jt=r(jt,!0);a(jt),a(gt);var Dt=e(gt,2);let i;var l=r(Dt);a(Dt),a(lt);var W=e(lt,2);{var F=U=>{var J=Ma(),_=r(J,!0);a(J),N(()=>d(_,t(f).project)),s(U,J)};nt(W,U=>{t(f).project&&U(F)})}a(S),N((U,J,_,tt)=>{d(G,U),d(yt,J),d(Jt,_),i=Ne(Dt,1,"sig-label",null,i,{"text-[var(--sig-success)]":t(f).margin>0,"text-[var(--sig-danger)]":t(f).margin<0}),d(l,`${t(f).margin>0?"+":""}${tt??""}`)},[()=>mt(t(f).createdAt),()=>t(f).baselineNdcg.toFixed(3),()=>t(f).predictorNdcg.toFixed(3),()=>t(f).margin.toFixed(3)]),s(B,S)};nt(pt,B=>{t(A)!==null&&t(C)[t(A)]&&B(xt)})}N((B,f)=>{o(y,"x",p.left-6),o(y,"y",B),o(P,"x",p.left-6),o(P,"y",f),o(R,"points",t(Pt)),o(H,"points",t(M)),o(at,"x1",T-p.right-160),o(at,"x2",T-p.right-146),o(ct,"x",T-p.right-142),o(ot,"x1",T-p.right-80),o(ot,"x2",T-p.right-66),o(St,"x",T-p.right-62)},[()=>O(1)+4,()=>O(0)+4]),s(n,u)};nt(Q,n=>{t(C).length===0?n(m):n(g,-1)})}s(wt,q),se()}var Ea=v('<div class="flex items-center justify-center col-span-full row-span-full"><span class="sig-label text-[var(--sig-text-muted)]">loading predictor data...</span></div>'),Ra=v('<div class="flex items-center justify-center col-span-full row-span-full"><span class="sig-label text-[var(--sig-text-muted)]">unable to reach predictor -- check daemon status</span></div>'),Ba=v("Predictor <!>",1),Da=v(`<p class="sig-label text-[var(--sig-text-muted)]">The predictive memory scorer learns which memories matter most for each
2
2
  session. Enable it in your pipeline configuration to start training.</p>`),La=v("<!> <!>",1),Oa=v('<div class="flex items-center justify-center col-span-full row-span-full"><!></div>'),za=v('<!> <div class="flex flex-col items-center justify-center gap-2 p-3 bg-card rounded-lg border border-border border-dashed"><span class="sig-eyebrow tracking-wider text-[var(--sig-text-muted)]">predictor model</span> <span class="sig-label text-[var(--sig-text-muted)]">collecting training data</span> <div class="w-full max-w-[180px] space-y-1"><div class="flex justify-between sig-meta text-[var(--sig-text-muted)]"><span> </span> <span> </span></div> <div class="w-full h-1.5 rounded-full bg-[var(--sig-surface-raised)] overflow-hidden"><div class="h-full rounded-full bg-[var(--sig-accent)] transition-all duration-300 animate-pulse"></div></div></div> <span class="sig-meta text-[var(--sig-text-muted)] max-w-[200px] text-center">needs more sessions before it can start ranking</span></div>',1),Wa=v("<!> <!>",1),Ha=v('<div class="sig-label text-[var(--sig-success)]"> </div>'),Ga=v('<div class="sig-label text-[var(--sig-danger)]"> </div>'),qa=v("<!> details <!>",1),Ja=v('<tr class="border-b border-[var(--sig-border)] border-opacity-30"><td class="py-1 pr-3"><span></span> </td><td class="text-right py-1 px-2"> </td><td class="text-right py-1 px-2"> </td><td> </td><td class="py-1 px-2 max-w-[120px] truncate"> </td><td class="py-1 pl-2 text-[var(--sig-text-muted)]"> </td></tr>'),Ka=v('<div><span class="sig-eyebrow text-[var(--sig-text-muted)]">recent comparisons</span> <table class="w-full sig-label mt-1"><thead><tr class="text-[var(--sig-text-muted)] border-b border-[var(--sig-border)]"><th class="text-left py-1 pr-3">session</th><th class="text-right py-1 px-2">pred</th><th class="text-right py-1 px-2">base</th><th class="text-right py-1 px-2">margin</th><th class="text-left py-1 px-2">project</th><th class="text-left py-1 pl-2">time</th></tr></thead><tbody></tbody></table></div>'),Va=v('<tr class="border-b border-[var(--sig-border)] border-opacity-30"><td class="py-1 pr-3"> </td><td class="text-right py-1 px-2"> </td><td class="text-right py-1 px-2"> </td><td class="text-right py-1 px-2"> </td><td class="text-right py-1 px-2"> </td><td class="py-1 pl-2 text-[var(--sig-text-muted)]"> </td></tr>'),Ya=v('<div><span class="sig-eyebrow text-[var(--sig-text-muted)]">training history</span> <table class="w-full sig-label mt-1"><thead><tr class="text-[var(--sig-text-muted)] border-b border-[var(--sig-border)]"><th class="text-left py-1 pr-3">version</th><th class="text-right py-1 px-2">loss</th><th class="text-right py-1 px-2">samples</th><th class="text-right py-1 px-2">duration</th><th class="text-right py-1 px-2">canary</th><th class="text-left py-1 pl-2">time</th></tr></thead><tbody></tbody></table></div>'),Za=v('<div class="flex items-start gap-2 sig-label"><span class="text-[var(--sig-text-muted)] shrink-0"> </span> <span class="text-[var(--sig-danger)] font-mono"> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),Qa=v('<div><span class="sig-eyebrow text-[var(--sig-text-muted)]">errors</span> <div class="space-y-1 mt-1"></div></div>'),Ua=v('<div class="mt-2 max-h-[200px] overflow-y-auto space-y-3 pr-1"><!> <!> <!></div>'),Xa=v("<!> <!>",1),tr=v('<!> <div class="grid grid-cols-2 gap-3"><!></div> <div class="relative min-h-0"><!></div> <div class="space-y-1.5"><!> <!></div>',1),er=v('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="grid flex-1 min-h-0 overflow-y-auto gap-3 p-3" style="grid-template-rows: auto auto auto 1fr auto;"><!></div></div>');function pr(wt,c){re(c,!0);const p="";let T=V(null),$=V(null),x=V(qt([])),rt=V(qt([])),C=V(!0),Y=V(!1),O=V(null),st=V(null),Pt=V(0),M=V(qt([])),Z=V(!1);const A="signet-predictor-train-config";function mt(){try{const i=localStorage.getItem(A);if(i)return JSON.parse(i)}catch{}return{epochs:3,limit:5e3}}function q(i,l){localStorage.setItem(A,JSON.stringify({epochs:i,limit:l}))}const Q=mt();let m=V(qt(Q.epochs)),g=V(qt(Q.limit)),n=10,u=V(qt([])),w=V(qt([]));const h=I(()=>t(T)!==null&&!t(T).enabled),y=I(()=>t($)!==null&&!t($).coldStartExited&&t($).sidecarAlive),P=I(()=>t($)!==null&&!t($).sidecarAlive&&t(T)!==null&&t(T).enabled),R=10,H=I(()=>Math.min(1,t(x).length/R)),X=I(()=>t(x).length===0?0:t(x).filter(l=>l.predictorWon).length/t(x).length),z=I(()=>t(x).length===0?0:t(x).reduce((i,l)=>i+l.predictorNdcg,0)/t(x).length),at=I(()=>t(x).length===0?0:t(x).reduce((i,l)=>i+l.baselineNdcg,0)/t(x).length),ct=I(()=>t(x).length===0?0:t(x).reduce((i,l)=>i+l.scorerConfidence,0)/t(x).length),ot=I(()=>[{label:"sessions evaluated",value:`${t(x).length}`},{label:"avg confidence",value:t(ct).toFixed(2)}]),St=I(()=>[{label:"win rate",value:`${Math.round(t(X)*100)}%`,tooltip:"Sessions where predictor ranked better than heuristic baseline."},{label:"training pairs",value:t(Pt).toLocaleString(),tooltip:"Memory-relevance examples the model has learned from."},{label:"model",value:t($)?`v${t($).modelVersion} ${t($).lastTrainedAt?`· ${G(t($).lastTrainedAt)}`:""}`:"-"}]);let pt=V(!1),xt=V(!1);async function B(){if(!t(pt)){b(pt,!0),b(C,t(T)===null);try{const[i,l,W,F,U,J]=await Promise.allSettled([fetch(`${p}/api/predictor/status`),fetch(`${p}/api/diagnostics/predictor`),fetch(`${p}/api/predictor/comparisons?limit=50`),fetch(`${p}/api/predictor/training?limit=10`),fetch(`${p}/api/analytics/errors`),fetch(`${p}/api/predictor/training-pairs-count`)]);if(i.status==="fulfilled"&&i.value.ok&&b(T,await i.value.json(),!0),l.status==="fulfilled"&&l.value.ok&&b($,await l.value.json(),!0),W.status==="fulfilled"&&W.value.ok){const _=await W.value.json();b(x,_.items??[],!0)}if(F.status==="fulfilled"&&F.value.ok){const _=await F.value.json();b(rt,_.items??[],!0)}if(U.status==="fulfilled"&&U.value.ok){const tt=(await U.value.json()).errors??[];b(M,tt.filter(Kt=>Kt.stage==="predictor"),!0)}if(J.status==="fulfilled"&&J.value.ok){const _=await J.value.json();b(Pt,_.count??0,!0)}}catch{}t(T)===null&&b(xt,!0),b(C,!1),b(pt,!1),f().catch(()=>{})}}async function f(){try{if(t(x).length===0)return;const i=t(x)[0],l=i.predictorTopIds??[],W=i.baselineTopIds??[],F=[...new Set([...l.slice(0,5),...W.slice(0,5)])];if(F.length===0)return;const U=await Promise.allSettled(F.map(_=>fetch(`${p}/api/memory/${_}`).then(tt=>tt.ok?tt.json():null))),J=new Map;for(let _=0;_<F.length;_++){const tt=U[_];tt.status==="fulfilled"&&tt.value!==null&&J.set(F[_],tt.value.content??"")}b(u,l.slice(0,5).filter(_=>J.has(_)).map(_=>({id:_,content:J.get(_)??""})),!0),b(w,W.slice(0,5).filter(_=>J.has(_)).map(_=>({id:_,content:J.get(_)??""})),!0)}catch{b(u,[],!0),b(w,[],!0)}}async function S(){b(Y,!0),b(O,null),b(st,null);try{const i=await fetch(`${p}/api/predictor/train`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({epochs:t(m),limit:t(g)})}),l=await i.json();i.ok?(b(O,l,!0),await B()):b(st,l.error??`HTTP ${i.status}`,!0)}catch(i){b(st,String(i),!0)}b(Y,!1)}function k(i){const l=new Date(i);return Number.isNaN(l.getTime())?i:l.toLocaleString(void 0,{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function G(i){const l=Date.now()-new Date(i).getTime();if(Number.isNaN(l))return i;const W=Math.floor(l/6e4);if(W<1)return"just now";if(W<60)return`${W}m ago`;const F=Math.floor(W/60);return F<24?`${F}h ago`:`${Math.floor(F/24)}d ago`}ze(()=>{B();const i=setInterval(B,15e3);return()=>clearInterval(i)});var lt=er(),ft=r(lt);ta(ft,{title:"Predictor",children:(i,l)=>{ea(i,{group:"engine",get tabs(){return Je},get activeTab(){return qe.activeTab},onselect:(W,F)=>Ge(F)})}});var ut=e(ft,2),yt=r(ut);{var gt=i=>{var l=Ea();s(i,l)},jt=i=>{var l=Ra();s(i,l)},Jt=i=>{var l=Oa(),W=r(l);L(W,()=>Ve,(F,U)=>{U(F,{class:"max-w-md",children:(J,_)=>{var tt=La(),Kt=j(tt);L(Kt,()=>Ye,(Vt,Xt)=>{Xt(Vt,{children:(te,fe)=>{var D=Ut(),K=j(D);L(K,()=>Ze,(et,it)=>{it(et,{class:"flex items-center gap-2 text-sm",children:(kt,Lt)=>{vt();var Ct=Ba(),Ot=e(j(Ct));ue(Ot,{variant:"outline",children:(Mt,Yt)=>{vt();var Zt=$t("disabled");s(Mt,Zt)},$$slots:{default:!0}}),s(kt,Ct)},$$slots:{default:!0}})}),s(te,D)},$$slots:{default:!0}})});var ne=e(Kt,2);L(ne,()=>Ke,(Vt,Xt)=>{Xt(Vt,{children:(te,fe)=>{var D=Da();s(te,D)},$$slots:{default:!0}})}),s(J,tt)},$$slots:{default:!0}})}),a(l),s(i,l)},Dt=i=>{var l=tr(),W=j(l);{let D=I(()=>t($)?.status??"unknown"),K=I(()=>t($)?.alpha??1),et=I(()=>t($)?.sidecarAlive??!1);ma(W,{get healthStatus(){return t(D)},get alpha(){return t(K)},get winRate(){return t(X)},get sidecarAlive(){return t(et)},get training(){return t(Y)},get loading(){return t(C)},get trainingPairs(){return t(Pt)},get trainEpochs(){return t(m)},get trainLimit(){return t(g)},trainInterval:n,onTrain:S,onRefresh:B,onEpochsChange:it=>{b(m,it,!0),q(it,t(g))},onLimitChange:it=>{b(g,it,!0),q(t(m),it)}})}var F=e(W,2),U=r(F);{var J=D=>{var K=za(),et=j(K);Pe(et,{side:"baseline",get ndcg(){return t(at)},get topPicks(){return t(w)},get stats(){return t(ot)}});var it=e(et,2),kt=e(r(it),4),Lt=r(kt),Ct=r(Lt),Ot=r(Ct);a(Ct);var Mt=e(Ct,2),Yt=r(Mt);a(Mt),a(Lt);var Zt=e(Lt,2),Ft=r(Zt);a(Zt),a(kt),vt(2),a(it),N(zt=>{d(Ot,`${t(x).length??""} / 10 sessions`),d(Yt,`${zt??""}%`),ke(Ft,`width: ${t(H)*100}%`)},[()=>Math.round(t(H)*100)]),s(D,K)},_=D=>{var K=Wa(),et=j(K);Pe(et,{side:"baseline",get ndcg(){return t(at)},get topPicks(){return t(w)},get stats(){return t(ot)}});var it=e(et,2);Pe(it,{side:"predictor",get ndcg(){return t(z)},get topPicks(){return t(u)},get stats(){return t(St)},get offline(){return t(P)}}),s(D,K)};nt(U,D=>{t(y)?D(J):D(_,-1)})}a(F);var tt=e(F,2),Kt=r(tt);Aa(Kt,{get comparisons(){return t(x)}}),a(tt);var ne=e(tt,2),Vt=r(ne);{var Xt=D=>{var K=Ha(),et=r(K);a(K),N((it,kt)=>d(et,`trained v${t(O).step??""} -- ${t(O).samples_used??""} samples, loss ${it??""}, ${kt??""}s`),[()=>t(O).loss.toFixed(4),()=>(t(O).duration_ms/1e3).toFixed(1)]),s(D,K)},te=D=>{var K=Ga(),et=r(K,!0);a(K),N(()=>d(et,t(st))),s(D,K)};nt(Vt,D=>{t(O)?D(Xt):t(st)&&D(te,1)})}var fe=e(Vt,2);L(fe,()=>Xe,(D,K)=>{K(D,{get open(){return t(Z)},set open(et){b(Z,et,!0)},children:(et,it)=>{var kt=Xa(),Lt=j(kt);L(Lt,()=>Qe,(Ot,Mt)=>{Mt(Ot,{class:"flex items-center gap-1.5 sig-label text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] transition-colors",children:(Yt,Zt)=>{var Ft=qa(),zt=j(Ft);{let Wt=I(()=>t(Z)?"0deg":"-90deg");oa(zt,{class:"w-3 h-3 transition-transform duration-200",get style(){return`transform: rotate(${t(Wt)??""})`}})}var me=e(zt,2);{var oe=Wt=>{ue(Wt,{variant:"destructive",class:"text-[8px] px-1 py-0 ml-1",children:(_e,Te)=>{vt();var dt=$t();N(()=>d(dt,t(M).length)),s(_e,dt)},$$slots:{default:!0}})};nt(me,Wt=>{t(M).length>0&&Wt(oe)})}s(Yt,Ft)},$$slots:{default:!0}})});var Ct=e(Lt,2);L(Ct,()=>Ue,(Ot,Mt)=>{Mt(Ot,{children:(Yt,Zt)=>{var Ft=Ua(),zt=r(Ft);{var me=dt=>{var _t=Ka(),It=e(r(_t),2),Ht=e(r(It));Bt(Ht,21,()=>t(x).slice(0,15),ht=>ht.sessionKey,(ht,E)=>{var bt=Ja(),Nt=r(bt),At=r(Nt);let Et;var Qt=e(At);a(Nt);var Tt=e(Nt),ee=r(Tt,!0);a(Tt);var Gt=e(Tt),he=r(Gt,!0);a(Gt);var Rt=e(Gt);let le;var de=r(Rt);a(Rt);var ae=e(Rt),be=r(ae,!0);a(ae);var ve=e(ae),ye=r(ve,!0);a(ve),a(bt),N(($e,Me,Fe,Ie,Ae)=>{Et=Ne(At,1,"w-2 h-2 inline-block rounded-full mr-1",null,Et,{"bg-[var(--sig-success)]":t(E).predictorWon,"bg-[var(--sig-danger)]":!t(E).predictorWon}),d(Qt,` ${$e??""}`),d(ee,Me),d(he,Fe),le=Ne(Rt,1,"text-right py-1 px-2",null,le,{"text-[var(--sig-success)]":t(E).margin>0,"text-[var(--sig-danger)]":t(E).margin<0}),d(de,`${t(E).margin>0?"+":""}${Ie??""}`),d(be,t(E).project??"-"),d(ye,Ae)},[()=>t(E).sessionKey.slice(0,8),()=>t(E).predictorNdcg.toFixed(3),()=>t(E).baselineNdcg.toFixed(3),()=>t(E).margin.toFixed(3),()=>k(t(E).createdAt)]),s(ht,bt)}),a(Ht),a(It),a(_t),s(dt,_t)};nt(zt,dt=>{t(x).length>0&&dt(me)})}var oe=e(zt,2);{var Wt=dt=>{var _t=Ya(),It=e(r(_t),2),Ht=e(r(It));Bt(Ht,21,()=>t(rt),ht=>ht.id,(ht,E)=>{var bt=Va(),Nt=r(bt),At=r(Nt);a(Nt);var Et=e(Nt),Qt=r(Et,!0);a(Et);var Tt=e(Et),ee=r(Tt,!0);a(Tt);var Gt=e(Tt),he=r(Gt);a(Gt);var Rt=e(Gt),le=r(Rt,!0);a(Rt);var de=e(Rt),ae=r(de,!0);a(de),a(bt),N((be,ve,ye,$e)=>{d(At,`v${t(E).modelVersion??""}`),d(Qt,be),d(ee,t(E).sampleCount),d(he,`${ve??""}s`),d(le,ye),d(ae,$e)},[()=>t(E).loss.toFixed(4),()=>(t(E).durationMs/1e3).toFixed(1),()=>t(E).canaryNdcg!==null?t(E).canaryNdcg.toFixed(3):"-",()=>k(t(E).createdAt)]),s(ht,bt)}),a(Ht),a(It),a(_t),s(dt,_t)};nt(oe,dt=>{t(rt).length>0&&dt(Wt)})}var _e=e(oe,2);{var Te=dt=>{var _t=Qa(),It=e(r(_t),2);Bt(It,21,()=>t(M).slice(0,10),ce,(Ht,ht)=>{var E=Za(),bt=r(E),Nt=r(bt,!0);a(bt);var At=e(bt,2),Et=r(At,!0);a(At);var Qt=e(At,2),Tt=r(Qt,!0);a(Qt),a(E),N(ee=>{d(Nt,ee),d(Et,t(ht).code),d(Tt,t(ht).message)},[()=>k(t(ht).timestamp)]),s(Ht,E)}),a(It),a(_t),s(dt,_t)};nt(_e,dt=>{t(M).length>0&&dt(Te)})}a(Ft),s(Yt,Ft)},$$slots:{default:!0}})}),s(et,kt)},$$slots:{default:!0}})}),a(ne),s(i,l)};nt(yt,i=>{t(C)&&!t(T)&&!t(xt)?i(gt):t(xt)&&!t(T)?i(jt,1):t(h)?i(Jt,2):i(Dt,-1)})}a(ut),a(lt),s(wt,lt),se()}export{pr as default};
@@ -1,4 +1,4 @@
1
- import{p as Ue,g as Mt,q as Sr,i as e,v as w,Q as xt,F as sr,b as s,d as qe,o as ie,m as d,s as Kt,c as Ee,f as S,a as Ct,n as Jt,r as Wt,j as f,t as o,l as p,k as B,w as Ve,y as ee,z as Y,B as It,x as nt,u as c,a6 as kr,e as Gt,N as yr,$ as xr,O as Ke,h as W,af as wr,A as Te,J as Pr,E as Cr,ad as ir,P as Lt,a0 as Ft,D as Er,aQ as Nr,aR as de,aS as Ar,U as Mr}from"./Bh3nIh1p.js";import{i as Tr}from"./NWwjXzQ7.js";import{I as Yt,B as er,b5 as Ir,b6 as ar,t as At,b7 as Fr,b8 as Or,b9 as Ut,ba as Vr,bb as Dr,bc as Lr,bd as Rr,be as Br,bf as dr,f as zr,n as jr,E as Ur}from"./CUv1ipDD.js";import{g as qr,p as cr,s as ur}from"./Cik1Y8bQ.js";import{E as tr,a as vr,C as Hr,y as gr,m as mr,k as pr,l as Gr,h as Kr,b as Jr,c as Wr,f as Yr,d as Zr,e as Qr,g as Xr,s as ea,i as ta,j as ra,n as aa,o as na,p as sa,q as oa}from"./DM4-p3ZJ.js";import{P as la}from"./W8pAe7Rx.js";import{P as ia,a as da,b as ca}from"./DXUdNJwS.js";import{P as ua}from"./Bfse3fCo.js";import{T as va}from"./CjrslgAi.js";import{L as ga}from"./DTGdDnRl.js";import{C as fr}from"./C814GmN2.js";import{I as ye}from"./D5M5SoW3.js";import{T as ma}from"./DQdDyGh1.js";import{R as pa}from"./qzJ08fYT.js";import{c as mt,S as pt,a as ft,b as _e}from"./BgRGbeQc.js";import{C as fa}from"./4xCZQ0Ho.js";import{S as gt}from"./sYfvj8ee.js";var ha=d('<div class="code-editor svelte-c4vs74"></div>');function ba(b,t){Ue(t,!0);let r=Mt(t,"readonly",3,!1),i=ie(void 0),l=ie(void 0);const E=new Hr;function u(){return tr.theme({"&":{backgroundColor:"var(--sig-bg)",color:"var(--sig-text-bright)",fontFamily:"var(--font-mono)",fontSize:"13px",height:"100%"},".cm-content":{caretColor:"var(--sig-text-bright)",fontFamily:"var(--font-mono)",lineHeight:"1.8",padding:"var(--space-md) 0"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--sig-text-bright)"},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground":{backgroundColor:"rgba(255, 255, 255, 0.08) !important"},".cm-activeLine":{backgroundColor:"rgba(255, 255, 255, 0.03)"},".cm-gutters":{backgroundColor:"var(--sig-surface)",color:"var(--sig-text-muted)",border:"none",borderRight:"1px solid var(--sig-border)",fontFamily:"var(--font-mono)",fontSize:"11px"},".cm-activeLineGutter":{backgroundColor:"rgba(255, 255, 255, 0.04)",color:"var(--sig-text)"},".cm-foldGutter":{color:"var(--sig-text-muted)"},"&.cm-focused":{outline:"none"},".cm-matchingBracket":{backgroundColor:"rgba(255, 255, 255, 0.1)",color:"var(--sig-text-bright)"},".cm-searchMatch":{backgroundColor:"rgba(255, 255, 255, 0.12)"},".cm-selectionMatch":{backgroundColor:"rgba(255, 255, 255, 0.06)"},".cm-line":{padding:"0 var(--space-md)"},".cm-scroller":{overflow:"auto"}},{dark:!0})}function y(){return t.language==="yaml"?gr():t.language==="markdown"?mr():[]}function k(){const x=pr.of([{key:"Mod-s",run:()=>(t.onsave?.(),!0)}]);return[Gr(),Kr(),Jr(),Wr(),Yr(),Zr(),Qr(),Xr(),ea(oa,{fallback:!0}),pr.of([...ta,...ra,...aa,...na,...sa]),u(),E.of(y()),x,tr.updateListener.of(_=>{_.docChanged&&t.onchange?.(_.state.doc.toString())}),...r()?[vr.readOnly.of(!0)]:[]]}Sr(()=>{if(e(i))return w(l,new tr({state:vr.create({doc:t.value,extensions:k()}),parent:e(i)}),!0),()=>{e(l)?.destroy(),w(l,void 0)}}),xt(()=>{if(!e(l))return;const x=e(l).state.doc.toString();t.value!==x&&e(l).dispatch({changes:{from:0,to:x.length,insert:t.value}})}),xt(()=>{const x=t.language;e(l)&&e(l).dispatch({effects:E.reconfigure(x==="yaml"?gr():x==="markdown"?mr():[])})});var h=ha();sr(h,x=>w(i,x),()=>e(i)),s(b,h),qe()}function _a(b,t){Ue(t,!0);let r=Wt(t,["$$slots","$$events","$$legacy"]);const i=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];Yt(b,Kt({name:"eye"},()=>r,{get iconNode(){return i},children:(l,E)=>{var u=Ee(),y=S(u);Ct(y,()=>t.children??Jt),s(l,u)},$$slots:{default:!0}})),qe()}var ya=d('<span> <span class="md-viewer-budget-pct svelte-ebmw30"> </span></span>'),xa=d('<span class="md-viewer-budget svelte-ebmw30"> </span>'),$a=d('<span class="md-viewer-save-meta svelte-ebmw30"> </span>'),Sa=d('<span class="md-viewer-save-meta svelte-ebmw30"> </span>'),ka=d("<!> <span>Preview</span>",1),wa=d("<!> <span>Edit</span>",1),Pa=d('<div class="md-viewer-prose prose svelte-ebmw30"></div>'),Ca=d('<div class="md-viewer svelte-ebmw30"><div class="md-viewer-toolbar svelte-ebmw30"><span class="md-viewer-filename svelte-ebmw30"><span class="md-viewer-path svelte-ebmw30">~/.agents/</span> </span> <!> <div class="md-viewer-actions svelte-ebmw30"><!> <!> <span> </span> <!> <!> <!></div></div> <!></div>');function Ea(b,t){Ue(t,!0);let r=Mt(t,"dirty",3,!1),i=Mt(t,"saving",3,!1),l=Mt(t,"saveDisabled",3,!1);function E(N){const z=N.match(/\sclass=(['"])(.*?)\1/i);if(!z)return`${N} class="md-boxed-heading"`;const re=z[1],q=z[2].split(/\s+/).filter(Boolean);return q.includes("md-boxed-heading")||q.push("md-boxed-heading"),N.replace(/\sclass=(['"])(.*?)\1/i,` class=${re}${q.join(" ")}${re}`)}function u(N){return N.replace(/<h([1-6])(\s[^>]*)?>([\s\S]*?)<\/h\1>/gi,(z,re,q="",ve="")=>{const be=E(q);return`<h${re}${be}>${ve}</h${re}>`})}let y=c(()=>t.content?.length??0),k=c(()=>t.charBudget?Math.round(e(y)/t.charBudget*100):0),h=ie(!1),x=c(()=>{if(!t.content)return"";const N=qr.parse(t.content,{async:!1});return u(N)});var _=Ca(),H=f(_),A=f(H),C=o(f(A),1,!0);p(A);var I=o(A,2);{var V=N=>{var z=ya();let re;var q=f(z),ve=o(q),be=f(ve);p(ve),p(z),ee((we,me)=>{re=It(z,1,"md-viewer-budget svelte-ebmw30",null,re,{"over-budget":e(y)>t.charBudget,"near-budget":e(k)>=80&&e(y)<=t.charBudget}),Y(q,`${we??""} / ${me??""} chars `),Y(be,`(${e(k)??""}%)`)},[()=>e(y).toLocaleString(),()=>t.charBudget.toLocaleString()]),s(N,z)},j=N=>{var z=xa(),re=f(z);p(z),ee(q=>Y(re,`${q??""} chars`),[()=>e(y).toLocaleString()]),s(N,z)};B(I,N=>{t.charBudget?N(V):N(j,-1)})}var U=o(I,2),F=f(U);{var G=N=>{var z=$a(),re=f(z,!0);p(z),ee(()=>Y(re,t.lastSavedText)),s(N,z)};B(F,N=>{t.lastSavedText&&N(G)})}var m=o(F,2);{var v=N=>{var z=Sa(),re=f(z,!0);p(z),ee(()=>Y(re,t.saveFeedback)),s(N,z)};B(m,N=>{t.saveFeedback&&N(v)})}var T=o(m,2);let P;var Z=f(T,!0);p(T);var ne=o(T,2);{var ge=N=>{er(N,{variant:"outline",size:"sm",class:`h-auto rounded-lg gap-1 font-[family-name:var(--font-mono)] text-[10px]
1
+ import{p as Ue,g as Mt,q as Sr,i as e,v as w,Q as xt,F as sr,b as s,d as qe,o as ie,m as d,s as Kt,c as Ee,f as S,a as Ct,n as Jt,r as Wt,j as f,t as o,l as p,k as B,w as Ve,y as ee,z as Y,B as It,x as nt,u as c,a6 as kr,e as Gt,N as yr,$ as xr,O as Ke,h as W,af as wr,A as Te,J as Pr,E as Cr,ad as ir,P as Lt,a0 as Ft,D as Er,aQ as Nr,aR as de,aS as Ar,U as Mr}from"./Bh3nIh1p.js";import{i as Tr}from"./JWLx2oEy.js";import{I as Yt,B as er,b5 as Ir,b6 as ar,t as At,b7 as Fr,b8 as Or,b9 as Ut,ba as Vr,bb as Dr,bc as Lr,bd as Rr,be as Br,bf as dr,f as zr,n as jr,E as Ur}from"./wgiAyJSz.js";import{g as qr,p as cr,s as ur}from"./Cik1Y8bQ.js";import{E as tr,a as vr,C as Hr,y as gr,m as mr,k as pr,l as Gr,h as Kr,b as Jr,c as Wr,f as Yr,d as Zr,e as Qr,g as Xr,s as ea,i as ta,j as ra,n as aa,o as na,p as sa,q as oa}from"./DM4-p3ZJ.js";import{P as la}from"./D1byhEZI.js";import{P as ia,a as da,b as ca}from"./DyshuDVa.js";import{P as ua}from"./Bfse3fCo.js";import{T as va}from"./CjrslgAi.js";import{L as ga}from"./IeCQcJ4C.js";import{C as fr}from"./Bro-MZqB.js";import{I as ye}from"./CopEEOFw.js";import{T as ma}from"./iHysDaGx.js";import{R as pa}from"./XHCSicSZ.js";import{c as mt,S as pt,a as ft,b as _e}from"./gyguWWMz.js";import{C as fa}from"./B8zsoDsn.js";import{S as gt}from"./CtK2jwAL.js";var ha=d('<div class="code-editor svelte-c4vs74"></div>');function ba(b,t){Ue(t,!0);let r=Mt(t,"readonly",3,!1),i=ie(void 0),l=ie(void 0);const E=new Hr;function u(){return tr.theme({"&":{backgroundColor:"var(--sig-bg)",color:"var(--sig-text-bright)",fontFamily:"var(--font-mono)",fontSize:"13px",height:"100%"},".cm-content":{caretColor:"var(--sig-text-bright)",fontFamily:"var(--font-mono)",lineHeight:"1.8",padding:"var(--space-md) 0"},".cm-cursor, .cm-dropCursor":{borderLeftColor:"var(--sig-text-bright)"},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground":{backgroundColor:"rgba(255, 255, 255, 0.08) !important"},".cm-activeLine":{backgroundColor:"rgba(255, 255, 255, 0.03)"},".cm-gutters":{backgroundColor:"var(--sig-surface)",color:"var(--sig-text-muted)",border:"none",borderRight:"1px solid var(--sig-border)",fontFamily:"var(--font-mono)",fontSize:"11px"},".cm-activeLineGutter":{backgroundColor:"rgba(255, 255, 255, 0.04)",color:"var(--sig-text)"},".cm-foldGutter":{color:"var(--sig-text-muted)"},"&.cm-focused":{outline:"none"},".cm-matchingBracket":{backgroundColor:"rgba(255, 255, 255, 0.1)",color:"var(--sig-text-bright)"},".cm-searchMatch":{backgroundColor:"rgba(255, 255, 255, 0.12)"},".cm-selectionMatch":{backgroundColor:"rgba(255, 255, 255, 0.06)"},".cm-line":{padding:"0 var(--space-md)"},".cm-scroller":{overflow:"auto"}},{dark:!0})}function y(){return t.language==="yaml"?gr():t.language==="markdown"?mr():[]}function k(){const x=pr.of([{key:"Mod-s",run:()=>(t.onsave?.(),!0)}]);return[Gr(),Kr(),Jr(),Wr(),Yr(),Zr(),Qr(),Xr(),ea(oa,{fallback:!0}),pr.of([...ta,...ra,...aa,...na,...sa]),u(),E.of(y()),x,tr.updateListener.of(_=>{_.docChanged&&t.onchange?.(_.state.doc.toString())}),...r()?[vr.readOnly.of(!0)]:[]]}Sr(()=>{if(e(i))return w(l,new tr({state:vr.create({doc:t.value,extensions:k()}),parent:e(i)}),!0),()=>{e(l)?.destroy(),w(l,void 0)}}),xt(()=>{if(!e(l))return;const x=e(l).state.doc.toString();t.value!==x&&e(l).dispatch({changes:{from:0,to:x.length,insert:t.value}})}),xt(()=>{const x=t.language;e(l)&&e(l).dispatch({effects:E.reconfigure(x==="yaml"?gr():x==="markdown"?mr():[])})});var h=ha();sr(h,x=>w(i,x),()=>e(i)),s(b,h),qe()}function _a(b,t){Ue(t,!0);let r=Wt(t,["$$slots","$$events","$$legacy"]);const i=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];Yt(b,Kt({name:"eye"},()=>r,{get iconNode(){return i},children:(l,E)=>{var u=Ee(),y=S(u);Ct(y,()=>t.children??Jt),s(l,u)},$$slots:{default:!0}})),qe()}var ya=d('<span> <span class="md-viewer-budget-pct svelte-ebmw30"> </span></span>'),xa=d('<span class="md-viewer-budget svelte-ebmw30"> </span>'),$a=d('<span class="md-viewer-save-meta svelte-ebmw30"> </span>'),Sa=d('<span class="md-viewer-save-meta svelte-ebmw30"> </span>'),ka=d("<!> <span>Preview</span>",1),wa=d("<!> <span>Edit</span>",1),Pa=d('<div class="md-viewer-prose prose svelte-ebmw30"></div>'),Ca=d('<div class="md-viewer svelte-ebmw30"><div class="md-viewer-toolbar svelte-ebmw30"><span class="md-viewer-filename svelte-ebmw30"><span class="md-viewer-path svelte-ebmw30">~/.agents/</span> </span> <!> <div class="md-viewer-actions svelte-ebmw30"><!> <!> <span> </span> <!> <!> <!></div></div> <!></div>');function Ea(b,t){Ue(t,!0);let r=Mt(t,"dirty",3,!1),i=Mt(t,"saving",3,!1),l=Mt(t,"saveDisabled",3,!1);function E(N){const z=N.match(/\sclass=(['"])(.*?)\1/i);if(!z)return`${N} class="md-boxed-heading"`;const re=z[1],q=z[2].split(/\s+/).filter(Boolean);return q.includes("md-boxed-heading")||q.push("md-boxed-heading"),N.replace(/\sclass=(['"])(.*?)\1/i,` class=${re}${q.join(" ")}${re}`)}function u(N){return N.replace(/<h([1-6])(\s[^>]*)?>([\s\S]*?)<\/h\1>/gi,(z,re,q="",ve="")=>{const be=E(q);return`<h${re}${be}>${ve}</h${re}>`})}let y=c(()=>t.content?.length??0),k=c(()=>t.charBudget?Math.round(e(y)/t.charBudget*100):0),h=ie(!1),x=c(()=>{if(!t.content)return"";const N=qr.parse(t.content,{async:!1});return u(N)});var _=Ca(),H=f(_),A=f(H),C=o(f(A),1,!0);p(A);var I=o(A,2);{var V=N=>{var z=ya();let re;var q=f(z),ve=o(q),be=f(ve);p(ve),p(z),ee((we,me)=>{re=It(z,1,"md-viewer-budget svelte-ebmw30",null,re,{"over-budget":e(y)>t.charBudget,"near-budget":e(k)>=80&&e(y)<=t.charBudget}),Y(q,`${we??""} / ${me??""} chars `),Y(be,`(${e(k)??""}%)`)},[()=>e(y).toLocaleString(),()=>t.charBudget.toLocaleString()]),s(N,z)},j=N=>{var z=xa(),re=f(z);p(z),ee(q=>Y(re,`${q??""} chars`),[()=>e(y).toLocaleString()]),s(N,z)};B(I,N=>{t.charBudget?N(V):N(j,-1)})}var U=o(I,2),F=f(U);{var G=N=>{var z=$a(),re=f(z,!0);p(z),ee(()=>Y(re,t.lastSavedText)),s(N,z)};B(F,N=>{t.lastSavedText&&N(G)})}var m=o(F,2);{var v=N=>{var z=Sa(),re=f(z,!0);p(z),ee(()=>Y(re,t.saveFeedback)),s(N,z)};B(m,N=>{t.saveFeedback&&N(v)})}var T=o(m,2);let P;var Z=f(T,!0);p(T);var ne=o(T,2);{var ge=N=>{er(N,{variant:"outline",size:"sm",class:`h-auto rounded-lg gap-1 font-[family-name:var(--font-mono)] text-[10px]
2
2
  font-medium uppercase tracking-[0.1em] px-2 py-[3px]
3
3
  text-[var(--sig-text-muted)] border-[var(--sig-border)]
4
4
  hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]`,get onclick(){return t.ondiscard},children:(z,re)=>{Ve();var q=nt("DISCARD");s(z,q)},$$slots:{default:!0}})};B(ne,N=>{e(h)&&r()&&t.ondiscard&&N(ge)})}var oe=o(ne,2);{var te=N=>{er(N,{variant:"outline",size:"sm",class:`h-auto rounded-lg gap-1 font-[family-name:var(--font-mono)] text-[10px]
@@ -1 +1 @@
1
- import{p as n,s as d,c,f as l,a as i,n as m,b as u,d as f,r as h}from"./Bh3nIh1p.js";import{I as $}from"./CUv1ipDD.js";function P(e,s){n(s,!0);let o=h(s,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];$(e,d({name:"plus"},()=>o,{get iconNode(){return t},children:(r,v)=>{var a=c(),p=l(a);i(p,()=>s.children??m),u(r,a)},$$slots:{default:!0}})),f()}export{P};
1
+ import{p as n,s as d,c,f as l,a as i,n as m,b as u,d as f,r as h}from"./Bh3nIh1p.js";import{I as $}from"./wgiAyJSz.js";function P(e,s){n(s,!0);let o=h(s,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];$(e,d({name:"plus"},()=>o,{get iconNode(){return t},children:(r,v)=>{var a=c(),p=l(a);i(p,()=>s.children??m),u(r,a)},$$slots:{default:!0}})),f()}export{P};
@@ -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,o as h,e as ne,q as Ut,N as oe,$ as Vt,j as n,t as i,l as r,w as Fe,k as $,i as e,y as G,z as O,D as et,ad as zt,O as M,v as s,T as U,u as le,A as tt,B as qt,G as st,m as b,P as Gt,x as at}from"./Bh3nIh1p.js";import{I as Se,as as Kt,at as Bt,au as Xt,n as jt,D as K,av as Wt,t as S,aw as Jt,ax as Qt,ay as Yt,az as Zt}from"./CUv1ipDD.js";import{I as be}from"./D5M5SoW3.js";import{C as rt}from"./C814GmN2.js";import{P as es}from"./BqwVlLRP.js";import{R as ts}from"./BljF1TkL.js";import{T as ss}from"./DJMNV5Zx.js";import{C as as}from"./D4P_efnI.js";import{C as rs}from"./4xCZQ0Ho.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 Ns(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 Kt(),!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 Wt(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 Jt(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(),K();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),K())),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),K())),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(),K())}}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),K())),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(),K())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),K())}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),Te=n(Ce),He=i(n(Te),2),kt=n(He);r(He),r(Te);var Ae=i(Te,2),_t=n(Ae);es(_t,{class:"size-3"}),Fe(2),r(Ae),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(T){s(w,T,!0)}});var y=i(g,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(T){s(N,T,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(T=>{P.disabled=T,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 T;var H=n(x);ns(H,{class:"secrets-secret-icon"});var W=i(H,2),ge=n(W,!0);r(W);var q=i(W,4),te=n(q);{var se=A=>{var Re=us();v(A,Re)},Le=A=>{ss(A,{class:"size-3"})};$(te,A=>{e(E)===e(y)?A(se):A(Le,-1)})}r(q),r(x),G(()=>{T=qt(x,1,"secret-item svelte-k8hi4h",null,T,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(ge,e(y)),q.disabled=e(E)===e(y),et(q,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,A=>ft(A,P)),oe("focus",x,()=>pt(P)),M("click",q,()=>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 qe=i(Oe,2),$e=n(qe),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":""}`);ts(Ct,{get class(){return e(t)}})}r(we),r($e);var Tt=i($e,2);{var At=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),T=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(T,{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(T,2),W=n(H);os(W,{class:"size-3"});var ge=i(W,2),q=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 A=i(se,2),Re=n(A);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(A),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),J=n(Xe),je=n(J);is(je,{class:"size-3"});var We=i(je,2),Lt=n(We,!0);r(We),r(J);var ae=i(J,2),Je=n(ae);ls(Je,{class:"size-3"});var Qe=i(Je,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(q,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),J.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",J,dt),oe("focus",J,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(Tt,t=>{e(j)&&t(At)})}r(qe),r(Ie);var Ke=i(Ie,2),It=n(Ke);{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(Ke),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",Ae,()=>{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{Ns 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,o as h,e as ne,q as Ut,N as oe,$ as Vt,j as n,t as i,l as r,w as Fe,k as $,i as e,y as G,z as O,D as et,ad as zt,O as M,v as s,T as U,u as le,A as tt,B as qt,G as st,m as b,P as Gt,x as at}from"./Bh3nIh1p.js";import{I as Se,as as Kt,at as Bt,au as Xt,n as jt,D as K,av as Wt,t as S,aw as Jt,ax as Qt,ay as Yt,az as Zt}from"./wgiAyJSz.js";import{I as be}from"./CopEEOFw.js";import{C as rt}from"./Bro-MZqB.js";import{P as es}from"./BQrOzRMh.js";import{R as ts}from"./KDZ1i71N.js";import{T as ss}from"./DybLNhTQ.js";import{C as as}from"./DIqOBFdT.js";import{C as rs}from"./B8zsoDsn.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 Ns(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 Kt(),!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 Wt(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 Jt(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(),K();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),K())),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),K())),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(),K())}}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),K())),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(),K())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),K())}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),Te=n(Ce),He=i(n(Te),2),kt=n(He);r(He),r(Te);var Ae=i(Te,2),_t=n(Ae);es(_t,{class:"size-3"}),Fe(2),r(Ae),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(T){s(w,T,!0)}});var y=i(g,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(T){s(N,T,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(T=>{P.disabled=T,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 T;var H=n(x);ns(H,{class:"secrets-secret-icon"});var W=i(H,2),ge=n(W,!0);r(W);var q=i(W,4),te=n(q);{var se=A=>{var Re=us();v(A,Re)},Le=A=>{ss(A,{class:"size-3"})};$(te,A=>{e(E)===e(y)?A(se):A(Le,-1)})}r(q),r(x),G(()=>{T=qt(x,1,"secret-item svelte-k8hi4h",null,T,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(ge,e(y)),q.disabled=e(E)===e(y),et(q,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,A=>ft(A,P)),oe("focus",x,()=>pt(P)),M("click",q,()=>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 qe=i(Oe,2),$e=n(qe),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":""}`);ts(Ct,{get class(){return e(t)}})}r(we),r($e);var Tt=i($e,2);{var At=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),T=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(T,{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(T,2),W=n(H);os(W,{class:"size-3"});var ge=i(W,2),q=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 A=i(se,2),Re=n(A);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(A),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),J=n(Xe),je=n(J);is(je,{class:"size-3"});var We=i(je,2),Lt=n(We,!0);r(We),r(J);var ae=i(J,2),Je=n(ae);ls(Je,{class:"size-3"});var Qe=i(Je,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(q,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),J.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",J,dt),oe("focus",J,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(Tt,t=>{e(j)&&t(At)})}r(qe),r(Ie);var Ke=i(Ie,2),It=n(Ke);{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(Ke),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",Ae,()=>{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{Ns as default};
@@ -1 +1 @@
1
- import{p as w,g as h,c as b,f as u,h as m,au as lt,s as I,i as y,b as n,d as F,r as P,u as M,t as V,A as H,w as st,x as fe,y as A,z as E,k as ve,a as te,av as ot,m as z,aw as dt,ax as ct,ay as ut,az as ft,E as ae,j as B,n as ie,l as N,F as Ie,aA as vt,aB as it,aC as gt,aD as mt,aE as ht,aF as _t,aG as yt,U as He,B as Je,aH as Te,aI as bt,a2 as Ee,aJ as Ue}from"./Bh3nIh1p.js";import{c as k,aZ as Le,I as xt}from"./CUv1ipDD.js";import{C as Ct}from"./4xCZQ0Ho.js";import{C as wt}from"./CX0xp6Vt.js";import{C as We}from"./D4P_efnI.js";var Ft=z("<!> <!>",1),Pt=z("<!> <!>",1),zt=z("<!> <!>",1),kt=z("<!> <!>",1);function ca(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"value",15),t=h(e,"placeholder",15),d=h(e,"weekdayFormat",3,"short"),r=h(e,"buttonVariant",3,"ghost"),c=h(e,"captionLayout",3,"label"),o=h(e,"locale",3,"en-US"),f=h(e,"yearFormat",3,"numeric"),L=h(e,"disableDaysOutsideMonth",3,!1),j=P(e,["$$slots","$$events","$$legacy","ref","value","placeholder","class","weekdayFormat","buttonVariant","captionLayout","locale","months","years","monthFormat","yearFormat","day","disableDaysOutsideMonth"]);const S=M(()=>e.monthFormat?e.monthFormat:c().startsWith("dropdown")?"short":"long");var D=b(),g=u(D);{const _=(v,x)=>{let i=()=>x?.().months,Y=()=>x?.().weekdays;var O=b(),Ze=u(O);m(Ze,()=>Ot,(qe,Ke)=>{Ke(qe,{children:(Qe,aa)=>{var je=kt(),Oe=u(je);m(Oe,()=>Xt,(J,U)=>{U(J,{children:(ge,me)=>{var re=Ft(),ne=u(re);m(ne,()=>Et,(T,le)=>{le(T,{get variant(){return r()}})});var he=V(ne,2);m(he,()=>At,(T,le)=>{le(T,{get variant(){return r()}})}),n(ge,re)},$$slots:{default:!0}})});var Re=V(Oe,2);H(Re,18,i,J=>J,(J,U,ge)=>{var me=b(),re=u(me);m(re,()=>Qt,(ne,he)=>{he(ne,{children:(T,le)=>{var Ye=zt(),Ve=u(Ye);m(Ve,()=>Lt,(_e,ye)=>{ye(_e,{children:(be,$e)=>{var W=b(),se=u(W);m(se,()=>ta,(xe,Z)=>{Z(xe,{get captionLayout(){return c()},get months(){return e.months},get monthFormat(){return y(S)},get years(){return e.years},get yearFormat(){return f()},get month(){return U.value},get locale(){return o()},get monthIndex(){return y(ge)},get placeholder(){return t()},set placeholder(q){t(q)}})}),n(be,W)},$$slots:{default:!0}})});var Xe=V(Ve,2);m(Xe,()=>It,(_e,ye)=>{ye(_e,{children:(be,$e)=>{var W=Pt(),se=u(W);m(se,()=>Vt,(Z,q)=>{q(Z,{children:(Ce,pe)=>{var K=b(),we=u(K);m(we,()=>Ge,(Q,Fe)=>{Fe(Q,{class:"select-none",children:(oe,Ne)=>{var de=b(),Pe=u(de);H(Pe,16,Y,R=>R,(R,Se)=>{var X=b(),ze=u(X);m(ze,()=>Nt,($,p)=>{p($,{children:(ce,Ae)=>{st();var ue=fe();A(ke=>E(ue,ke),[()=>Se.slice(0,2)]),n(ce,ue)},$$slots:{default:!0}})}),n(R,X)}),n(oe,de)},$$slots:{default:!0}})}),n(Ce,K)},$$slots:{default:!0}})});var xe=V(se,2);m(xe,()=>Yt,(Z,q)=>{q(Z,{children:(Ce,pe)=>{var K=b(),we=u(K);H(we,16,()=>U.weeks,Q=>Q,(Q,Fe)=>{var oe=b(),Ne=u(oe);m(Ne,()=>Ge,(de,Pe)=>{Pe(de,{class:"mt-2 w-full",children:(R,Se)=>{var X=b(),ze=u(X);H(ze,16,()=>Fe,$=>$,($,p)=>{var ce=b(),Ae=u(ce);m(Ae,()=>Mt,(ue,ke)=>{ke(ue,{get date(){return p},get month(){return U.value},children:(et,ra)=>{var Be=b(),tt=u(Be);{var at=G=>{var ee=b(),Me=u(ee);{let De=M(()=>({day:p,outsideMonth:!ot(p,U.value)}));te(Me,()=>e.day,()=>y(De))}n(G,ee)},rt=G=>{var ee=b(),Me=u(ee);m(Me,()=>Dt,(De,nt)=>{nt(De,{})}),n(G,ee)};ve(tt,G=>{e.day?G(at):G(rt,-1)})}n(et,Be)},$$slots:{default:!0}})}),n($,ce)}),n(R,X)},$$slots:{default:!0}})}),n(Q,oe)}),n(Ce,K)},$$slots:{default:!0}})}),n(be,W)},$$slots:{default:!0}})}),n(T,Ye)},$$slots:{default:!0}})}),n(J,me)}),n(Qe,je)},$$slots:{default:!0}})}),n(v,O)};let C=M(()=>k("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",e.class));m(g,()=>lt,(v,x)=>{x(v,I({get weekdayFormat(){return d()},get disableDaysOutsideMonth(){return L()},get class(){return y(C)},get locale(){return o()},get monthFormat(){return y(S)},get yearFormat(){return f()}},()=>j,{get value(){return s()},set value(i){s(i)},get ref(){return a()},set ref(i){a(i)},get placeholder(){return t()},set placeholder(i){t(i)},children:_,$$slots:{default:!0}}))})}n(l,D),F()}function Mt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("relative size-(--cell-size) p-0 text-center text-sm focus-within:z-20 [&:first-child[data-selected]_[data-bits-day]]:rounded-s-md [&:last-child[data-selected]_[data-bits-day]]:rounded-e-md",e.class));m(d,()=>dt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Dt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(Le({variant:"ghost"}),"flex size-(--cell-size) flex-col items-center justify-center gap-1 p-0 leading-none font-normal whitespace-nowrap select-none","[&[data-today]:not([data-selected])]:bg-accent [&[data-today]:not([data-selected])]:text-accent-foreground [&[data-today][data-disabled]]:text-muted-foreground","data-[selected]:bg-primary dark:data-[selected]:hover:bg-accent/50 data-[selected]:text-primary-foreground","[&[data-outside-month]:not([data-selected])]:text-muted-foreground [&[data-outside-month]:not([data-selected])]:hover:text-accent-foreground","data-[disabled]:text-muted-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50","data-[unavailable]:text-muted-foreground data-[unavailable]:line-through","dark:hover:text-accent-foreground","focus:border-ring focus:ring-ring/50 focus:relative","[&>span]:text-xs [&>span]:opacity-70",e.class));m(d,()=>ct,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function It(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("mt-4 flex w-full border-collapse flex-col gap-1",e.class));m(d,()=>ut,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Lt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",e.class));m(d,()=>ft,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}var jt=z("<div><!></div>");function Ot(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=jt();ae(t,r=>({class:r,...s}),[()=>k("relative flex flex-col gap-4 md:flex-row",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}function Ge(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("flex",e.class));m(d,()=>vt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Yt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(e.class));m(d,()=>it,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Vt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(e.class));m(d,()=>gt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Nt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("text-muted-foreground w-(--cell-size) rounded-md text-[0.8rem] font-normal",e.class));m(d,()=>mt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}const St=l=>{Ct(l,{class:"size-4"})};function At(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"variant",3,"ghost"),t=P(e,["$$slots","$$events","$$legacy","ref","class","children","variant"]);var d=b(),r=u(d);{let c=M(()=>k(Le({variant:s()}),"size-(--cell-size) bg-transparent p-0 select-none disabled:opacity-50 rtl:rotate-180",e.class)),o=M(()=>e.children||St);m(r,()=>ht,(f,L)=>{L(f,I({get class(){return y(c)},get children(){return y(o)}},()=>t,{get ref(){return a()},set ref(j){a(j)}}))})}n(l,d),F()}const Bt=l=>{wt(l,{class:"size-4"})};function Et(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"variant",3,"ghost"),t=P(e,["$$slots","$$events","$$legacy","ref","class","children","variant"]);var d=b(),r=u(d);{let c=M(()=>k(Le({variant:s()}),"size-(--cell-size) bg-transparent p-0 select-none disabled:opacity-50 rtl:rotate-180",e.class)),o=M(()=>e.children||Bt);m(r,()=>_t,(f,L)=>{L(f,I({get class(){return y(c)},get children(){return y(o)}},()=>t,{get ref(){return a()},set ref(j){a(j)}}))})}n(l,d),F()}var Ut=z("<option> </option>"),Gt=z('<select></select> <span class="[&amp;>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md ps-2 pe-1 text-sm font-medium select-none [&amp;>svg]:size-3.5" aria-hidden="true"> <!></span>',1),Ht=z("<span><!></span>");function Jt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","value","onchange"]);var t=Ht(),d=B(t);{const r=(c,o)=>{let f=()=>o?.().props,L=()=>o?.().monthItems,j=()=>o?.().selectedMonthItem;var S=Gt(),D=u(S);ae(D,()=>({...f(),value:e.value,onchange:e.onchange})),H(D,21,L,v=>v.value,(v,x)=>{var i=Ut(),Y=B(i,!0);N(i);var O={};A(()=>{Te(i,e.value!==void 0?y(x).value===e.value:y(x).value===j().value),E(Y,y(x).label),O!==(O=y(x).value)&&(i.value=(i.__value=y(x).value)??"")}),n(v,i)}),N(D);var g=V(D,2),_=B(g),C=V(_);We(C,{class:"size-4"}),N(g),A(v=>E(_,`${v??""} `),[()=>L().find(v=>v.value===e.value)?.label||j().label]),n(c,S)};m(d,()=>yt,(c,o)=>{o(c,I({class:"dark:bg-popover dark:text-popover-foreground absolute inset-0 opacity-0"},()=>s,{get ref(){return a()},set ref(f){a(f)},child:r,$$slots:{child:!0}}))})}N(t),A(r=>Je(t,1,r),[()=>He(k("has-focus:border-ring border-input has-focus:ring-ring/50 relative flex rounded-md border shadow-xs has-focus:ring-[3px]",e.class))]),n(l,t),F()}var Tt=z("<option> </option>"),Wt=z('<select></select> <span class="[&amp;>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md ps-2 pe-1 text-sm font-medium select-none [&amp;>svg]:size-3.5" aria-hidden="true"> <!></span>',1),Zt=z("<span><!></span>");function qt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","value"]);var t=Zt(),d=B(t);{const r=(c,o)=>{let f=()=>o?.().props,L=()=>o?.().yearItems,j=()=>o?.().selectedYearItem;var S=Wt(),D=u(S);ae(D,()=>({...f(),value:e.value})),H(D,21,L,v=>v.value,(v,x)=>{var i=Tt(),Y=B(i,!0);N(i);var O={};A(()=>{Te(i,e.value!==void 0?y(x).value===e.value:y(x).value===j().value),E(Y,y(x).label),O!==(O=y(x).value)&&(i.value=(i.__value=y(x).value)??"")}),n(v,i)}),N(D);var g=V(D,2),_=B(g),C=V(_);We(C,{class:"size-4"}),N(g),A(v=>E(_,`${v??""} `),[()=>L().find(v=>v.value===e.value)?.label||j().label]),n(c,S)};m(d,()=>bt,(c,o)=>{o(c,I({class:"dark:bg-popover dark:text-popover-foreground absolute inset-0 opacity-0"},()=>s,{get ref(){return a()},set ref(f){a(f)},child:r,$$slots:{child:!0}}))})}N(t),A(r=>Je(t,1,r),[()=>He(k("has-focus:border-ring border-input has-focus:ring-ring/50 relative flex rounded-md border shadow-xs has-focus:ring-[3px]",e.class))]),n(l,t),F()}var Kt=z("<div><!></div>");function Qt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=Kt();ae(t,r=>({...s,class:r}),[()=>k("flex flex-col",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}var Rt=z("<nav><!></nav>");function Xt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=Rt();ae(t,r=>({...s,class:r}),[()=>k("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}var $t=z("<!> <!>",1),pt=z("<!> <!>",1),ea=z("<!> <!>",1);function ta(l,e){w(e,!0);const a=g=>{Jt(g,{get months(){return e.months},get monthFormat(){return e.monthFormat},get value(){return e.month.month},onchange:_=>{if(!t())return;const C=Number.parseInt(_.currentTarget.value),v=t().set({month:C});t(v.subtract({months:d()}))}})},s=g=>{qt(g,{get years(){return e.years},get yearFormat(){return e.yearFormat},get value(){return e.month.year}})};let t=h(e,"placeholder",15),d=h(e,"monthIndex",3,0);function r(g){const _=g.toDate(Ee());return typeof e.yearFormat=="function"?e.yearFormat(_.getFullYear()):new Ue(e.locale,{year:e.yearFormat}).format(_)}function c(g){const _=g.toDate(Ee());return typeof e.monthFormat=="function"?e.monthFormat(_.getMonth()+1):new Ue(e.locale,{month:e.monthFormat}).format(_)}var o=b(),f=u(o);{var L=g=>{var _=$t(),C=u(_);a(C);var v=V(C,2);s(v),n(g,_)},j=g=>{var _=pt(),C=u(_);a(C);var v=V(C,2);{var x=i=>{var Y=fe();A(O=>E(Y,O),[()=>r(t())]),n(i,Y)};ve(v,i=>{t()&&i(x)})}n(g,_)},S=g=>{var _=ea(),C=u(_);{var v=i=>{var Y=fe();A(O=>E(Y,O),[()=>c(t())]),n(i,Y)};ve(C,i=>{t()&&i(v)})}var x=V(C,2);s(x),n(g,_)},D=g=>{var _=fe();A((C,v)=>E(_,`${C??""} ${v??""}`),[()=>c(e.month),()=>r(e.month)]),n(g,_)};ve(f,g=>{e.captionLayout==="dropdown"?g(L):e.captionLayout==="dropdown-months"?g(j,1):e.captionLayout==="dropdown-years"?g(S,2):g(D,-1)})}n(l,o),F()}function ua(l,e){w(e,!0);let a=P(e,["$$slots","$$events","$$legacy"]);const s=[["path",{d:"M8 2v4"}],["path",{d:"M16 2v4"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2"}],["path",{d:"M3 10h18"}]];xt(l,I({name:"calendar"},()=>a,{get iconNode(){return s},children:(t,d)=>{var r=b(),c=u(r);te(c,()=>e.children??ie),n(t,r)},$$slots:{default:!0}})),F()}export{ca as C,ua as a};
1
+ import{p as w,g as h,c as b,f as u,h as m,au as lt,s as I,i as y,b as n,d as F,r as P,u as M,t as V,A as H,w as st,x as fe,y as A,z as E,k as ve,a as te,av as ot,m as z,aw as dt,ax as ct,ay as ut,az as ft,E as ae,j as B,n as ie,l as N,F as Ie,aA as vt,aB as it,aC as gt,aD as mt,aE as ht,aF as _t,aG as yt,U as He,B as Je,aH as Te,aI as bt,a2 as Ee,aJ as Ue}from"./Bh3nIh1p.js";import{c as k,aZ as Le,I as xt}from"./wgiAyJSz.js";import{C as Ct}from"./B8zsoDsn.js";import{C as wt}from"./CJAz80f_.js";import{C as We}from"./DIqOBFdT.js";var Ft=z("<!> <!>",1),Pt=z("<!> <!>",1),zt=z("<!> <!>",1),kt=z("<!> <!>",1);function ca(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"value",15),t=h(e,"placeholder",15),d=h(e,"weekdayFormat",3,"short"),r=h(e,"buttonVariant",3,"ghost"),c=h(e,"captionLayout",3,"label"),o=h(e,"locale",3,"en-US"),f=h(e,"yearFormat",3,"numeric"),L=h(e,"disableDaysOutsideMonth",3,!1),j=P(e,["$$slots","$$events","$$legacy","ref","value","placeholder","class","weekdayFormat","buttonVariant","captionLayout","locale","months","years","monthFormat","yearFormat","day","disableDaysOutsideMonth"]);const S=M(()=>e.monthFormat?e.monthFormat:c().startsWith("dropdown")?"short":"long");var D=b(),g=u(D);{const _=(v,x)=>{let i=()=>x?.().months,Y=()=>x?.().weekdays;var O=b(),Ze=u(O);m(Ze,()=>Ot,(qe,Ke)=>{Ke(qe,{children:(Qe,aa)=>{var je=kt(),Oe=u(je);m(Oe,()=>Xt,(J,U)=>{U(J,{children:(ge,me)=>{var re=Ft(),ne=u(re);m(ne,()=>Et,(T,le)=>{le(T,{get variant(){return r()}})});var he=V(ne,2);m(he,()=>At,(T,le)=>{le(T,{get variant(){return r()}})}),n(ge,re)},$$slots:{default:!0}})});var Re=V(Oe,2);H(Re,18,i,J=>J,(J,U,ge)=>{var me=b(),re=u(me);m(re,()=>Qt,(ne,he)=>{he(ne,{children:(T,le)=>{var Ye=zt(),Ve=u(Ye);m(Ve,()=>Lt,(_e,ye)=>{ye(_e,{children:(be,$e)=>{var W=b(),se=u(W);m(se,()=>ta,(xe,Z)=>{Z(xe,{get captionLayout(){return c()},get months(){return e.months},get monthFormat(){return y(S)},get years(){return e.years},get yearFormat(){return f()},get month(){return U.value},get locale(){return o()},get monthIndex(){return y(ge)},get placeholder(){return t()},set placeholder(q){t(q)}})}),n(be,W)},$$slots:{default:!0}})});var Xe=V(Ve,2);m(Xe,()=>It,(_e,ye)=>{ye(_e,{children:(be,$e)=>{var W=Pt(),se=u(W);m(se,()=>Vt,(Z,q)=>{q(Z,{children:(Ce,pe)=>{var K=b(),we=u(K);m(we,()=>Ge,(Q,Fe)=>{Fe(Q,{class:"select-none",children:(oe,Ne)=>{var de=b(),Pe=u(de);H(Pe,16,Y,R=>R,(R,Se)=>{var X=b(),ze=u(X);m(ze,()=>Nt,($,p)=>{p($,{children:(ce,Ae)=>{st();var ue=fe();A(ke=>E(ue,ke),[()=>Se.slice(0,2)]),n(ce,ue)},$$slots:{default:!0}})}),n(R,X)}),n(oe,de)},$$slots:{default:!0}})}),n(Ce,K)},$$slots:{default:!0}})});var xe=V(se,2);m(xe,()=>Yt,(Z,q)=>{q(Z,{children:(Ce,pe)=>{var K=b(),we=u(K);H(we,16,()=>U.weeks,Q=>Q,(Q,Fe)=>{var oe=b(),Ne=u(oe);m(Ne,()=>Ge,(de,Pe)=>{Pe(de,{class:"mt-2 w-full",children:(R,Se)=>{var X=b(),ze=u(X);H(ze,16,()=>Fe,$=>$,($,p)=>{var ce=b(),Ae=u(ce);m(Ae,()=>Mt,(ue,ke)=>{ke(ue,{get date(){return p},get month(){return U.value},children:(et,ra)=>{var Be=b(),tt=u(Be);{var at=G=>{var ee=b(),Me=u(ee);{let De=M(()=>({day:p,outsideMonth:!ot(p,U.value)}));te(Me,()=>e.day,()=>y(De))}n(G,ee)},rt=G=>{var ee=b(),Me=u(ee);m(Me,()=>Dt,(De,nt)=>{nt(De,{})}),n(G,ee)};ve(tt,G=>{e.day?G(at):G(rt,-1)})}n(et,Be)},$$slots:{default:!0}})}),n($,ce)}),n(R,X)},$$slots:{default:!0}})}),n(Q,oe)}),n(Ce,K)},$$slots:{default:!0}})}),n(be,W)},$$slots:{default:!0}})}),n(T,Ye)},$$slots:{default:!0}})}),n(J,me)}),n(Qe,je)},$$slots:{default:!0}})}),n(v,O)};let C=M(()=>k("bg-background group/calendar p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",e.class));m(g,()=>lt,(v,x)=>{x(v,I({get weekdayFormat(){return d()},get disableDaysOutsideMonth(){return L()},get class(){return y(C)},get locale(){return o()},get monthFormat(){return y(S)},get yearFormat(){return f()}},()=>j,{get value(){return s()},set value(i){s(i)},get ref(){return a()},set ref(i){a(i)},get placeholder(){return t()},set placeholder(i){t(i)},children:_,$$slots:{default:!0}}))})}n(l,D),F()}function Mt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("relative size-(--cell-size) p-0 text-center text-sm focus-within:z-20 [&:first-child[data-selected]_[data-bits-day]]:rounded-s-md [&:last-child[data-selected]_[data-bits-day]]:rounded-e-md",e.class));m(d,()=>dt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Dt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(Le({variant:"ghost"}),"flex size-(--cell-size) flex-col items-center justify-center gap-1 p-0 leading-none font-normal whitespace-nowrap select-none","[&[data-today]:not([data-selected])]:bg-accent [&[data-today]:not([data-selected])]:text-accent-foreground [&[data-today][data-disabled]]:text-muted-foreground","data-[selected]:bg-primary dark:data-[selected]:hover:bg-accent/50 data-[selected]:text-primary-foreground","[&[data-outside-month]:not([data-selected])]:text-muted-foreground [&[data-outside-month]:not([data-selected])]:hover:text-accent-foreground","data-[disabled]:text-muted-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50","data-[unavailable]:text-muted-foreground data-[unavailable]:line-through","dark:hover:text-accent-foreground","focus:border-ring focus:ring-ring/50 focus:relative","[&>span]:text-xs [&>span]:opacity-70",e.class));m(d,()=>ct,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function It(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("mt-4 flex w-full border-collapse flex-col gap-1",e.class));m(d,()=>ut,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Lt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",e.class));m(d,()=>ft,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}var jt=z("<div><!></div>");function Ot(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=jt();ae(t,r=>({class:r,...s}),[()=>k("relative flex flex-col gap-4 md:flex-row",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}function Ge(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("flex",e.class));m(d,()=>vt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Yt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(e.class));m(d,()=>it,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Vt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k(e.class));m(d,()=>gt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}function Nt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class"]);var t=b(),d=u(t);{let r=M(()=>k("text-muted-foreground w-(--cell-size) rounded-md text-[0.8rem] font-normal",e.class));m(d,()=>mt,(c,o)=>{o(c,I({get class(){return y(r)}},()=>s,{get ref(){return a()},set ref(f){a(f)}}))})}n(l,t),F()}const St=l=>{Ct(l,{class:"size-4"})};function At(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"variant",3,"ghost"),t=P(e,["$$slots","$$events","$$legacy","ref","class","children","variant"]);var d=b(),r=u(d);{let c=M(()=>k(Le({variant:s()}),"size-(--cell-size) bg-transparent p-0 select-none disabled:opacity-50 rtl:rotate-180",e.class)),o=M(()=>e.children||St);m(r,()=>ht,(f,L)=>{L(f,I({get class(){return y(c)},get children(){return y(o)}},()=>t,{get ref(){return a()},set ref(j){a(j)}}))})}n(l,d),F()}const Bt=l=>{wt(l,{class:"size-4"})};function Et(l,e){w(e,!0);let a=h(e,"ref",15,null),s=h(e,"variant",3,"ghost"),t=P(e,["$$slots","$$events","$$legacy","ref","class","children","variant"]);var d=b(),r=u(d);{let c=M(()=>k(Le({variant:s()}),"size-(--cell-size) bg-transparent p-0 select-none disabled:opacity-50 rtl:rotate-180",e.class)),o=M(()=>e.children||Bt);m(r,()=>_t,(f,L)=>{L(f,I({get class(){return y(c)},get children(){return y(o)}},()=>t,{get ref(){return a()},set ref(j){a(j)}}))})}n(l,d),F()}var Ut=z("<option> </option>"),Gt=z('<select></select> <span class="[&amp;>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md ps-2 pe-1 text-sm font-medium select-none [&amp;>svg]:size-3.5" aria-hidden="true"> <!></span>',1),Ht=z("<span><!></span>");function Jt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","value","onchange"]);var t=Ht(),d=B(t);{const r=(c,o)=>{let f=()=>o?.().props,L=()=>o?.().monthItems,j=()=>o?.().selectedMonthItem;var S=Gt(),D=u(S);ae(D,()=>({...f(),value:e.value,onchange:e.onchange})),H(D,21,L,v=>v.value,(v,x)=>{var i=Ut(),Y=B(i,!0);N(i);var O={};A(()=>{Te(i,e.value!==void 0?y(x).value===e.value:y(x).value===j().value),E(Y,y(x).label),O!==(O=y(x).value)&&(i.value=(i.__value=y(x).value)??"")}),n(v,i)}),N(D);var g=V(D,2),_=B(g),C=V(_);We(C,{class:"size-4"}),N(g),A(v=>E(_,`${v??""} `),[()=>L().find(v=>v.value===e.value)?.label||j().label]),n(c,S)};m(d,()=>yt,(c,o)=>{o(c,I({class:"dark:bg-popover dark:text-popover-foreground absolute inset-0 opacity-0"},()=>s,{get ref(){return a()},set ref(f){a(f)},child:r,$$slots:{child:!0}}))})}N(t),A(r=>Je(t,1,r),[()=>He(k("has-focus:border-ring border-input has-focus:ring-ring/50 relative flex rounded-md border shadow-xs has-focus:ring-[3px]",e.class))]),n(l,t),F()}var Tt=z("<option> </option>"),Wt=z('<select></select> <span class="[&amp;>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md ps-2 pe-1 text-sm font-medium select-none [&amp;>svg]:size-3.5" aria-hidden="true"> <!></span>',1),Zt=z("<span><!></span>");function qt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","value"]);var t=Zt(),d=B(t);{const r=(c,o)=>{let f=()=>o?.().props,L=()=>o?.().yearItems,j=()=>o?.().selectedYearItem;var S=Wt(),D=u(S);ae(D,()=>({...f(),value:e.value})),H(D,21,L,v=>v.value,(v,x)=>{var i=Tt(),Y=B(i,!0);N(i);var O={};A(()=>{Te(i,e.value!==void 0?y(x).value===e.value:y(x).value===j().value),E(Y,y(x).label),O!==(O=y(x).value)&&(i.value=(i.__value=y(x).value)??"")}),n(v,i)}),N(D);var g=V(D,2),_=B(g),C=V(_);We(C,{class:"size-4"}),N(g),A(v=>E(_,`${v??""} `),[()=>L().find(v=>v.value===e.value)?.label||j().label]),n(c,S)};m(d,()=>bt,(c,o)=>{o(c,I({class:"dark:bg-popover dark:text-popover-foreground absolute inset-0 opacity-0"},()=>s,{get ref(){return a()},set ref(f){a(f)},child:r,$$slots:{child:!0}}))})}N(t),A(r=>Je(t,1,r),[()=>He(k("has-focus:border-ring border-input has-focus:ring-ring/50 relative flex rounded-md border shadow-xs has-focus:ring-[3px]",e.class))]),n(l,t),F()}var Kt=z("<div><!></div>");function Qt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=Kt();ae(t,r=>({...s,class:r}),[()=>k("flex flex-col",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}var Rt=z("<nav><!></nav>");function Xt(l,e){w(e,!0);let a=h(e,"ref",15,null),s=P(e,["$$slots","$$events","$$legacy","ref","class","children"]);var t=Rt();ae(t,r=>({...s,class:r}),[()=>k("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",e.class)]);var d=B(t);te(d,()=>e.children??ie),N(t),Ie(t,r=>a(r),()=>a()),n(l,t),F()}var $t=z("<!> <!>",1),pt=z("<!> <!>",1),ea=z("<!> <!>",1);function ta(l,e){w(e,!0);const a=g=>{Jt(g,{get months(){return e.months},get monthFormat(){return e.monthFormat},get value(){return e.month.month},onchange:_=>{if(!t())return;const C=Number.parseInt(_.currentTarget.value),v=t().set({month:C});t(v.subtract({months:d()}))}})},s=g=>{qt(g,{get years(){return e.years},get yearFormat(){return e.yearFormat},get value(){return e.month.year}})};let t=h(e,"placeholder",15),d=h(e,"monthIndex",3,0);function r(g){const _=g.toDate(Ee());return typeof e.yearFormat=="function"?e.yearFormat(_.getFullYear()):new Ue(e.locale,{year:e.yearFormat}).format(_)}function c(g){const _=g.toDate(Ee());return typeof e.monthFormat=="function"?e.monthFormat(_.getMonth()+1):new Ue(e.locale,{month:e.monthFormat}).format(_)}var o=b(),f=u(o);{var L=g=>{var _=$t(),C=u(_);a(C);var v=V(C,2);s(v),n(g,_)},j=g=>{var _=pt(),C=u(_);a(C);var v=V(C,2);{var x=i=>{var Y=fe();A(O=>E(Y,O),[()=>r(t())]),n(i,Y)};ve(v,i=>{t()&&i(x)})}n(g,_)},S=g=>{var _=ea(),C=u(_);{var v=i=>{var Y=fe();A(O=>E(Y,O),[()=>c(t())]),n(i,Y)};ve(C,i=>{t()&&i(v)})}var x=V(C,2);s(x),n(g,_)},D=g=>{var _=fe();A((C,v)=>E(_,`${C??""} ${v??""}`),[()=>c(e.month),()=>r(e.month)]),n(g,_)};ve(f,g=>{e.captionLayout==="dropdown"?g(L):e.captionLayout==="dropdown-months"?g(j,1):e.captionLayout==="dropdown-years"?g(S,2):g(D,-1)})}n(l,o),F()}function ua(l,e){w(e,!0);let a=P(e,["$$slots","$$events","$$legacy"]);const s=[["path",{d:"M8 2v4"}],["path",{d:"M16 2v4"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2"}],["path",{d:"M3 10h18"}]];xt(l,I({name:"calendar"},()=>a,{get iconNode(){return s},children:(t,d)=>{var r=b(),c=u(r);te(c,()=>e.children??ie),n(t,r)},$$slots:{default:!0}})),F()}export{ca as C,ua as a};
@@ -1,4 +1,4 @@
1
- import{p as Ae,o as k,e as xe,q as Ge,j as n,t as d,k as O,i as r,l as a,b as i,d as Oe,v as g,f as be,w as H,x as m,y as h,z as _,A as he,B as $e,m as x,u as Y,h as oe,s as qe,D as Le}from"./Bh3nIh1p.js";import{B as Ve}from"./CQi5fBLh.js";import{f as Je,n as Ke,E as Qe,g as Ue,a as We,B as q,r as Xe,t as p,b as Ye,s as Ze,d as er}from"./CUv1ipDD.js";import{P as rr,a as sr,b as tr}from"./DXUdNJwS.js";import{P as ar}from"./Bfse3fCo.js";import{T as nr}from"./CjrslgAi.js";var ir=x('<div class="flex flex-1 items-center justify-center sig-label">Loading connectors...</div>'),or=x(`<div class="flex items-center gap-3 px-3 py-2.5
1
+ import{p as Ae,o as k,e as xe,q as Ge,j as n,t as d,k as O,i as r,l as a,b as i,d as Oe,v as g,f as be,w as H,x as m,y as h,z as _,A as he,B as $e,m as x,u as Y,h as oe,s as qe,D as Le}from"./Bh3nIh1p.js";import{B as Ve}from"./DAu87mIc.js";import{f as Je,n as Ke,E as Qe,g as Ue,a as We,B as q,r as Xe,t as p,b as Ye,s as Ze,d as er}from"./wgiAyJSz.js";import{P as rr,a as sr,b as tr}from"./DyshuDVa.js";import{P as ar}from"./Bfse3fCo.js";import{T as nr}from"./CjrslgAi.js";var ir=x('<div class="flex flex-1 items-center justify-center sig-label">Loading connectors...</div>'),or=x(`<div class="flex items-center gap-3 px-3 py-2.5
2
2
  border border-[var(--sig-border)]
3
3
  bg-[var(--sig-surface-raised)]"><span></span> <div class="flex flex-col gap-0.5 min-w-0 flex-1"><span class="text-[12px] font-medium text-[var(--sig-text-bright)]
4
4
  font-[family-name:var(--font-display)] tracking-[0.04em]"> </span> <span class="sig-eyebrow truncate"> </span></div> <div class="flex flex-col items-end gap-0.5 shrink-0"><span> </span> <span class="sig-eyebrow"><!></span></div></div>`),lr=x(`<div class="flex items-center justify-center py-8
@@ -1 +1 @@
1
- import{p as _,g as d,c as y,f as C,h as w,s as z,i as j,C as M,b as u,d as P,r as q,j as A,k as B,l as D,u as E,m as F}from"./Bh3nIh1p.js";import{c as G,M as H}from"./CUv1ipDD.js";import{C as I}from"./CUV5ModY.js";var J=F('<div data-slot="checkbox-indicator" class="text-current transition-none"><!></div>');function O(f,t){_(t,!0);let n=d(t,"ref",15,null),c=d(t,"checked",15,!1),o=d(t,"indeterminate",15,!1),h=q(t,["$$slots","$$events","$$legacy","ref","checked","indeterminate","class"]);var l=y(),m=C(l);{const k=(s,a)=>{let e=()=>a?.().checked,b=()=>a?.().indeterminate;var i=J(),p=A(i);{var g=r=>{I(r,{class:"size-3.5"})},x=r=>{H(r,{class:"size-3.5"})};B(p,r=>{e()?r(g):b()&&r(x,1)})}D(i),u(s,i)};let v=E(()=>G("border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive peer flex size-4 shrink-0 items-center justify-center rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t.class));w(m,()=>M,(s,a)=>{a(s,z({"data-slot":"checkbox",get class(){return j(v)}},()=>h,{get ref(){return n()},set ref(e){n(e)},get checked(){return c()},set checked(e){c(e)},get indeterminate(){return o()},set indeterminate(e){o(e)},children:k,$$slots:{default:!0}}))})}u(f,l),P()}export{O as C};
1
+ import{p as _,g as d,c as y,f as C,h as w,s as z,i as j,C as M,b as u,d as P,r as q,j as A,k as B,l as D,u as E,m as F}from"./Bh3nIh1p.js";import{c as G,M as H}from"./wgiAyJSz.js";import{C as I}from"./DLsEtGQa.js";var J=F('<div data-slot="checkbox-indicator" class="text-current transition-none"><!></div>');function O(f,t){_(t,!0);let n=d(t,"ref",15,null),c=d(t,"checked",15,!1),o=d(t,"indeterminate",15,!1),h=q(t,["$$slots","$$events","$$legacy","ref","checked","indeterminate","class"]);var l=y(),m=C(l);{const k=(s,a)=>{let e=()=>a?.().checked,b=()=>a?.().indeterminate;var i=J(),p=A(i);{var g=r=>{I(r,{class:"size-3.5"})},x=r=>{H(r,{class:"size-3.5"})};B(p,r=>{e()?r(g):b()&&r(x,1)})}D(i),u(s,i)};let v=E(()=>G("border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive peer flex size-4 shrink-0 items-center justify-center rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",t.class));w(m,()=>M,(s,a)=>{a(s,z({"data-slot":"checkbox",get class(){return j(v)}},()=>h,{get ref(){return n()},set ref(e){n(e)},get checked(){return c()},set checked(e){c(e)},get indeterminate(){return o()},set indeterminate(e){o(e)},children:k,$$slots:{default:!0}}))})}u(f,l),P()}export{O as C};
@@ -1,4 +1,4 @@
1
- import{p as Wt,g as St,o as M,e as ia,Q as Xt,v as s,c as ut,f as S,h as u,j as l,l as r,t,k as P,y as g,z as c,b as a,i as e,w as F,x as A,B as Nt,O as We,d as Yt,u as f,D as Gt,A as Ft,m as v,P as la,aK as Ka,aL as Ha,G as ua,aM as vr,s as Na,r as Ea,aN as dr,aO as cr,as as Ga,q as Da,af as ga,ag as za,ad as Sa,N as pa,at as Pa,a6 as ur,$ as Za,aP as fr,J as gr,T as xa}from"./Bh3nIh1p.js";import{i as mr,m as I,e as Ca,a as Ia,r as Ra,h as pr,j as ka,g as Ta,d as _r,b as La,k as yr,c as hr,s as d,l as Xa,n as Ja,o as er,p as br,q as Ma,f as va,t as ma,u as xr,v as Wa,w as wr,x as kr,y as $r,z as Sr,A as Pr,B as Cr}from"./BmxJL9RB.js";import{a_ as ja,S as Ba,B as ct,N as Fa,t as Bt,a$ as tr,b0 as Ir,as as Rr,b1 as Tr,c as qa,b2 as Lr,b3 as Mr,b4 as Ar,n as Nr,D as $a}from"./CUv1ipDD.js";import{b as _a,C as ya,a as ha}from"./2MfvoDg1.js";import{I as Ht}from"./D5M5SoW3.js";import{c as ta,S as aa,a as ra,b as Fe}from"./BgRGbeQc.js";import{T as Ua}from"./DQdDyGh1.js";import{C as ba}from"./D4P_efnI.js";import{L as sa}from"./DTGdDnRl.js";import{g as Er}from"./Cik1Y8bQ.js";import{B as fa}from"./CQi5fBLh.js";var Dr=v('<span class="detail-badge detail-badge-official svelte-4mjdk4">official</span>'),zr=v('<span class="detail-rank svelte-4mjdk4"> </span>'),jr=v('<div class="detail-badges svelte-4mjdk4"><span class="detail-badge svelte-4mjdk4"> </span> <span class="detail-badge svelte-4mjdk4"> </span> <!> <!></div>'),Br=v('<div class="detail-action svelte-4mjdk4"><!></div>'),Fr=v('<a class="detail-link svelte-4mjdk4" target="_blank" rel="noopener">View source</a>'),qr=v("<span>Signet Reviews</span> <!>",1),Ur=v("<!> <!> <!> <!> <!>",1),Or=v("<!> <!>",1),Vr=v('<p class="review-muted svelte-4mjdk4">Loading reviews...</p>'),Kr=v('<p class="review-muted svelte-4mjdk4">No reviews yet for this app.</p>'),Hr=v('<article class="review-item svelte-4mjdk4"><div class="review-title svelte-4mjdk4"> </div> <div class="review-meta svelte-4mjdk4"> </div> <p class="review-body svelte-4mjdk4"> </p></article>'),Gr=v('<div class="review-list svelte-4mjdk4"></div>'),Wr=v('<div class="reviews-content svelte-4mjdk4"><div class="review-form svelte-4mjdk4"><!> <div class="review-row svelte-4mjdk4"><!> <!></div> <!> <div class="review-actions svelte-4mjdk4"><span class="review-gate svelte-4mjdk4">Install or use this app before leaving a review.</span> <!></div></div> <div class="reviews-filters svelte-4mjdk4"><button>Top comments</button> <button>Good</button> <button>Bad</button> <button>All</button></div> <!></div>'),Yr=v("<!> <!>",1),Qr=v('<p class="detail-description svelte-4mjdk4"> </p> <!> <!>',1),Zr=v('<p class="review-muted svelte-4mjdk4">Select a server to view details.</p>'),Xr=v('<div class="detail-header svelte-4mjdk4"><div class="detail-title-wrap svelte-4mjdk4"><h2 class="detail-title svelte-4mjdk4"> </h2> <!></div> <!></div> <div class="detail-body svelte-4mjdk4"><!></div>',1);function Jr(h,i){Wt(i,!0);const x="signet:marketplace:reviews:display-name",G=St(i,"installBusy",3,!1),K=St(i,"removeBusy",3,!1);let D=M("top"),re=M(!1),U=M(ia([])),le=M(!0),Ne=M(ia(Ye())),he=M(5),ue=M(""),ke=M(""),$e=M(!1);const X=f(()=>`${e(he)}/5`),se=f(()=>{const J=[...e(U)];return e(D)==="top"?J.sort((z,O)=>O.rating===z.rating?O.updatedAt.localeCompare(z.updatedAt):O.rating-z.rating):e(D)==="good"?J.filter(z=>z.rating>=4).sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt)):e(D)==="bad"?J.filter(z=>z.rating<=2).sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt)):J.sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt))});Xt(()=>{if(!i.open||!i.item?.targetId){s(U,[],!0);return}s(D,"top"),te(i.item.targetId)});function Ye(){try{return localStorage.getItem(x)??""}catch{return""}}function Ie(J){try{localStorage.setItem(x,J)}catch{}}function oe(J){return J==="1"?1:J==="2"?2:J==="3"?3:J==="4"?4:5}async function te(J){s(re,!0);try{const z=await ja({targetType:"mcp",targetId:J,limit:100});s(U,z.reviews,!0)}finally{s(re,!1)}}async function Me(){if(!i.item?.targetId)return;if(!i.canReview){Bt("Install or use this app before leaving a review.","error");return}const J=e(Ne).trim(),z=e(ue).trim(),O=e(ke).trim();if(!J||!z||!O){Bt("Display name, title, and review are required","error");return}s($e,!0);try{const yt=await tr({targetType:"mcp",targetId:i.item.targetId,displayName:J,rating:e(he),title:z,body:O});if(!yt.success){Bt(yt.error??"Failed to submit review","error");return}Ie(J),s(ue,""),s(ke,""),Bt("Review posted","success"),await te(i.item.targetId)}finally{s($e,!1)}}var qe=ut(),lt=S(qe);u(lt,()=>Fa,(J,z)=>{z(J,{get open(){return i.open},onOpenChange:O=>{O||i.onclose()},children:(O,yt)=>{var ht=ut(),Pt=S(ht);u(Pt,()=>Ba,(It,N)=>{N(It,{side:"right",showClose:!1,class:`!w-[520px] !max-w-[90vw] !bg-[var(--sig-surface)]
1
+ import{p as Wt,g as St,o as M,e as ia,Q as Xt,v as s,c as ut,f as S,h as u,j as l,l as r,t,k as P,y as g,z as c,b as a,i as e,w as F,x as A,B as Nt,O as We,d as Yt,u as f,D as Gt,A as Ft,m as v,P as la,aK as Ka,aL as Ha,G as ua,aM as vr,s as Na,r as Ea,aN as dr,aO as cr,as as Ga,q as Da,af as ga,ag as za,ad as Sa,N as pa,at as Pa,a6 as ur,$ as Za,aP as fr,J as gr,T as xa}from"./Bh3nIh1p.js";import{i as mr,m as I,e as Ca,a as Ia,r as Ra,h as pr,j as ka,g as Ta,d as _r,b as La,k as yr,c as hr,s as d,l as Xa,n as Ja,o as er,p as br,q as Ma,f as va,t as ma,u as xr,v as Wa,w as wr,x as kr,y as $r,z as Sr,A as Pr,B as Cr}from"./DDqO2D71.js";import{a_ as ja,S as Ba,B as ct,N as Fa,t as Bt,a$ as tr,b0 as Ir,as as Rr,b1 as Tr,c as qa,b2 as Lr,b3 as Mr,b4 as Ar,n as Nr,D as $a}from"./wgiAyJSz.js";import{b as _a,C as ya,a as ha}from"./2MfvoDg1.js";import{I as Ht}from"./CopEEOFw.js";import{c as ta,S as aa,a as ra,b as Fe}from"./gyguWWMz.js";import{T as Ua}from"./iHysDaGx.js";import{C as ba}from"./DIqOBFdT.js";import{L as sa}from"./IeCQcJ4C.js";import{g as Er}from"./Cik1Y8bQ.js";import{B as fa}from"./DAu87mIc.js";var Dr=v('<span class="detail-badge detail-badge-official svelte-4mjdk4">official</span>'),zr=v('<span class="detail-rank svelte-4mjdk4"> </span>'),jr=v('<div class="detail-badges svelte-4mjdk4"><span class="detail-badge svelte-4mjdk4"> </span> <span class="detail-badge svelte-4mjdk4"> </span> <!> <!></div>'),Br=v('<div class="detail-action svelte-4mjdk4"><!></div>'),Fr=v('<a class="detail-link svelte-4mjdk4" target="_blank" rel="noopener">View source</a>'),qr=v("<span>Signet Reviews</span> <!>",1),Ur=v("<!> <!> <!> <!> <!>",1),Or=v("<!> <!>",1),Vr=v('<p class="review-muted svelte-4mjdk4">Loading reviews...</p>'),Kr=v('<p class="review-muted svelte-4mjdk4">No reviews yet for this app.</p>'),Hr=v('<article class="review-item svelte-4mjdk4"><div class="review-title svelte-4mjdk4"> </div> <div class="review-meta svelte-4mjdk4"> </div> <p class="review-body svelte-4mjdk4"> </p></article>'),Gr=v('<div class="review-list svelte-4mjdk4"></div>'),Wr=v('<div class="reviews-content svelte-4mjdk4"><div class="review-form svelte-4mjdk4"><!> <div class="review-row svelte-4mjdk4"><!> <!></div> <!> <div class="review-actions svelte-4mjdk4"><span class="review-gate svelte-4mjdk4">Install or use this app before leaving a review.</span> <!></div></div> <div class="reviews-filters svelte-4mjdk4"><button>Top comments</button> <button>Good</button> <button>Bad</button> <button>All</button></div> <!></div>'),Yr=v("<!> <!>",1),Qr=v('<p class="detail-description svelte-4mjdk4"> </p> <!> <!>',1),Zr=v('<p class="review-muted svelte-4mjdk4">Select a server to view details.</p>'),Xr=v('<div class="detail-header svelte-4mjdk4"><div class="detail-title-wrap svelte-4mjdk4"><h2 class="detail-title svelte-4mjdk4"> </h2> <!></div> <!></div> <div class="detail-body svelte-4mjdk4"><!></div>',1);function Jr(h,i){Wt(i,!0);const x="signet:marketplace:reviews:display-name",G=St(i,"installBusy",3,!1),K=St(i,"removeBusy",3,!1);let D=M("top"),re=M(!1),U=M(ia([])),le=M(!0),Ne=M(ia(Ye())),he=M(5),ue=M(""),ke=M(""),$e=M(!1);const X=f(()=>`${e(he)}/5`),se=f(()=>{const J=[...e(U)];return e(D)==="top"?J.sort((z,O)=>O.rating===z.rating?O.updatedAt.localeCompare(z.updatedAt):O.rating-z.rating):e(D)==="good"?J.filter(z=>z.rating>=4).sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt)):e(D)==="bad"?J.filter(z=>z.rating<=2).sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt)):J.sort((z,O)=>O.updatedAt.localeCompare(z.updatedAt))});Xt(()=>{if(!i.open||!i.item?.targetId){s(U,[],!0);return}s(D,"top"),te(i.item.targetId)});function Ye(){try{return localStorage.getItem(x)??""}catch{return""}}function Ie(J){try{localStorage.setItem(x,J)}catch{}}function oe(J){return J==="1"?1:J==="2"?2:J==="3"?3:J==="4"?4:5}async function te(J){s(re,!0);try{const z=await ja({targetType:"mcp",targetId:J,limit:100});s(U,z.reviews,!0)}finally{s(re,!1)}}async function Me(){if(!i.item?.targetId)return;if(!i.canReview){Bt("Install or use this app before leaving a review.","error");return}const J=e(Ne).trim(),z=e(ue).trim(),O=e(ke).trim();if(!J||!z||!O){Bt("Display name, title, and review are required","error");return}s($e,!0);try{const yt=await tr({targetType:"mcp",targetId:i.item.targetId,displayName:J,rating:e(he),title:z,body:O});if(!yt.success){Bt(yt.error??"Failed to submit review","error");return}Ie(J),s(ue,""),s(ke,""),Bt("Review posted","success"),await te(i.item.targetId)}finally{s($e,!1)}}var qe=ut(),lt=S(qe);u(lt,()=>Fa,(J,z)=>{z(J,{get open(){return i.open},onOpenChange:O=>{O||i.onclose()},children:(O,yt)=>{var ht=ut(),Pt=S(ht);u(Pt,()=>Ba,(It,N)=>{N(It,{side:"right",showClose:!1,class:`!w-[520px] !max-w-[90vw] !bg-[var(--sig-surface)]
2
2
  !border-l !border-l-[var(--sig-border)] !p-0 flex flex-col`,children:(de,T)=>{var ve=Xr(),Ee=S(ve),$t=l(Ee),Lt=l($t),Je=l(Lt,!0);r(Lt);var Se=t(Lt,2);{var ft=C=>{var V=jr(),be=l(V),Re=l(be,!0);r(be);var ot=t(be,2),Ke=l(ot,!0);r(ot);var Ue=t(ot,2);{var st=_=>{var n=Dr();a(_,n)};P(Ue,_=>{i.item.official&&_(st)})}var Oe=t(Ue,2);{var vt=_=>{var n=zr(),y=l(n);r(n),g(()=>c(y,`#${i.item.popularityRank??""}`)),a(_,n)};P(Oe,_=>{i.item.popularityRank!==null&&_(vt)})}r(V),g(()=>{c(Re,i.item.sourceLabel),c(Ke,i.item.category)}),a(C,V)};P(Se,C=>{i.item&&C(ft)})}r($t);var Mt=t($t,2);{var bt=C=>{var V=Br(),be=l(V);{var Re=Ke=>{ct(Ke,{variant:"outline",size:"sm",class:"rounded-lg font-[family-name:var(--font-mono)] text-[10px] uppercase tracking-[0.08em] border-[var(--sig-danger)] text-[var(--sig-danger)] hover:bg-[var(--sig-danger)] hover:text-[var(--sig-text-bright)]",onclick:()=>i.item.serverId&&i.onuninstall?.(i.item.serverId),get disabled(){return K()},children:(Ue,st)=>{F();var Oe=A();g(()=>c(Oe,K()?"...":"Remove")),a(Ue,Oe)},$$slots:{default:!0}})},ot=Ke=>{ct(Ke,{variant:"outline",size:"sm",class:"rounded-lg font-[family-name:var(--font-mono)] text-[10px] uppercase tracking-[0.08em] border-[var(--sig-text-bright)] text-[var(--sig-text-bright)] hover:bg-[var(--sig-text-bright)] hover:text-[var(--sig-bg)]",onclick:()=>i.item.catalogEntry&&i.oninstall?.(i.item.catalogEntry),get disabled(){return G()},children:(Ue,st)=>{F();var Oe=A();g(()=>c(Oe,G()?"...":"Install")),a(Ue,Oe)},$$slots:{default:!0}})};P(be,Ke=>{i.item.serverId?Ke(Re):i.item.catalogEntry&&Ke(ot,1)})}r(V),a(C,V)};P(Mt,C=>{i.item&&C(bt)})}r(Ee);var wt=t(Ee,2),et=l(wt);{var Et=C=>{var V=Qr(),be=S(V),Re=l(be,!0);r(be);var ot=t(be,2);{var Ke=st=>{var Oe=Fr();g(()=>Gt(Oe,"href",i.item.sourceUrl)),a(st,Oe)};P(ot,st=>{i.item.sourceUrl&&st(Ke)})}var Ue=t(ot,2);u(Ue,()=>_a,(st,Oe)=>{Oe(st,{class:"reviews-section",get open(){return e(le)},set open(vt){s(le,vt,!0)},children:(vt,_)=>{var n=Yr(),y=S(n);u(y,()=>ya,(ge,Te)=>{Te(ge,{class:"reviews-trigger",children:(B,k)=>{var ie=qr(),R=t(S(ie),2);{let He=f(()=>`size-3 text-[var(--sig-text-muted)] transition-transform ${e(le)?"rotate-180":""}`);ba(R,{get class(){return e(He)}})}a(B,ie)},$$slots:{default:!0}})});var W=t(y,2);u(W,()=>ha,(ge,Te)=>{Te(ge,{children:(B,k)=>{var ie=Wr(),R=l(ie),He=l(R);Ht(He,{class:"review-input",placeholder:"Display name",get value(){return e(Ne)},oninput:L=>{s(Ne,L.currentTarget.value,!0)}});var Ge=t(He,2),gt=l(Ge);{let L=f(()=>String(e(he)));u(gt,()=>ta,(E,xe)=>{xe(E,{type:"single",get value(){return e(L)},onValueChange:pe=>{s(he,oe(pe??"5"),!0)},children:(pe,Q)=>{var H=Or(),Ve=S(H);u(Ve,()=>aa,(me,it)=>{it(me,{class:"review-rating",children:(at,Xe)=>{F();var ze=A();g(()=>c(ze,e(X))),a(at,ze)},$$slots:{default:!0}})});var _e=t(Ve,2);u(_e,()=>ra,(me,it)=>{it(me,{class:"review-rating-content",children:(at,Xe)=>{var ze=Ur(),$=S(ze);u($,()=>Fe,(Qe,nt)=>{nt(Qe,{value:"5",label:"5/5",class:"review-rating-item"})});var je=t($,2);u(je,()=>Fe,(Qe,nt)=>{nt(Qe,{value:"4",label:"4/5",class:"review-rating-item"})});var Le=t(je,2);u(Le,()=>Fe,(Qe,nt)=>{nt(Qe,{value:"3",label:"3/5",class:"review-rating-item"})});var At=t(Le,2);u(At,()=>Fe,(Qe,nt)=>{nt(Qe,{value:"2",label:"2/5",class:"review-rating-item"})});var Vt=t(At,2);u(Vt,()=>Fe,(Qe,nt)=>{nt(Qe,{value:"1",label:"1/5",class:"review-rating-item"})}),a(at,ze)},$$slots:{default:!0}})}),a(pe,H)},$$slots:{default:!0}})})}var mt=t(gt,2);Ht(mt,{class:"review-input",placeholder:"Review title",get value(){return e(ue)},oninput:L=>{s(ue,L.currentTarget.value,!0)}}),r(Ge);var pt=t(Ge,2);Ua(pt,{class:"review-textarea",rows:3,placeholder:"What worked? What should improve?",get value(){return e(ke)},oninput:L=>{s(ke,L.currentTarget.value,!0)}});var Ct=t(pt,2),ce=t(l(Ct),2);{let L=f(()=>e($e)||!i.canReview);ct(ce,{variant:"outline",size:"sm",class:"review-submit",onclick:()=>{Me()},get disabled(){return e(L)},children:(E,xe)=>{F();var pe=A();g(()=>c(pe,e($e)?"Posting...":"Post review")),a(E,pe)},$$slots:{default:!0}})}r(Ct),r(R);var o=t(R,2),j=l(o);let Y;var p=t(j,2);let m;var b=t(p,2);let ae;var ne=t(b,2);let Ae;r(o);var tt=t(o,2);{var Pe=L=>{var E=Vr();a(L,E)},q=L=>{var E=Kr();a(L,E)},ye=L=>{var E=Gr();Ft(E,21,()=>e(se),xe=>xe.id,(xe,pe)=>{var Q=Hr(),H=l(Q),Ve=l(H,!0);r(H);var _e=t(H,2),me=l(_e);r(_e);var it=t(_e,2),at=l(it,!0);r(it),r(Q),g(()=>{c(Ve,e(pe).title),c(me,`${e(pe).displayName??""} · ${e(pe).rating??""}/5`),c(at,e(pe).body)}),a(xe,Q)}),r(E),a(L,E)};P(tt,L=>{e(re)?L(Pe):e(se).length===0?L(q,1):L(ye,-1)})}r(ie),g(()=>{Y=Nt(j,1,"review-filter svelte-4mjdk4",null,Y,{active:e(D)==="top"}),m=Nt(p,1,"review-filter svelte-4mjdk4",null,m,{active:e(D)==="good"}),ae=Nt(b,1,"review-filter svelte-4mjdk4",null,ae,{active:e(D)==="bad"}),Ae=Nt(ne,1,"review-filter svelte-4mjdk4",null,Ae,{active:e(D)==="all"})}),We("click",j,()=>s(D,"top")),We("click",p,()=>s(D,"good")),We("click",b,()=>s(D,"bad")),We("click",ne,()=>s(D,"all")),a(B,ie)},$$slots:{default:!0}})}),a(vt,n)},$$slots:{default:!0}})}),g(()=>c(Re,i.item.description||"No description available.")),a(C,V)},w=C=>{var V=Zr();a(C,V)};P(et,C=>{i.item?C(Et):C(w,-1)})}r(wt),g(()=>c(Je,i.item?.name??"Tool Server")),a(de,ve)},$$slots:{default:!0}})}),a(O,ht)},$$slots:{default:!0}})}),a(h,qe),Yt()}la(["click"]);var el=v('<p class="sheet-subtitle svelte-1n2gzyy"> </p>'),tl=v('<p class="muted svelte-1n2gzyy">Select a server to configure.</p>'),al=v('<p class="muted svelte-1n2gzyy">Loading recommended configuration...</p>'),rl=v('<a class="source-link svelte-1n2gzyy" target="_blank" rel="noopener">View source README</a>'),ll=v('<div class="inline-alert svelte-1n2gzyy"> </div>'),sl=v("<!> <!>",1),il=v("<!> <!>",1),nl=v("<option> </option>"),ol=v('<div class="row-item svelte-1n2gzyy"><!> <!> <select class="field-select row-secret"><option>Plain value</option><!></select> <!></div>'),vl=v('<div class="inline-hint svelte-1n2gzyy">No secrets found. Add secrets in the Secrets tab to map sensitive values.</div>'),dl=v('<div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-group svelte-1n2gzyy"><div class="row-head svelte-1n2gzyy"><!> <!></div> <div class="row-list svelte-1n2gzyy"></div> <!></div>',1),cl=v("<option> </option>"),ul=v('<div class="row-item svelte-1n2gzyy"><!> <!> <select class="field-select row-secret"><option>Plain value</option><!></select> <!></div>'),fl=v('<div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-group svelte-1n2gzyy"><div class="row-head svelte-1n2gzyy"><!> <!></div> <div class="row-list svelte-1n2gzyy"></div></div>',1),gl=v('<div class="inline-alert svelte-1n2gzyy"> </div>'),ml=v('<div class="test-tools svelte-1n2gzyy"> </div>'),pl=v('<p class="server-description svelte-1n2gzyy"> </p> <!> <!> <div class="config-card svelte-1n2gzyy"><div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-row two-col svelte-1n2gzyy"><div class="field-group svelte-1n2gzyy"><!> <!></div> <div class="field-group svelte-1n2gzyy"><!> <!></div></div> <!></div> <!> <div class="test-panel svelte-1n2gzyy"><div class="test-head svelte-1n2gzyy">Connection test</div> <p class="test-message svelte-1n2gzyy"> </p> <!></div>',1),_l=v('<div class="sheet-header svelte-1n2gzyy"><div><h2 class="sheet-title svelte-1n2gzyy">Install Tool Server</h2> <!></div></div> <div class="sheet-body svelte-1n2gzyy"><!></div> <div class="sheet-footer svelte-1n2gzyy"><div class="footer-hint svelte-1n2gzyy"><!></div> <div class="footer-actions svelte-1n2gzyy"><!> <!></div></div>',1);function yl(h,i){Wt(i,!0);const x="secret://";let G=M(!1),K=M(null),D=M(""),re=M(""),U=M(""),le=M(!1),Ne=M(""),he=M("stdio"),ue=M("20000"),ke=M(""),$e=M(""),X=M(""),se=M(ia([])),Ye=M(""),Ie=M(ia([])),oe=M(ia([])),te=M(!1),Me=M("idle"),qe=M(""),lt=M(ia([])),J=M(!1),z=M(null);const O=f(()=>e(he)==="http"?"http":"stdio"),yt=f(()=>i.entry?i.entry.source==="modelcontextprotocol/servers"?"MCP GitHub":"MCP Registry":"");Xt(()=>{!i.open||!i.entry||e(D)!==i.entry.id&&(s(D,i.entry.id,!0),T(i.entry))}),Xt(()=>{i.open||(s(D,""),s(G,!1),s(K,null),s(Me,"idle"),s(qe,""),s(lt,[],!0),s(z,null))});function ht(w){return w.startsWith(x)?w.slice(x.length).trim():""}function Pt(w,C){const V=ht(C);return V?{key:w,value:"",secretName:V}:{key:w,value:C,secretName:""}}function It(w){return w.secretName.trim().length>0?`${x}${w.secretName.trim()}`:w.value}function N(w){const C=Object.entries(w).map(([V,be])=>Pt(V,be));return C.length>0?C:[{key:"",value:"",secretName:""}]}function de(w){if(s(he,w.transport,!0),s(ue,String(w.timeoutMs),!0),w.transport==="stdio"){s(ke,w.command,!0),s($e,w.args.join(`
3
3
  `),!0),s(X,w.cwd??"",!0),s(se,N(w.env),!0),s(Ye,""),s(Ie,[{key:"",value:"",secretName:""}],!0);return}s(Ye,w.url,!0),s(Ie,N(w.headers),!0),s(ke,""),s($e,""),s(X,""),s(se,[{key:"",value:"",secretName:""}],!0)}async function T(w){s(G,!0),s(K,null),s(z,null),s(Me,"idle"),s(qe,""),s(lt,[],!0),s(Ne,w.name,!0),s(re,w.description,!0),s(U,""),s(le,!1),s(he,"stdio"),s(ue,"20000"),s(ke,""),s($e,""),s(X,""),s(se,[{key:"",value:"",secretName:""}],!0),s(Ye,""),s(Ie,[{key:"",value:"",secretName:""}],!0),s(te,!0);const[C,V]=await Promise.all([Ir(w.catalogId,w.source),Rr()]);if(s(oe,V,!0),s(te,!1),!C){s(K,"Failed to load recommended config for this server."),s(G,!1);return}s(re,C.description||w.description,!0),s(U,C.githubUrl??"",!0),C.defaultConfig?(s(le,!0),de(C.defaultConfig)):s(K,"No standard config was found. You can still set one manually below."),s(G,!1)}function ve(w){const C={};for(const V of w){const be=V.key.trim();if(be.length===0)continue;const Re=It(V).trim();Re.length!==0&&(C[be]=Re)}return C}function Ee(){const w=Number(e(ue));if(!Number.isFinite(w)||w<=0)return{config:null,error:"Timeout must be a positive number."};if(e(he)==="stdio"){const V=e(ke).trim();if(V.length===0)return{config:null,error:"Command is required for stdio transport."};const be=e($e).split(`
4
4
  `).map(Re=>Re.trim()).filter(Re=>Re.length>0);return{config:{transport:"stdio",command:V,args:be,env:ve(e(se)),cwd:e(X).trim()||void 0,timeoutMs:w}}}const C=e(Ye).trim();if(C.length===0)return{config:null,error:"URL is required for HTTP transport."};try{new URL(C)}catch{return{config:null,error:"URL must be a valid absolute URL."}}return{config:{transport:"http",url:C,headers:ve(e(Ie)),timeoutMs:w}}}function $t(w){return w==="http"?"http":"stdio"}function Lt(w,C,V){const be=w[C];be&&(be.value=V,V.trim().length>0&&(be.secretName=""))}function Je(){s(se,[...e(se),{key:"",value:"",secretName:""}],!0)}function Se(w){s(se,e(se).filter((C,V)=>V!==w),!0),e(se).length===0&&s(se,[{key:"",value:"",secretName:""}],!0)}function ft(){s(Ie,[...e(Ie),{key:"",value:"",secretName:""}],!0)}function Mt(w){s(Ie,e(Ie).filter((C,V)=>V!==w),!0),e(Ie).length===0&&s(Ie,[{key:"",value:"",secretName:""}],!0)}async function bt(){s(z,null),s(Me,"running"),s(qe,"Testing MCP server connection..."),s(lt,[],!0);const w=Ee();if(!w.config){s(Me,"error"),s(qe,w.error??"Invalid config.",!0),s(z,w.error??"Invalid config.",!0);return}const C=await Tr({config:w.config});if(C.success){s(Me,"success"),s(lt,C.tools??[],!0),s(qe,`Connection succeeded${typeof C.toolCount=="number"?` (${C.toolCount} tools)`:""}.`);return}s(Me,"error"),s(qe,C.error??"Connection test failed.",!0)}async function wt(){if(!i.entry)return;s(z,null);const w=Ee();if(!w.config){s(z,w.error??"Invalid config.",!0);return}s(J,!0);const C=await mr(i.entry,{alias:e(Ne).trim()||void 0,config:w.config});s(J,!1),C&&i.onclose()}var et=ut(),Et=S(et);u(Et,()=>Fa,(w,C)=>{C(w,{get open(){return i.open},onOpenChange:V=>{V||i.onclose()},children:(V,be)=>{var Re=ut(),ot=S(Re);u(ot,()=>Ba,(Ke,Ue)=>{Ue(Ke,{side:"right",class:`!w-[560px] !max-w-[96vw] !bg-[var(--sig-surface)]
@@ -1 +1 @@
1
- import{p as n,g as c,E as o,j as i,a as f,n as v,l as u,F as h,b as m,d as g,r as x,m as b}from"./Bh3nIh1p.js";import{c as p}from"./CUv1ipDD.js";var _=b("<div><!></div>");function j(t,a){n(a,!0);let s=c(a,"ref",15,null),d=x(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=_();o(e,r=>({"data-slot":"card",class:r,...d}),[()=>p("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a.class)]);var l=i(e);f(l,()=>a.children??v),u(e),h(e,r=>s(r),()=>s()),m(t,e),g()}var y=b("<div><!></div>");function w(t,a){n(a,!0);let s=c(a,"ref",15,null),d=x(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=y();o(e,r=>({"data-slot":"card-content",class:r,...d}),[()=>p("px-6",a.class)]);var l=i(e);f(l,()=>a.children??v),u(e),h(e,r=>s(r),()=>s()),m(t,e),g()}export{j as C,w as a};
1
+ import{p as n,g as c,E as o,j as i,a as f,n as v,l as u,F as h,b as m,d as g,r as x,m as b}from"./Bh3nIh1p.js";import{c as p}from"./wgiAyJSz.js";var _=b("<div><!></div>");function j(t,a){n(a,!0);let s=c(a,"ref",15,null),d=x(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=_();o(e,r=>({"data-slot":"card",class:r,...d}),[()=>p("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a.class)]);var l=i(e);f(l,()=>a.children??v),u(e),h(e,r=>s(r),()=>s()),m(t,e),g()}var y=b("<div><!></div>");function w(t,a){n(a,!0);let s=c(a,"ref",15,null),d=x(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=y();o(e,r=>({"data-slot":"card-content",class:r,...d}),[()=>p("px-6",a.class)]);var l=i(e);f(l,()=>a.children??v),u(e),h(e,r=>s(r),()=>s()),m(t,e),g()}export{j as C,w as a};