signetai 0.69.2 → 0.69.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dashboard/_app/immutable/chunks/{CgxQ4pR_.js → B-q6V53z.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DMHLAqpw.js → B72LuRUE.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CxFc8c_L.js → B7GqdXyC.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DrAzTVVH.js → BFv_vage.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DUotpXiA.js → BJWjGb4t.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DxjHTXpS.js → BKnIFZJj.js} +1 -1
- package/dashboard/_app/immutable/chunks/{rmMAuQMt.js → BXG8lr0I.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CUAn3nUf.js → BfvhM1lS.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Cc1M9TyI.js → BjF3xwBs.js} +1 -1
- package/dashboard/_app/immutable/chunks/{D1Penp-O.js → BjHIV7jz.js} +1 -1
- package/dashboard/_app/immutable/chunks/{ze958dgs.js → BtXC-tWL.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DVdbMRnw.js → C1VzlBE2.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Dq7vYnAR.js → C5_FF8bM.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Dsxp-RWF.js → C9ZFpKKg.js} +1 -1
- package/dashboard/_app/immutable/chunks/{nAcRSKvo.js → CKUcOLd6.js} +1 -1
- package/dashboard/_app/immutable/chunks/{B19ngqrZ.js → CQmtLPuA.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DwK1jc5m.js → CSp6DLp7.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DUTjtvCV.js → CTOUA4Rv.js} +1 -1
- package/dashboard/_app/immutable/chunks/{D0LCwQ6t.js → CZqt0xV2.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BuEx5ec-.js → CwQE_qLL.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BbdTm9Wg.js → Cwhw4u7P.js} +1 -1
- package/dashboard/_app/immutable/chunks/{CK-K06tq.js → D0nJtnPx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{PQMnnmh1.js → D1Op0UPx.js} +1 -1
- package/dashboard/_app/immutable/chunks/{C41-TW_f.js → D6goYd5M.js} +1 -1
- package/dashboard/_app/immutable/chunks/{YdrDHCXf.js → DGVcZp2u.js} +1 -1
- package/dashboard/_app/immutable/chunks/{1b_nnBwk.js → DMW3DRZz.js} +1 -1
- package/dashboard/_app/immutable/chunks/{5-J0P_sS.js → DWwZMZ8X.js} +1 -1
- package/dashboard/_app/immutable/chunks/{QBI9XHQQ.js → DXhIzocL.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BG24oj48.js → Derph2LS.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BGNysvES.js → DooH7yrN.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DsiJimTZ.js → DpXm0Ri5.js} +3 -3
- package/dashboard/_app/immutable/chunks/{BZMkMAnH.js → DsUOVcJm.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DKJ41e3F.js → Dt43-PVR.js} +1 -1
- package/dashboard/_app/immutable/chunks/{D9BZbcdj.js → LAbc3OHh.js} +1 -1
- package/dashboard/_app/immutable/chunks/{Ct-xV4-_.js → Rbflemdc.js} +1 -1
- package/dashboard/_app/immutable/chunks/{DdUYVDwF.js → UjYepwuL.js} +1 -1
- package/dashboard/_app/immutable/chunks/{gFaWisZs.js → VdJsQHLD.js} +1 -1
- package/dashboard/_app/immutable/chunks/{XxUvvTf6.js → jZJ_4oOa.js} +1 -1
- package/dashboard/_app/immutable/chunks/{QU3-Rf7x.js → jwYiaet7.js} +1 -1
- package/dashboard/_app/immutable/chunks/{BtX8Q5-b.js → s-NxBERP.js} +1 -1
- package/dashboard/_app/immutable/entry/{app.TEW53w9H.js → app.B_iFKNhk.js} +2 -2
- package/dashboard/_app/immutable/entry/start.Czt1jmW3.js +1 -0
- package/dashboard/_app/immutable/nodes/{1.Ca1_q2Mf.js → 1.BRbNPULZ.js} +1 -1
- package/dashboard/_app/immutable/nodes/2.D98dcz56.js +1 -0
- package/dashboard/_app/version.json +1 -1
- package/dashboard/index.html +6 -6
- package/package.json +1 -1
- package/dashboard/_app/immutable/entry/start.DaS2vv03.js +0 -1
- package/dashboard/_app/immutable/nodes/2.BKB3OOuK.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as o,g as i,t as n,j as c,a as f,n as v,l as h,v as u,b as m,d as g,r as _,m as b}from"./CA6kBwP0.js";import{c as p}from"./
|
|
1
|
+
import{p as o,g as i,t as n,j as c,a as f,n as v,l as h,v as u,b as m,d as g,r as _,m as b}from"./CA6kBwP0.js";import{c as p}from"./DpXm0Ri5.js";var C=b("<div><!></div>");function P(s,a){o(a,!0);let t=i(a,"ref",15,null),d=_(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=C();n(e,r=>({"data-slot":"card-header",class:r,...d}),[()=>p("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a.class)]);var l=c(e);f(l,()=>a.children??v),h(e),u(e,r=>t(r),()=>t()),m(s,e),g()}var w=b("<div><!></div>");function j(s,a){o(a,!0);let t=i(a,"ref",15,null),d=_(a,["$$slots","$$events","$$legacy","ref","class","children"]);var e=w();n(e,r=>({"data-slot":"card-title",class:r,...d}),[()=>p("leading-none font-semibold",a.class)]);var l=c(e);f(l,()=>a.children??v),h(e),u(e,r=>t(r),()=>t()),m(s,e),g()}export{P as C,j as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as ie,s as ye,c as ce,f as de,a as Ee,n as Pe,b as v,d as ve,r as xe,y as h,e as ne,z as Ut,N as oe,$ as Vt,j as n,A as i,l as r,D as Fe,k as $,i as e,F as G,G as O,J as et,ab as zt,O as M,B as s,ag as U,u as le,H as tt,I as Kt,K as st,m as b,P as Gt,E as at}from"./CA6kBwP0.js";import{I as Se,aa as qt,ab as Bt,ac as Xt,n as jt,ad as q,ae as Jt,t as S,af as Wt,ag as Qt,ah as Yt,ai as Zt}from"./DsiJimTZ.js";import{I as be}from"./BbdTm9Wg.js";import{C as rt}from"./D1Penp-O.js";import{P as es,T as ts}from"./C41-TW_f.js";import{R as ss}from"./DrAzTVVH.js";import{C as as}from"./Cc1M9TyI.js";import{C as rs}from"./CUAn3nUf.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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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>'),gs=b('<div class="op-vaults-empty svelte-k8hi4h">NO ACCESSIBLE VAULTS</div>'),ws=b('<div class="onepassword-panel svelte-k8hi4h"><!> <div class="op-row svelte-k8hi4h"><!> <button class="op-btn svelte-k8hi4h" data-focus-index="2"><!> <span> </span></button></div> <div class="op-options svelte-k8hi4h"><div class="op-option svelte-k8hi4h"><span class="op-option-label svelte-k8hi4h">PREFIX</span> <!></div> <label class="op-option op-option--check svelte-k8hi4h" for="op-overwrite"><!> <span class="op-option-label svelte-k8hi4h">OVERWRITE</span></label></div> <!> <div class="op-actions svelte-k8hi4h"><button class="op-btn svelte-k8hi4h" data-focus-index="3"><!> <span> </span></button> <button class="op-btn op-btn--danger svelte-k8hi4h" data-focus-index="4"><!> <span> </span></button></div> <div class="op-tip svelte-k8hi4h">TIP: MAP DIRECT REFS AS <code class="svelte-k8hi4h">op://vault/item/field</code></div></div>'),bs=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">N</kbd> ADD</span>'),ys=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">ESC</kbd> CANCEL</span>'),Es=b('<div class="secrets-page svelte-k8hi4h"><div class="tab-header svelte-k8hi4h"><div class="tab-header-left svelte-k8hi4h"><span class="tab-header-title svelte-k8hi4h">SECRETS</span> <span class="tab-header-count svelte-k8hi4h"> </span></div> <button class="new-secret-btn svelte-k8hi4h"><!> <span>ADD SECRET</span></button></div> <!> <div class="secrets-content svelte-k8hi4h"><div class="panel svelte-k8hi4h"><div class="panel-header svelte-k8hi4h"><span class="panel-pip svelte-k8hi4h" style="background: var(--sig-highlight)"></span> <span class="panel-label svelte-k8hi4h">Stored Secrets</span> <span class="panel-count svelte-k8hi4h"> </span></div> <div class="panel-body svelte-k8hi4h"><!></div></div> <div class="panel svelte-k8hi4h" role="group" aria-label="1Password integration"><div class="panel-header-row svelte-k8hi4h"><button class="panel-header panel-header--toggle svelte-k8hi4h"><!> <span class="panel-label svelte-k8hi4h">1Password</span> <span class="panel-status svelte-k8hi4h"> </span></button> <button class="panel-action svelte-k8hi4h" aria-label="Refresh 1Password status"><!></button></div> <!></div></div> <div class="shortcut-bar svelte-k8hi4h"><!></div></div>');function Os(L,m){ie(m,!0);let d=h(ne([])),D=h(!1),g=h(""),N=h(""),_=h(!1),E=h(null),R=h(!1),ue=h(!1),p=h(ne({configured:!1,connected:!1,vaults:[]})),Y=h(ne([])),B=h("");const X=ne({prefix:"OP",overwrite:!1});let pe=h(!1),fe=h(!1),he=h(!1),C=h(ne([])),j=h(!1),l=h(-1),f=h("list"),o=h(-1);async function me(){s(D,!0),s(d,await qt(),!0),s(D,!1)}function nt(t){if(e(C).includes(t)){s(C,e(C).filter(a=>a!==t),!0);return}s(C,[...e(C),t],!0)}async function ke(){s(ue,!0);try{if(s(p,await Bt(),!0),e(p).connected){const a=await Xt();s(Y,a.length>0?a:e(p).vaults,!0)}else s(Y,[],!0),s(C,[],!0);const t=new Set(e(Y).map(a=>a.id));s(C,e(C).filter(a=>t.has(a)),!0)}finally{s(ue,!1)}}async function ot(){if(!e(g).trim()||!e(N).trim())return;s(_,!0),await Jt(e(g).trim(),e(N))?(S(`Secret ${e(g).trim()} added`,"success"),s(g,""),s(N,""),s(R,!1),await me()):S("Failed to add secret","error"),s(_,!1)}async function lt(t){s(E,t,!0),await Wt(t)?(S(`Secret ${t} deleted`,"success"),await me()):S("Failed to delete secret","error"),s(E,null)}async function it(){if(!e(B).trim()){S("Service account token is required","error");return}s(pe,!0);const t=await Qt(e(B).trim());if(s(pe,!1),!t.success){S(t.error??"Failed to connect 1Password","error");return}s(B,""),await ke(),S("Connected to 1Password","success")}async function ct(){s(fe,!0);const t=await Zt();if(s(fe,!1),!t.success){S(t.error??"Failed to disconnect 1Password","error");return}await ke(),S("Disconnected 1Password","success")}async function dt(){if(!e(p).connected){S("Connect 1Password first","error");return}s(he,!0);const t=await Yt({vaults:e(C).length>0?e(C):void 0,prefix:X.prefix.trim()||"OP",overwrite:X.overwrite});if(s(he,!1),!t.success){S(t.error??"Failed to import from 1Password","error");return}await me();const a=t.importedCount??0,u=t.skippedCount??0,w=t.errorCount??0;S(`Imported ${a} secrets (skipped ${u}, errors ${w})`,"success")}function vt(t){if(jt.activeTab!=="secrets"||t.defaultPrevented)return;const a=t.target,u=a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable;if(t.key==="Escape"){if(e(R)){t.preventDefault(),s(R,!1);return}if(e(f)==="1password"){t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1);return}t.preventDefault(),q();return}if(!u){if((t.key==="n"||t.key==="N")&&!e(R)){t.preventDefault(),s(R,!0);return}if(t.key==="ArrowRight"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),e(d).length>0?(s(l,0),V(0)):(s(f,"1password"),s(o,0),z(0))),t.key==="ArrowUp"&&e(f)==="list"&&e(l)>=0&&(t.preventDefault(),e(l)>0?(U(l,-1),V(e(l))):(s(l,-1),q())),t.key==="ArrowDown"&&e(f)==="list"){if(t.preventDefault(),e(l)<e(d).length-1)U(l),V(e(l));else if(e(l)===e(d).length-1){const w=document.querySelectorAll(".secret-item");w[e(l)]instanceof HTMLElement&&w[e(l)].blur(),s(f,"1password"),s(l,-1),s(o,0),z(0)}}if(t.key==="ArrowUp"&&e(f)==="1password"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"&&e(f)==="1password"){t.preventDefault();const w=_e(),y=Math.max(0,w.length-1);e(o)<y&&(U(o),z(e(o)))}t.key==="ArrowLeft"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),q())}}function V(t){const a=document.querySelectorAll(".secret-item");a[t]instanceof HTMLElement&&a[t].focus()}function _e(){const t=document.querySelector(".onepassword-panel");if(!t)return[];const a=t.querySelectorAll("[data-focus-index]");return Array.from(a).filter(u=>!u.disabled).sort((u,w)=>{const y=parseInt(u.getAttribute("data-focus-index")??"0",10),P=parseInt(w.getAttribute("data-focus-index")??"0",10);return y-P})}function z(t){const a=_e();if(a.length===0)return;const u=Math.min(t,a.length-1);a[u]?.focus()}function ut(t){if(t.key==="ArrowUp"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"){t.preventDefault();const a=_e(),u=Math.max(0,a.length-1);e(o)<u&&(U(o),z(e(o)))}if(t.key==="Escape"&&(t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1)),t.key==="Tab"){const a=_e(),u=Math.max(0,a.length-1);t.shiftKey&&e(o)>0?U(o,-1):!t.shiftKey&&e(o)<u&&U(o)}}function Z(t){s(o,t,!0),s(f,"1password")}function pt(t){s(l,t,!0),s(f,"list")}function ft(t,a){t.key==="ArrowDown"?(t.preventDefault(),t.stopPropagation(),a<e(d).length-1?(s(l,a+1),V(e(l))):(t.target.blur(),s(f,"1password"),s(l,-1),s(o,0),z(0))):t.key==="ArrowUp"?(t.preventDefault(),t.stopPropagation(),a>0?(s(l,a-1),V(e(l))):a===0&&(s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())}let ht=le(()=>e(p).connected?"CONNECTED":e(p).configured?"UNREACHABLE":"NOT CONFIGURED"),mt=le(()=>e(p).connected?"var(--sig-success)":e(p).configured?"var(--sig-warning)":"var(--sig-text-muted)");Ut(()=>{me(),ke()});var De=Es();oe("keydown",Vt,vt);var Ce=n(De),Ae=n(Ce),He=i(n(Ae),2),kt=n(He);r(He),r(Ae);var Te=i(Ae,2),_t=n(Te);es(_t,{class:"size-3"}),Fe(2),r(Te),r(Ce);var Ue=i(Ce,2);{var gt=t=>{var a=cs(),u=n(a),w=n(u);be(w,{type:"text",class:"secrets-add-input",placeholder:"SECRET_NAME",get value(){return e(g)},set value(A){s(g,A,!0)}});var y=i(w,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(A){s(N,A,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(A=>{P.disabled=A,O(x,e(_)?"ADDING...":"ADD")},[()=>e(_)||!e(g).trim()||!e(N).trim()]),M("click",P,ot),v(t,a)};$(Ue,t=>{e(R)&&t(gt)})}var Ie=i(Ue,2),Oe=n(Ie),Ne=n(Oe),Ve=i(n(Ne),4),wt=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,(w,y,P)=>{var x=ps();let A;var H=n(x);ns(H,{class:"secrets-secret-icon"});var J=i(H,2),we=n(J,!0);r(J);var K=i(J,4),te=n(K);{var se=T=>{var Re=us();v(T,Re)},Le=T=>{ts(T,{class:"size-3"})};$(te,T=>{e(E)===e(y)?T(se):T(Le,-1)})}r(K),r(x),G(()=>{A=Kt(x,1,"secret-item svelte-k8hi4h",null,A,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(we,e(y)),K.disabled=e(E)===e(y),et(K,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,T=>ft(T,P)),oe("focus",x,()=>pt(P)),M("click",K,()=>lt(e(y))),v(w,x)}),v(t,a)};$(bt,t=>{e(D)?t(yt):e(d).length===0?t(Et,1):t(Pt,-1)})}r(ze),r(Oe);var Ke=i(Oe,2),$e=n(Ke),ee=n($e),Ge=n(ee);{var xt=t=>{as(t,{class:"secrets-panel-chevron"})},St=t=>{rs(t,{class:"secrets-panel-chevron"})};$(Ge,t=>{e(j)?t(xt):t(St,-1)})}var Me=i(Ge,4),Dt=n(Me,!0);r(Me),r(ee);var ge=i(ee,2),Ct=n(ge);{let t=le(()=>`size-3${e(ue)?" op-spin":""}`);ss(Ct,{get class(){return e(t)}})}r(ge),r($e);var At=i($e,2);{var Tt=t=>{var a=ws(),u=n(a);{var w=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(w):e(p).configured?c(y,1):c(P,-1)})}var x=i(u,2),A=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(A,{type:"password","data-focus-index":"0",class:"secrets-op-input",get placeholder(){return e(c)},onfocus:()=>Z(0),get value(){return e(B)},set value(k){s(B,k,!0)}})}var H=i(A,2),J=n(H);os(J,{class:"size-3"});var we=i(J,2),K=n(we,!0);r(we),r(H),r(x);var te=i(x,2),se=n(te),Le=i(n(se),2);be(Le,{type:"text","data-focus-index":"1",class:"secrets-op-input-sm",placeholder:"OP",onfocus:()=>Z(1),get value(){return X.prefix},set value(c){X.prefix=c}}),r(se);var T=i(se,2),Re=n(T);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(T),r(te);var Be=i(te,2);{var $t=c=>{var k=_s(),Q=i(n(k),2);tt(Q,21,()=>e(Y),st,(re,I)=>{var F=ks(),Ye=n(F);{let Ht=le(()=>e(C).includes(e(I).id));rt(Ye,{get checked(){return e(Ht)},onCheckedChange:()=>nt(e(I).id),class:"secrets-op-checkbox"})}var Ze=i(Ye,2),Ft=n(Ze,!0);r(Ze),r(F),G(()=>O(Ft,e(I).name)),v(re,F)}),r(Q),r(k),v(c,k)},Mt=c=>{var k=gs();v(c,k)};$(Be,c=>{e(p).connected&&e(Y).length>0?c($t):e(p).connected&&c(Mt,1)})}var Xe=i(Be,2),W=n(Xe),je=n(W);is(je,{class:"size-3"});var Je=i(je,2),Lt=n(Je,!0);r(Je),r(W);var ae=i(W,2),We=n(ae);ls(We,{class:"size-3"});var Qe=i(We,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(K,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),W.disabled=e(he)||!e(p).connected,O(Lt,e(he)?"IMPORTING...":"IMPORT"),ae.disabled=e(fe)||!e(p).configured,O(Rt,e(fe)?"...":"DISCONNECT")},[()=>e(pe)||!e(B).trim()]),M("keydown",a,ut),M("click",H,it),oe("focus",H,()=>Z(2)),M("click",W,dt),oe("focus",W,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(At,t=>{e(j)&&t(Tt)})}r(Ke),r(Ie);var qe=i(Ie,2),It=n(qe);{var Ot=t=>{var a=bs();v(t,a)},Nt=t=>{var a=ys();v(t,a)};$(It,t=>{e(R)?t(Nt,-1):t(Ot)})}r(qe),r(De),G(()=>{O(kt,`${e(d).length??""} STORED`),O(wt,e(d).length),et(ee,"aria-expanded",e(j)),zt(Me,`color: ${e(mt)??""}`),O(Dt,e(ht)),ge.disabled=e(ue)}),M("click",Te,()=>{s(R,!e(R))}),M("click",ee,()=>{s(j,!e(j)),e(j)||(s(o,-1),s(f,"list"))}),M("click",ge,()=>ke()),v(L,De),ve()}Gt(["click","keydown"]);export{Os as default};
|
|
1
|
+
import{p as ie,s as ye,c as ce,f as de,a as Ee,n as Pe,b as v,d as ve,r as xe,y as h,e as ne,z as Ut,N as oe,$ as Vt,j as n,A as i,l as r,D as Fe,k as $,i as e,F as G,G as O,J as et,ab as zt,O as M,B as s,ag as U,u as le,H as tt,I as Kt,K as st,m as b,P as Gt,E as at}from"./CA6kBwP0.js";import{I as Se,aa as qt,ab as Bt,ac as Xt,n as jt,ad as q,ae as Jt,t as S,af as Wt,ag as Qt,ah as Yt,ai as Zt}from"./DpXm0Ri5.js";import{I as be}from"./Cwhw4u7P.js";import{C as rt}from"./BjHIV7jz.js";import{P as es,T as ts}from"./D6goYd5M.js";import{R as ss}from"./BFv_vage.js";import{C as as}from"./BjF3xwBs.js";import{C as rs}from"./BfvhM1lS.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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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:(g,N)=>{var _=ce(),E=de(_);Ee(E,()=>m.children??Pe),v(g,_)},$$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>'),gs=b('<div class="op-vaults-empty svelte-k8hi4h">NO ACCESSIBLE VAULTS</div>'),ws=b('<div class="onepassword-panel svelte-k8hi4h"><!> <div class="op-row svelte-k8hi4h"><!> <button class="op-btn svelte-k8hi4h" data-focus-index="2"><!> <span> </span></button></div> <div class="op-options svelte-k8hi4h"><div class="op-option svelte-k8hi4h"><span class="op-option-label svelte-k8hi4h">PREFIX</span> <!></div> <label class="op-option op-option--check svelte-k8hi4h" for="op-overwrite"><!> <span class="op-option-label svelte-k8hi4h">OVERWRITE</span></label></div> <!> <div class="op-actions svelte-k8hi4h"><button class="op-btn svelte-k8hi4h" data-focus-index="3"><!> <span> </span></button> <button class="op-btn op-btn--danger svelte-k8hi4h" data-focus-index="4"><!> <span> </span></button></div> <div class="op-tip svelte-k8hi4h">TIP: MAP DIRECT REFS AS <code class="svelte-k8hi4h">op://vault/item/field</code></div></div>'),bs=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">N</kbd> ADD</span>'),ys=b('<span class="shortcut svelte-k8hi4h"><kbd class="svelte-k8hi4h">ESC</kbd> CANCEL</span>'),Es=b('<div class="secrets-page svelte-k8hi4h"><div class="tab-header svelte-k8hi4h"><div class="tab-header-left svelte-k8hi4h"><span class="tab-header-title svelte-k8hi4h">SECRETS</span> <span class="tab-header-count svelte-k8hi4h"> </span></div> <button class="new-secret-btn svelte-k8hi4h"><!> <span>ADD SECRET</span></button></div> <!> <div class="secrets-content svelte-k8hi4h"><div class="panel svelte-k8hi4h"><div class="panel-header svelte-k8hi4h"><span class="panel-pip svelte-k8hi4h" style="background: var(--sig-highlight)"></span> <span class="panel-label svelte-k8hi4h">Stored Secrets</span> <span class="panel-count svelte-k8hi4h"> </span></div> <div class="panel-body svelte-k8hi4h"><!></div></div> <div class="panel svelte-k8hi4h" role="group" aria-label="1Password integration"><div class="panel-header-row svelte-k8hi4h"><button class="panel-header panel-header--toggle svelte-k8hi4h"><!> <span class="panel-label svelte-k8hi4h">1Password</span> <span class="panel-status svelte-k8hi4h"> </span></button> <button class="panel-action svelte-k8hi4h" aria-label="Refresh 1Password status"><!></button></div> <!></div></div> <div class="shortcut-bar svelte-k8hi4h"><!></div></div>');function Os(L,m){ie(m,!0);let d=h(ne([])),D=h(!1),g=h(""),N=h(""),_=h(!1),E=h(null),R=h(!1),ue=h(!1),p=h(ne({configured:!1,connected:!1,vaults:[]})),Y=h(ne([])),B=h("");const X=ne({prefix:"OP",overwrite:!1});let pe=h(!1),fe=h(!1),he=h(!1),C=h(ne([])),j=h(!1),l=h(-1),f=h("list"),o=h(-1);async function me(){s(D,!0),s(d,await qt(),!0),s(D,!1)}function nt(t){if(e(C).includes(t)){s(C,e(C).filter(a=>a!==t),!0);return}s(C,[...e(C),t],!0)}async function ke(){s(ue,!0);try{if(s(p,await Bt(),!0),e(p).connected){const a=await Xt();s(Y,a.length>0?a:e(p).vaults,!0)}else s(Y,[],!0),s(C,[],!0);const t=new Set(e(Y).map(a=>a.id));s(C,e(C).filter(a=>t.has(a)),!0)}finally{s(ue,!1)}}async function ot(){if(!e(g).trim()||!e(N).trim())return;s(_,!0),await Jt(e(g).trim(),e(N))?(S(`Secret ${e(g).trim()} added`,"success"),s(g,""),s(N,""),s(R,!1),await me()):S("Failed to add secret","error"),s(_,!1)}async function lt(t){s(E,t,!0),await Wt(t)?(S(`Secret ${t} deleted`,"success"),await me()):S("Failed to delete secret","error"),s(E,null)}async function it(){if(!e(B).trim()){S("Service account token is required","error");return}s(pe,!0);const t=await Qt(e(B).trim());if(s(pe,!1),!t.success){S(t.error??"Failed to connect 1Password","error");return}s(B,""),await ke(),S("Connected to 1Password","success")}async function ct(){s(fe,!0);const t=await Zt();if(s(fe,!1),!t.success){S(t.error??"Failed to disconnect 1Password","error");return}await ke(),S("Disconnected 1Password","success")}async function dt(){if(!e(p).connected){S("Connect 1Password first","error");return}s(he,!0);const t=await Yt({vaults:e(C).length>0?e(C):void 0,prefix:X.prefix.trim()||"OP",overwrite:X.overwrite});if(s(he,!1),!t.success){S(t.error??"Failed to import from 1Password","error");return}await me();const a=t.importedCount??0,u=t.skippedCount??0,w=t.errorCount??0;S(`Imported ${a} secrets (skipped ${u}, errors ${w})`,"success")}function vt(t){if(jt.activeTab!=="secrets"||t.defaultPrevented)return;const a=t.target,u=a.tagName==="INPUT"||a.tagName==="TEXTAREA"||a.isContentEditable;if(t.key==="Escape"){if(e(R)){t.preventDefault(),s(R,!1);return}if(e(f)==="1password"){t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1);return}t.preventDefault(),q();return}if(!u){if((t.key==="n"||t.key==="N")&&!e(R)){t.preventDefault(),s(R,!0);return}if(t.key==="ArrowRight"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),e(d).length>0?(s(l,0),V(0)):(s(f,"1password"),s(o,0),z(0))),t.key==="ArrowUp"&&e(f)==="list"&&e(l)>=0&&(t.preventDefault(),e(l)>0?(U(l,-1),V(e(l))):(s(l,-1),q())),t.key==="ArrowDown"&&e(f)==="list"){if(t.preventDefault(),e(l)<e(d).length-1)U(l),V(e(l));else if(e(l)===e(d).length-1){const w=document.querySelectorAll(".secret-item");w[e(l)]instanceof HTMLElement&&w[e(l)].blur(),s(f,"1password"),s(l,-1),s(o,0),z(0)}}if(t.key==="ArrowUp"&&e(f)==="1password"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"&&e(f)==="1password"){t.preventDefault();const w=_e(),y=Math.max(0,w.length-1);e(o)<y&&(U(o),z(e(o)))}t.key==="ArrowLeft"&&e(f)==="list"&&e(l)===-1&&(t.preventDefault(),q())}}function V(t){const a=document.querySelectorAll(".secret-item");a[t]instanceof HTMLElement&&a[t].focus()}function _e(){const t=document.querySelector(".onepassword-panel");if(!t)return[];const a=t.querySelectorAll("[data-focus-index]");return Array.from(a).filter(u=>!u.disabled).sort((u,w)=>{const y=parseInt(u.getAttribute("data-focus-index")??"0",10),P=parseInt(w.getAttribute("data-focus-index")??"0",10);return y-P})}function z(t){const a=_e();if(a.length===0)return;const u=Math.min(t,a.length-1);a[u]?.focus()}function ut(t){if(t.key==="ArrowUp"&&(t.preventDefault(),e(o)>0?(U(o,-1),z(e(o))):e(o)===0&&e(d).length>0?(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,e(d).length-1),s(o,-1),V(e(l))):e(o)===0&&e(d).length===0&&(document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(o,-1),q())),t.key==="ArrowDown"){t.preventDefault();const a=_e(),u=Math.max(0,a.length-1);e(o)<u&&(U(o),z(e(o)))}if(t.key==="Escape"&&(t.preventDefault(),document.activeElement instanceof HTMLElement&&document.activeElement.blur(),s(f,"list"),s(l,-1),s(o,-1)),t.key==="Tab"){const a=_e(),u=Math.max(0,a.length-1);t.shiftKey&&e(o)>0?U(o,-1):!t.shiftKey&&e(o)<u&&U(o)}}function Z(t){s(o,t,!0),s(f,"1password")}function pt(t){s(l,t,!0),s(f,"list")}function ft(t,a){t.key==="ArrowDown"?(t.preventDefault(),t.stopPropagation(),a<e(d).length-1?(s(l,a+1),V(e(l))):(t.target.blur(),s(f,"1password"),s(l,-1),s(o,0),z(0))):t.key==="ArrowUp"?(t.preventDefault(),t.stopPropagation(),a>0?(s(l,a-1),V(e(l))):a===0&&(s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())):t.key==="ArrowLeft"&&(t.preventDefault(),t.stopPropagation(),s(l,-1),t.target instanceof HTMLElement&&t.target.blur(),q())}let ht=le(()=>e(p).connected?"CONNECTED":e(p).configured?"UNREACHABLE":"NOT CONFIGURED"),mt=le(()=>e(p).connected?"var(--sig-success)":e(p).configured?"var(--sig-warning)":"var(--sig-text-muted)");Ut(()=>{me(),ke()});var De=Es();oe("keydown",Vt,vt);var Ce=n(De),Ae=n(Ce),He=i(n(Ae),2),kt=n(He);r(He),r(Ae);var Te=i(Ae,2),_t=n(Te);es(_t,{class:"size-3"}),Fe(2),r(Te),r(Ce);var Ue=i(Ce,2);{var gt=t=>{var a=cs(),u=n(a),w=n(u);be(w,{type:"text",class:"secrets-add-input",placeholder:"SECRET_NAME",get value(){return e(g)},set value(A){s(g,A,!0)}});var y=i(w,2);be(y,{type:"password",class:"secrets-add-input",placeholder:"value",get value(){return e(N)},set value(A){s(N,A,!0)}});var P=i(y,2),x=n(P,!0);r(P),r(u),r(a),G(A=>{P.disabled=A,O(x,e(_)?"ADDING...":"ADD")},[()=>e(_)||!e(g).trim()||!e(N).trim()]),M("click",P,ot),v(t,a)};$(Ue,t=>{e(R)&&t(gt)})}var Ie=i(Ue,2),Oe=n(Ie),Ne=n(Oe),Ve=i(n(Ne),4),wt=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,(w,y,P)=>{var x=ps();let A;var H=n(x);ns(H,{class:"secrets-secret-icon"});var J=i(H,2),we=n(J,!0);r(J);var K=i(J,4),te=n(K);{var se=T=>{var Re=us();v(T,Re)},Le=T=>{ts(T,{class:"size-3"})};$(te,T=>{e(E)===e(y)?T(se):T(Le,-1)})}r(K),r(x),G(()=>{A=Kt(x,1,"secret-item svelte-k8hi4h",null,A,{"secret-item--focused":e(f)==="list"&&e(l)===P}),O(we,e(y)),K.disabled=e(E)===e(y),et(K,"aria-label",`Delete secret ${e(y)}`)}),M("keydown",x,T=>ft(T,P)),oe("focus",x,()=>pt(P)),M("click",K,()=>lt(e(y))),v(w,x)}),v(t,a)};$(bt,t=>{e(D)?t(yt):e(d).length===0?t(Et,1):t(Pt,-1)})}r(ze),r(Oe);var Ke=i(Oe,2),$e=n(Ke),ee=n($e),Ge=n(ee);{var xt=t=>{as(t,{class:"secrets-panel-chevron"})},St=t=>{rs(t,{class:"secrets-panel-chevron"})};$(Ge,t=>{e(j)?t(xt):t(St,-1)})}var Me=i(Ge,4),Dt=n(Me,!0);r(Me),r(ee);var ge=i(ee,2),Ct=n(ge);{let t=le(()=>`size-3${e(ue)?" op-spin":""}`);ss(Ct,{get class(){return e(t)}})}r(ge),r($e);var At=i($e,2);{var Tt=t=>{var a=ws(),u=n(a);{var w=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(w):e(p).configured?c(y,1):c(P,-1)})}var x=i(u,2),A=n(x);{let c=le(()=>e(p).connected?"Replace service account token":"Service account token");be(A,{type:"password","data-focus-index":"0",class:"secrets-op-input",get placeholder(){return e(c)},onfocus:()=>Z(0),get value(){return e(B)},set value(k){s(B,k,!0)}})}var H=i(A,2),J=n(H);os(J,{class:"size-3"});var we=i(J,2),K=n(we,!0);r(we),r(H),r(x);var te=i(x,2),se=n(te),Le=i(n(se),2);be(Le,{type:"text","data-focus-index":"1",class:"secrets-op-input-sm",placeholder:"OP",onfocus:()=>Z(1),get value(){return X.prefix},set value(c){X.prefix=c}}),r(se);var T=i(se,2),Re=n(T);rt(Re,{id:"op-overwrite",class:"secrets-op-checkbox",get checked(){return X.overwrite},set checked(c){X.overwrite=c}}),Fe(2),r(T),r(te);var Be=i(te,2);{var $t=c=>{var k=_s(),Q=i(n(k),2);tt(Q,21,()=>e(Y),st,(re,I)=>{var F=ks(),Ye=n(F);{let Ht=le(()=>e(C).includes(e(I).id));rt(Ye,{get checked(){return e(Ht)},onCheckedChange:()=>nt(e(I).id),class:"secrets-op-checkbox"})}var Ze=i(Ye,2),Ft=n(Ze,!0);r(Ze),r(F),G(()=>O(Ft,e(I).name)),v(re,F)}),r(Q),r(k),v(c,k)},Mt=c=>{var k=gs();v(c,k)};$(Be,c=>{e(p).connected&&e(Y).length>0?c($t):e(p).connected&&c(Mt,1)})}var Xe=i(Be,2),W=n(Xe),je=n(W);is(je,{class:"size-3"});var Je=i(je,2),Lt=n(Je,!0);r(Je),r(W);var ae=i(W,2),We=n(ae);ls(We,{class:"size-3"});var Qe=i(We,2),Rt=n(Qe,!0);r(Qe),r(ae),r(Xe),Fe(2),r(a),G(c=>{H.disabled=c,O(K,e(pe)?"...":e(p).connected?"UPDATE":"CONNECT"),W.disabled=e(he)||!e(p).connected,O(Lt,e(he)?"IMPORTING...":"IMPORT"),ae.disabled=e(fe)||!e(p).configured,O(Rt,e(fe)?"...":"DISCONNECT")},[()=>e(pe)||!e(B).trim()]),M("keydown",a,ut),M("click",H,it),oe("focus",H,()=>Z(2)),M("click",W,dt),oe("focus",W,()=>Z(3)),M("click",ae,ct),oe("focus",ae,()=>Z(4)),v(t,a)};$(At,t=>{e(j)&&t(Tt)})}r(Ke),r(Ie);var qe=i(Ie,2),It=n(qe);{var Ot=t=>{var a=bs();v(t,a)},Nt=t=>{var a=ys();v(t,a)};$(It,t=>{e(R)?t(Nt,-1):t(Ot)})}r(qe),r(De),G(()=>{O(kt,`${e(d).length??""} STORED`),O(wt,e(d).length),et(ee,"aria-expanded",e(j)),zt(Me,`color: ${e(mt)??""}`),O(Dt,e(ht)),ge.disabled=e(ue)}),M("click",Te,()=>{s(R,!e(R))}),M("click",ee,()=>{s(j,!e(j)),e(j)||(s(o,-1),s(f,"list"))}),M("click",ge,()=>ke()),v(L,De),ve()}Gt(["click","keydown"]);export{Os as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as Ie,g as Ue,t as Xe,j as v,a as Ye,n as Ze,l as s,v as qe,b as t,d as Le,r as Qe,m as c,z as ea,A as e,k as N,i as a,O as te,y as q,B as z,F as p,G as y,u as ze,f as P,H as ce,K as fe,D as G,E as B,J as ue,c as pe,a4 as me,I as ge,P as aa}from"./CA6kBwP0.js";import{c as ra,W as ta,X as sa,Y as oa,Z as x,_ as _e,$ as he}from"./
|
|
1
|
+
import{p as Ie,g as Ue,t as Xe,j as v,a as Ye,n as Ze,l as s,v as qe,b as t,d as Le,r as Qe,m as c,z as ea,A as e,k as N,i as a,O as te,y as q,B as z,F as p,G as y,u as ze,f as P,H as ce,K as fe,D as G,E as B,J as ue,c as pe,a4 as me,I as ge,P as aa}from"./CA6kBwP0.js";import{c as ra,W as ta,X as sa,Y as oa,Z as x,_ as _e,$ as he}from"./DpXm0Ri5.js";import{C as xe,a as be}from"./C1VzlBE2.js";import{C as $e}from"./UjYepwuL.js";import{C as we,a as ye}from"./B-q6V53z.js";import{P as la}from"./Ciheccvk.js";import{R as ia}from"./BFv_vage.js";var na=c("<div><!></div>");function Pe(Ae,W){Ie(W,!0);let M=Ue(W,"ref",15,null),O=Qe(W,["$$slots","$$events","$$legacy","ref","class","children"]);var k=na();Xe(k,H=>({"data-slot":"card-action",class:H,...O}),[()=>ra("col-start-2 row-span-2 row-start-1 self-start justify-self-end",W.class)]);var _=v(k);Ye(_,()=>W.children??Ze),s(k),qe(k,H=>M(H),()=>M()),t(Ae,k),Le()}var da=c('<span class="sig-meta whitespace-nowrap text-[var(--sig-text-muted)]"> </span>'),va=c('<div class="hidden h-full min-h-0 gap-4 2xl:flex"><div class="w-[21rem] min-w-[21rem] border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div> <div class="min-w-0 flex-1 border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div> <div class="min-w-0 flex-1 border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div></div> <div class="flex h-full min-h-0 flex-col gap-3 2xl:hidden"><div class="flex gap-2 border-b border-[var(--sig-border)] pb-3"><!> <!> <!></div> <div class="border border-[var(--sig-border)] bg-[var(--sig-surface)] p-4"><!> <!> <!> <div class="space-y-2"></div></div></div>',1),ca=c(`<div class="flex h-full min-h-0 items-center justify-center"><div class="border border-[var(--sig-border-strong)] bg-[var(--sig-surface)]
|
|
2
2
|
px-6 py-5 text-center"><div class="sig-heading text-[var(--sig-text-bright)]">Project Unavailable</div> <p class="mt-2 max-w-md font-[family-name:var(--font-mono)] text-[11px]
|
|
3
3
|
leading-5 text-[var(--sig-text-muted)]">Couldn't load README, roadmap, or changelog.</p> <button class="mt-4 text-[11px] uppercase tracking-[0.08em]
|
|
4
4
|
font-[family-name:var(--font-mono)] text-[var(--sig-accent)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as n,s as d,c,f as h,a as i,n as f,b as l,d as m,r as u}from"./CA6kBwP0.js";import{I as $}from"./
|
|
1
|
+
import{p as n,s as d,c,f as h,a as i,n as f,b as l,d as m,r as u}from"./CA6kBwP0.js";import{I as $}from"./DpXm0Ri5.js";function g(e,s){n(s,!0);let t=u(s,["$$slots","$$events","$$legacy"]);const r=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"}],["path",{d:"M21 3v5h-5"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"}],["path",{d:"M8 16H3v5"}]];$(e,d({name:"refresh-cw"},()=>t,{get iconNode(){return r},children:(o,v)=>{var a=c(),p=h(a);i(p,()=>s.children??f),l(o,a)},$$slots:{default:!0}})),m()}export{g as R};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{e as We,p as F,s as ie,c as re,f as ae,a as ne,n as se,b as h,d as $,r as oe,j as o,k as Y,A as M,l as s,F as H,G as te,J as Q,H as pe,i as a,m as j,g as Ue,z as Te,aO as _e,v as De,B as w,I as fe,y as X,u as ee,O as N,P as ge,ab as ze,N as de,ac as we,D as me,w as xe,E as He}from"./CA6kBwP0.js";import{aQ as ve,I as le,aC as Ve,b0 as Ye,b1 as Be,b2 as Xe}from"./
|
|
1
|
+
import{e as We,p as F,s as ie,c as re,f as ae,a as ne,n as se,b as h,d as $,r as oe,j as o,k as Y,A as M,l as s,F as H,G as te,J as Q,H as pe,i as a,m as j,g as Ue,z as Te,aO as _e,v as De,B as w,I as fe,y as X,u as ee,O as N,P as ge,ab as ze,N as de,ac as we,D as me,w as xe,E as He}from"./CA6kBwP0.js";import{aQ as ve,I as le,aC as Ve,b0 as Ye,b1 as Be,b2 as Xe}from"./DpXm0Ri5.js";import{R as Ie}from"./BFv_vage.js";import{P as Pe,T as Je}from"./D6goYd5M.js";import{P as Fe}from"./jZJ_4oOa.js";const p=We({entries:[],loading:!1,error:null,groups:[],activeGroup:null,draggingId:null,focusedId:null,widgetCacheVersion:0}),ce=new Map,be=new Set;function $e(){return p.entries.filter(t=>t.state==="tray")}function Ke(){const t=p.entries.filter(e=>e.state==="grid");if(p.activeGroup){const e=p.groups.find(r=>r.id===p.activeGroup);if(e)return t.filter(r=>e.items.includes(r.id))}return t}function Ze(){return p.entries.filter(t=>t.state==="dock")}const Ae=12;function Ge(t,e,r){const c=r?.x??0,i=r?.y??0;function m(y,T,q,x){for(const P of t)if(y<P.x+P.w&&y+q>P.x&&T<P.y+P.h&&T+x>P.y)return!0;return!1}const n=Math.max(0,Math.min(Ae-e.w,c)),u=Math.max(0,i);if(!m(n,u,e.w,e.h))return{x:n,y:u,w:e.w,h:e.h};for(let y=1;y<=20;y++)for(let T=-y;T<=y;T++)for(let q=-y;q<=y;q++){if(Math.abs(q)!==y&&Math.abs(T)!==y)continue;const x=Math.max(0,Math.min(Ae-e.w,c+q)),P=Math.max(0,i+T);if(!m(x,P,e.w,e.h))return{x,y:P,w:e.w,h:e.h}}return{x:0,y:t.reduce((y,T)=>Math.max(y,T.y+T.h),0),w:e.w,h:e.h}}async function Se(){p.loading=!0,p.error=null;try{const t=await fetch(`${ve}/api/os/tray`);if(!t.ok)throw new Error(`HTTP ${t.status}`);const e=await t.json();p.entries=e.entries??[]}catch(t){p.error=t instanceof Error?t.message:String(t)}finally{p.loading=!1}}async function he(t,e,r){try{const c={state:e};r&&(c.gridPosition=r);const i=await fetch(`${ve}/api/os/tray/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!i.ok)return!1;const m=await i.json();if(m.success&&m.entry){const n=p.entries.findIndex(u=>u.id===t);n>=0&&(p.entries[n]=m.entry)}return!0}catch{return!1}}async function Qe(t,e){return he(t,"grid",e)}async function Ee(t,e){const r=p.entries.find(n=>n.id===t);if(!r)return!1;if(e)return he(t,"grid",e);const c=r.manifest?.defaultSize??{w:4,h:3},i=p.entries.flatMap(n=>n.id!==t&&n.state==="grid"&&n.gridPosition?[n.gridPosition]:[]),m=Ge(i,c);return he(t,"grid",m)}async function et(t){return he(t,"dock")}async function Ne(t){return he(t,"tray")}const Oe="signet-os-sidebar-groups";function tt(){try{const t=localStorage.getItem(Oe);t&&(p.groups=JSON.parse(t))}catch{p.groups=[]}}function ke(){localStorage.setItem(Oe,JSON.stringify(p.groups))}function at(t){const e={id:`group_${Date.now()}`,name:t,items:[]};return p.groups=[...p.groups,e],ke(),e}function rt(t){p.groups=p.groups.filter(e=>e.id!==t),p.activeGroup===t&&(p.activeGroup=null),ke()}function it(t,e){p.groups=p.groups.map(r=>r.id===t?{...r,name:e}:r),ke()}function nt(t,e){p.groups=p.groups.map(r=>r.id!==t||r.items.includes(e)?r:{...r,items:[...r.items,e]}),ke()}function Me(t){p.activeGroup=t}function st(t){p.focusedId=t}function ye(){p.focusedId=null}async function Ce(t){if(ce.has(t))return ce.get(t)??null;try{const e=await fetch(`${ve}/api/os/widget/${encodeURIComponent(t)}`);if(!e.ok)return null;const r=await e.json();return r.html?(ce.set(t,r.html),p.widgetCacheVersion++,r.html):null}catch{return null}}async function Re(t){if(!be.has(t)){be.add(t),p.widgetCacheVersion++;try{const r=await(await fetch(`${ve}/api/os/widget/generate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({serverId:t,force:!1})})).json();r.status==="cached"&&r.html&&ce.set(t,r.html)}catch{}finally{ce.has(t)&&be.delete(t),p.widgetCacheVersion++}}}function ot(t,e){F(e,!0);let r=oe(e,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z"}]];le(t,ie({name:"wrench"},()=>r,{get iconNode(){return c},children:(i,m)=>{var n=re(),u=ae(n);ne(u,()=>e.children??se),h(i,n)},$$slots:{default:!0}})),$()}function je(t,e){F(e,!0);let r=oe(e,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"}],["path",{d:"m3.3 7 8.7 5 8.7-5"}],["path",{d:"M12 22V12"}]];le(t,ie({name:"box"},()=>r,{get iconNode(){return c},children:(i,m)=>{var n=re(),u=ae(n);ne(u,()=>e.children??se),h(i,n)},$$slots:{default:!0}})),$()}var lt=j('<img class="auto-card-icon svelte-1y09vim" referrerpolicy="no-referrer"/>'),dt=j('<div class="auto-card-icon-placeholder svelte-1y09vim"><!></div>'),ct=j('<button class="auto-card-tool-btn sig-switch svelte-1y09vim" disabled=""><!> <span class="truncate"> </span></button>'),vt=j('<div class="auto-card-tools svelte-1y09vim"></div>'),ut=j('<div class="auto-card-empty svelte-1y09vim"><span class="sig-label">No tools exposed</span></div>'),gt=j('<div class="auto-card svelte-1y09vim"><div class="auto-card-header svelte-1y09vim"><!> <span class="auto-card-name svelte-1y09vim"> </span> <span class="sig-meta ml-auto"> </span></div> <!></div>');function pt(t,e){F(e,!0);var r=gt(),c=o(r),i=o(c);{var m=G=>{var g=lt();H(()=>{Q(g,"src",e.icon),Q(g,"alt",e.name)}),h(G,g)},n=G=>{var g=dt(),b=o(g);je(b,{class:"size-4"}),s(g),h(G,g)};Y(i,G=>{e.icon?G(m):G(n,-1)})}var u=M(i,2),O=o(u,!0);s(u);var y=M(u,2),T=o(y);s(y),s(c);var q=M(c,2);{var x=G=>{var g=vt();pe(g,21,()=>e.autoCard.tools,b=>b.name,(b,z)=>{var E=ct(),W=o(E);ot(W,{class:"size-3 shrink-0 opacity-50"});var J=M(W,2),S=o(J,!0);s(J),s(E),H(()=>{Q(E,"title",a(z).description||a(z).name),te(S,a(z).name)}),h(b,E)}),s(g),h(G,g)},P=G=>{var g=ut();h(G,g)};Y(q,G=>{e.autoCard.tools.length>0?G(x):G(P,-1)})}s(r),H(()=>{te(O,e.name),te(T,`${e.autoCard.tools.length??""} tools`)}),h(t,r),$()}const ft=`
|
|
2
2
|
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
|
|
3
3
|
html { font-family: 'Geist Mono', 'IBM Plex Mono', monospace; font-size: 13px; line-height: 1.5; color: var(--sig-text); background: var(--sig-bg); -webkit-font-smoothing: antialiased; }
|
|
4
4
|
body { margin: 0; padding: 8px; min-height: 100%; }
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as Pt,Q as Mt,i as r,B as d,c as Re,f as B,h as C,D as x,E as m,F as y,G as _,b as a,A as n,k as D,j as g,l as f,N as It,d as Tt,u as X,y as Q,H as He,m as h,$ as Ft,K as at,t as Nt,I as _t,Z as yt,O as Ke,_ as qt,a0 as zt,P as Bt}from"./CA6kBwP0.js";import{P as Rt}from"./Ciheccvk.js";import{T as Lt}from"./C8xQ4WP2.js";import{S as Ot,o as Ut,p as Wt,q as jt,B as ve,u as Vt,v as Gt,w as Kt,T as Ht,h as Jt,n as bt,i as Qt,x as l,y as $t,z as Xt,C as Yt,D as Zt,A as wt,F as er,G as st,H as kt,J as tr}from"./
|
|
1
|
+
import{p as Pt,Q as Mt,i as r,B as d,c as Re,f as B,h as C,D as x,E as m,F as y,G as _,b as a,A as n,k as D,j as g,l as f,N as It,d as Tt,u as X,y as Q,H as He,m as h,$ as Ft,K as at,t as Nt,I as _t,Z as yt,O as Ke,_ as qt,a0 as zt,P as Bt}from"./CA6kBwP0.js";import{P as Rt}from"./Ciheccvk.js";import{T as Lt}from"./C8xQ4WP2.js";import{S as Ot,o as Ut,p as Wt,q as jt,B as ve,u as Vt,v as Gt,w as Kt,T as Ht,h as Jt,n as bt,i as Qt,x as l,y as $t,z as Xt,C as Yt,D as Zt,A as wt,F as er,G as st,H as kt,J as tr}from"./DpXm0Ri5.js";import{I as Le}from"./Cwhw4u7P.js";import{L as ue}from"./jwYiaet7.js";import{T as ht}from"./BXG8lr0I.js";import{c as Dt,S as At,a as Ct,b as Je}from"./D1Op0UPx.js";import{S as St}from"./CwQE_qLL.js";import{B as Be}from"./BtXC-tWL.js";import{P as rr,a as ar,b as sr}from"./DooH7yrN.js";import{C as or,a as nr}from"./VdJsQHLD.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 +1 @@
|
|
|
1
|
-
import{p as n,g as r,q as u,t as c,v,w as b,b as f,d as x,r as m,m as g}from"./CA6kBwP0.js";import{c as p}from"./
|
|
1
|
+
import{p as n,g as r,q as u,t as c,v,w as b,b as f,d as x,r as m,m as g}from"./CA6kBwP0.js";import{c as p}from"./DpXm0Ri5.js";var h=g("<textarea></textarea>");function y(i,a){n(a,!0);let s=r(a,"ref",15,null),o=r(a,"value",15),d=r(a,"data-slot",3,"textarea"),l=m(a,["$$slots","$$events","$$legacy","ref","value","class","data-slot"]);var e=h();u(e),c(e,t=>({"data-slot":d(),class:t,...l}),[()=>p("border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a.class)]),v(e,t=>s(t),()=>s()),b(e,o),f(i,e),x()}export{y as T};
|
|
@@ -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"./CA6kBwP0.js";import{I as $}from"./
|
|
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"./CA6kBwP0.js";import{I as $}from"./DpXm0Ri5.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,s as d,c,f as i,a as l,n as m,b as f,d as h,r as u}from"./CA6kBwP0.js";import{I as $}from"./
|
|
1
|
+
import{p,s as d,c,f as i,a as l,n as m,b as f,d as h,r as u}from"./CA6kBwP0.js";import{I as $}from"./DpXm0Ri5.js";function w(e,o){p(o,!0);let n=u(o,["$$slots","$$events","$$legacy"]);const r=[["path",{d:"m6 9 6 6 6-6"}]];$(e,d({name:"chevron-down"},()=>n,{get iconNode(){return r},children:(a,v)=>{var s=c(),t=i(s);l(t,()=>o.children??m),f(a,s)},$$slots:{default:!0}})),h()}export{w as C};
|
|
@@ -1 +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"./CA6kBwP0.js";import{c as G,M as H}from"./
|
|
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"./CA6kBwP0.js";import{c as G,M as H}from"./DpXm0Ri5.js";import{C as I}from"./Dt43-PVR.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 +1 @@
|
|
|
1
|
-
import{p as h,g as s,c as o,f as d,M as p,v as m,t as x,a as y,n as w,b as c,d as _,r as k}from"./CA6kBwP0.js";import{c as B,e as V}from"./
|
|
1
|
+
import{p as h,g as s,c as o,f as d,M as p,v as m,t as x,a as y,n as w,b as c,d as _,r as k}from"./CA6kBwP0.js";import{c as B,e as V}from"./DpXm0Ri5.js";const j=V({base:"focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] [&>svg]:pointer-events-none [&>svg]:size-3",variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90 border-transparent",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90 border-transparent",destructive:"bg-destructive [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/70 border-transparent text-white",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function P(v,e){h(e,!0);let a=s(e,"ref",15,null),f=s(e,"variant",3,"default"),l=k(e,["$$slots","$$events","$$legacy","ref","href","class","variant","children"]);var t=o(),u=d(t);p(u,()=>e.href?"a":"span",!1,(i,g)=>{m(i,r=>a(r),()=>a()),x(i,r=>({"data-slot":"badge",href:e.href,class:r,...l}),[()=>B(j({variant:f()}),e.class)]);var n=o(),b=d(n);y(b,()=>e.children??w),c(g,n)}),c(v,t),_()}export{P as B};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as n,g as c,t as o,j as i,a as f,n as v,l as u,v as h,b as m,d as g,r as x,m as b}from"./CA6kBwP0.js";import{c as p}from"./
|
|
1
|
+
import{p as n,g as c,t as o,j as i,a as f,n as v,l as u,v as h,b as m,d as g,r as x,m as b}from"./CA6kBwP0.js";import{c as p}from"./DpXm0Ri5.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 +1 @@
|
|
|
1
|
-
import{p as Wt,y as L,e as Y,z as Gt,N as Jt,$ as Yt,j as r,A as c,k as R,i as t,l as a,v as Zt,B as b,b as _,d as Vt,u as P,H as G,F,I as Xt,J as Xe,G as u,O as Qt,D as Z,m as T,c as be,f as xe,K as _e,P as ea}from"./CA6kBwP0.js";import{P as ta}from"./Ciheccvk.js";import{h as aa,n as Qe,i as ra,j as sa,k as ia,l as na,m as oa,B as he}from"./DsiJimTZ.js";import{T as la}from"./C8xQ4WP2.js";import{C as ca}from"./CK-K06tq.js";import{C as da}from"./CUAn3nUf.js";import{R as va}from"./5-J0P_sS.js";var ma=T('<div class="flex flex-1 items-center justify-center sig-label">Loading timeline...</div>'),pa=T('<div class="flex flex-1 items-center justify-center sig-label text-[var(--sig-text-muted)]">No timeline data yet.</div>'),ua=T('<button role="tab"> </button>'),fa=T('<p class="sig-label text-[var(--sig-text-muted)]">No type signals</p>'),ga=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ba=T('<p class="sig-label text-[var(--sig-text-muted)]">No source signals</p>'),xa=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),_a=T('<p class="sig-label text-[var(--sig-text-muted)]">No tags this era</p>'),ha=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ya=T('<p class="mt-2 sig-label text-[var(--sig-text-muted)]">No memories saved in this era yet.</p>'),Ma=T('<article class="timeline-top-card rounded-lg border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] p-2 svelte-1acbaf"><div class="timeline-top-card-head svelte-1acbaf"><div class="timeline-top-card-icon svelte-1acbaf"> </div> <div class="timeline-top-card-title-wrap svelte-1acbaf"><p class="timeline-top-card-title svelte-1acbaf"> </p> <p class="timeline-top-card-subtitle svelte-1acbaf"> </p></div></div> <p class="timeline-top-card-content mt-1 text-[11px] leading-relaxed text-[var(--sig-text)] line-clamp-4 svelte-1acbaf"> </p> <div class="timeline-top-card-meta mt-auto flex items-center justify-between gap-2 pt-2 text-[11px] text-[var(--sig-text-muted)] svelte-1acbaf"><p class="timeline-top-card-badge svelte-1acbaf"> </p> <p> </p></div></article>'),ka=T('<div class="timeline-top-card-grid mt-2 svelte-1acbaf"></div>'),wa=T('<div class="timeline-stack flex flex-1 min-h-0 flex-col gap-3 svelte-1acbaf"><section class="timeline-hero rounded-xl border border-[var(--sig-border)] p-3 overflow-hidden svelte-1acbaf"><div class="timeline-hero-grid svelte-1acbaf"><div class="min-w-0"><h2 class="timeline-hero-title svelte-1acbaf">Signet Evolution Timeline</h2> <p class="timeline-hero-subtitle svelte-1acbaf">Track added, evolved, and pinned memories across recap eras.</p></div> <div class="timeline-hero-metrics svelte-1acbaf"><div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Agent skills used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">MCP servers used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Average importance</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Pinned</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div></div></div></section> <div class="timeline-content-split flex-1 min-h-0 gap-3 svelte-1acbaf"><section class="timeline-detail-panel flex min-h-0 flex-col gap-3 overflow-x-hidden overflow-y-auto rounded-[10.5px] border-2 border-[var(--sig-border-strong)] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="--panel-pad: 0.75rem;"><div class="timeline-era-head svelte-1acbaf"><div class="timeline-era-title-row svelte-1acbaf"><p class="sig-heading timeline-era-title svelte-1acbaf"> <span class="timeline-era-title-range svelte-1acbaf"> </span></p> <div class="timeline-era-controls flex items-center gap-1 svelte-1acbaf"><!> <div role="tablist" aria-orientation="horizontal" class="flex items-center gap-1"></div> <!> <!></div></div></div> <div class="timeline-summary-grid svelte-1acbaf"><div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Added</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Tracked events captured</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Evolved</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Strengthened</span></p></div></div> <div class="timeline-mix-grid svelte-1acbaf"><div class="timeline-mix-card timeline-mix-card--type p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Type mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--source p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Source mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--tags p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Top tags</p> <!></div></div></section> <section class="timeline-top-panel rounded-[10.5px] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="border: 0.87px solid var(--sig-border);"><div class="flex items-center justify-between gap-2"><p class="sig-label text-[var(--sig-text-bright)]">Top Four Memories</p> <p class="text-[11px] text-[var(--sig-text-bright)]"> </p></div> <!></section></div></div>'),Ta=T('<p class="sig-label text-[var(--sig-danger)]"> </p>'),Sa=T('<div class="timeline-shell flex flex-col flex-1 min-h-0 overflow-hidden bg-[var(--sig-bg)] svelte-1acbaf" role="region" aria-label="Memory timeline. Use left and right arrows to move through eras."><!> <div class="flex flex-1 min-h-0 flex-col gap-3 p-3 bg-[var(--sig-bg)]"><!> <!></div></div>');function La(et,V){Wt(V,!0);const tt="h-8 px-3 rounded-lg border text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] transition-colors";let X=L(!1),z=L(null),N=L(Y([])),S=L(0),Q=L(Y({})),ee=L(Y({})),te=L(Y({})),$=L(null);const p=P(()=>t(N)[t(S)]??null),ye=P(()=>t(p)?t(Q)[t(p).rangeKey]??0:0);function at(e){return e.sourceBreakdown.filter(l=>Me(l.key)).length}function Me(e){const s=e.trim().toLowerCase();return s?!!(/\bmcp\b/.test(s)||/\btool[-\s]?servers?\b/.test(s)||s.includes("model context protocol")||s.includes("model-context-protocol")||s.includes("modelcontextprotocol")):!1}const ke=P(()=>t(p)?Math.max(t(ee)[t(p).rangeKey]??0,at(t(p))):0),we=P(()=>t(p)?t(te)[t(p).rangeKey]??[]:[]);function Te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(e){if(Array.isArray(e))return e.filter(s=>typeof s=="string").map(s=>s.trim()).filter(s=>s.length>0);if(typeof e=="string"){const s=e.trim();if(!s)return[];if(s.startsWith("[")&&s.endsWith("]"))try{const l=JSON.parse(s);if(Array.isArray(l))return l.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0)}catch{}return s.split(",").map(l=>l.trim()).filter(l=>l.length>0)}return[]}function st(e,s,l,n){const A=l.map(i=>i.name.trim().toLowerCase()).filter(i=>i.length>0).map(i=>({name:i,pattern:new RegExp(`\\b${Te(i)}\\b`,"i")})),D=n.flatMap(i=>{const m=[];for(const y of[i.name,i.id]){const M=y.trim().toLowerCase();M.length>0&&m.push({serverId:i.id,pattern:new RegExp(`\\b${Te(M)}\\b`,"i")})}return m}),U=e.map(i=>({bucket:i,skillSet:new Set,mcpSet:new Set,hasMcpSignal:!1,startMs:Date.parse(i.start),endMs:Date.parse(i.end)}));for(const i of s){const m=Date.parse(i.created_at);if(!Number.isFinite(m))continue;const y=rt(i.tags).join(" "),M=[i.content,i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase(),I=[i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase();for(const g of U){if(m<g.startMs||m>g.endMs)continue;for(const C of A)C.pattern.test(M)&&g.skillSet.add(C.name);let W=!1;for(const C of D)C.pattern.test(M)&&(g.mcpSet.add(C.serverId),W=!0);!W&&Me(I)&&(g.hasMcpSignal=!0)}}const K={},v={};for(const i of U)K[i.bucket.rangeKey]=i.skillSet.size,v[i.bucket.rangeKey]=i.mcpSet.size>0?i.mcpSet.size:i.hasMcpSignal?1:0;return{skillUsage:K,mcpUsage:v}}function H(e){return typeof e!="number"||!Number.isFinite(e)||e<=0?0:e>=1?1:e}function it(e,s){const l=new Map;for(const v of e){const i=Date.parse(v.start),m=Date.parse(v.end);!Number.isFinite(i)||!Number.isFinite(m)||l.set(v.rangeKey,{startMs:i,endMs:m})}const n=l.get("today")??null,A=l.get("last_week")??null;function D(v){const i=l.get(v.rangeKey),m=Date.parse(v.start),y=Date.parse(v.end),M={startMs:Number.isFinite(m)?m:Number.NEGATIVE_INFINITY,endMs:Number.isFinite(y)?y:Number.POSITIVE_INFINITY};if(!i)return M;let I=i.startMs,g=i.endMs;return v.rangeKey==="last_week"&&n?g=Math.min(g,n.startMs-1):v.rangeKey==="one_month"&&(A?g=Math.min(g,A.startMs-1):n&&(g=Math.min(g,n.startMs-1))),g<I?M:{startMs:I,endMs:g}}const U=e.map(v=>{const i=D(v);return{bucket:v,startMs:i.startMs,endMs:i.endMs,candidates:[]}});for(const v of s){const i=Date.parse(v.created_at);if(Number.isFinite(i))for(const m of U){if(i<m.startMs||i>m.endMs)continue;const y=Math.max(1,m.endMs-m.startMs),M=Math.max(0,Math.min(1,(i-m.startMs)/y)),I=H(v.importance)*100+(v.pinned?24:0)+M*8;m.candidates.push({memory:v,score:I,createdAt:i})}}const K={};for(const v of U)v.candidates.sort((i,m)=>{if(m.score!==i.score)return m.score-i.score;const y=H(i.memory.importance),M=H(m.memory.importance);return M!==y?M-y:m.createdAt!==i.createdAt?m.createdAt-i.createdAt:i.memory.id.localeCompare(m.memory.id)}),K[v.bucket.rangeKey]=v.candidates.slice(0,4).map(i=>i.memory);return K}function q(e=1){t(N).length!==0&&b(S,Math.min(t(N).length-1,t(S)+e),!0)}function O(e=1){t(N).length!==0&&b(S,Math.max(0,t(S)-e),!0)}function ae(e){V.ontimelinegeneratedforchange&&V.ontimelinegeneratedforchange(e)}async function nt(){b(X,!0),b(z,null);try{const e=sa(5e3,0),[s,l,n,A]=await Promise.all([ia({fallbackMemories:e.then(U=>U.memories)}),na(),oa(),e]);b(N,s.buckets,!0),ae(s.generatedFor);const D=st(s.buckets,A.memories,l,n.servers);b(Q,D.skillUsage,!0),b(ee,D.mcpUsage,!0),b(te,it(s.buckets,A.memories),!0),b(S,0),s.error&&b(z,s.error,!0)}catch{b(z,"Failed to load timeline."),b(N,[],!0),ae(""),b(Q,{},!0),b(ee,{},!0),b(te,{},!0)}finally{b(X,!1)}}function ot(e,s){const l={month:"short",day:"numeric",timeZone:"UTC"},n=new Date(e).toLocaleDateString("en-US",l),A=new Date(s).toLocaleDateString("en-US",{...l,year:"numeric"});return`${n} - ${A}`}function lt(e,s){const l=Date.parse(e);if(!Number.isFinite(l))return"Unknown";const n=new Date(l);return s==="today"?n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",timeZone:"UTC"}):n.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",timeZone:"UTC"})}function ct(e){return`${Math.round(H(e)*100)}%`}function re(e,s,l){return e===1?s:l}function dt(e){const s=e.split(/[-_.\s]+/).map(l=>l.trim()).filter(l=>l.length>0);return s.length>=2?`${s[0]?.[0]??""}${s[1]?.[0]??""}`.toUpperCase():e.slice(0,2).toUpperCase()||"M"}function vt(e){return e.rangeKey==="last_week"?"Week":e.rangeKey==="one_month"?"Month":"Today"}function mt(e){if(Qe.activeTab!=="timeline")return;const s=e.target;if(s instanceof HTMLElement){const n=s.tagName;if(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||s.isContentEditable)return}if(s instanceof HTMLElement&&s.hasAttribute("data-memory-tab")){if(e.key==="ArrowDown"){e.preventDefault();const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus()}return}if(s instanceof HTMLElement&&s.closest('.timeline-era-controls [role="tablist"]')){if(e.key==="ArrowUp"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowDown"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);return}if(e.key==="PageDown"){e.preventDefault(),q(3);return}if(e.key==="PageUp"){e.preventDefault(),O(3);return}}Gt(()=>(nt(),()=>{ae("")}));var J=Sa();Jt("keydown",Yt,mt);var Se=r(J);ta(Se,{title:"Timeline",children:(e,s)=>{la(e,{group:"memory",get tabs(){return ra},get activeTab(){return Qe.activeTab},onselect:(l,n)=>aa(n)})}});var Ae=c(Se,2),Ee=r(Ae);{var pt=e=>{var s=ma();_(e,s)},ut=e=>{var s=pa();_(e,s)},ft=e=>{var s=wa(),l=r(s),n=r(l),A=c(r(n),2),D=r(A),U=c(r(D),2),K=r(U);a(U),a(D);var v=c(D,2),i=c(r(v),2),m=r(i);a(i),a(v);var y=c(v,2),M=c(r(y),2),I=r(M);a(M),a(y);var g=c(y,2),W=c(r(g),2),C=r(W);a(W),a(g),a(A),a(n),a(l);var De=c(l,2),se=r(De),ie=r(se),Ue=r(ie),ne=r(Ue),Ne=r(ne),Be=c(Ne),xt=r(Be,!0);a(Be),a(ne);var Ie=c(ne,2),Le=r(Ie);{let o=P(()=>t(S)<=0);he(Le,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>O(),get disabled(){return t(o)},title:"Move to newer era",children:(d,x)=>{ca(d,{class:"size-3.5"})},$$slots:{default:!0}})}var oe=c(Le,2);G(oe,23,()=>t(N),o=>o.eraIndex,(o,d,x)=>{var f=ua(),k=r(f,!0);a(f),F(h=>{Xt(f,1,`${tt} ${t(x)===t(S)?"border-[var(--sig-accent)] bg-[color-mix(in_srgb,var(--sig-surface-raised)_76%,transparent)] text-[var(--sig-text-bright)]":"border-[var(--sig-border-strong)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text-bright)]"}`,"svelte-1acbaf"),Xe(f,"aria-selected",t(x)===t(S)),Xe(f,"tabindex",t(x)===t(S)?0:-1),u(k,h)},[()=>vt(t(d))]),Qt("click",f,()=>{b(S,t(x),!0)}),_(o,f)}),a(oe);var $e=c(oe,2);{let o=P(()=>t(S)>=t(N).length-1);he($e,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>q(),get disabled(){return t(o)},title:"Move to older era",children:(d,x)=>{da(d,{class:"size-3.5"})},$$slots:{default:!0}})}var _t=c($e,2);he(_t,{variant:"ghost",size:"sm",class:"h-8 px-2 sig-label",onclick:()=>{b(S,0)},title:"Jump to today",children:(o,d)=>{va(o,{class:"size-3.5"})},$$slots:{default:!0}}),a(Ie),a(Ue),a(ie);var le=c(ie,2),ce=r(le),Ke=r(ce),Ce=r(Ke),ht=r(Ce,!0);a(Ce),Z(2),a(Ke),a(ce);var de=c(ce,2),je=r(de),Fe=r(je),yt=r(Fe,!0);a(Fe),Z(2),a(je),a(de);var ve=c(de,2),Re=r(ve),Pe=r(Re),Mt=r(Pe,!0);a(Pe),Z(2),a(Re),a(ve);var ze=c(ve,2),He=r(ze),qe=r(He),kt=r(qe,!0);a(qe),Z(2),a(He),a(ze),a(le);var Oe=c(le,2),me=r(Oe),wt=c(r(me),2);{var Tt=o=>{var d=fa();_(o,d)},St=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).typeBreakdown,_e,(f,k)=>{var h=ga(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(wt,o=>{t(p).typeBreakdown.length===0?o(Tt):o(St,-1)})}a(me);var pe=c(me,2),At=c(r(pe),2);{var Et=o=>{var d=ba();_(o,d)},Dt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).sourceBreakdown,_e,(f,k)=>{var h=xa(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(At,o=>{t(p).sourceBreakdown.length===0?o(Et):o(Dt,-1)})}a(pe);var We=c(pe,2),Ut=c(r(We),2);{var Nt=o=>{var d=_a();_(o,d)},Bt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).topTags,_e,(f,k)=>{var h=ha(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(Ut,o=>{t(p).topTags.length===0?o(Nt):o(Bt,-1)})}a(We),a(Oe),a(se);var Ge=c(se,2),ue=r(Ge),Je=c(r(ue),2),It=r(Je,!0);a(Je),a(ue);var Lt=c(ue,2);{var $t=o=>{var d=ya();_(o,d)},Kt=o=>{var d=ka();G(d,21,()=>t(we),x=>x.id,(x,f)=>{var k=Ma(),h=r(k),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E),Ct=r(B,!0);a(B);var Ye=c(B,2),jt=r(Ye,!0);a(Ye),a(E),a(h);var fe=c(h,2),Ft=r(fe,!0);a(fe);var Ze=c(fe,2),ge=r(Ze),Rt=r(ge);a(ge);var Ve=c(ge,2),Pt=r(Ve,!0);a(Ve),a(Ze),a(k),F((zt,Ht,qt,Ot)=>{u(j,zt),u(Ct,t(f).who||"Unknown source"),u(jt,Ht),u(Ft,t(f).content),u(Rt,`imp ${qt??""}`),u(Pt,Ot)},[()=>dt(t(f).who||t(f).type||"memory"),()=>t(f).type?.trim()||"memory",()=>ct(t(f).importance),()=>lt(t(f).created_at,t(p).rangeKey)]),_(x,k)}),a(d),_(o,d)};R(Lt,o=>{t(we).length===0?o($t):o(Kt,-1)})}a(Ge),a(De),a(s),F((o,d,x,f,k)=>{u(K,`${t(ye)??""} ${o??""}`),u(m,`${t(ke)??""} ${d??""}`),u(I,`${x??""}% avg`),u(C,`${t(p).pinned??""} ${f??""}`),u(Ne,`${t(p).label??""}: `),u(xt,k),u(ht,t(p).memoriesAdded),u(yt,t(p).trackedEvents),u(Mt,t(p).evolved),u(kt,t(p).strengthened),u(It,t(p).label)},[()=>re(t(ye),"skill","skills"),()=>re(t(ke),"server","servers"),()=>Math.round(H(t(p).avgImportance)*100),()=>re(t(p).pinned,"card","cards"),()=>ot(t(p).start,t(p).end)]),_(e,s)};R(Ee,e=>{t(X)?e(pt):t(N).length===0?e(ut,1):t(p)&&e(ft,2)})}var gt=c(Ee,2);{var bt=e=>{var s=Ta(),l=r(s,!0);a(s),F(()=>u(l,t(z))),_(e,s)};R(gt,e=>{t(z)&&e(bt)})}a(Ae),a(J),Zt(J,e=>b($,e),()=>t($)),_(et,J),Vt()}ea(["click"]);export{La as default};
|
|
1
|
+
import{p as Wt,y as L,e as Y,z as Gt,N as Jt,$ as Yt,j as r,A as c,k as R,i as t,l as a,v as Zt,B as b,b as _,d as Vt,u as P,H as G,F,I as Xt,J as Xe,G as u,O as Qt,D as Z,m as T,c as be,f as xe,K as _e,P as ea}from"./CA6kBwP0.js";import{P as ta}from"./Ciheccvk.js";import{h as aa,n as Qe,i as ra,j as sa,k as ia,l as na,m as oa,B as he}from"./DpXm0Ri5.js";import{T as la}from"./C8xQ4WP2.js";import{C as ca}from"./D0nJtnPx.js";import{C as da}from"./BfvhM1lS.js";import{R as va}from"./DWwZMZ8X.js";var ma=T('<div class="flex flex-1 items-center justify-center sig-label">Loading timeline...</div>'),pa=T('<div class="flex flex-1 items-center justify-center sig-label text-[var(--sig-text-muted)]">No timeline data yet.</div>'),ua=T('<button role="tab"> </button>'),fa=T('<p class="sig-label text-[var(--sig-text-muted)]">No type signals</p>'),ga=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ba=T('<p class="sig-label text-[var(--sig-text-muted)]">No source signals</p>'),xa=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),_a=T('<p class="sig-label text-[var(--sig-text-muted)]">No tags this era</p>'),ha=T('<div class="flex w-full items-center justify-between text-[11px] text-[var(--sig-text)]"><span> </span> <span class="text-[var(--sig-text-muted)]"> </span></div>'),ya=T('<p class="mt-2 sig-label text-[var(--sig-text-muted)]">No memories saved in this era yet.</p>'),Ma=T('<article class="timeline-top-card rounded-lg border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] p-2 svelte-1acbaf"><div class="timeline-top-card-head svelte-1acbaf"><div class="timeline-top-card-icon svelte-1acbaf"> </div> <div class="timeline-top-card-title-wrap svelte-1acbaf"><p class="timeline-top-card-title svelte-1acbaf"> </p> <p class="timeline-top-card-subtitle svelte-1acbaf"> </p></div></div> <p class="timeline-top-card-content mt-1 text-[11px] leading-relaxed text-[var(--sig-text)] line-clamp-4 svelte-1acbaf"> </p> <div class="timeline-top-card-meta mt-auto flex items-center justify-between gap-2 pt-2 text-[11px] text-[var(--sig-text-muted)] svelte-1acbaf"><p class="timeline-top-card-badge svelte-1acbaf"> </p> <p> </p></div></article>'),ka=T('<div class="timeline-top-card-grid mt-2 svelte-1acbaf"></div>'),wa=T('<div class="timeline-stack flex flex-1 min-h-0 flex-col gap-3 svelte-1acbaf"><section class="timeline-hero rounded-xl border border-[var(--sig-border)] p-3 overflow-hidden svelte-1acbaf"><div class="timeline-hero-grid svelte-1acbaf"><div class="min-w-0"><h2 class="timeline-hero-title svelte-1acbaf">Signet Evolution Timeline</h2> <p class="timeline-hero-subtitle svelte-1acbaf">Track added, evolved, and pinned memories across recap eras.</p></div> <div class="timeline-hero-metrics svelte-1acbaf"><div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Agent skills used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">MCP servers used</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Average importance</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div> <div class="timeline-hero-metric svelte-1acbaf"><span class="timeline-hero-metric-label svelte-1acbaf">Pinned</span> <strong class="timeline-hero-metric-display svelte-1acbaf"> </strong></div></div></div></section> <div class="timeline-content-split flex-1 min-h-0 gap-3 svelte-1acbaf"><section class="timeline-detail-panel flex min-h-0 flex-col gap-3 overflow-x-hidden overflow-y-auto rounded-[10.5px] border-2 border-[var(--sig-border-strong)] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="--panel-pad: 0.75rem;"><div class="timeline-era-head svelte-1acbaf"><div class="timeline-era-title-row svelte-1acbaf"><p class="sig-heading timeline-era-title svelte-1acbaf"> <span class="timeline-era-title-range svelte-1acbaf"> </span></p> <div class="timeline-era-controls flex items-center gap-1 svelte-1acbaf"><!> <div role="tablist" aria-orientation="horizontal" class="flex items-center gap-1"></div> <!> <!></div></div></div> <div class="timeline-summary-grid svelte-1acbaf"><div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Added</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Tracked events captured</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Evolved</span></p></div> <div class="flex min-h-[56px] items-center justify-center rounded-[6.5px] p-2" style="border: 0.87px solid var(--sig-border-strong); background: var(--sig-surface)"><p class="timeline-summary-line svelte-1acbaf"><span class="sig-heading leading-none"> </span> <span class="timeline-summary-copy svelte-1acbaf">- Strengthened</span></p></div></div> <div class="timeline-mix-grid svelte-1acbaf"><div class="timeline-mix-card timeline-mix-card--type p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Type mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--source p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Source mix</p> <!></div> <div class="timeline-mix-card timeline-mix-card--tags p-2 svelte-1acbaf"><p class="timeline-mix-header mb-1 svelte-1acbaf">Top tags</p> <!></div></div></section> <section class="timeline-top-panel rounded-[10.5px] bg-[var(--sig-surface)] p-3 svelte-1acbaf" style="border: 0.87px solid var(--sig-border);"><div class="flex items-center justify-between gap-2"><p class="sig-label text-[var(--sig-text-bright)]">Top Four Memories</p> <p class="text-[11px] text-[var(--sig-text-bright)]"> </p></div> <!></section></div></div>'),Ta=T('<p class="sig-label text-[var(--sig-danger)]"> </p>'),Sa=T('<div class="timeline-shell flex flex-col flex-1 min-h-0 overflow-hidden bg-[var(--sig-bg)] svelte-1acbaf" role="region" aria-label="Memory timeline. Use left and right arrows to move through eras."><!> <div class="flex flex-1 min-h-0 flex-col gap-3 p-3 bg-[var(--sig-bg)]"><!> <!></div></div>');function La(et,V){Wt(V,!0);const tt="h-8 px-3 rounded-lg border text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] transition-colors";let X=L(!1),z=L(null),N=L(Y([])),S=L(0),Q=L(Y({})),ee=L(Y({})),te=L(Y({})),$=L(null);const p=P(()=>t(N)[t(S)]??null),ye=P(()=>t(p)?t(Q)[t(p).rangeKey]??0:0);function at(e){return e.sourceBreakdown.filter(l=>Me(l.key)).length}function Me(e){const s=e.trim().toLowerCase();return s?!!(/\bmcp\b/.test(s)||/\btool[-\s]?servers?\b/.test(s)||s.includes("model context protocol")||s.includes("model-context-protocol")||s.includes("modelcontextprotocol")):!1}const ke=P(()=>t(p)?Math.max(t(ee)[t(p).rangeKey]??0,at(t(p))):0),we=P(()=>t(p)?t(te)[t(p).rangeKey]??[]:[]);function Te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(e){if(Array.isArray(e))return e.filter(s=>typeof s=="string").map(s=>s.trim()).filter(s=>s.length>0);if(typeof e=="string"){const s=e.trim();if(!s)return[];if(s.startsWith("[")&&s.endsWith("]"))try{const l=JSON.parse(s);if(Array.isArray(l))return l.filter(n=>typeof n=="string").map(n=>n.trim()).filter(n=>n.length>0)}catch{}return s.split(",").map(l=>l.trim()).filter(l=>l.length>0)}return[]}function st(e,s,l,n){const A=l.map(i=>i.name.trim().toLowerCase()).filter(i=>i.length>0).map(i=>({name:i,pattern:new RegExp(`\\b${Te(i)}\\b`,"i")})),D=n.flatMap(i=>{const m=[];for(const y of[i.name,i.id]){const M=y.trim().toLowerCase();M.length>0&&m.push({serverId:i.id,pattern:new RegExp(`\\b${Te(M)}\\b`,"i")})}return m}),U=e.map(i=>({bucket:i,skillSet:new Set,mcpSet:new Set,hasMcpSignal:!1,startMs:Date.parse(i.start),endMs:Date.parse(i.end)}));for(const i of s){const m=Date.parse(i.created_at);if(!Number.isFinite(m))continue;const y=rt(i.tags).join(" "),M=[i.content,i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase(),I=[i.who,i.type,y].filter(g=>typeof g=="string").join(" ").toLowerCase();for(const g of U){if(m<g.startMs||m>g.endMs)continue;for(const C of A)C.pattern.test(M)&&g.skillSet.add(C.name);let W=!1;for(const C of D)C.pattern.test(M)&&(g.mcpSet.add(C.serverId),W=!0);!W&&Me(I)&&(g.hasMcpSignal=!0)}}const K={},v={};for(const i of U)K[i.bucket.rangeKey]=i.skillSet.size,v[i.bucket.rangeKey]=i.mcpSet.size>0?i.mcpSet.size:i.hasMcpSignal?1:0;return{skillUsage:K,mcpUsage:v}}function H(e){return typeof e!="number"||!Number.isFinite(e)||e<=0?0:e>=1?1:e}function it(e,s){const l=new Map;for(const v of e){const i=Date.parse(v.start),m=Date.parse(v.end);!Number.isFinite(i)||!Number.isFinite(m)||l.set(v.rangeKey,{startMs:i,endMs:m})}const n=l.get("today")??null,A=l.get("last_week")??null;function D(v){const i=l.get(v.rangeKey),m=Date.parse(v.start),y=Date.parse(v.end),M={startMs:Number.isFinite(m)?m:Number.NEGATIVE_INFINITY,endMs:Number.isFinite(y)?y:Number.POSITIVE_INFINITY};if(!i)return M;let I=i.startMs,g=i.endMs;return v.rangeKey==="last_week"&&n?g=Math.min(g,n.startMs-1):v.rangeKey==="one_month"&&(A?g=Math.min(g,A.startMs-1):n&&(g=Math.min(g,n.startMs-1))),g<I?M:{startMs:I,endMs:g}}const U=e.map(v=>{const i=D(v);return{bucket:v,startMs:i.startMs,endMs:i.endMs,candidates:[]}});for(const v of s){const i=Date.parse(v.created_at);if(Number.isFinite(i))for(const m of U){if(i<m.startMs||i>m.endMs)continue;const y=Math.max(1,m.endMs-m.startMs),M=Math.max(0,Math.min(1,(i-m.startMs)/y)),I=H(v.importance)*100+(v.pinned?24:0)+M*8;m.candidates.push({memory:v,score:I,createdAt:i})}}const K={};for(const v of U)v.candidates.sort((i,m)=>{if(m.score!==i.score)return m.score-i.score;const y=H(i.memory.importance),M=H(m.memory.importance);return M!==y?M-y:m.createdAt!==i.createdAt?m.createdAt-i.createdAt:i.memory.id.localeCompare(m.memory.id)}),K[v.bucket.rangeKey]=v.candidates.slice(0,4).map(i=>i.memory);return K}function q(e=1){t(N).length!==0&&b(S,Math.min(t(N).length-1,t(S)+e),!0)}function O(e=1){t(N).length!==0&&b(S,Math.max(0,t(S)-e),!0)}function ae(e){V.ontimelinegeneratedforchange&&V.ontimelinegeneratedforchange(e)}async function nt(){b(X,!0),b(z,null);try{const e=sa(5e3,0),[s,l,n,A]=await Promise.all([ia({fallbackMemories:e.then(U=>U.memories)}),na(),oa(),e]);b(N,s.buckets,!0),ae(s.generatedFor);const D=st(s.buckets,A.memories,l,n.servers);b(Q,D.skillUsage,!0),b(ee,D.mcpUsage,!0),b(te,it(s.buckets,A.memories),!0),b(S,0),s.error&&b(z,s.error,!0)}catch{b(z,"Failed to load timeline."),b(N,[],!0),ae(""),b(Q,{},!0),b(ee,{},!0),b(te,{},!0)}finally{b(X,!1)}}function ot(e,s){const l={month:"short",day:"numeric",timeZone:"UTC"},n=new Date(e).toLocaleDateString("en-US",l),A=new Date(s).toLocaleDateString("en-US",{...l,year:"numeric"});return`${n} - ${A}`}function lt(e,s){const l=Date.parse(e);if(!Number.isFinite(l))return"Unknown";const n=new Date(l);return s==="today"?n.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",timeZone:"UTC"}):n.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",timeZone:"UTC"})}function ct(e){return`${Math.round(H(e)*100)}%`}function re(e,s,l){return e===1?s:l}function dt(e){const s=e.split(/[-_.\s]+/).map(l=>l.trim()).filter(l=>l.length>0);return s.length>=2?`${s[0]?.[0]??""}${s[1]?.[0]??""}`.toUpperCase():e.slice(0,2).toUpperCase()||"M"}function vt(e){return e.rangeKey==="last_week"?"Week":e.rangeKey==="one_month"?"Month":"Today"}function mt(e){if(Qe.activeTab!=="timeline")return;const s=e.target;if(s instanceof HTMLElement){const n=s.tagName;if(n==="INPUT"||n==="TEXTAREA"||n==="SELECT"||s.isContentEditable)return}if(s instanceof HTMLElement&&s.hasAttribute("data-memory-tab")){if(e.key==="ArrowDown"){e.preventDefault();const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus()}return}if(s instanceof HTMLElement&&s.closest('.timeline-era-controls [role="tablist"]')){if(e.key==="ArrowUp"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowDown"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);const n=t($)?.querySelector('.timeline-era-controls [role="tablist"] button[aria-selected="true"]');n instanceof HTMLElement&&n.focus();return}return}if(e.key==="ArrowRight"){e.preventDefault(),q(e.shiftKey?3:1);return}if(e.key==="ArrowLeft"){e.preventDefault(),O(e.shiftKey?3:1);return}if(e.key==="PageDown"){e.preventDefault(),q(3);return}if(e.key==="PageUp"){e.preventDefault(),O(3);return}}Gt(()=>(nt(),()=>{ae("")}));var J=Sa();Jt("keydown",Yt,mt);var Se=r(J);ta(Se,{title:"Timeline",children:(e,s)=>{la(e,{group:"memory",get tabs(){return ra},get activeTab(){return Qe.activeTab},onselect:(l,n)=>aa(n)})}});var Ae=c(Se,2),Ee=r(Ae);{var pt=e=>{var s=ma();_(e,s)},ut=e=>{var s=pa();_(e,s)},ft=e=>{var s=wa(),l=r(s),n=r(l),A=c(r(n),2),D=r(A),U=c(r(D),2),K=r(U);a(U),a(D);var v=c(D,2),i=c(r(v),2),m=r(i);a(i),a(v);var y=c(v,2),M=c(r(y),2),I=r(M);a(M),a(y);var g=c(y,2),W=c(r(g),2),C=r(W);a(W),a(g),a(A),a(n),a(l);var De=c(l,2),se=r(De),ie=r(se),Ue=r(ie),ne=r(Ue),Ne=r(ne),Be=c(Ne),xt=r(Be,!0);a(Be),a(ne);var Ie=c(ne,2),Le=r(Ie);{let o=P(()=>t(S)<=0);he(Le,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>O(),get disabled(){return t(o)},title:"Move to newer era",children:(d,x)=>{ca(d,{class:"size-3.5"})},$$slots:{default:!0}})}var oe=c(Le,2);G(oe,23,()=>t(N),o=>o.eraIndex,(o,d,x)=>{var f=ua(),k=r(f,!0);a(f),F(h=>{Xt(f,1,`${tt} ${t(x)===t(S)?"border-[var(--sig-accent)] bg-[color-mix(in_srgb,var(--sig-surface-raised)_76%,transparent)] text-[var(--sig-text-bright)]":"border-[var(--sig-border-strong)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text-bright)]"}`,"svelte-1acbaf"),Xe(f,"aria-selected",t(x)===t(S)),Xe(f,"tabindex",t(x)===t(S)?0:-1),u(k,h)},[()=>vt(t(d))]),Qt("click",f,()=>{b(S,t(x),!0)}),_(o,f)}),a(oe);var $e=c(oe,2);{let o=P(()=>t(S)>=t(N).length-1);he($e,{variant:"outline",size:"sm",class:"h-8 px-2",onclick:()=>q(),get disabled(){return t(o)},title:"Move to older era",children:(d,x)=>{da(d,{class:"size-3.5"})},$$slots:{default:!0}})}var _t=c($e,2);he(_t,{variant:"ghost",size:"sm",class:"h-8 px-2 sig-label",onclick:()=>{b(S,0)},title:"Jump to today",children:(o,d)=>{va(o,{class:"size-3.5"})},$$slots:{default:!0}}),a(Ie),a(Ue),a(ie);var le=c(ie,2),ce=r(le),Ke=r(ce),Ce=r(Ke),ht=r(Ce,!0);a(Ce),Z(2),a(Ke),a(ce);var de=c(ce,2),je=r(de),Fe=r(je),yt=r(Fe,!0);a(Fe),Z(2),a(je),a(de);var ve=c(de,2),Re=r(ve),Pe=r(Re),Mt=r(Pe,!0);a(Pe),Z(2),a(Re),a(ve);var ze=c(ve,2),He=r(ze),qe=r(He),kt=r(qe,!0);a(qe),Z(2),a(He),a(ze),a(le);var Oe=c(le,2),me=r(Oe),wt=c(r(me),2);{var Tt=o=>{var d=fa();_(o,d)},St=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).typeBreakdown,_e,(f,k)=>{var h=ga(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(wt,o=>{t(p).typeBreakdown.length===0?o(Tt):o(St,-1)})}a(me);var pe=c(me,2),At=c(r(pe),2);{var Et=o=>{var d=ba();_(o,d)},Dt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).sourceBreakdown,_e,(f,k)=>{var h=xa(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(At,o=>{t(p).sourceBreakdown.length===0?o(Et):o(Dt,-1)})}a(pe);var We=c(pe,2),Ut=c(r(We),2);{var Nt=o=>{var d=_a();_(o,d)},Bt=o=>{var d=be(),x=xe(d);G(x,17,()=>t(p).topTags,_e,(f,k)=>{var h=ha(),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E,!0);a(E),a(h),F(()=>{u(j,t(k).key),u(B,t(k).count)}),_(f,h)}),_(o,d)};R(Ut,o=>{t(p).topTags.length===0?o(Nt):o(Bt,-1)})}a(We),a(Oe),a(se);var Ge=c(se,2),ue=r(Ge),Je=c(r(ue),2),It=r(Je,!0);a(Je),a(ue);var Lt=c(ue,2);{var $t=o=>{var d=ya();_(o,d)},Kt=o=>{var d=ka();G(d,21,()=>t(we),x=>x.id,(x,f)=>{var k=Ma(),h=r(k),w=r(h),j=r(w,!0);a(w);var E=c(w,2),B=r(E),Ct=r(B,!0);a(B);var Ye=c(B,2),jt=r(Ye,!0);a(Ye),a(E),a(h);var fe=c(h,2),Ft=r(fe,!0);a(fe);var Ze=c(fe,2),ge=r(Ze),Rt=r(ge);a(ge);var Ve=c(ge,2),Pt=r(Ve,!0);a(Ve),a(Ze),a(k),F((zt,Ht,qt,Ot)=>{u(j,zt),u(Ct,t(f).who||"Unknown source"),u(jt,Ht),u(Ft,t(f).content),u(Rt,`imp ${qt??""}`),u(Pt,Ot)},[()=>dt(t(f).who||t(f).type||"memory"),()=>t(f).type?.trim()||"memory",()=>ct(t(f).importance),()=>lt(t(f).created_at,t(p).rangeKey)]),_(x,k)}),a(d),_(o,d)};R(Lt,o=>{t(we).length===0?o($t):o(Kt,-1)})}a(Ge),a(De),a(s),F((o,d,x,f,k)=>{u(K,`${t(ye)??""} ${o??""}`),u(m,`${t(ke)??""} ${d??""}`),u(I,`${x??""}% avg`),u(C,`${t(p).pinned??""} ${f??""}`),u(Ne,`${t(p).label??""}: `),u(xt,k),u(ht,t(p).memoriesAdded),u(yt,t(p).trackedEvents),u(Mt,t(p).evolved),u(kt,t(p).strengthened),u(It,t(p).label)},[()=>re(t(ye),"skill","skills"),()=>re(t(ke),"server","servers"),()=>Math.round(H(t(p).avgImportance)*100),()=>re(t(p).pinned,"card","cards"),()=>ot(t(p).start,t(p).end)]),_(e,s)};R(Ee,e=>{t(X)?e(pt):t(N).length===0?e(ut,1):t(p)&&e(ft,2)})}var gt=c(Ee,2);{var bt=e=>{var s=Ta(),l=r(s,!0);a(s),F(()=>u(l,t(z))),_(e,s)};R(gt,e=>{t(z)&&e(bt)})}a(Ae),a(J),Zt(J,e=>b($,e),()=>t($)),_(et,J),Vt()}ea(["click"]);export{La as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as y,g as a,c as C,f as i,h as c,T as I,s as A,i as T,a as U,n as V,A as b,U as J,b as d,d as W,r as j,u as q,m as B,V as K,k as Y,W as L,X as M}from"./CA6kBwP0.js";import{c as D}from"./
|
|
1
|
+
import{p as y,g as a,c as C,f as i,h as c,T as I,s as A,i as T,a as U,n as V,A as b,U as J,b as d,d as W,r as j,u as q,m as B,V as K,k as Y,W as L,X as M}from"./CA6kBwP0.js";import{c as D}from"./DpXm0Ri5.js";var N=B("<!> <!>",1);function $(h,r){y(r,!0);let o=a(r,"ref",15,null),t=a(r,"orientation",3,"vertical"),l=j(r,["$$slots","$$events","$$legacy","ref","class","orientation","children"]);var f=C(),m=i(f);{let p=q(()=>D("flex touch-none p-px transition-colors select-none",t()==="vertical"&&"h-full w-2.5 border-s border-s-transparent",t()==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",r.class));c(m,()=>I,(u,S)=>{S(u,A({"data-slot":"scroll-area-scrollbar",get orientation(){return t()},get class(){return T(p)}},()=>l,{get ref(){return o()},set ref(n){o(n)},children:(n,P)=>{var v=N(),s=i(v);U(s,()=>r.children??V);var k=b(s,2);c(k,()=>J,(_,g)=>{g(_,{"data-slot":"scroll-area-thumb",class:"bg-border relative flex-1 rounded-full"})}),d(n,v)},$$slots:{default:!0}}))})}d(h,f),W()}var O=B("<!> <!> <!> <!>",1);function er(h,r){y(r,!0);let o=a(r,"ref",15,null),t=a(r,"viewportRef",15,null),l=a(r,"orientation",3,"vertical"),f=a(r,"scrollbarXClasses",3,""),m=a(r,"scrollbarYClasses",3,""),p=j(r,["$$slots","$$events","$$legacy","ref","viewportRef","class","orientation","scrollbarXClasses","scrollbarYClasses","children"]);var u=C(),S=i(u);{let n=q(()=>D("relative",r.class));c(S,()=>M,(P,v)=>{v(P,A({"data-slot":"scroll-area",get class(){return T(n)}},()=>p,{get ref(){return o()},set ref(s){o(s)},children:(s,k)=>{var _=O(),g=i(_);c(g,()=>K,(e,w)=>{w(e,{"data-slot":"scroll-area-viewport",class:"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1",get ref(){return t()},set ref(x){t(x)},children:(x,Q)=>{var R=C(),H=i(R);U(H,()=>r.children??V),d(x,R)},$$slots:{default:!0}})});var z=b(g,2);{var E=e=>{$(e,{orientation:"vertical",get class(){return m()}})};Y(z,e=>{(l()==="vertical"||l()==="both")&&e(E)})}var X=b(z,2);{var F=e=>{$(e,{orientation:"horizontal",get class(){return f()}})};Y(X,e=>{(l()==="horizontal"||l()==="both")&&e(F)})}var G=b(X,2);c(G,()=>L,(e,w)=>{w(e,{})}),d(s,_)},$$slots:{default:!0}}))})}d(h,u),W()}export{er as S,$ as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p,s as c,c as l,f as d,a as i,n as m,b as f,d as h,r as u}from"./CA6kBwP0.js";import{I as $}from"./
|
|
1
|
+
import{p,s as c,c as l,f as d,a as i,n as m,b as f,d as h,r as u}from"./CA6kBwP0.js";import{I as $}from"./DpXm0Ri5.js";function P(e,a){p(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];$(e,c({name:"pencil"},()=>o,{get iconNode(){return t},children:(n,_)=>{var s=l(),r=d(s);i(r,()=>a.children??m),f(n,s)},$$slots:{default:!0}})),h()}export{P};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as We,s as Vt,c as Pe,f as T,a as Gt,n as Jt,b as a,d as qe,r as Xt,g as Pt,j as n,l as s,A as r,k as F,i as e,F as P,I as Lt,J as St,G as f,O as Ae,u as Q,m as v,P as ft,H as Be,ab as Mt,y as xe,e as Qt,Q as Ot,B as i,h as y,D as w,E as A,N as jt,z as Zt,$ as Yt,ag as Tt}from"./CA6kBwP0.js";import{I as ea,l as ta,S as At,o as zt,p as Kt,q as Ft,B as tt,aC as aa,T as ra,u as Ht,aD as Bt,aE as sa,n as Dt,aF as na,aG as Et,aH as bt,aI as Rt,aJ as O,aK as It,aL as kt,aM as yt,aN as Nt,ad as wt}from"./
|
|
1
|
+
import{p as We,s as Vt,c as Pe,f as T,a as Gt,n as Jt,b as a,d as qe,r as Xt,g as Pt,j as n,l as s,A as r,k as F,i as e,F as P,I as Lt,J as St,G as f,O as Ae,u as Q,m as v,P as ft,H as Be,ab as Mt,y as xe,e as Qt,Q as Ot,B as i,h as y,D as w,E as A,N as jt,z as Zt,$ as Yt,ag as Tt}from"./CA6kBwP0.js";import{I as ea,l as ta,S as At,o as zt,p as Kt,q as Ft,B as tt,aC as aa,T as ra,u as Ht,aD as Bt,aE as sa,n as Dt,aF as na,aG as Et,aH as bt,aI as Rt,aJ as O,aK as It,aL as kt,aM as yt,aN as Nt,ad as wt}from"./DpXm0Ri5.js";import{S as la}from"./CwQE_qLL.js";import{I as Ct}from"./Cwhw4u7P.js";import{L as He}from"./jwYiaet7.js";import{T as oa}from"./BXG8lr0I.js";import{c as dt,S as vt,a as ut,b as Le}from"./D1Op0UPx.js";import{B as ct}from"./BtXC-tWL.js";import{S as ia,a as da}from"./C9ZFpKKg.js";import{C as va,a as ua}from"./C1VzlBE2.js";import{P as ca}from"./CKUcOLd6.js";import{T as fa,P as ga}from"./D6goYd5M.js";function Wt(ye,t){We(t,!0);let g=Xt(t,["$$slots","$$events","$$legacy"]);const c=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z"}]];ea(ye,Vt({name:"play"},()=>g,{get iconNode(){return c},children:(D,h)=>{var j=Pe(),z=T(j);Gt(z,()=>t.children??Jt),a(D,j)},$$slots:{default:!0}})),qe()}var ma=v("<span> </span>"),_a=v('<span class="task-status-running svelte-1lta2hw">running</span>'),xa=v("<span> </span>"),pa=v('<span class="task-status-failed svelte-1lta2hw"> </span>'),ha=v('<div tabindex="0" role="button"><div class="task-top svelte-1lta2hw"><span class="task-name svelte-1lta2hw"> </span> <span class="task-harness svelte-1lta2hw"> </span></div> <div class="task-meta svelte-1lta2hw"><span> </span> <!></div> <div class="task-actions svelte-1lta2hw"><div><!></div> <button class="trigger-btn svelte-1lta2hw"><!></button></div></div>');function $t(ye,t){We(t,!0);let g=Pt(t,"isSelected",3,!1);function c(o){if(!o)return"--";const u=new Date(o).getTime()-Date.now(),l=Math.abs(u);if(l<6e4)return u>0?"< 1m":"just now";if(l<36e5){const ie=Math.round(l/6e4);return u>0?`${ie}m`:`${ie}m ago`}if(l<864e5){const ie=Math.round(l/36e5);return u>0?`${ie}h`:`${ie}h ago`}const _=Math.round(l/864e5);return u>0?`${_}d`:`${_}d ago`}let D=Q(()=>t.task.harness==="claude-code"?"claude":t.task.harness==="codex"?"codex":"opencode"),h=Q(()=>c(t.task.next_run_at)),j=Q(()=>c(t.task.last_run_at));var z=ha();let b;var G=n(z),E=n(G),te=n(E,!0);s(E);var ae=r(E,2),ce=n(ae,!0);s(ae),s(G);var pe=r(G,2),fe=n(pe),C=n(fe,!0);s(fe);var H=r(fe,2);{var he=o=>{var u=ma(),l=n(u);s(u),P(()=>f(l,`next: ${e(h)??""}`)),a(o,u)},be=o=>{var u=_a();a(o,u)},we=o=>{var u=xa(),l=n(u);s(u),P(()=>f(l,`exit 0 · ${e(j)??""}`)),a(o,u)},re=o=>{var u=pa(),l=n(u);s(u),P(()=>f(l,`exit ${t.task.last_run_exit_code??"?"??""} · ${e(j)??""}`)),a(o,u)};F(H,o=>{t.columnKey==="scheduled"?o(he):t.columnKey==="running"?o(be,1):t.columnKey==="completed"?o(we,2):t.columnKey==="failed"&&o(re,3)})}s(pe);var $=r(pe,2),I=n($),se=n(I);{let o=Q(()=>!!t.task.enabled);la(se,{get checked(){return e(o)},onCheckedChange:u=>t.ontoggle(u===!0),class:"scale-75 origin-left"})}s(I);var J=r(I,2),p=n(J);Wt(p,{class:"size-3"}),s(J),s($),s(z),P(()=>{b=Lt(z,1,"task-card svelte-1lta2hw",null,b,{"task-card--selected":g(),"task-card--disabled":!t.task.enabled}),St(z,"data-task-id",t.task.id),St(z,"data-column",t.columnKey),f(te,t.task.name),f(ce,e(D)),f(C,t.task.cron_expression)}),Ae("click",z,function(...o){t.onclick?.apply(this,o)}),Ae("keydown",z,o=>{(o.key==="Enter"||o.key===" ")&&(o.preventDefault(),t.onclick())}),Ae("click",I,o=>o.stopPropagation()),Ae("click",J,o=>{o.stopPropagation(),t.ontrigger()}),a(ye,z),qe()}ft(["click","keydown"]);var ba=v('<div class="empty-state svelte-10pk3oi">LOADING</div>'),ka=v('<div class="empty-state svelte-10pk3oi"><span>NO SCHEDULED TASKS</span> <span class="empty-hint svelte-10pk3oi">PRESS N TO CREATE ONE</span></div>'),ya=v('<div class="column-empty svelte-10pk3oi">NO TASKS</div>'),wa=v('<div class="column svelte-10pk3oi"><div class="column-header svelte-10pk3oi"><span class="column-pip svelte-10pk3oi"></span> <span class="column-label svelte-10pk3oi"> </span> <span class="column-count svelte-10pk3oi"> </span></div> <div class="column-body svelte-10pk3oi"><!> <!></div></div>'),Ca=v('<div class="disabled-section svelte-10pk3oi"><div class="column svelte-10pk3oi"><div class="column-header svelte-10pk3oi"><span class="column-pip svelte-10pk3oi" style="background: var(--sig-text-muted)"></span> <span class="column-label svelte-10pk3oi">Disabled</span> <span class="column-count svelte-10pk3oi"> </span></div> <div class="disabled-cards svelte-10pk3oi"></div></div></div>'),Pa=v('<div class="board-grid svelte-10pk3oi"></div> <!>',1);function Sa(ye,t){We(t,!0);let g=Pt(t,"selectedColumn",3,0),c=Pt(t,"selectedTaskInColumn",3,0),D=Q(()=>t.tasks.filter(C=>C.enabled&&C.last_run_status!=="running")),h=Q(()=>t.tasks.filter(C=>C.last_run_status==="running")),j=Q(()=>t.tasks.filter(C=>C.last_run_status==="completed"&&!e(h).some(H=>H.id===C.id))),z=Q(()=>t.tasks.filter(C=>C.last_run_status==="failed"&&!e(h).some(H=>H.id===C.id))),b=Q(()=>t.tasks.filter(C=>!C.enabled));const G=[{key:"scheduled",label:"Scheduled",color:"var(--sig-highlight)"},{key:"running",label:"Running",color:"var(--sig-warning)"},{key:"completed",label:"Completed",color:"var(--sig-success)"},{key:"failed",label:"Failed",color:"var(--sig-danger)"}];function E(C){switch(C){case"scheduled":return e(D);case"running":return e(h);case"completed":return e(j);case"failed":return e(z);default:return[]}}var te=Pe(),ae=T(te);{var ce=C=>{var H=ba();a(C,H)},pe=C=>{var H=ka();a(C,H)},fe=C=>{var H=Pa(),he=T(H);Be(he,23,()=>G,re=>re.key,(re,$,I)=>{const se=Q(()=>E(e($).key));var J=wa(),p=n(J),o=n(p),u=r(o,2),l=n(u,!0);s(u);var _=r(u,2),ie=n(_,!0);s(_),s(p);var R=r(p,2),S=n(R);Be(S,19,()=>e(se),le=>le.id,(le,Ce,Se)=>{{let Me=Q(()=>e(I)===g()&&e(Se)===c());$t(le,{get task(){return e(Ce)},get columnKey(){return e($).key},get isSelected(){return e(Me)},onclick:()=>t.onopendetail(e(Ce).id,e(I),e(Se)),ontrigger:()=>t.ontrigger(e(Ce).id),ontoggle:Ne=>t.ontoggle(e(Ce).id,Ne)})}});var ne=r(S,2);{var de=le=>{var Ce=ya();a(le,Ce)};F(ne,le=>{e(se).length===0&&le(de)})}s(R),s(J),P(()=>{St(J,"data-column-idx",e(I)),Mt(o,`background: ${e($).color??""}`),f(l,e($).label),f(ie,e(se).length)}),a(re,J)}),s(he);var be=r(he,2);{var we=re=>{var $=Ca(),I=n($),se=n(I),J=r(n(se),4),p=n(J,!0);s(J),s(se);var o=r(se,2);Be(o,21,()=>e(b),u=>u.id,(u,l)=>{$t(u,{get task(){return e(l)},columnKey:"disabled",isSelected:!1,onclick:()=>t.onopendetail(e(l).id,-1,-1),ontrigger:()=>t.ontrigger(e(l).id),ontoggle:_=>t.ontoggle(e(l).id,_)})}),s(o),s(I),s($),P(()=>f(p,e(b).length)),a(re,$)};F(be,re=>{e(b).length>0&&re(we)})}a(C,H)};F(ae,C=>{t.loading&&t.tasks.length===0?C(ce):t.tasks.length===0?C(pe,1):C(fe,-1)})}a(ye,te),qe()}const Ta=[{label:"PR Review",description:"Review open pull requests daily",name:"Review open PRs",prompt:"Review all open pull requests. Summarize changes, flag potential issues, and note any that need urgent attention.",harness:"claude-code",cronExpression:"0 9 * * *"},{label:"Test Suite",description:"Run tests and report failures",name:"Run test suite",prompt:"Run the full test suite. Report any failures with context about what broke and likely causes.",harness:"claude-code",cronExpression:"0 * * * *"},{label:"Memory Maintenance",description:"Clean up and deduplicate memories",name:"Memory maintenance",prompt:"Review recent memories for duplicates, outdated information, and low-quality entries. Suggest cleanup actions.",harness:"claude-code",cronExpression:"0 9 * * 0",skillName:"memory-debug",skillMode:"inject"},{label:"Code Review",description:"Review recent commits for issues",name:"Review recent commits",prompt:"Review commits from the last 24 hours. Look for bugs, style issues, missing tests, and security concerns.",harness:"claude-code",cronExpression:"0 17 * * *"},{label:"Docs Audit",description:"Check documentation is up to date",name:"Documentation audit",prompt:"Audit the project documentation. Check for outdated references, missing docs for new features, and broken links.",harness:"claude-code",cronExpression:"0 9 * * 1"}];var Da=v("<!> <!>",1),Ea=v(`<button class="flex flex-col gap-0.5 p-2 rounded text-left
|
|
2
2
|
bg-[var(--sig-surface-raised)] border border-[var(--sig-border)]
|
|
3
3
|
hover:border-[var(--sig-text-muted)] transition-colors cursor-pointer"><span class="text-[11px] text-[var(--sig-text-bright)]"> </span> <span class="text-[9px] text-[var(--sig-text-muted)] leading-[1.4]"> </span></button>`),Ra=v(`<div class="flex flex-col gap-2 px-4 pb-3"><div class="flex items-center justify-between"><span class="text-[10px] font-bold uppercase tracking-[0.1em]
|
|
4
4
|
text-[var(--sig-text-muted)] font-[family-name:var(--font-display)]">Start from a template</span> <button class="text-[var(--sig-text-muted)] hover:text-[var(--sig-text)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as d,i as C,u as M}from"./CA6kBwP0.js";import{K as f,l as k,L,N as I,t as n,O as b,P as O,Q as T,m as A,R as B,U as F,V as E}from"./
|
|
1
|
+
import{e as d,i as C,u as M}from"./CA6kBwP0.js";import{K as f,l as k,L,N as I,t as n,O as b,P as O,Q as T,m as A,R as B,U as F,V as E}from"./DpXm0Ri5.js";const u=["var(--sig-icon-bg-1)","var(--sig-icon-bg-2)","var(--sig-icon-bg-3)","var(--sig-icon-bg-4)","var(--sig-icon-bg-5)","var(--sig-icon-bg-6)"];function R(t){let e=0;for(const l of t)e=e*31+l.charCodeAt(0)&65535;return e}function J(t){const e=t.split(/[-_.\s]+/).filter(Boolean);return e.length>=2?`${e[0]?.[0]??""}${e[1]?.[0]??""}`.toUpperCase():t.slice(0,2).toUpperCase()}function Q(t){return u[Math.abs(R(t))%u.length]??u[0]}function j(t){if(!t)return null;const e=t.match(/^https?:\/\/(?:www\.)?github\.com\/([a-zA-Z0-9._-]+)/);return e?.[1]?`https://github.com/${e[1]}.png?size=40`:null}function K(t,e){return t?t==="modelcontextprotocol/servers"?"https://github.com/modelcontextprotocol.png?size=40":t==="github"&&e?.includes("/")?`https://github.com/${e.split("/")[0]}.png?size=40`:null:null}const p="signet:skills:catalog:v1",N=300*1e3;function $(){try{const t=localStorage.getItem(p);if(!t)return null;const e=JSON.parse(t);return typeof e.ts!="number"||!Array.isArray(e.results)||typeof e.total!="number"?null:e}catch{return null}}function m(t,e){try{const l={ts:Date.now(),results:t,total:e};localStorage.setItem(p,JSON.stringify(l))}catch{}}async function _(){try{const t=await f();a.catalog=t.results,a.catalogTotal=t.total,m(t.results,t.total)}catch{}}const a=d({view:"browse",installed:[],loading:!1,catalog:[],catalogTotal:0,catalogLoading:!1,catalogLoaded:!1,query:"",results:[],searching:!1,sortBy:"popularity",providerFilter:"all",categoryFilter:"all",compareSelected:[],selectedName:null,detailOpen:!1,detailContent:"",detailMeta:null,detailLoading:!1,detailSource:null,installing:null,uninstalling:null}),q=M(()=>new Map(a.catalog.map(t=>[t.name,t])));function V(){return C(q)}let g=null;function y(t,e){const l=[...t];switch(e){case"popularity":return l.sort((o,s)=>(s.popularityScore??s.installsRaw??0)-(o.popularityScore??o.installsRaw??0));case"installs":return l.sort((o,s)=>(s.installsRaw??0)-(o.installsRaw??0));case"stars":return l.sort((o,s)=>(s.stars??0)-(o.stars??0));case"name":return l.sort((o,s)=>o.name.localeCompare(s.name));case"newest":return l;default:return l}}function h(t,e){return e==="all"?[...t]:t.filter(l=>l.provider===e)}function v(t,e){return e==="all"?[...t]:t.filter(l=>(l.category??"Other")===e)}function Y(){const t=new Set(["all"]);for(const e of[...a.catalog,...a.results])t.add(e.category??"Other");return Array.from(t)}function Z(){const t=h(a.catalog,a.providerFilter),e=v(t,a.categoryFilter);return y(e,a.sortBy)}function W(){const t=h(a.results,a.providerFilter),e=v(t,a.categoryFilter);return y(e,a.sortBy)}function X(){a.sortBy="popularity",a.providerFilter="all",a.categoryFilter="all"}function tt(){a.compareSelected=[]}function at(t){if(a.compareSelected.includes(t)){a.compareSelected=a.compareSelected.filter(l=>l!==t);return}a.compareSelected.length>=3||(a.compareSelected=[...a.compareSelected,t])}async function w(){a.loading=!0,a.installed=await k(),a.loading=!1}async function et(){if(a.catalogLoaded)return;const t=$();if(t){a.catalog=t.results,a.catalogTotal=t.total,a.catalogLoaded=!0,a.catalogLoading=!1,Date.now()-t.ts>N&&_();return}a.catalogLoading=!0;const e=await f();a.catalog=e.results,a.catalogTotal=e.total,a.catalogLoaded=!0,a.catalogLoading=!1,m(e.results,e.total)}function lt(t){if(a.query=t,g&&clearTimeout(g),!t.trim()){a.results=[],a.searching=!1;return}a.searching=!0,g=setTimeout(()=>x(),250)}async function x(){const t=a.query.trim();if(!t){a.results=[],a.searching=!1;return}a.searching=!0,a.results=await L(t),a.searching=!1}async function rt(t){a.selectedName=t,a.detailOpen=!0,a.detailLoading=!0,a.detailContent="",a.detailMeta=null;const e=a.results.find(s=>s.name===t)||a.catalog.find(s=>s.name===t);a.detailSource=e??null;const l=e?.fullName||void 0,o=await O(t,l);o&&(a.detailMeta=o,a.detailContent=o.content??""),a.detailLoading=!1}function z(){a.detailOpen=!1,a.selectedName=null,a.detailContent="",a.detailMeta=null,a.detailSource=null}async function ot(t){a.installing=t;const l=(a.results.find(s=>s.name===t)||a.catalog.find(s=>s.name===t))?.fullName||void 0;if((await b(t,l)).success){n(`Skill ${t} installed`,"success"),await w();const s=c=>c.name===t?{...c,installed:!0}:c;a.results=a.results.map(s),a.catalog=a.catalog.map(s)}else n(`Failed to install ${t}`,"error");a.installing=null}async function st(t){if(a.uninstalling=t,(await I(t)).success){n(`Skill ${t} uninstalled`,"success"),await w();const l=o=>o.name===t?{...o,installed:!1}:o;a.results=a.results.map(l),a.catalog=a.catalog.map(l),a.selectedName===t&&z()}else n(`Failed to uninstall ${t}`,"error");a.uninstalling=null}const r=d({installed:[],loadingInstalled:!1,catalog:[],catalogTotal:0,catalogLoaded:!1,catalogLoading:!1,catalogDetail:!1,query:"",view:"browse",category:"all",source:"all",sortBy:"popularity",tools:[],serverHealth:[],toolsLoading:!1,installingId:null,togglingId:null,removingId:null,installedError:null,catalogError:null,toolsError:null});function i(t){return t instanceof Error&&t.message?t.message:String(t)}function D(t,e){const l=[...t];switch(e){case"name":return l.sort((o,s)=>o.name.localeCompare(s.name));case"official":return l.sort((o,s)=>o.official&&!s.official?-1:!o.official&&s.official?1:o.popularityRank-s.popularityRank);default:return l.sort((o,s)=>o.popularityRank-s.popularityRank)}}function H(t){const e=r.query.trim().toLowerCase();return t.filter(l=>r.category!=="all"&&l.category!==r.category||r.source!=="all"&&l.source!==r.source?!1:e?l.name.toLowerCase().includes(e)||l.description.toLowerCase().includes(e)||l.id.toLowerCase().includes(e):!0)}function nt(){const t=new Set(["all"]);for(const e of r.catalog)t.add(e.category);return Array.from(t)}function it(){return["all","mcpservers.org","modelcontextprotocol/servers","github"]}function ct(){return D(H(r.catalog),r.sortBy)}async function P(){r.loadingInstalled=!0,r.installedError=null;try{const t=await A();r.installed=t.servers}catch(t){r.installed=[],r.installedError=i(t)}finally{r.loadingInstalled=!1}}async function ut(t=5){if(!r.catalogLoaded){r.catalogLoading=!0,r.catalogError=null;try{const e=await T(t);r.catalog=e.results,r.catalogTotal=e.total,r.catalogLoaded=!0}catch(e){r.catalogError=i(e)}finally{r.catalogLoading=!1}}}async function S(t=!1){r.toolsLoading=!0,r.toolsError=null;try{const e=await B(t);r.tools=e.tools,r.serverHealth=e.servers}catch(e){r.tools=[],r.serverHealth=[],r.toolsError=i(e)}finally{r.toolsLoading=!1}}async function gt(t,e){r.installingId=t.id;try{const l=await E({id:t.catalogId,source:t.source,alias:e?.alias,config:e?.config});return l.success?(n("Tool Server installed","success"),await Promise.all([P(),S(!0)]),r.catalog=r.catalog.map(o=>o.id===t.id?{...o,installed:!0}:o),!0):(n(l.error??"Install failed","error"),!1)}catch(l){return n(i(l),"error"),!1}finally{r.installingId=null}}async function dt(t){r.removingId=t;try{const e=r.installed.find(o=>o.id===t),l=await F(t);if(l.success){n("Tool Server removed","success"),r.installed=r.installed.filter(s=>s.id!==t),await S(!0);const o=e?.catalogId&&e.source!=="manual"?`${e.source}:${e.catalogId}`:null;o&&(r.catalog=r.catalog.map(s=>s.id===o?{...s,installed:!1}:s))}else n(l.error??"Remove failed","error")}catch(e){n(i(e),"error")}finally{r.removingId=null}}export{Y as A,nt as B,ut as a,J as b,K as c,j as d,P as e,et as f,Q as g,ct as h,gt as i,dt as j,it as k,z as l,r as m,st as n,ot as o,V as p,w as q,S as r,a as s,lt as t,tt as u,at as v,rt as w,W as x,Z as y,X as z};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{p as Dt,y as b,e as Ft,z as qt,B as a,Q as Vt,i as e,j as n,A as l,h as F,f as q,D as ie,E as G,F as w,G as c,b as i,H as be,c as he,K as ye,l as o,k as I,I as ve,O as Ht,u as we,d as Gt,R as tt,m as f,P as It}from"./CA6kBwP0.js";import{f as Jt,n as Kt,E as Ut,B as Be,A as rt}from"./
|
|
1
|
+
import{p as Dt,y as b,e as Ft,z as qt,B as a,Q as Vt,i as e,j as n,A as l,h as F,f as q,D as ie,E as G,F as w,G as c,b as i,H as be,c as he,K as ye,l as o,k as I,I as ve,O as Ht,u as we,d as Gt,R as tt,m as f,P as It}from"./CA6kBwP0.js";import{f as Jt,n as Kt,E as Ut,B as Be,A as rt}from"./DpXm0Ri5.js";import{C as Xt}from"./BjHIV7jz.js";import{S as Qt}from"./C9ZFpKKg.js";import{S as at,a as st,b as $e,c as nt}from"./D1Op0UPx.js";import{P as Wt}from"./Ciheccvk.js";import{T as Yt}from"./C8xQ4WP2.js";var Zt=f("<!> <!>",1),er=f("<!> <!>",1),tr=f("<!> <!>",1),rr=f("<!> <!>",1),ar=f('<span class="sig-eyebrow truncate max-w-[220px]"> </span>'),sr=f('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">Loading logs...</div>'),nr=f('<div class="py-[var(--space-xl)] text-center text-[var(--sig-danger)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]"> </div>'),or=f('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">No logs found</div>'),lr=f('<span class="text-[var(--sig-text-muted)]"> </span>'),ir=f('<div class="mt-1 text-[11px] text-[var(--sig-text-muted)] whitespace-pre-wrap break-words"> </div>'),vr=f('<button type="button"><div class="flex flex-wrap items-baseline gap-[var(--space-xs)]"><span class="text-[var(--sig-text-muted)] shrink-0"> </span> <span> </span> <span> </span> <span class="text-[var(--sig-text-bright)] break-all"> </span> <!></div> <!></button>'),cr=f('<div class="font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] leading-relaxed"><!></div>'),dr=f('<div class="text-[var(--sig-text-muted)]">Duration</div> <div class="text-[var(--sig-text-bright)]"> </div>',1),ur=f('<details class="mb-1 border border-[var(--sig-border)] bg-[var(--sig-surface)] rounded-lg"><summary class="cursor-pointer px-2 py-1 text-[10px] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] select-none"><span class="font-semibold text-[var(--sig-text)]"> </span> <span class="ml-1 opacity-60"> </span> <span class="ml-1 opacity-40"> </span></summary> <pre class="m-0 px-2 py-1 text-[10px] leading-relaxed whitespace-pre-wrap break-words text-[var(--sig-text)]"> </pre></details>'),gr=f('<div class="mb-1"><div class="text-[10px] text-[var(--sig-text-muted)] font-semibold mb-0.5"> </div> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-words border border-[var(--sig-border)] rounded-lg bg-[var(--sig-surface)] text-[var(--sig-text)]"> </pre></div>'),fr=f('<div class="mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)] text-[length:var(--font-size-xs)] uppercase tracking-[0.08em] mb-1">Readable output</div> <!></div>'),mr=f('<div class="grid grid-cols-[80px_1fr] gap-y-1 gap-x-2 mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)]">Time</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <div class="text-[var(--sig-text-muted)]">Level</div> <div> </div> <div class="text-[var(--sig-text-muted)]">Category</div> <div> </div> <div class="text-[var(--sig-text-muted)]">Message</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <!></div> <!> <div class="rounded-lg border border-[var(--sig-border)] bg-[var(--sig-surface)] overflow-hidden"><div class="flex items-center justify-between gap-2 px-2 py-1 border-b border-[var(--sig-border)]"><div class="sig-eyebrow tracking-[0.08em]">Log details</div> <!></div> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-all text-[var(--sig-text-muted)]"> </pre></div>',1),pr=f('<div class="text-[var(--sig-text-muted)]">Select a log entry to inspect details.</div>'),xr=f('<div class="flex flex-col flex-1 min-h-0 overflow-hidden"><!> <div class="flex flex-col flex-1 min-h-0 p-[var(--space-sm)] lg:p-[var(--space-md)]"><div class="flex-1 min-h-0 grid grid-cols-1 gap-[var(--space-md)] lg:grid-cols-[minmax(0,1.55fr)_minmax(0,1fr)]"><section class="min-h-0 flex flex-col rounded-lg border border-[var(--sig-border-strong)] bg-[var(--sig-surface-raised)] overflow-hidden"><div class="flex flex-wrap items-center gap-[var(--space-sm)] px-[var(--space-md)] py-[var(--space-sm)] border-b border-[var(--sig-border)] shrink-0"><!> <!> <label class="flex items-center gap-1.5 sig-label text-[var(--sig-text)] cursor-pointer"><!> Auto-scroll</label> <div class="ml-auto flex items-center gap-[var(--space-sm)] min-w-0"><!> <span><!></span> <!> <!></div></div> <!></section> <section class="log-details-window min-h-0 overflow-auto rounded-lg border border-[var(--sig-border-strong)] p-[var(--space-md)] font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] svelte-q4aevr"><!></section></div></div></div>');function Sr(ot,lt){Dt(lt,!0);const it=2e3,vt=3e4,ze={debug:0,info:1,warn:2,error:3};let m=b(Ft([])),Le=b(!1),ue=b(""),se=b(!1),W=b(!1),J=b(!1),Y=b(""),E=null,K=b(!0),Z=0,B=null,ee=b(""),te=b(""),M=b(!1),ge=b(!1),Ne=b(!1),ne=b(null),U=b(null),fe=b(!1),oe=null;const ct=24,dt=["daemon","api","memory","sync","git","watcher","embedding","embedding-tracker","harness","system","hooks","pipeline","skills","secrets","auth","session-tracker","summary-worker","document-worker","maintenance","scheduler","retention","llm"],ut=["debug","info","warn","error"];function Se(t){switch(t){case"error":return"log-level--error";case"warn":return"log-level--warn";case"debug":return"log-level--debug";default:return"log-level--info"}}function Oe(t){switch(t.toLowerCase()){case"watcher":return"log-category--watcher";case"daemon":return"log-category--daemon";case"pipeline":return"log-category--pipeline";case"system":return"log-category--system";case"embeding-tracker":case"embedding-tracker":return"log-category--embedding-tracker";case"document-worker":return"log-category--document-worker";case"maintenance":return"log-category--maintenance";case"git":return"log-category--git";case"schedular":case"scheduler":return"log-category--scheduler";case"retention":return"log-category--retention";default:return"log-category--default"}}function ce(t,r){return`${t.timestamp}-${t.level}-${t.category}-${r}`}function gt(){return e(m).length===0||!e(U)?!0:e(U)===ce(e(m)[e(m).length-1],e(m).length-1)}function Me(){if(e(m).length===0){a(U,null);return}a(U,ce(e(m)[e(m).length-1],e(m).length-1),!0)}function ft(){if(!e(U))return e(m).at(-1)??null;for(let t=0;t<e(m).length;t+=1)if(ce(e(m)[t],t)===e(U))return e(m)[t];return e(m).at(-1)??null}const L=we(ft);function je(t="smooth"){e(ne)&&e(ne).scrollTo({top:e(ne).scrollHeight,behavior:t})}function ke(t="auto"){oe===null&&tt().then(()=>{oe===null&&(oe=requestAnimationFrame(()=>{oe=null,e(M)&&je(t)}))})}function mt(t){return t?t.scrollTop+t.clientHeight>=t.scrollHeight-ct:!0}async function me(){a(Le,!0),a(ue,"");try{const t=new URLSearchParams({limit:"200"});e(ee)&&t.set("level",e(ee)),e(te)&&t.set("category",e(te));const s=await(await fetch(`/api/logs?${t}`)).json();a(m,s.logs||[],!0),Me(),e(Ne)?e(M)&&ke("auto"):(a(Ne,!0),tt().then(()=>je("auto")))}catch{a(ue,"Failed to fetch logs")}finally{a(Le,!1)}}function De(){e(K)&&(B!==null&&(clearTimeout(B),B=null),E&&E.close(),a(J,!0),Z===0&&(a(W,!1),a(Y,"")),E=new EventSource("/api/logs/stream"),E.onmessage=t=>{try{const r=JSON.parse(t.data);if(r.type==="connected"){Z=0,a(W,!1),a(J,!1),a(se,!0),a(Y,"");return}e(J)&&(a(J,!1),a(se,!0));const s=typeof r.level=="string"?ze[r.level]:void 0,g=ze[e(ee)];if(e(ee)&&(s??-1)<(g??-1)||e(te)&&r.category!==e(te))return;const p=gt();a(m,[...e(m).slice(-499),r],!0),p&&Me(),e(M)&&ke("auto")}catch{}},E.onerror=()=>{if(!e(K)||(a(se,!1),a(J,!1),E?.close(),E=null,B!==null))return;const t=Math.min(it*2**Math.min(Z,10),vt);Z=Math.min(Z+1,10),a(W,!0),a(Y,`Stream lost — reconnecting in ${t/1e3}s`),B=setTimeout(()=>{B=null,De()},t)})}function pt(){a(K,!1),a(se,!1),a(J,!1),a(W,!1),a(Y,""),Z=0,B!==null&&(clearTimeout(B),B=null),E&&(E.close(),E=null)}function Fe(){a(K,!0),Z=0,a(W,!1),a(Y,""),De()}function xt(){if(e(K)){pt();return}Fe()}function _t(t){return t.split("T")[1]?.slice(0,8)||""}function bt(t){try{return new Date(t).toLocaleString()}catch{return t}}function qe(t){return JSON.stringify(t,null,2)}function j(t){return typeof t=="string"&&t.length>0?t:null}function ht(t){return Array.isArray(t)?t.filter(r=>typeof r=="string"&&r.length>0):[]}function Ve(t){const r=t.data;if(!r)return[];const s=[],g=j(r.inject)??j(r.injectPreview);g&&s.push({label:"Inject",content:g});const p=j(r.prompt)??j(r.promptPreview);p&&s.push({label:"Prompt",content:p});const A=j(r.summaryPrompt)??j(r.summaryPromptPreview);A&&s.push({label:"Summary Prompt",content:A});const S=j(r.summary)??j(r.summaryPreview);S&&s.push({label:"Summary",content:S});const $=j(r.transcript)??j(r.transcriptPreview);$&&s.push({label:"Transcript",content:$});const v=ht(r.factsPreview);if(v.length>0){const d=v.map(k=>`- ${k}`).join(`
|
|
2
2
|
`);s.push({label:"Facts",content:d})}return s}function He(t){const r=Ve(t);if(r.length===0)return"";const s=r.map(g=>g.content).join(`
|
|
3
3
|
|
|
4
4
|
`).trim();return s.length<=220?s:`${s.slice(0,220)}...`}async function yt(){if(e(L))try{await navigator.clipboard.writeText(qe(e(L))),a(fe,!0),setTimeout(()=>{a(fe,!1)},1200)}catch{a(fe,!1)}}qt(()=>(me(),Fe(),()=>{a(K,!1),oe!==null&&cancelAnimationFrame(oe),B!==null&&clearTimeout(B),E&&E.close()})),Vt(()=>{const t=e(ne);if(!t)return;const r=()=>{const s=mt(t);if(e(M)&&!s){a(M,!1),a(ge,!0);return}!e(M)&&e(ge)&&s&&(a(M,!0),a(ge,!1))};return t.addEventListener("scroll",r,{passive:!0}),r(),()=>{t.removeEventListener("scroll",r)}});var Pe=xr(),Ge=n(Pe);Wt(Ge,{title:"Logs",children:(t,r)=>{Yt(t,{group:"engine",get tabs(){return Ut},get activeTab(){return Kt.activeTab},onselect:(s,g)=>Jt(g)})}});var Ie=l(Ge,2),Je=n(Ie),Te=n(Je),Ce=n(Te),Ke=n(Ce);F(Ke,()=>nt,(t,r)=>{r(t,{type:"single",get value(){return e(ee)},onValueChange:s=>{a(ee,s??"",!0),me()},children:(s,g)=>{var p=er(),A=q(p);F(A,()=>at,($,v)=>{v($,{class:"font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] text-[var(--sig-text-bright)] rounded-lg h-auto py-1 px-2 min-w-[100px]",children:(d,k)=>{ie();var h=G();w(()=>c(h,e(ee)||"All levels")),i(d,h)},$$slots:{default:!0}})});var S=l(A,2);F(S,()=>st,($,v)=>{v($,{class:"bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-lg",children:(d,k)=>{var h=Zt(),u=q(h);F(u,()=>$e,(x,y)=>{y(x,{value:"",label:"All levels"})});var X=l(u,2);be(X,17,()=>ut,ye,(x,y)=>{var R=he(),V=q(R);F(V,()=>$e,(D,Q)=>{Q(D,{get value(){return e(y)},get label(){return e(y)}})}),i(x,R)}),i(d,h)},$$slots:{default:!0}})}),i(s,p)},$$slots:{default:!0}})});var Ue=l(Ke,2);F(Ue,()=>nt,(t,r)=>{r(t,{type:"single",get value(){return e(te)},onValueChange:s=>{a(te,s??"",!0),me()},children:(s,g)=>{var p=rr(),A=q(p);F(A,()=>at,($,v)=>{v($,{class:"font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] text-[var(--sig-text-bright)] rounded-lg h-auto py-1 px-2 min-w-[100px]",children:(d,k)=>{ie();var h=G();w(()=>c(h,e(te)||"All categories")),i(d,h)},$$slots:{default:!0}})});var S=l(A,2);F(S,()=>st,($,v)=>{v($,{class:"bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-lg",children:(d,k)=>{var h=tr(),u=q(h);F(u,()=>$e,(x,y)=>{y(x,{value:"",label:"All categories"})});var X=l(u,2);be(X,17,()=>dt,ye,(x,y)=>{var R=he(),V=q(R);F(V,()=>$e,(D,Q)=>{Q(D,{get value(){return e(y)},get label(){return e(y)}})}),i(x,R)}),i(d,h)},$$slots:{default:!0}})}),i(s,p)},$$slots:{default:!0}})});var Ee=l(Ue,2),wt=n(Ee);Xt(wt,{get checked(){return e(M)},onCheckedChange:t=>{a(M,t===!0),a(ge,!1),e(M)&&ke("auto")},class:"rounded-lg"}),ie(),o(Ee);var Xe=l(Ee,2),Qe=n(Xe);{var $t=t=>{var r=ar(),s=n(r,!0);o(r),w(()=>c(s,e(Y))),i(t,r)};I(Qe,t=>{e(Y)&&t($t)})}var pe=l(Qe,2),Lt=n(pe);{var St=t=>{var r=G("● Live");i(t,r)},kt=t=>{var r=G("↺ Reconnecting");i(t,r)},Pt=t=>{var r=G("◌ Connecting");i(t,r)},Tt=t=>{var r=G("● Offline");i(t,r)};I(Lt,t=>{e(se)?t(St):e(W)?t(kt,1):e(J)?t(Pt,2):t(Tt,-1)})}o(pe);var We=l(pe,2);{let t=we(()=>e(K)?"Disconnect stream":"Reconnect stream");Be(We,{variant:"outline",size:"sm",class:"sig-label px-2 py-1 h-auto hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]",onclick:xt,get title(){return e(t)},children:(r,s)=>{ie();var g=G();w(()=>c(g,e(K)?"Disconnect":"Reconnect")),i(r,g)},$$slots:{default:!0}})}var Ct=l(We,2);Be(Ct,{variant:"outline",size:"sm",class:"sig-label px-2 py-1 h-auto hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]",onclick:me,title:"Reload logs",children:(t,r)=>{ie();var s=G();w(()=>c(s,rt.Refresh)),i(t,s)},$$slots:{default:!0}}),o(Xe),o(Ce);var Et=l(Ce,2);Qt(Et,{class:"min-h-0 flex-1",get viewportRef(){return e(ne)},set viewportRef(t){a(ne,t,!0)},children:(t,r)=>{var s=cr(),g=n(s);{var p=v=>{var d=sr();i(v,d)},A=v=>{var d=nr(),k=n(d,!0);o(d),w(()=>c(k,e(ue))),i(v,d)},S=v=>{var d=or();i(v,d)},$=v=>{var d=he(),k=q(d);be(k,17,()=>e(m),ye,(h,u,X)=>{var x=vr(),y=n(x),R=n(y),V=n(R,!0);o(R);var D=l(R,2),Q=n(D,!0);o(D);var le=l(D,2),P=n(le);o(le);var T=l(le,2),z=n(T,!0);o(T);var re=l(T,2);{var H=N=>{var _=lr(),C=n(_);o(_),w(()=>c(C,`(${e(u).duration??""}ms)`)),i(N,_)};I(re,N=>{e(u).duration!==void 0&&N(H)})}o(y);var xe=l(y,2);{var Ae=N=>{var _=ir(),C=n(_,!0);o(_),w(O=>c(C,O),[()=>He(e(u))]),i(N,_)},Re=we(()=>He(e(u)));I(xe,N=>{e(Re)&&N(Ae)})}o(x),w((N,_,C,O,ae)=>{ve(x,1,N,"svelte-q4aevr"),c(V,_),ve(D,1,C,"svelte-q4aevr"),c(Q,O),ve(le,1,ae,"svelte-q4aevr"),c(P,`[${e(u).category??""}]`),c(z,e(u).message)},[()=>`log-row ${Se(e(u).level)} w-full text-left px-[var(--space-md)] py-1.5 border-b border-[var(--sig-border)] hover:bg-[var(--sig-surface)] cursor-pointer ${e(U)===ce(e(u),X)?"bg-[var(--sig-surface)] border-[var(--sig-border-strong)]":""}`,()=>_t(e(u).timestamp),()=>`font-semibold shrink-0 min-w-[40px] ${Se(e(u).level)}`,()=>e(u).level.toUpperCase(),()=>`log-category ${Oe(e(u).category)} shrink-0`]),Ht("click",x,()=>{a(U,ce(e(u),X),!0)}),i(h,x)}),i(v,d)};I(g,v=>{e(Le)?v(p):e(ue)?v(A,1):e(m).length===0?v(S,2):v($,-1)})}o(s),i(t,s)},$$slots:{default:!0}}),o(Te);var Ye=l(Te,2),At=n(Ye);{var Rt=t=>{const r=we(()=>Ve(e(L)));var s=mr(),g=q(s),p=l(n(g),2),A=n(p,!0);o(p);var S=l(p,4),$=n(S,!0);o(S);var v=l(S,4),d=n(v,!0);o(v);var k=l(v,4),h=n(k,!0);o(k);var u=l(k,2);{var X=P=>{var T=dr(),z=l(q(T),2),re=n(z);o(z),w(()=>c(re,`${e(L).duration??""}ms`)),i(P,T)};I(u,P=>{e(L).duration!==void 0&&P(X)})}o(g);var x=l(g,2);{var y=P=>{var T=fr(),z=l(n(T),2);be(z,17,()=>e(r),ye,(re,H)=>{var xe=he(),Ae=q(xe);{var Re=_=>{var C=ur(),O=n(C),ae=n(O),_e=n(ae,!0);o(ae);var de=l(ae,2),zt=n(de);o(de);var Ze=l(de,2),Nt=n(Ze);o(Ze),o(O);var et=l(O,2),Ot=n(et,!0);o(et),o(C),w((Mt,jt)=>{c(_e,e(H).label),c(zt,`(${Mt??""} chars)`),c(Nt,`${jt??""}...`),c(Ot,e(H).content)},[()=>e(H).content.length.toLocaleString(),()=>e(H).content.slice(0,100).replace(/\n/g," ")]),i(_,C)},N=_=>{var C=gr(),O=n(C),ae=n(O,!0);o(O);var _e=l(O,2),de=n(_e,!0);o(_e),o(C),w(()=>{c(ae,e(H).label),c(de,e(H).content)}),i(_,C)};I(Ae,_=>{e(H).content.length>500?_(Re):_(N,-1)})}i(re,xe)}),o(T),i(P,T)};I(x,P=>{e(r).length>0&&P(y)})}var R=l(x,2),V=n(R),D=l(n(V),2);Be(D,{variant:"outline",size:"sm",class:"sig-eyebrow px-2 py-1 h-auto hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]",onclick:yt,children:(P,T)=>{ie();var z=G();w(()=>c(z,e(fe)?"Copied":rt.CopyJson)),i(P,z)},$$slots:{default:!0}}),o(V);var Q=l(V,2),le=n(Q,!0);o(Q),o(R),w((P,T,z,re)=>{c(A,P),ve(S,1,T,"svelte-q4aevr"),c($,e(L).level),ve(v,1,z,"svelte-q4aevr"),c(d,e(L).category),c(h,e(L).message),c(le,re)},[()=>bt(e(L).timestamp),()=>`uppercase ${Se(e(L).level)}`,()=>`log-category ${Oe(e(L).category)}`,()=>qe(e(L))]),i(t,s)},Bt=t=>{var r=pr();i(t,r)};I(At,t=>{e(L)?t(Rt):t(Bt,-1)})}o(Ye),o(Je),o(Ie),o(Pe),w(()=>ve(pe,1,`sig-label font-medium ${e(se)?"text-[var(--sig-success)] [animation:pulse_2s_infinite]":e(W)||e(J)?"text-[var(--sig-accent)] [animation:pulse_2s_infinite]":"text-[var(--sig-danger)]"}`,"svelte-q4aevr")),i(ot,Pe),Gt()}It(["click"]);export{Sr as default};
|